결론 먼저
분류 모델 평가지표는 혼동행렬 4개 셀(TP/FP/FN/TN) 만 정확히 박아두면 나머지는 다 거기서 파생됩니다.
| 지표 | 공식 | 한 줄 의미 |
|---|---|---|
| 정확도 (Accuracy) | (TP+TN) / 전체 | 전체 중 맞춘 비율 |
| 정밀도 (Precision) | TP / (TP+FP) | 양성으로 예측한 것 중 진짜 양성 비율 |
| 재현율 (Recall) | TP / (TP+FN) | 실제 양성 중 잡아낸 비율 |
| 특이도 (Specificity) | TN / (TN+FP) | 실제 음성 중 잡아낸 비율 |
| F1 score | 2·P·R / (P+R) | 정밀도·재현율 조화평균 |
ADsP에서는 혼동행렬 표 주고 직접 계산하는 문제가 매회 1–2개 나와요. 식만 외우면 점수 그대로 회수되는 영역.
왜 이 영역에서 점수가 갈리나
식이 비슷비슷해서 헷갈립니다. 특히 정밀도와 재현율은 분모가 달라서 자주 바꿔 풀어요.
- 정밀도: 분모에 FP (예측 양성 = TP+FP)
- 재현율: 분모에 FN (실제 양성 = TP+FN)
이거 하나만 정확히 머릿속에 박혀 있어도 ADsP 평가지표 문제는 끝이에요. 시험장에서 흥분해서 분모 바꿔쓰면 그대로 4점 날립니다.
정밀도 = "예측 기준" / 재현율 = "실제 기준". 분모가 어디서 합쳐지는지만 정확히 그려두세요.1. 혼동행렬 (Confusion Matrix) 4개 셀
| 예측 양성 (Positive) | 예측 음성 (Negative) | |
|---|---|---|
| 실제 양성 | TP (True Positive) | FN (False Negative) |
| 실제 음성 | FP (False Positive) | TN (True Negative) |
암기 포인트:
- 첫 글자 T/F: 예측이 맞았는지 (True 면 정답)
- 두 번째 글자 P/N: 예측한 클래스 (P 면 양성으로 예측)
→ "TP는 양성으로 예측해서 맞춘 것, FP는 양성으로 예측했는데 틀린 것".
2. 정확도 (Accuracy) — 가장 단순하지만 함정
Accuracy = (TP + TN) / (TP + FP + FN + TN)
전체 중 맞춘 비율. 직관적이라 쉽지만 데이터 불균형 함정이 있어요.
예: 암 진단에서 환자 1%, 정상 99%. 모델이 무조건 "정상" 만 예측해도 정확도 99%. 이런 케이스는 정확도가 무의미하고 재현율(민감도) 가 핵심.
→ ADsP에서 "데이터 불균형 시 어떤 지표가 적절한가" 같은 보기로 자주 나옵니다.
3. 정밀도(Precision) vs 재현율(Recall)
| 구분 | 정밀도 | 재현율 |
|---|---|---|
| 공식 | TP / (TP+FP) | TP / (TP+FN) |
| 분모 의미 | 모델이 양성으로 예측한 전체 | 실제 양성 전체 |
| 관점 | "예측이 얼마나 정확한가" | "실제 양성을 얼마나 놓치지 않았나" |
| 비유 | 스팸 필터: 스팸이라 차단한 것 중 진짜 스팸 비율 | 암 진단: 실제 환자 중 검진해서 잡은 비율 |
Trade-off
정밀도와 재현율은 서로 반비례 관계가 자주 생깁니다.
- 양성 판정 기준을 까다롭게 → 정밀도↑, 재현율↓
- 양성 판정 기준을 느슨하게 → 정밀도↓, 재현율↑
상황에 따라 어느 쪽을 우선할지 결정해야 해요.
- 암 진단: 놓치면 큰일 → 재현율 우선
- 스팸 필터: 정상메일을 스팸 처리하면 곤란 → 정밀도 우선
4. F1 Score — 정밀도와 재현율의 조화평균
F1 = 2 · (Precision · Recall) / (Precision + Recall)
산술평균이 아닌 조화평균인 게 핵심. 둘 중 하나가 너무 낮으면 F1도 낮게 끌려가요.
예: 정밀도=0.9, 재현율=0.1 → 산술평균 0.5지만 F1 = 2·0.09/1.0 = 0.18. 조화평균은 약한 값에 끌리는 성질.
→ "둘 다 균형 있게 좋은 모델" 을 평가하고 싶을 때 F1 사용.
5. 특이도 (Specificity) — 재현율의 반대 짝
Specificity = TN / (TN + FP)
실제 음성 중 음성으로 잘 분류한 비율. 의료 분야에서는 재현율(민감도)과 함께 짝으로 봅니다.
- 민감도 = 재현율 = 실제 환자를 환자로 잘 잡는 비율
- 특이도 = 실제 정상을 정상으로 잘 잡는 비율
ADsP 시험에서는 "민감도 = 재현율" 이라는 사실을 묻는 문제가 자주 나와요. 같은 개념 다른 용어라 외워두세요.
6. ROC 곡선과 AUC
분류 모델의 임계값을 바꿔가며 성능을 시각화한 곡선.
- X축: 1 - 특이도 (= FPR, False Positive Rate)
- Y축: 재현율 (= TPR, True Positive Rate)
| AUC 범위 | 모델 성능 |
|---|---|
| 0.9 – 1.0 | 우수 (Excellent) |
| 0.8 – 0.9 | 좋음 (Good) |
| 0.7 – 0.8 | 보통 (Fair) |
| 0.6 – 0.7 | 약함 (Poor) |
| 0.5 | 무작위 (Random, 대각선) |
- AUC = 1.0 → 완벽한 분류
- AUC = 0.5 → 동전 던지기 수준
- AUC < 0.5 → 거꾸로 예측 (반전하면 더 나음)
ROC 곡선이 왼쪽 위 모서리에 붙을수록 좋은 모델. 곡선 아래 면적(Area Under the Curve = AUC) 이 0.5보다 크면 무작위보다 낫다는 뜻이에요.
7. 회귀 모델 평가지표 (참고)
분류 평가지표가 메인이지만 회귀도 가끔 나와요.
| 지표 | 공식 | 특성 |
|---|---|---|
| MAE (Mean Absolute Error) | 평균 절대 오차 | 단위가 원본과 동일, 직관적 |
| MSE (Mean Squared Error) | 평균 제곱 오차 | 큰 오차에 가중치 |
| RMSE (Root MSE) | √MSE | 단위가 원본과 동일 |
| R² (결정계수) | 1 − SSE/SST | 0–1, 1에 가까울수록 좋음 |
회귀에서 R²(결정계수) 가 가장 자주 나오고, 분류 지표와 절대 헷갈리지 않게 분리해서 외우세요.
자주 틀리는 5가지 패턴
1. 정밀도와 재현율 분모 바꿔쓰기 당황하면 가장 흔한 실수. 정밀도 분모 = TP+FP (예측 양성), 재현율 분모 = TP+FN (실제 양성).
2. 정확도 99% = 좋은 모델로 착각 데이터 불균형이면 정확도 의미 없음. 재현율·정밀도·F1 함께 봐야 함.
3. F1을 산술평균으로 계산 F1은 조화평균. 산술평균 (P+R)/2 와 결과 다름.
4. ROC 축 헷갈림 X = 1-특이도 (FPR), Y = 재현율 (TPR). 거꾸로 보면 곡선이 반대 방향.
5. AUC = 1 이 완벽 vs 0이 최악? AUC 0 은 "완벽하게 거꾸로 예측" 이라 사실 반전하면 완벽 모델이 됩니다. 진짜 최악은 AUC = 0.5 (무작위).
시험장에서의 접근법
- 혼동행렬 표 받자마자 4셀에 TP/FP/FN/TN 라벨링
- 물어본 게 정밀도? 재현율? 분모 결정
- 계산 후 상식 체크: 0–1 사이인가, 분모 0 아닌가
- F1 묻는다면 정밀도·재현율 먼저 구해두기
정리
- 혼동행렬: TP/FP/FN/TN — T면 맞춤, P면 양성 예측
- 정밀도 = TP/(TP+FP) "예측 기준"
- 재현율(민감도) = TP/(TP+FN) "실제 기준"
- F1 = 정밀도·재현율 조화평균 (둘 다 균형)
- ROC: X=1-특이도, Y=재현율. AUC 1에 가까울수록 좋음
- 데이터 불균형이면 정확도 대신 정밀도·재현율·F1