-
Classification Evaluation Metricsdeep learning/computer vision 2024. 2. 9. 14:34
Confusion Matrix(혼동 행렬, 오차 행렬)
분류 모델(classifier)의 성능을 측정하는 데 자주 사용되는 표로 모델이 두 개의 클래스를 얼마나 헷갈려하는지 알 수 있다.
- T(True): 예측한 것이 정답
- F(False): 예측한 것이 오답
- P(Positive): 모델이 positive라고 예측
- N(Negative): 모델이 negative라고 예측
- TP(True Positive): 모델이 positive라고 예측했는데 실제로 정답이 positive (정답)
- TN(True Negative): 모델이 negative라고 예측했는데 실제로 정답이 negative (정답)
- FP(False Positive): 모델이 positive라고 예측했는데 실제로 정답이 negative (오답)
- FN(False Negative): 모델이 negative라고 예측했는데 실제로 정답이 positive (오답)
Accuracy(정확도)
모델이 전체 문제 중에서 정답을 맞춘 비율
하지만 데이터가 불균형할 때(ex) positive:negative=9:1)는 Accuracy만으로 제대로 분류했는지는 알 수 없기 때문에 Recall과 Precision을 사용한다.
0 ~ 1 사이의 값을 가지며, 1에 가까울수록 좋다.
\(Accuracy = {TP + TN \over TP + TN + FP + FN}\)
Precision(정밀도) = PPV(Positive Predictive Value)
모델이 positive라고 예측한 것들 중에서 실제로 정답이 positive인 비율로, 참으로 예측한 것의 정답 비율
실제 정답이 negative인 데이터를 positive라고 잘못 예측하면 안 되는 경우에 중요한 지표가 될 수 있다.
Precision을 높이기 위해선 FP(모델이 positive라고 예측했는데 정답은 negative인 경우)를 낮추는 것이 중요하다.
0 ~ 1 사이의 값을 가지며, 1에 가까울수록 좋다.
\(Precision = {TP \over TP + FP}\)
Recall(재현율) = Sensitivity(민감도) = TPR(True Positive Rate)
실제로 정답이 positive인 것들 중에서 모델이 positive라고 예측한 비율이다.
실제 정답이 positive인 데이터를 negative라고 잘못 예측하면 안 되는 경우에 중요한 지표가 될 수 있다.
Recall를 높이기 위해선 FN(모델이 negative라고 예측했는데 정답이 positive인 경우)을 낮추는 것이 중요하다.
0 ~ 1 사이의 값을 가지며, 1에 가까울수록 좋다.
\(Recall = {TP \over TP + FN}\)
F1 score
Recall과 Precision의 조화평균이다.
Recall과 Precision은 상호 보완적인 평가 지표이기 때문에 F1 score를 사용한다.
Precision과 Recall이 한쪽으로 치우쳐지지 않고 모두 클 때 큰 값을 가진다.
0 ~ 1 사이의 값을 가지며, 1에 가까울수록 좋다.
\(F1 Score = {2 * Precision * Recall \over Precision + Recall}\)
기타
그 외에도 Error Rate, Specificity, Fall Out 등이 있다.
Error Rate(오분류율)
모델이 전체 데이터에서 잘못 맞춘 비율이다.
\(Error Rate = {FP + FN \over TP + TN + FP + FN}\)
Specificity(특이도) = TNR(True Negative Rate)
실제 정답이 negative인 것들 중에서 모델이 negative라고 예측한 비율이다.
\(Specificity = {TN \over TN + FP}\)
Fall Out(위양성률) = FPR(False Positive Rate)
실제 정답이 negative인 것들 중에서 모델이 positive라고 예측한 비율이다.
\(Fall Out = {1 - Specificity} = {1 - Tn \over TN + FP} = {FP \over FP + TN}\)
Multi classification의 Evaluation Method
Macro와 Micro의 개념을 사용할 수 있는데,
- Macro : 모든 클래스의 평가 지표를 계산한 다음 평균을 활용하여 전체 결과값 도출
- Micro : 개별 클래스의 평가 지표를 계산한 다음 이를 활용하여 전체 결과값 도출
Macro Precision
\(Macro Precision = {1 \over C} * {\sum_{i=1}^C Precision_i}\)
Macro Recall
\(Macro Recall = {1 \over C} * {\sum_{i=1}^C Recall_i}\)
Macro F1 Score
\(Macro F1 Score = {1 \over C} * {\sum_{i=1}^C F1 Score_i}\)
Micro Precision
\(Micro Precision = {\sum_{i=1}^C TP_i \over \sum_{i=1}^C (TP_i +FP_i)}\)
Micro Recall
\(Micro Recall = {\sum_{i=1}^C TP_i \over \sum_{i=1}^C (TP_i +FN_i)}\)
Micro F1 Score
\(Microm F1 Score = {2 * Micro Precision * Micro Recall \over Micro Precision * Micro Recall}\)
'deep learning > computer vision' 카테고리의 다른 글
ResNet-101 Classification 실습 연습 (0) 2024.02.11 Classficiation Model Outline (0) 2024.02.10