머신러닝

[머신러닝] 분류분석 평가 지표 - 오차행렬, ROC

GinaKim 2024. 2. 20. 13:50
728x90

머신러닝 프로세스

데이터 가공/변환 → 모델 학습/예측 → 평가

 

분류의 성능 평가 지표

오차행렬 (Confusion Matrix)

TN, TP, FN, FP값을 다양하게 결합해 분류 모델 예측 성능의 오류가 어떠한 모습으로 발생하는지 알 수 있음

https://namu.wiki/w/%ED%98%BC%EB%8F%99%ED%96%89%EB%A0%AC

 

 

1. 정확도(Accuracy)

전체 관측치 중 올바르게 예측한 비율

정확도는 불균형한 레이블 값 분포에서 ML 모델의 성능을 판단할 경우, 적합한 평가지표가 아님

따라서, 정확도 평가지표는 불균형한 레이블 데이터 세트에서는 성능 수치로 사용해서는 안됨

 

2. 오분류율(Error Rate)

전체 관측치 중 잘못 예측한 비율

 

3. 특이도(Specificity)

실제 False 중 올바르게 False를 찾아낸 비율

 

4. 정밀도(Precision)

예측 Positive 중 올바르게 Positive를 찾아낸 배율

 

ex. 스팸 메일 여부 판단 모델 => 실제 Positive인 스팸 메일을 Negative인 일반 메일로 분류하더라도 사용자가 불편함을 느끼는 정도이지만, 실제 Negative인 메일을 Positive인 스팸 메일로 분류할 경우 메일을 아예 받지 못하게 돼 업무에 차질이 생김

 

5. 재현율(Sensitivity) (=  민감도)

실제 positive 중 올바르게 Positive를 찾아낸 비율

 

재현율이 상대적으로 더 중요한 지표인 경우는 실제 Positive 양성 데이터를 Negative로 잘못 판단하게 되면 업무상 큰 영향이 발생하는 경우 

ex. 암 판단 모델은 재현율이 중요함 => 실제 Positive인 암환자를 Negative 음성으로 잘못 판단했을 경우 오류의 대가가 생명을 앗아갈 정도로 심각하기 때문!

 

6. F1-Score

정밀도와 재현율을 결합한 지표

정밀도와 재현율이 어느 한쪽으로 치우치지 않는 수치를 나타낼 때 상대적으로 높은 값을 가짐

 

 

정밀도/재현율 트레이드 오프

분류하려는 업무의 특성상 정밀도 또는 재현율이 특별히 강조되어야 할 경우, 분류의 결정 임곗값(Threshold)을 조정해 정밀도 또는 재현율의 수치를 높일 수 있음

 

정밀도와 재현율은 상호 보완적인 평가 지표이기 때문에 어느 한쪽을 강제로 높이면 다른 하나의 수치는 떨어지기 쉬움, 이를 정밀도/재현율의 트레이드오프라고 함

 

 

ROC 곡선과 AUC

ROC 곡선은 FPR(False Positive Rate)이 변할때 TPR (True Positive Rate = 재현)이 어떻게 변하는지 나타내는 곡선

 

https://kr.mathworks.com/help/stats/perfcurve_ko_KR.html

 

점선으로 표시된 가운데 직선은 이진분류의 ROC 직선 (=AUC는 0.5)

ROC 곡선이 직선에 가까울수록 성능이 떨어지는 것이고, 멀어질수록 성능이 뛰어난 것 

 

728x90