본문 바로가기

끄적끄적

평가지표 정리

분류 모델 평가지표 정리: TP, TN부터 Recall, F1-score, PR-AUC까지

1. 분류 모델 평가지표가 필요한 이유

분류 모델은 데이터를 특정 클래스로 예측하는 모델이다. 예를 들어 반도체 불량 예측에서는 제품을 정상(0) 또는 불량(1)으로 분류한다.

이때 단순히 “몇 개를 맞췄는가”만 보는 것은 충분하지 않다. 특히 불량 데이터처럼 소수 클래스가 중요한 문제에서는 Accuracy만 높아도 실제 불량을 거의 못 잡는 모델이 나올 수 있다.

예를 들어 정상 95%, 불량 5%인 데이터에서 모든 제품을 정상이라고 예측하면 Accuracy는 95%이다. 하지만 불량은 하나도 잡지 못하므로 품질관리 관점에서는 좋은 모델이 아니다.

2. TP, TN, FP, FN

분류 모델의 평가지표를 이해하려면 먼저 Confusion Matrix의 네 가지 값을 알아야 한다.

구분 의미 불량 예측 예시
TP True Positive 실제 불량을 불량으로 예측
TN True Negative 실제 정상을 정상으로 예측
FP False Positive 실제 정상인데 불량으로 예측
FN False Negative 실제 불량인데 정상으로 예측

불량 예측에서는 특히 FN이 위험하다. 실제 불량 제품을 정상으로 판단하면 고객에게 불량품이 출하될 수 있기 때문이다.

3. Accuracy

Accuracy는 전체 데이터 중 모델이 맞게 예측한 비율이다.

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

Accuracy는 직관적이지만, 클래스 불균형이 있는 데이터에서는 조심해서 해석해야 한다.

예를 들어 불량률이 5%인 데이터에서 전부 정상이라고 예측해도 Accuracy는 95%가 된다. 따라서 불량 예측 문제에서는 Accuracy만으로 모델을 평가하면 안 된다.

4. Precision

Precision은 모델이 불량이라고 예측한 것 중 실제 불량이 얼마나 되는가를 의미한다.

Precision = TP / (TP + FP)

Precision이 높다는 것은 모델이 불량이라고 판단한 결과의 신뢰도가 높다는 뜻이다.

Precision이 낮으면 정상 제품을 불량으로 많이 잘못 판단한다. 이 경우 불필요한 재검사나 폐기 비용이 증가할 수 있다.

5. Recall

Recall은 실제 불량 중에서 모델이 얼마나 많이 불량으로 찾아냈는가를 의미한다.

Recall = TP / (TP + FN)

불량 예측 문제에서는 Recall이 매우 중요하다. 실제 불량을 정상으로 놓치는 FN을 줄여야 하기 때문이다.

즉, Recall이 높다는 것은 불량을 놓치지 않고 잘 잡는 모델이라는 뜻이다.

6. F1-score와 F2-score

F1-score는 Precision과 Recall의 균형을 보는 지표이다.

F1-score = 2 × (Precision × Recall) / (Precision + Recall)

Precision과 Recall 중 하나만 높고 다른 하나가 낮으면 F1-score는 크게 높아지지 않는다. 따라서 두 지표의 균형을 볼 때 유용하다.

F2-score는 Recall에 더 큰 가중치를 주는 지표이다.

F2-score는 Precision보다 Recall을 더 중요하게 평가한다.

불량 예측, 질병 진단, 이상 탐지처럼 실제 양성(불량, 질병, 이상)을 놓치면 위험한 문제에서는 F1-score보다 F2-score가 더 적합할 수 있다.

7. PR-AUC

PR-AUC는 Precision-Recall Curve 아래 면적을 의미한다. 즉, 여러 threshold에서 Precision과 Recall이 어떻게 변하는지를 종합적으로 평가하는 지표이다.

분류 모델은 보통 확률을 출력한다.

불량 확률 = 0.83
불량 확률 = 0.42
불량 확률 = 0.17

이 확률을 기준으로 threshold를 정해 불량과 정상을 나눈다.

threshold = 0.5 이상 → 불량
threshold = 0.5 미만 → 정상

threshold를 낮추면 더 많은 제품을 불량으로 잡기 때문에 Recall은 올라가지만, 정상 제품을 불량으로 잘못 잡는 경우도 늘어나 Precision은 낮아질 수 있다.

PR-AUC는 이러한 Precision과 Recall의 관계를 전체적으로 평가한다.

불균형 데이터에서는 ROC-AUC보다 PR-AUC가 더 민감하게 모델 성능을 보여주는 경우가 많다. 특히 불량처럼 양성 클래스가 적은 문제에서 유용하다.

8. 불량 예측 문제에서는 어떤 지표가 중요한가?

반도체 불량 예측에서는 불량을 놓치는 것이 가장 위험하다. 따라서 Recall을 중요하게 봐야 한다.

하지만 Recall만 높이면 정상 제품까지 불량으로 많이 판단할 수 있다. 그러면 재검사 비용이나 폐기 비용이 증가한다.

따라서 실제 프로젝트에서는 다음 지표를 함께 보는 것이 좋다.

지표 의미 불량 예측에서의 역할
Accuracy 전체 정답률 참고용
Precision 불량 예측의 신뢰도 불필요한 재검사 감소
Recall 실제 불량 검출률 불량 누락 방지
F1-score Precision과 Recall의 균형 종합 성능 비교
F2-score Recall을 더 중요하게 반영 불량 검출 중심 평가
PR-AUC Precision-Recall 관계의 전체 성능 불균형 데이터 평가에 유용

따라서 불량 예측 프로젝트에서는 Recall, F1-score, F2-score, PR-AUC를 중심으로 평가하고, Accuracy는 보조 지표로 해석하는 것이 적절하다.

9. 이번 글 요약

이번 글 요약

  • TP, TN, FP, FN은 분류 모델 평가의 기본이며, 불량 예측에서는 실제 불량을 정상으로 판단하는 FN이 특히 중요하다.
  • Recall은 실제 불량을 얼마나 놓치지 않고 잡았는지를 나타내며, 불량 예측 문제에서 가장 중요한 지표 중 하나이다.
  • F1-score, F2-score, PR-AUC는 Precision과 Recall의 균형 또는 불균형 데이터에서의 성능을 평가하는 데 유용하다.

📚 참고자료

  • 손보미 튜터님 강의자료
  • Scikit-learn Documentation - Classification Metrics
  • Scikit-learn Documentation - Precision-Recall Curve
  • Google Machine Learning Crash Course - Classification Metrics