머신러닝분류 모델
TIL - 분류 모델 성능 지표, Precision, Recall, Accuracy
August 03, 2025

배경
머신 러닝을 이용하여 만든 분류 모델이 잘 작동하는 가를 평가하기 위해 지표를 이용한다. 제목에서 설명한 Precision, Recall, Accuracy가 이 지표에 해당한다. 언뜻 통계를 배울 때 봤던 것 같은 기분이 든다. 이 지표가 꽤 헷갈리기 때문에 이번 기회에 제대로 정리해보려고 한다.
혼동행렬
혼동행렬은 위 지표를 구하는 데 필요한 데이터를 시각적으로 보여주는 표이다.
예측값\실제값 | True | False |
---|---|---|
True(Positive) | TP | FP |
False(Negative) | FN | TN |
위의 표는 혼동행렬의 예시다. 예측값이 Postive, Negative로 표현된다는 것을 꼭 기억해야할 것 같다.
- TP: 실제값이 양성일 때, 양성이라 판단
- FP: 실제값이 음성일 때, 양성이라 판단
- FN: 실제값이 양성일 때, 음성이라 판단
- TN: 실제값이 음성일 때, 음성이라 판단
Precision
Precision 은 정밀도라고도 한다. 식은 다음과 같다.
모델이 참이라고 예측한 데이터 중, 실제로 참인 값의 비율을 구한다.
Recall
Recall은 재현율이라고도 한다. 식은 다음과 같다.
실제로 참인 값들 중에, 참이라고 판단된 값의 비율을 구한다.
Accuracy
Accuracy 는 정확도라고도 한다. 식은 다음과 같다.
위의 두 지표와는 다르게 음성을 잘 분류한 개수도 포함하고 있다. 값이 1에 가까울 수록 좋은 지표다.
F1 Score
Accuray는 구하는 것도 어렵지 않아서 곧잘 사용하는 지표이긴 하나 문제가 있다. 분류 데이터셋 라벨의 비율이 고르지 않으면 한 쪽에 치우쳐지는 점수를 산출하기 때문이다. 이를 어느 정도 바로잡고자 한 지표가 F1 Score 이다.
F1 Score를 계산하는 데에는 조화평균을 이용하고 있다. 이는 비중이 큰 데이터에 의한 치우침을 방지하는 목적이 있다.