통계 실험실 차트
넘스탯 로고
넘스탯
LEARN · SIMULATE · VERIFY

확률부터 LLM까지, 원리부터 제대로 배우는 자기주도 학습 플랫폼

로그인
학습 메뉴
도움말

모델 평가 실습실

"측정할 수 없으면 개선할 수 없다" — 분류·회귀 모델의 성능을 정확히 평가하는 방법

원하는 개념·랩·가이드를 검색해보세요

Ctrl K
기계학습 이론으로상세 이론 학습

정확도 99%가 왜 나쁜 모델일 수 있을까

100명 중 1명만 걸리는 병을 '모두 정상'이라 찍어도 정확도는 99%입니다 — 하지만 환자를 한 명도 못 잡죠. 정확도 하나로는 모델을 제대로 평가할 수 없습니다. 정밀도·재현율·F1·AUC가 왜 필요한지, 혼동 행렬로 직접 확인해 보세요.
이 페이지에서 배우고 나면
  • 정확도만으로는 왜 부족한지(불균형 데이터의 함정) 실험으로 이해할 수 있습니다.
  • 정밀도·재현율·F1·AUC가 각각 무엇을 재는지 직접 비교할 수 있습니다.
  • 혼동 행렬을 읽고 모델이 어떤 실수를 하는지 파악할 수 있습니다.
혼동 행렬과 5대 평가 지표

혼동 행렬(Confusion Matrix)은 분류 결과를 TP/FP/FN/TN 네 칸으로 분해합니다. 이 네 숫자로부터 Accuracy, Precision, Recall, Specificity, F1이 모두 도출됩니다. 어떤 지표를 최우선으로 볼지는 도메인의 오류 비용 구조에 달려 있습니다.

혼동 행렬과 5대 지표 — 분류 모델 성능 진단의 출발점혼동 행렬과 5대 지표 — 분류 모델 성능 진단의 출발점
ROC Curve와 AUC

ROC 곡선은 모든 임계값에서의 (FPR, TPR)을 그린 것으로, 임계값과 무관하게 모델 자체의 분류 능력을 평가합니다. AUC(Area Under Curve)는 무작위로 뽑은 양성 샘플의 점수가 무작위로 뽑은 음성 샘플보다 높을 확률 — 0.5는 무작위, 1.0은 완벽.

ROC Curve — Fawcett (Pattern Recognition Letters 2006)ROC Curve — Fawcett (Pattern Recognition Letters 2006)
예측 먼저 — 실험 전에 답을 정해 보세요
예측 → 실험 → 확인

정답을 몰라도 괜찮습니다 — 먼저 예측을 정해야 시뮬레이션 결과가 기억에 남습니다. 예측을 고른 뒤 아래 시뮬레이션으로 직접 확인하고, 그다음 결과를 열어 보세요.

1. 정확도 99%인 암 진단 모델 — 항상 좋은 모델일까요?
2. 분류 임계값을 0.5에서 0.3으로 낮추면 재현율(Recall)은 어떻게 될까요?
로그인하면 예측 기록이 계정에 저장됩니다

어느 기기에서든 이어서 학습하고, 오답 기반 복습 추천을 받을 수 있습니다.

카카오로 시작하기네이버로 시작하기구글로 시작하기
회원가입 절차 없음 — 닉네임만 저장하며, 이메일·연락처는 수집하지 않습니다.
모델 평가 인터랙티브 — 임계값 ↔ 혼동행렬·Precision·Recall·F1·ROC

이진 분류기의 출력 확률을 가정하고 분류 임계값을 조절하며 5대 지표와 ROC 곡선 위 현재 위치를 실시간 관찰하세요.

분류 임계값 = 0.50
임계값을 낮추면 → 양성 예측↑ (Recall↑, Precision↓), 높이면 반대
혼동 행렬 (Confusion Matrix)
예측: 정상 (0)
예측: 양성 (1)
실제: 정상
TN (진음성)
167
FP (위양성)
33
실제: 양성
FN (위음성)
10
TP (진양성)
90
Accuracy = 0.857
Precision = 0.732
Recall = 0.900
Specificity = 0.835
F1 = 0.807
ROC Curve (AUC = 0.950)
빨간 점 = 현재 임계값 (0.50)에서의 (FPR, TPR) = (0.165, 0.900)
실측 요약 — 이 실습이 보여주는 것

시드 고정으로 생성한 합성 예측 확률 300건(정상 200·양성 100)에 분류 임계값 슬라이더 하나를 걸어, 혼동행렬 네 칸과 Accuracy·Precision·Recall·Specificity·F1, 그리고 ROC 곡선 위의 현재 위치(빨간 점)가 실시간으로 재계산되는 실험입니다.

  • 임계값 트레이드오프 실측: 임계값을 0.8 → 0.5 → 0.3으로 낮추면 재현율은 0.27 → 0.90 → 0.97로 오르지만 정밀도는 1.00 → 0.73 → 0.53으로 떨어진다 (양성 판정 27 → 123 → 183건, 위양성 0 → 33 → 86건) — 문턱을 낮춘 대가는 언제나 거짓 경보다. 이 데이터의 AUC는 0.95다
  • 정확도의 착시를 인원수로 확인: 임계값을 1.0까지 올려 300명 전원을 "정상"으로 판정하면 양성 100명을 전부 놓치면서도 정확도 200/300 = 66.7%가 거저 나온다 — 클래스가 2:1로 불균형하면 정확도는 실력이 아니라 구성비를 먼저 반영한다
  • AUC는 임계값의 함수가 아니다: 슬라이더를 어디에 놓아도 ROC 곡선과 AUC는 변하지 않고, 임계값은 곡선 위에서 현재 위치만 고른다 — 어느 지점에서 운영할지(임계값 선택)와 모델 자체의 분별력 평가(AUC)는 별개의 문제다

