F1 score
F1 score
개요
F1 score(F1 점수)는 머신러닝과 데이터 과학 분야에서 분류 모델의 성능을 평가하는 데 널리 사용되는 지표입니다. 특히 정밀도(Precision)와 재현율(Recall) 사이의 균형을 중요시할 때 유용하며, 두 지표의 조화 평균(Harmonic Mean)으로 정의됩니다. F1 score는 불균형한 데이터셋(Imbalanced Dataset)에서 모델의 성능을 평가할 때 특히 유용하게 활용됩니다.
예를 들어, 질병 진단, 스팸 메일 탐지, 이상 거래 탐지와 같은 분야에서는 양성 클래스(Positive Class)의 샘플 수가 매우 적은 경우가 많습니다. 이러한 상황에서 단순한 정확도(Accuracy)는 오해의 소지가 있을 수 있으므로, F1 score와 같은 보다 정교한 지표가 필요합니다.
F1 score의 정의와 수식
F1 score는 정밀도(Precision)와 재현율(Recall)의 조화 평균으로 계산됩니다. 조화 평균은 단순 평균보다 극단적인 값에 민감하게 반응하므로, 정밀도와 재현율 중 하나라도 낮으면 F1 score도 낮아지는 특성을 가집니다.
수식
[ F1 = 2 \times \frac{\text{Precision} \times \text{Recall}}{\text{Precision} + \text{Recall}} ]
여기서:
-
정밀도(Precision): 모델이 양성으로 예측한 샘플 중 실제로 양성인 비율
[ \text{Precision} = \frac{TP}{TP + FP} ] -
재현율(Recall): 실제 양성 샘플 중에서 모델이 올바르게 양성으로 예측한 비율
[ \text{Recall} = \frac{TP}{TP + FN} ]
여기서 (TP)(True Positive), (FP)(False Positive), (FN)(False Negative)는 혼동 행렬(Confusion Matrix)에서 유도되는 값입니다.
F1 score의 해석
F1 score는 0에서 1 사이의 값을 가지며, 1에 가까울수록 모델의 성능이 우수하다고 평가할 수 있습니다.
- F1 = 1: 정밀도와 재현율이 모두 1 (완벽한 예측)
- F1 = 0: 정밀도 또는 재현율 중 하나가 0 (모델이 전혀 작동하지 않음)
예시
다음과 같은 이진 분류 문제를 가정해 봅시다:
| 지표 | 값 |
|---|---|
| TP (참 긍정) | 80 |
| FP (거짓 긍정) | 20 |
| FN (거짓 부정) | 10 |
이 경우:
- Precision = ( \frac{80}{80 + 20} = 0.8 )
- Recall = ( \frac{80}{80 + 10} \approx 0.889 )
- F1 = ( 2 \times \frac{0.8 \times 0.889}{0.8 + 0.889} \approx 0.843 )
이 결과는 모델이 상당히 균형 잡힌 성능을 보이고 있음을 나타냅니다.
F1 score의 활용 사례
1. 불균형 데이터셋 평가
정확도가 높더라도, 소수 클래스의 예측 성능이 낮을 수 있습니다. 예를 들어, 99%가 음성이고 1%가 양성인 데이터셋에서 모든 샘플을 음성으로 예측하면 정확도는 99%지만, 재현율은 0%입니다. 이 경우 F1 score는 0이 되어 모델의 문제점을 명확히 드러냅니다.
2. 정보 검색 및 자연어 처리
문서 분류, 감성 분석, 개체명 인식(NER) 등에서 F1 score는 모델이 긍정적인 결과를 얼마나 정확하고 포괄적으로 식별하는지를 평가하는 데 사용됩니다.
3. 의료 진단 시스템
암 진단과 같은 분야에서는 재현율이 매우 중요하지만, 동시에 정밀도도 무시할 수 없습니다. F1 score는 두 요소를 동시에 고려할 수 있어 적합한 평가 지표입니다.
F1 score의 확장: Fβ score
F1 score는 정밀도와 재현율에 동일한 가중치를 부여하지만, 특정 상황에서는 한쪽을 더 중요시할 수 있습니다. 이를 위해 Fβ score가 제안되었습니다.
[ F_\beta = (1 + \beta^2) \times \frac{\text{Precision} \times \text{Recall}}{\beta^2 \times \text{Precision} + \text{Recall}} ]
- ( \beta = 1 ): F1 score (균형 잡힌 중요도)
- ( \beta > 1 ): 재현율에 더 큰 가중치 (예: ( \beta = 2 ))
- ( \beta < 1 ): 정밀도에 더 큰 가중치 (예: ( \beta = 0.5 ))
관련 지표와 비교
| 지표 | 설명 | 장점 | 단점 |
|---|---|---|---|
| 정확도(Accuracy) | 전체 예측 중 올바른 비율 | 직관적 | 불균형 데이터에 취약 |
| 정밀도(Precision) | 양성 예측의 신뢰도 | FP 최소화 중요 시 유용 | FN 무시 |
| 재현율(Recall) | 양성 샘플 탐지 능력 | FN 최소화 중요 시 유용 | FP 무시 |
| F1 score | 정밀도와 재현율의 조화 평균 | 균형 잡힌 평가 | 두 지표의 단점 반영 |
참고 자료 및 관련 문서
- Scikit-learn: Classification Report
- Confusion Matrix - 위키백과
- Powers, D. M. W. (2011). "Evaluation: from precision, recall and F-measure to ROC, Informedness, Markedness & Correlation". Journal of Machine Learning Technologies.
F1 score는 머신러닝 모델의 성능을 종합적으로 평가하는 데 핵심적인 역할을 하며, 특히 정밀도와 재현율 간의 트레이드오프를 고려해야 할 때 필수적인 지표입니다. 모델 개선 및 하이퍼파라미터 튜닝 과정에서 F1 score를 기준으로 삼는 것은 보다 신뢰할 수 있는 결과를 도출하는 데 기여합니다.
이 문서는 AI 모델(qwen-3-235b-a22b-instruct-2507)에 의해 생성된 콘텐츠입니다.
주의사항: AI가 생성한 내용은 부정확하거나 편향된 정보를 포함할 수 있습니다. 중요한 결정을 내리기 전에 반드시 신뢰할 수 있는 출처를 통해 정보를 확인하시기 바랍니다.