본문 바로가기
Data Science & AI Theories

혼동행렬(Confusion Matrix)

by Oliver J 2023. 8. 13.
반응형
  (Predicted) Y^ = 1 (Predicted) Y^ = 0
Real Y = 1 True Positive False Negative
Real Y = 0 False Positive True Negative
  • 혼동행렬(Confusion Matrix)
    • Sensitivity(= Recall) : 1을 정확히 1로 분류
      • Recall = TP / (TP + FN) or TP / (Y=1)
    • Precision(정밀도) : 1을 예측한 것들 중 1이 맞는 비율로 예측된 양성결과의 정확도
      • Precision = TP / (TP + FP) 
    • Specificity(특이도) : 0을 정확히 0으로 분류
      • 참 음성률 : TN / (TN + FP) = TN / (실제 음성)  or TP / (Y^=0)
    • Accuracy = (TP + TN) / all or (y=1) / all
    • 거짓 음성률(TPR/FPR) : 1 – Recall
    • 거짓 양성률(Pull out) = 1 – 참 음성률 = FP / (실제 음성)
    • ROC Curve : 민감도와 특이성을 표시한 그림
      • Receiver Operating Characteristic Curve
      • 효과적인 ROC곡선은 왼쪽상단에 가까운 형태
      • 예측 Model의 성능을 수치로 나타낼 경우 ROC Curve그래프가 아닌 Curve아래 면적인 AUC를 참고한다.
      • 분류기 성능지표로 AUC사용 시 단순정확도도 알 수 있지만 전체적인 정확도를 높이면서 실무에서 중요한 1을 더 정확히 분류해야하는 tradeoff를 얼마나 잘 처리하는지 평가가 가능하다.
      • 주의점 - 간혹 cutoff를 0.5 미만으로 낮춰야 할 경우 0.3나 0.4 정도 이하의 확률도 레코드를 1로 분류하기 충분하기때문에 1의 중요성 과대평가가능
      • (Python) roc_auc_score() 함수로 확인할 수 있으며 1에 가까울수록 Good!
      • 단순히 정확도가 높다는 것은 무의미하다. 즉, 재현율(Recall)과 정밀도(Precision) 관련에 대한 tradeoff를 유념하여 판단해야 한다. 결국 높은 F-1 Score의 중요성과 함께 고려해야할 사항
    • Positive와 Negative 사이에 불균형이심할 경우에는 Oversampling(Positive 늘리기), Under-sampling(Negative 줄이기), 또는 SMOTE(Synthetic minority oversampling technic: Positive 케이스에서 최근접 이웃을 이용하여 원본 Data의 Feature값을 약간 변형 후 Postivie케이스를 만드는 방법)으로 진행할 수 있다.
      • 불균형 케이스에서는 Recall 과 Precision을 고려하여야 하며, 둘 중 더 작은 값으로 평균을 측정하는 F1 score값을 잘 살펴보아야 한다.

반응형

 

728x90
반응형