오늘 끝나면
분류 평가: 혼동행렬
- ✓분류 평가: 혼동행렬의 핵심 문제를 한 문장으로 설명한다
- ✓오른쪽 실습에서 분류이 어떻게 움직이는지 관찰한다
- ✓다음 강의와 이어지는 한계를 말할 수 있다
실습 미션
TP·FP·FN·TN — 맞고 틀림의 네 칸 이 문장이 실제로 무슨 뜻인지 실습에서 한 번 손으로 확인한다.
성공 조건
- □실습의 기본값을 먼저 관찰
- □입력값이나 모드를 한 번 이상 바꿔 결과 비교
- □왜 결과가 바뀌었는지 한 문장으로 설명
통계 · 31
분류 평가:
혼동행렬
분류가 맞고 틀리는 경우는 네 가지뿐이다.
TP · TN · FP · FN, 이 네 칸이 혼동행렬이다.
정확도 하나로 뭉뚱그리면 불균형에 속는다.
분류는 맞고 틀림이 네 가지
분류는 “양성이냐 음성이냐”를 맞히는 일이다. 스팸과 정상, 암과 정상, 불량과 정상처럼.
한 건의 결과는 두 축의 곱으로 정해진다.
하나는 모델의 판정이다. 양성이라 했는지, 음성이라 했는지.
다른 하나는 진짜 정답이다. 실제로 양성이었는지, 음성이었는지.
판정 두 가지에 정답 두 가지를 곱하면 네 칸이 된다.
이 네 칸을 모아 둔 표가 혼동행렬 confusion matrix이다.
분류 평가의 모든 지표가 여기서 나온다.
양성
음성
대각선(TP·TN)이 맞춘 칸이고, 반대편 두 칸이 두 종류 오류다
TP · TN · FP · FN
네 칸에는 이름이 있다. 두 글자로 읽으면 헷갈리지 않는다.
뒤 글자는 모델이 뭐라 판정했는지를 가리킨다. P는 양성, N은 음성이다.
앞 글자는 그 판정이 맞았는지를 가리킨다. T는 맞음, F는 틀림이다.
TP는 맞게 양성이다. 진짜 양성을 양성이라 한 경우다.
TN은 맞게 음성이다. 진짜 음성을 음성이라 한 경우다.
FP는 거짓 양성이다. 음성인데 양성이라 한 헛 경보다.
FN은 거짓 음성이다. 양성인데 음성이라 한 놓침이다.
FP와 FN은 둘 다 오류지만 대가가 다르다.
암 검진은 FN(놓침)이 치명적이고, 스팸함은 FP(정상 메일을 스팸으로 보내는 것)가 더 아프다.
그래서 둘을 하나로 뭉뚱그리면 안 된다.
| TP | 맞게 양성True Positive진짜 양성을 양성이라 함 |
| TN | 맞게 음성True Negative진짜 음성을 음성이라 함 |
| FP | 거짓 양성False Positive음성인데 양성 = 헛 경보 |
| FN | 거짓 음성False Negative양성인데 음성 = 놓침 |
임계값을 끌면 네 칸이 움직인다
모델은 보통 0이나 1이 아니라 점수(확률)를 낸다. 그 점수를 양성과 음성으로 자르는 기준이 임계값이다.
임계값 선 오른쪽의 점은 양성으로 판정된다.
임계값을 내리면 더 많이 양성이라 판정한다. 그러면 TP는 늘지만 FP(헛 경보)도 는다.
올리면 신중해져서 FP는 줄지만 FN(놓침)이 는다.
한쪽을 줄이면 다른 쪽이 늘어난다. 공짜 점심은 없다.
정확도 한 숫자만 보면 이 맞바꿈이 안 보인다.
그래서 네 칸을 통째로 봐야 한다.
양성
음성
임계값을 올리면 FN(놓침)이 늘고, 내리면 FP(헛 경보)가 는다. 공짜 점심은 없다.
정확도 = (TP+TN) / 전체
가장 먼저 떠오르는 지표는 정확도다. 전체 중 맞춘 비율이다.
맞춘 칸은 대각선 두 개, 곧 TP와 TN이다.
정확도 = (TP + TN) / (TP + TN + FP + FN).
전체에서 맞게 분류한 비율이다.
쉽고 직관적이라 기본값으로 많이 쓴다.
하지만 분자가 TP와 TN을 똑같이 센다. 양성을 잘 잡았는지는 따로 보지 못한다.
이 무던함이 다음 장의 함정으로 이어진다.
(TP + TN)
──────────────
TP + TN + FP + FN
파란 두 칸(맞춘 것)을 전체로 나눈 비율이다
불균형이면 정확도가 속인다
정확도가 높다고 좋은 모델은 아니다. 데이터가 한쪽으로 쏠리면 정확도는 거짓말을 한다.
불량률 1%인 공장을 보자. 100개 중 99개가 정상이다.
아무 모델이나 “전부 정상”이라 찍어도 99개를 맞히니 정확도가 99%다.
숫자는 화려한데 불량은 단 하나도 못 잡는다. TP가 0이다.
정확도가 높았던 건 모델이 똑똑해서가 아니라 다수 클래스가 너무 많아서다.
드물지만 중요한 양성(암, 사기, 불량)을 찾는 문제일수록 정확도는 무력하다.
잡은 것 중 진짜인 비율이 정밀도, 진짜 중 잡은 비율이 재현율이다.
Q. 99%가 정상인 데이터에서 모델이 무조건 “정상”이라고만 답하면?
정확도는 99%로 아주 높게 나온다.하지만 양성(이상)은 하나도 못 잡는다. TP = 0, FN = 전부다.
진짜 잡아야 할 1%를 통째로 놓쳤는데 정확도만 보면 완벽해 보인다.
이것이 정확도의 함정이다. 불균형 데이터에서는 정밀도와 재현율로 봐야 한다.
정확도 = 99 / 100 = 99%
그런데 불량은 0개 잡았다 · TP = 0