Series

ROC·AUC 완전 입문 — 처음부터 끝까지 따라 읽는 한 권

통계도 코딩도 한 번 본 적 없는 사람이, 혼동행렬의 네 칸에서 출발해 ROC 곡선AUC를 손으로 그리고 계산하고, 나아가 임계값 선택·불균형 데이터·다중분류·흔한 오해까지 막힘없이 통과하도록 설계된 학습서입니다.

이 책은 ROC 곡선과 AUC라는 단 두 개의 도구를 깊이 이해하는 것을 목표로 합니다. 두 개념은 갑자기 하늘에서 떨어지지 않습니다. 더 작고 단단한 토대 — 점수·임계값·예측, 그리고 혼동행렬 — 위에 한 층씩 쌓아 올린 건물입니다. 그래서 이 책은 그 토대부터 시작해 순서대로 읽도록 만들어졌습니다.


이 책을 읽는 법

  • 순서대로 읽으세요. 각 장은 바로 앞 장에서 정의한 용어를 다시 정의하지 않고 이름만 불러 씁니다. 00장에서 09장까지 번호 순서가 곧 학습 순서입니다.
  • 건너뛰지 마세요. 특히 00 → 01 → 02 → 03 → 04는 한 줄기의 이야기입니다. 04(손계산)까지 마치면 ROC·AUC의 기계를 손으로 돌릴 수 있게 됩니다.
  • 04 이후는 실전 주제입니다. 05(임계값 선택)·06(불균형)·07(다중분류)는 04를 공통 토대로 삼는 평행한 갈래라, 관심 순서대로 읽어도 됩니다. 08(오해)과 09(요약)는 마지막에 읽으세요.
  • 그림과 손계산을 직접 따라가 보세요. 본문의 표·수식은 읽고 넘기는 장식이 아니라, 펜을 들고 한 칸씩 채워 보라고 둔 것입니다. 특히 04장의 AUC=0.76 삼중 검산은 직접 손을 더럽혀 볼 때 비로소 "이해했다"가 됩니다.

챕터 한눈표

제목 한 줄 요지 핵심 그림
00 토대: 점수·임계값·예측과 혼동행렬 모든 것의 재료 — TP·FP·FN·TN과 네 가지 비율 혼동행렬 히트맵
01 임계값과 혼동행렬 다이얼(임계값)을 돌리면 네 칸이 시소처럼 움직인다 — 공짜 점심은 없다 점수 분포 + 임계값
02 ROC 곡선이란 임계값을 전부 써 본 결과를 한 장에 그린 지도 ROC 작도 + 2-패널
03 AUC: 곡선 아래 면적 곡선의 좋음을 숫자 하나로 — 면적이자 확률 면적·확률 / 4분류기 비교
04 워크드 예제: 손으로 계산하기 같은 AUC=0.76에 세 갈래 길로 도달해 검산한다 손계산 ROC + 사다리꼴
05 임계값 선택법 곡선 위 어느 점에 설 것인가 — Youden's J와 비용 Youden's J 운영점
06 불균형 데이터: ROC vs PR 음성의 바다가 ROC를 속인다 — PR이 진실을 말한다 ROC vs PR 2-패널
07 다중분류 ROC OvR로 쪼개고 macro·micro로 합치기 다중분류 OvR ROC
08 자주 하는 오해와 주의점 한 숫자에 속지 않기 — 다섯 가지 함정 교차하는 두 ROC
09 마무리: 치트시트·결정표·체크리스트 전권을 한 장으로 — 언제 무엇을 쓰나 (요약)
GLOSSARY 용어 색인 짧은 정의 + 깊은 설명으로 가는 링크

전체 학습 경로 — 장과 장은 어떻게 이어지는가

아래 그림은 각 장이 어떤 앞 장에 의존하는지를 나타낸 개념 의존 지도입니다. 화살표는 "이 장을 읽으려면 저 장이 먼저 필요하다"는 뜻입니다. 00에서 04까지는 한 줄기로 곧게 이어지고, 04를 마치면 {05, 06, 07}로 갈라졌다가, 08(오해)·09(요약)에서 다시 모입니다.

00 토대
혼동행렬·TP/FP/FN/TN
정밀도·재현율·TPR·FPR

01 임계값↔혼동행렬
임계값 이동→칸 변화

02 ROC 곡선
임계값 스윕→(FPR,TPR)

03 AUC
면적·확률해석

04 워크드 예제
손계산

05 임계값 선택
Youden's J·비용

06 불균형
ROC vs PR

07 다중분류
OvR·macro/micro

08 오해·주의점

09 마무리
치트시트·결정표


그림을 다시 그리고 싶다면

이 책의 모든 수치 그림(13장)은 결정적으로 재현 가능합니다. 그림 생성 파이썬 스크립트는 scripts/ 디렉터리에, 생성된 PNG는 figures/ 디렉터리에 있습니다. 각 그림은 단독 실행으로 다시 만들 수 있습니다.

python3 scripts/fig-04-worked-roc.py     # 예: 04장 워크드 ROC 다시 그리기

스크립트는 Apple SD Gothic Neo 폰트와 색맹 안전 팔레트(양성=주황 #E69F00, 음성=파랑 #0072B2)를 쓰며, 난수 그림은 시드를 고정해 매번 같은 결과를 냅니다. 그림이 쓰는 핵심 수치(각 곡선의 AUC·주요 좌표 등)는 figures/values.json에 정리되어 본문 서술과 대조할 수 있습니다.


출발

준비됐다면 00 — 토대에서 시작하세요. 거기서 우리는 ROC라는 단어를 거의 꺼내지도 않고, 그 모든 것의 재료가 되는 점수·임계값·예측과 혼동행렬의 네 칸을 천천히 깔아 둡니다. 마지막 09 — 마무리에 도착하면, 이 책 전체를 한 장의 치트시트와 결정표로 손에 쥐게 됩니다.

Click a node to jump to that chapter. Chapters you have read are marked.
Advertisements

Chapters at a glance