Python to AI

혼동행렬을 활용한 분류 성능 지표

최 수빈 2025. 2. 2. 23:10

 

혼동행렬 (Confusion Matrix)

  예측 클래스(Predicted Class)  
양성 (Positive) 음성 (Negative)
실제 클래스
(Actual Class)
양성 (Positive) 참 양성 (TP, True Positive) 거짓 음성 (FN, False Negative)
제 2종 오류 (Type Ⅱ Error)
민감도 (Sensitivity)
TP/(TP+FN)
음성 (Negative) 거짓 양성 (FP, False Positive)
제1종 오류 (Type Ⅰ Error)
참 음성 (TN, True Negative) 특이도 (Specificity)
TN/(TN+FP)
  정밀도 (Precision)
TP/(TP+FP)
음성 예측도 (Negative Predictive)
TN/(TN+FN)
정확도 (Accuracy)
TP+TN/(TP+TN+FP+FN)



성능 지표 (Performance Metrics)

 

  • 정확도(Accuracy)
    전체 데이터 중에서 정확하게 분류된 비율

    (TP+TN)/(TP+TN+FP+FN)

  • 정밀도(Precision, 양성 예측도)
    양성으로 예측한 것 중 실제로 양성인 비율

    TP/(TP+FP)

  • 민감도(Sensitivity, 재현율, Recall, TPR)
    실제 양성 중에서 올바르게 예측된 비율

    TP/(TP+FN)
  • 특이도(Specificity, TNR)
    실제 음성 중에서 올바르게 음성으로 예측된 비율

    TN/(TN+FN)
  • 오분류율(Error Rate)
    잘못 예측한 비율

    (FP+FN)/(TP+TN+FP+FN)

  • 정분류율(Correct Classification Rate)
    정확도와 같은 개념

  • F1-score
    정밀도와 재현율의 조화 평균

    2 x (Precision x Recall) / (Precision + Recall)
    2TP / (2TP+FP+FN)

 


정확도는 정확할까?

 

정확도는 전체 데이터에서 정확하게 분류된 비율을 나타내지만, 데이터가 불균형할 경우 문제가 발생

  • 양성이 극히 적고 음성이 많은 데이터
    →항상 음성으로 예측하면, 높은 정확도를 얻을 수 있음 : 이는 유의미한 모델이 아님

 

정확도의 한계를 보완하기 위한 대안

  • 정밀도(Precision)와 재현율(Recall) 사용
    정밀도는 거짓 양성(FP)을 최소화하는 데 집중, 양성 예측의 신뢰도를 높임
    재현율은 거짓 음성(FN)을 최소화하여 실제 양성을 놓치지 않는 데 중점을 둠
  • F1-score
    정밀도와 재현율의 균형을 맞춘 지표
    정밀도, 재현율 사이의 trade-off를 해결하는 데 효과적

    *정밀도(Precision) vs. 재현율(Recall)

    정밀도를 높이면
    FP(거짓 양성)을 줄이려 보수적으로 양성 예측
    → 모델이 정말 확신이 있는 경우에만 양성이라고 예측
    →FN(거짓 음성)이 늘어남
    →재현율이 떨어짐
    재현율을 높이면
    FN(거짓 음성)을 줄이려 더 많은 경우를 양성으로 예측
    →조금이라도 가능성이 있으면 양성이라고 예측
    →FP(거짓 양성)이 늘어남
    →정밀도가 떨어짐

    == Trade-off 관계

  • ROC곡선(Receiver Operating Characteristic Curve)과 AUC(Area Under Curve)
    다양한 임계값(Threshold)에서 TPR(True Positive Rate, 재현율: ROC곡선의 Y축)과 FPR(False Positive Rate, 1 - 특이도(TNR) : ROC 곡선의 X 축)간의 관계를 나타내며, AUC값이 클수록 좋은 모델
  • Balanced Accuracy
    불균형 데이터에서 특이도와 민감도의 평균값을 사용하여 균형 잡힌 성능 평가를 가능하게 함
    (Sensitivity + Specificity) / 2
    →양성과 음성에서 각각의 정확도를 평균 낸 값

→ 정확도는 간단하고 직관적인 지표이지만, 불균형한 데이터에서는 의미 없는 결과를 초래하므로 정밀도, 재현율 , F1-score, AUC 등의 지표를 함께 사용하여 보다 신뢰할 수 있는 모델 평가가 필요