오늘 할 일: 끝내주게 숨쉬기
article thumbnail

이진분류(binary classification)는 클래스가 0일지, 혹은 1일지를 맞추는 문제로, 실제 클래스와 예측 클래스의 조합에 따라 이진분류 모델의 성능을 정량화할 수 있습니다. 그 조합을 표로 나타낸 것을 혼동 행렬, 오차 행렬 또는 정오분류표(confusion matrix)이라고 하는데요. 아래와 같이 각 조합에 따라 실제 양성, 실제 음성, 거짓 양성, 거짓 음성으로 분류할 수 있습니다.

 

    예측 클래스
    Positive Negative
실제 클래스 Positive TP
(True Positive)
FN
(False Negative)
Negative FP
(False Positive)
TN
(True Negative)

 

  • TP(True Positive)
    • 모델이 positive라고 예측했는데, 실제로도 positive여서 옳은(true) 결정인 경우
  • TN(True Negative)
    • 모델이 negative라고 예측했는데, 실제로도 negative여서 옳은(true) 결정인 경우
  • FP(False Positive)
    • 모델이 positive라고 예측했는데, 실제로는 negative여서 옳지 않은(false) 결정인 경우
  • FN(False Negative)
    • 모델이 negative라고 예측했는데, 실제로는 positive여서 옳지 않은(false) 결정인 경우

 

 

이진분류 평가방법

위 표로부터 전체 자료 수를 N이라고 할 때 정확도, 재현율, 정밀도는 아래와 같이 정의합니다.

 

  • 정확도(Accuracy): 전체에서 정확하게 예측한 비율

$$ \frac{TP+TN}{N} $$

 

  • 재현율(Recall): 실제로 positive인 클래스 중 positive라고 제대로 예측한 비율

$$ \frac{TP}{TP+FN}  $$

 

  • 정밀도(Precision): positive라고 예측한 클래스 중 실제로 positive인 비율

$$ \frac{TP}{TP+FP}  $$

 

  • F1 Score: 정밀도와 재현율의 조화평균으로, 클래스의 불균형이 심할 때(imbalanced data) 사용하는 지표

$$  (\frac{{1 \over Precision}+{1 \over Recall}}{2})^{-1} = \frac{2Precision * Recall}{Precision + Recall} $$