11/21~11/23 혼동행렬

정의민·2022년 11월 24일
0

⭐혼동행렬 - 혼동되지 말자

  • TP(True Positive) : 참긍정, 병에 관해 예 (병이 있을것이다.)라고 예측한 환자가 실제 병을 가진 경우

  • TN(True Negative) : 참부정, 병에 관해 아니오(병이 없을 것이다)라고 예측한 환자가 실제로 병이 없는 경우

  • FP(False Positive) : 거짓긍정, 병에 관해 예라고 예측한 환자가 실제로는 병이 없는 경우

  • FN(False Negative) : 거짓부정, 병에 관해 아니오라고 예측한 환자가 실제로는 병이 있는 경우

✅혼동행렬 지표

🎈정확도 (accuracy)

: 모델이 입력된 데이터에 대해 얼마나 정확하게 예측하는지
: 가장 직관적으로 모델의 성능을 나타낼 수 있는 평가 지표


🎈정밀도 (precision)

: 모델의 예측값이 얼마나 정확하게 예측됐는가를 나타내는 지표
: "예"라고 예측했을때의 정답률
: postive로 예측된 값이 실제 postive일 때


🎈재현율 (recall)

: 실제값 중에서 모델이 검출한 실제값의 비율을 나타내는 지표
: 실제로 병이 있는 전체 중 참 긍정의 비율
: 실제 positive 중 정확히 positive라고 식별된 사례의 비율
: 초기에 정확하게 발견해서 신속하게 처방하는 것이 올바른 모델


🎈F1 점수 (F1-score)

: 정밀도 중요하고 재현율도 중요한데 둘 중 무엇을 쓸지 고민될 때 이 두값 조화평균내서 하나의 수치로 나타낸 지표
: 데이터 label이 불균형 구조일 때, 모델의 성능을 정확하게 평가할 수 있으며, 성능을 하나의 숫자로 표현할 수 있음

업로드중..


✅ROC(Receiver Operating Characteristic) curve

  • 여러 임계값들을 기준으로 Recall-Fallout의 변화를 시각화 한 것
  • 다양한 임계값에 대한 이진분류기의 성능을 한번에 표시한 것
  • Fallout은 실제 False인 data 중에서 모델이 True로 분류한, 그리고 Recall은 실제 True인 data 중에서 모델이 True로 분류한 비율을 나타낸 지표로써, 이 두 지표를 각각 x, y의 축으로 놓고 그려지는 그래프를 해석

  • curve가 왼쪽 위 모서리에 가까울수록 모델의 성능이 좋다고 평가
  • 즉, Recall이 크고 Fall-out이 작은 모형이 좋은 모형
  • y=x 그래프보다 상단에 위치해야 어느 정도 성능이 있음

🔷 X축(FPR)과 Y축(TPR)

→ True Positive와 False Positive를 그림으로 표현

🔷 X축(FPR)과 Y축(TPR)의 관계

→ 임계값이 낮아지면 TPR과 FPR이 모두 높아짐(암이 아닌 환자까지 암으로 판정)

→ 임계값이 높아지면 TPR과 FPR이 모두 낮아짐(암인 환자까지 암이 아니라고 판정)

🔷 ROC 곡선의 특징

  1. 그래프가 좌측 상단으로 가까이 갈수록 분류 성능이 우수

→ FPR과 TPR이 더 잘 구별될 수 있다면(두 분포가 멀리 떨어져있어) 이진 분류기 성능 高

  1. FPR과 TPR은 대체로 비례
  2. ROC 곡선 아래의 면적을 모형의 평가지표로 삼는 AUC를 사용하여 진단의 정확도를 측정
  3. AUC의 값은 항상 0.5 ~ 1 사이의 값을 가지며 1에 가까울 수록 좋은 모형

from sklearn.metrics import roc_curve


✅AUC(Area Under Curve)

  • ROC curve는 그래프이기 때문에 명확한 수치로써 비교하기가 어려움
  • 따라서 그래프 아래의 면적값을 이용 →  AUC(Area Under Curve)입니다.
  • 최대값은 1이며 1에 가까울수록(Fall-out에 비해 Recall 값이 클수록) 좋은 모델

  • AUC = 1

  • AUC = 0.7

  • AUC = 0.5

  • AUC = 0

from sklearn.metrics import roc_auc_score

❤️출처 : https://angeloyeo.github.io/2020/08/05/ROC.html
❤️출처 : https://www.kaggle.com/code/vithal2311/auc-roc-curve-confusion-matrix-explained-in-detail

profile
Speaking Potato🥔

0개의 댓글

관련 채용 정보