혼합 행렬의 F값을 조망합니다

3304 단어 혼동행렬Python
혼동 행렬의 종합평가에서는 F-수가 자주 나온다.p를precision(적합률), r를recall(재현율)로 설정할 때F값은
F = \frac{2pr}{p+r} = \frac{2}{\frac{1}{p} + \frac{1}{r}}
구문을 사용합니다.p, r 이동할 때 어떤 행동을 보이나요?

그리다

python를 사용하여 그리기
## set libraries
import numpy as np
import seaborn as sns

## 値の計算
F = np.array([2 / (1/r+1/p) for p in np.arange(0, 1, 0.1) for r in np.arange(0, 1, 0.1)]).reshape(10, 10)

## 描画
sns.heatmap(F)
그래서 이렇게 됐어요.

→세로축, 가로축의 눈금은 0, 1,...아홉은 애교다.원래 0.0, 0.1...희망은 0.9이지만 어쨌든 개관일 뿐이니까 그냥 놔둬 w

눈여겨본 일

  • p orr가 0일 때 F의 정의값 자체가 0(파란색 상자 부분)
  • 이다.
  • pr의 합이 일정하더라도 p 또는 r 중 하나가 높지 않으면 F-수가 떨어진다. 즉, pr의 절충을 고려할 때 pr 둘 다 고르지 않으면 F-수가 떨어지기 쉽다.
  • 파란색 테두리 부분p+r은 일정한 선이지만 가장자리를 빼면 색깔이 검은색이다. 즉, 가깝다0. 중간 부근은 오렌지색보다 값이 높다.
  • 실제 업무의 경우 부합률, 재현율이 둘 다 좋지 않은 상황에서 사용할 수 없겠죠.

  • Reference

  • Heatmap in seaborn
  • 좋은 웹페이지 즐겨찾기