바로잡는 오개념: "정확도 99%면 좋은 모델"이라는 믿음 — 환자가 1%뿐인 데이터에서는 "전원 정상"이라고만 해도 정확도 99%가 나온다. 불균형 문제에서는 혼동행렬을 열어 정밀도·재현율·F1로 무엇을 맞히고 무엇을 놓쳤는지 봐야 한다.

AI 튜터에게 물어보기
베타

— 정답 대신 힌트로 유도합니다. 지금 화면의 실험 상태를 알고 답해요.

예: “방금 결과가 이론과 다른데 왜죠?”, “이 값을 올렸는데 왜 반대로 변하죠?”

AI 답변은 부정확할 수 있습니다. 핵심 개념은 반드시 시뮬레이션 실측으로 확인하세요. 질문 0/5 · 하루 질문 한도가 있습니다
K-Fold 교차 검증

데이터를 K등분해 각 fold가 한 번씩 validation 역할을 합니다. K번 평균 성능으로 평가하면 단일 분할의 우연성을 제거하고 표준편차로 안정성까지 측정할 수 있습니다. K=5 또는 K=10이 표준이며, 작은 데이터에선 LOOCV(K=N)도 사용합니다.

5-Fold Cross-Validation — Kohavi (IJCAI 1995)5-Fold Cross-Validation — Kohavi (IJCAI 1995)
Train/Val/Test 분할 + 과적합 진단

Training(모델 학습) · Validation(튜닝·모델 선택) · Test(최종 평가, 한 번만)로 분리해 data leakage를 방지합니다. 학습 곡선에서 훈련 손실은 계속 감소하지만 검증 손실이 다시 상승하면 과적합 — Early Stopping 지점입니다.

Train/Val/Test 분할과 학습 곡선으로 과적합 진단Train/Val/Test 분할과 학습 곡선으로 과적합 진단
Precision-Recall Curve — 불균형 데이터의 진실

양성 비율이 5% 같은 극심한 불균형 데이터에서는 ROC-AUC가 부풀려 보입니다. PR Curve와 Average Precision(AP)이 더 솔직한 평가입니다 (Saito & Rehmsmeier, PLOS ONE 2015). 사기 탐지·희귀 질병 진단처럼 양성이 드문 도메인에서 필수.

PR Curve vs ROC Curve — 불균형 데이터에서 어떤 것을 봐야 하나?PR Curve vs ROC Curve — 불균형 데이터에서 어떤 것을 봐야 하나?
도메인별 핵심 지표 선택
🏥 의료 진단 → Recall 우선

놓치면(FN) 환자 생명에 영향. 위양성(FP)은 추가 검사로 확인 가능.

암 진단
응급실 분류
📧 스팸 필터 → Precision 우선

정상 메일을 스팸으로 분류(FP)하면 사용자 손해. 약간의 FN(스팸 통과)은 감수 가능.

스팸
모더레이션
💳 사기 탐지 → PR Curve + Recall

양성(사기)이 0.1%로 극심한 불균형. ROC-AUC는 부풀려 보임 → PR-AUC 사용.

결제 사기
이상 거래
일반 분류 → F1 + Accuracy

균형 잡힌 데이터에서는 F1으로 종합 평가. Accuracy로 직관적 비교.

이미지 분류
감정 분석
직접 해보기 — 실습 과제
  1. 임계값 0.5의 함정: 임계값을 0.5에서 0.3 → 0.7로 옮기며 Precision·Recall의 시소 관계 관찰. "최적 임계값은 도메인에 따라 다르다"
  2. F1의 균형점 찾기: 임계값을 천천히 옮기며 F1이 최댓값이 되는 지점 찾기. Precision과 Recall의 절충안
  3. ROC 곡선 위 이동: 임계값을 0→1로 옮기면 빨간 점이 (0,0)→(1,1)로 ROC 곡선을 따라 이동
  4. AUC의 임계값 무관성: 임계값을 어떻게 바꿔도 AUC는 변하지 않음. 모델 자체의 분류 능력 지표
  5. 의료 vs 스팸 시뮬레이션: 의료(Recall 우선) → 임계값 낮추기 / 스팸(Precision 우선) → 임계값 높이기. 같은 모델, 다른 운영점
📖 더 깊이 학습하기
  • Hastie, Tibshirani, Friedman — Elements of Statistical Learning (Springer 2009) — Ch.7: 모델 평가·선택의 표준 교재
  • Fawcett (Pattern Recognition Letters 2006): "An introduction to ROC analysis" — ROC 가이드
  • Kohavi (IJCAI 1995): "A study of cross-validation and bootstrap" — CV 표준
  • Saito & Rehmsmeier (PLOS ONE 2015): ROC vs PR Curve 비교 (불균형 데이터)
  • scikit-learn 문서: sklearn.metrics, sklearn.model_selection