AIF-C01은 복잡한 수식을 외우라고 하지 않는다. "정밀도와 재현율이 각각 무엇을 신경 쓰는가" 라는 직관을 묻는다. 예를 들어 "이 메일이 스팸인가?"를 판단하는 모델을 떠올리면 된다.
실제 \ 예측 스팸이라 예측 정상이라 예측 실제 스팸 참 양성(TP) ✅ 맞게 잡음 거짓 음성(FN) ❌ 놓침 실제 정상 거짓 양성(FP) ❌ 헛잡음 참 음성(TN) ✅ 맞게 통과
거짓 양성(FP) : 멀쩡한 걸 잘못 잡음(정상 메일을 스팸으로).
거짓 음성(FN) : 잡아야 할 걸 놓침(스팸을 정상으로 통과).
어느 실수가 더 치명적인지는 상황마다 다르다 .
이 2×2 표를 혼동 행렬(Confusion Matrix) 이라고 한다. 정확도·정밀도·재현율은 모두 이 네 칸의 숫자로부터 계산된다. 표를 외울 필요는 없지만, "잘못 잡는 실수(FP)"와 "놓치는 실수(FN)"가 다르다는 감각은 시험과 실무 모두에서 중요하다.
"전체 판단 중 몇 개를 맞혔는가." 100건 중 90건을 옳게 분류했다면 정확도 90%.
단순하고 이해하기 쉽지만, 불균형 데이터에서는 속기 쉽다 .
"모델이 스팸이라고 잡은 것들 중, 진짜 스팸이 얼마나 되는가."
정밀도가 낮다 = 멀쩡한 메일을 스팸으로 잘못 잡는 일(FP )이 많다.
📚 사례 : 스팸 필터에서 정밀도가 중요하다. 중요한 업무 메일이 스팸함으로 잘못 분류되면(FP) 큰일이기 때문이다. "잡았으면 확실히 스팸이어야 한다"는 게 정밀도 중심 사고다.
"실제 스팸들 중에서, 모델이 얼마나 많이 잡아냈는가."
재현율이 낮다 = 진짜 스팸을 많이 놓치는 일(FN )이 많다.
📚 사례 : 암 진단 모델에서는 재현율이 결정적이다. 실제 암 환자를 놓치면(FN) 생명이 위험하다. 멀쩡한 사람을 의심해 추가 검사를 받게 하는 것(FP)이 훨씬 덜 치명적이다. "진짜는 절대 놓치면 안 된다"는 게 재현율 중심 사고다.
지표 한 줄 정의 무엇을 두려워하나 중요한 상황 정밀도(Precision) 잡은 것 중 진짜 비율 헛잡음(FP) 스팸 필터, 잘못된 경보가 비싼 경우 재현율(Recall) 진짜 중 잡아낸 비율 놓침(FN) 암 진단, 사기 탐지, 놓치면 치명적인 경우
둘은 보통 줄다리기 관계 다.
모든 걸 다 스팸이라 잡으면 → 재현율 100%(아무것도 안 놓침), 정밀도는 바닥(멀쩡한 것도 다 잡음). 반대도 마찬가지.
그래서 둘의 균형을 하나의 숫자로 보려고 F1 점수(F1 Score) 라는 조화 평균을 쓰기도 한다.
F1 점수는 정밀도와 재현율의 조화 평균으로, 둘 사이의 균형을 하나의 값으로 요약한다. 시험에서는 "정밀도와 재현율을 함께 고려하는 지표가 F1"이라는 정도만 알면 충분하다. 어떤 지표를 우선할지는 "어떤 실수가 더 치명적인가" 라는 비즈니스 질문이 결정한다.
메일 1,000통(실제 스팸 100통, 정상 900통)을 스팸 필터에 넣었더니 90통을 스팸으로 잡았고, 그중 80통이 진짜 스팸이었다.
실제 \ 예측 스팸이라 예측 정상이라 예측 합계 실제 스팸 TP 80 FN 20 100 실제 정상 FP 10 TN 890 900 합계 90 910 1,000
지표 읽는 법 계산 값 정확도 전체 중 맞힌 것 (80 + 890) ÷ 1,000 97.0% 정밀도 예측 열 을 본다: 잡은 90통 중 진짜80 ÷ 90 약 88.9% 재현율 실제 행 을 본다: 진짜 100통 중 잡은 것80 ÷ 100 80.0% F1 점수 정밀도와 재현율의 조화 평균 2 × 80 ÷ (2 × 80 + 10 + 20) 약 84.2%
외우는 요령: 정밀도의 분모는 모델이 잡은 것 (TP + FP), 재현율의 분모는 실제로 있던 것 (TP + FN). 분자는 둘 다 TP다.
정확도 97%만 보면 훌륭해 보이지만, 스팸 다섯 통 중 한 통은 여전히 받은편지함에 들어온다(재현율 80%). 지표마다 보여 주는 면이 다르다.
모델은 보통 "스팸일 가능성 몇 %"라는 점수를 내고, 몇 % 이상부터 스팸으로 잡을지 는 사람이 정한다. 같은 모델, 같은 1,000통에서 이 기준선만 바꿔 계산한다.
기준선 스팸으로 잡은 수 TP FP FN 정밀도 재현율 깐깐하게(확실할 때만 잡음) 60 58 2 42 약 96.7% 58.0% 중간 90 80 10 20 약 88.9% 80.0% 느슨하게(조금만 의심돼도 잡음) 200 95 105 5 47.5% 95.0%
깐깐하게 잡으면 헛잡음(FP)이 2통으로 줄지만 스팸 42통을 놓친다. 느슨하게 잡으면 5통만 놓치지만 정상 메일 105통이 스팸함으로 간다.
이것이 줄다리기의 실체다. 모델을 바꾸지 않아도 기준선 하나로 정밀도와 재현율을 맞바꿀 수 있고 , 어디에 둘지는 "어느 실수가 더 비싼가"가 정한다.
어제의 사기 탐지 예(거래 10,000건 중 사기 10건)에 "전부 정상"이라고 답하는 모델을 네 칸에 넣으면 TP 0, FP 0, FN 10, TN 9,990이다.
정확도 = 9,990 ÷ 10,000 = 99.9%
재현율 = 0 ÷ 10 = 0% — 사기를 하나도 못 잡았다는 사실이 바로 드러난다.
정밀도는 분모(잡은 것)가 0이라 계산할 값조차 없다.
드문 대상을 찾는 문제에서 정확도 대신 재현율·정밀도·F1을 봐야 한다는 말은 이 계산에서 나온다.
먼저 "양성(positive)"이 무엇인지 정한다. 양성은 좋은 것이라는 뜻이 아니라 모델이 찾으려는 대상 이다. 암 진단에서는 "암 있음"이 양성이다.
시나리오 더 비싼 실수 우선 지표 중요한 업무 메일이 스팸함에 들어가면 안 되는 스팸 필터 헛잡음(FP) 정밀도 환자를 놓치면 안 되는 질병 선별 검사 놓침(FN) 재현율 사기 거래를 최대한 빠짐없이 잡아야 하는 탐지 시스템 놓침(FN) 재현율 위험물을 통과시키면 안 되는 보안 검색 놓침(FN) 재현율 "어린이에게 안전함" 표시를 붙여 주는 영상 분류 헛잡음(FP) — 유해 영상에 안전 표시 정밀도 한 통 보낼 때마다 비용이 큰 고가 쿠폰의 발송 대상 선정 헛잡음(FP) — 반응 없을 사람에게 발송 정밀도 양성 사례가 드물고 두 실수가 모두 부담스럽다 둘 다 F1 점수 두 범주가 비슷한 비율이고 실수의 비용도 비슷하다 구분 없음 정확도로도 충분
지문에서 찾을 단어: "놓치면 안 된다, 빠짐없이 " → 재현율. "잘못 잡으면 곤란하다, 확실한 것만 " → 정밀도. "균형 " → F1.
시험 가이드는 모델을 평가하는 잣대를 두 묶음으로 나눈다.
묶음 예 답해 주는 질문 모델 성능 지표 정확도, 정밀도, 재현율, F1 점수 "모델이 얼마나 잘 맞히는가" 비즈니스 지표 사용자당 비용, 개발 비용, 고객 피드백, 투자 수익률(ROI) "그래서 사업에 이익이 되는가"
재현율이 3%p 오른 새 모델이 운영비를 두 배로 만든다면, 모델 지표로는 개선이지만 비즈니스 지표로는 후퇴일 수 있다.
반대로 모델 지표가 그대로여도 응답이 빨라져 고객 불만이 줄었다면 비즈니스 지표로는 개선이다. 두 묶음을 함께 봐야 배포 여부를 정할 수 있다.
참고로 오늘의 지표는 모두 분류 용이다. 가격·수요처럼 숫자를 맞히는 회귀는 "맞았다/틀렸다"가 아니라 예측값이 실제값에서 얼마나 벗어났는가 로 평가한다.
"정확도가 높으면 좋은 모델" → 데이터가 한쪽으로 쏠려 있으면 아무것도 못 잡는 모델도 정확도가 높다.
"정밀도와 재현율을 둘 다 100%로 만들면 된다" → 기준선을 옮기면 한쪽이 오를 때 다른 쪽이 내려간다. 둘을 함께 올리려면 모델이나 데이터 자체가 나아져야 한다.
"재현율 100%면 완벽한 모델" → 전부 양성이라고 답하면 재현율은 100%다. 정밀도를 같이 보지 않으면 의미가 없다.
"F1 점수는 정확도의 다른 이름" → F1은 TN(맞게 통과시킨 것)을 계산에 넣지 않는다. 그래서 찾는 대상이 드문 문제에서 정확도보다 정직하다.
"정밀도와 정확도는 같은 말" → 정확도는 전체 판단이 분모, 정밀도는 모델이 잡은 것만 분모다.
좋은 모델은 학습 데이터에서 배운 패턴을 처음 보는 데이터에도 잘 적용 한다. 이 능력이 일반화(Generalization)다.
증상 무슨 일이 일어났나 비유 과소적합(Underfitting) 학습 데이터조차 제대로 못 배움 공부를 너무 안 해 시험을 다 틀림 과적합(Overfitting) 학습 데이터를 통째로 외워 버림 답안지를 외워서 새 문제엔 약함
과소적합 : 모델이 너무 단순하거나 학습이 부족해 패턴조차 못 잡은 상태 → 학습·테스트 둘 다 성능이 나쁘다 .
과적합 : 학습 데이터를 너무 자세히(잡음까지) 외운 상태 → 학습 데이터는 거의 완벽, 테스트에서는 뚝 떨어진다 . 위험한 함정이다.
[ 데이터에 선을 긋는 비유 ]
과소적합 적절(좋은 일반화) 과적합
───── ~~~~ ∿∿∿∿∿∿
직선 하나로 부드러운 곡선으로 점 하나하나를
대충 지나감 경향을 잘 따라감 억지로 다 통과
(너무 단순) (딱 좋음) (잡음까지 외움)
과적합을 진단하는 가장 쉬운 신호는 "학습 점수는 매우 높은데 테스트 점수는 낮은" 큰 격차다. 반대로 과소적합은 학습 점수와 테스트 점수가 둘 다 낮다. 과적합을 줄이는 방법으로는 더 많은 데이터 확보, 모델 단순화, 정규화(Regularization) 등이 있는데, 시험 수준에서는 "더 많고 다양한 데이터가 도움이 된다" 정도를 기억하면 된다.
🎯 시나리오 : "학습 데이터 정확도 99%, 테스트 데이터 정확도 62%인 모델이 있다. 무슨 일이 일어났는가?" → 학습-테스트 점수 격차가 크므로 과적합이다. 학습 데이터를 외웠을 뿐 일반화하지 못했다는 신호다.
내일은 이 모든 과정에서 사람이 하는 역할 — 데이터 라벨링, 피드백, 반복 개선을 다룬다. ML은 결코 사람 없이 굴러가지 않는다.
혼동 행렬 : 모델의 답을 "맞게 잡음/헛잡음/놓침/맞게 통과" 네 칸으로 정리한 2×2 표.
참 양성(TP) : 진짜 맞는 것을 모델도 맞다고 제대로 잡아낸 경우.
거짓 양성(FP) : 아닌 것을 맞다고 잘못 잡은 경우. "헛잡음".
거짓 음성(FN) : 맞는 것을 아니라고 흘려보낸 경우. "놓침".
정확도(Accuracy) : 전체 판단 중 맞힌 비율. 한쪽 데이터가 압도적으로 많으면 믿기 어렵다.
정밀도(Precision) : 모델이 "맞다"고 잡은 것들 중 실제로 맞은 비율. 헛잡음이 싫을 때 본다.
재현율(Recall) : 실제로 맞는 것들 중 모델이 잡아낸 비율. 놓치면 안 될 때 본다.
F1 점수 : 정밀도와 재현율을 한 숫자로 균형 있게 요약한 값(조화 평균).
일반화 : 학습 때 본 적 없는 새 데이터에도 배운 패턴을 잘 적용하는 능력.
과적합/과소적합 : 학습 데이터를 통째로 외워 새 데이터에 약한 상태 / 아예 제대로 배우지 못한 상태.
📝 연습 문제 선택지를 클릭하면 정답·해설이 펼쳐집니다.
정상 메일을 스팸으로 잘못 분류하는 실수를 줄이는 것이 가장 중요한 스팸 필터에서, 우선적으로 높여야 할 지표는?
A 재현율(Recall) B 정밀도(Precision) C 학습 데이터 정확도 D 모델 학습 속도 암 진단 모델에서 실제 암 환자를 놓치는 것이 가장 치명적이다. 우선적으로 높여야 할 지표는?
A 정밀도(Precision) B 재현율(Recall) C 학습 속도 D 데이터 저장 효율 어떤 모델이 학습 데이터에서는 정확도 99%를 보이지만 처음 보는 테스트 데이터에서는 60%로 크게 떨어졌다. 이 모델의 문제는?
A 과소적합(Underfitting) B 과적합(Overfitting) C 데이터 누수가 전혀 없음 D 클래스 균형이 완벽함 정밀도와 재현율을 하나의 값으로 균형 있게 요약하는 지표는?
A 정확도(Accuracy) B F1 점수(F1 Score) C 학습률(Learning Rate) D 데이터 누수율 모델이 너무 단순해 학습 데이터에서도, 테스트 데이터에서도 성능이 모두 낮은 상태를 무엇이라 하는가?
A 과적합(Overfitting) B 과소적합(Underfitting) C 데이터 드리프트 D 높은 재현율