머신러닝 분류 문제에서 모델이 얼마나 잘 작동하는지를 평가하기 위해 다양한 메트릭(metric)이 사용된다. 가장 기본적인 메트릭은 Accuracy(정확도)이지만, 데이터의 특성이나 목적에 따라 Precision(정밀도), Recall(재현율), F1 Score 등 다른 지표들이 더 유용한 경우도 많다.
1. Accuracy (정확도)
Accuracy는 전체 데이터 중에서 모델이 정답을 맞춘 비율을 의미한다. 가장 직관적인 메트릭이며, 클래스 비율이 균형 잡힌 데이터셋에서는 성능을 평가하기에 좋은 지표다.
$$\text{Accuracy} = \frac{TP + TN}{TP + FP + FN + TN}$$
TP: True Positive
TN: True Negative
FP: False Positive
FN: False Negative
하지만 데이터가 불균형한 경우(예: 긍정 1%, 부정 99%)에는 Accuracy가 높게 나와도 실제 성능이 나쁠 수 있으므로 주의가 필요하다.
2. Precision (정밀도)
Precision은 모델이 Positive라고 예측한 것들 중에서 실제로 Positive인 비율을 나타낸다. 즉, "예측한 것 중에 얼마나 맞췄나"를 보는 지표다.
$$\text{Precision} = \frac{TP}{TP + FP}$$
정밀도는 잘못된 Positive 예측(False Positive)을 줄이는 데 초점을 둔다. 예를 들어 스팸 필터링에서는 일반 메일을 스팸으로 분류하는 실수를 줄이는 것이 중요하므로 Precision이 중요한 지표다.
3. Recall (재현율, 민감도)
Recall은 실제 Positive 중에서 모델이 얼마나 잘 찾아냈는지를 의미한다. 즉, "전체 정답 중에 얼마나 맞췄나"를 보는 지표다.
$$\text{Recall} = \frac{TP}{TP + FN}$$
재현율은 놓치지 않는 것이 중요한 경우에 중요하다. 예를 들어 암 진단에서 실제 환자를 놓치지 않는 것이 중요하므로 Recall이 높은 모델이 유리하다.
4. F1 Score
F1 Score는 Precision과 Recall의 조화 평균이다. 두 지표 사이의 균형을 고려할 때 유용한 메트릭이다.
$$\text{F1 Score} = 2 \cdot \frac{\text{Precision} \cdot \text{Recall}}{\text{Precision} + \text{Recall}}$$
Precision과 Recall 사이의 균형이 중요하거나, 둘 다 중요할 때 F1 Score는 좋은 성능 평가 기준이 된다. 특히 클래스가 불균형한 상황에서는 Accuracy보다 F1 Score가 더 적절한 평가 기준이 될 수 있다.
5. Confusion Matrix
이 외에도 분류 성능을 종합적으로 시각화하기 위해 Confusion Matrix(혼동 행렬)을 함께 사용하면 좋다. 이는 예측값과 실제값의 조합을 통해 모델이 어떤 종류의 실수를 했는지 직관적으로 파악할 수 있게 해준다.
결론적으로, 분류 문제에서는 단순한 정확도만으로는 모델의 성능을 온전히 평가하기 어렵다. 문제의 성격과 목표에 맞게 Precision, Recall, F1 Score 등의 다양한 메트릭을 종합적으로 활용해야 한다.
'공부 > 머신러닝' 카테고리의 다른 글
| LSA (Latent Semantic Analysis) (0) | 2025.05.27 |
|---|---|
| Regression(회귀) Metric (0) | 2025.05.25 |