AI-POT 2급 자격증 공부(인공지능 성능 평가)
과적합이 뭐길래? AI 성능 평가의 모든 것 (정확도·정밀도·재현율·F1)
"모델 정확도 99%인데 왜 실전에선 엉망일까요?" AI를 공부하다 보면 꼭 만나는 질문입니다. 답은 과적합(Overfitting) 에 있습니다. 이 글에서는 AI 성능 평가의 핵심인 과적합·과소적합 개념부터, 데이터를 나누는 방법, 그리고 정확도·정밀도·재현율·F1 점수까지 한 번에 정리해드립니다.
인공지능 성능 평가란?
인공지능 성능 평가는 단순히 "정답을 몇 개 맞췄나"를 넘어, AI가 어느 정도 성능을 내는지, 학습이 제대로 됐는지, 실전에서 쓸 수 있는지를 총체적으로 확인하는 과정입니다.
여기서 가장 중요한 기준은 하나입니다.
좋은 모델은 '훈련 데이터'와 '처음 보는 새 데이터' 양쪽 모두에서 높은 성능을 내야 한다.
훈련 데이터만 잘 맞히는 모델은 시험 문제를 통째로 외운 학생과 같습니다. 응용 문제(새 데이터)가 나오면 와르르 무너지죠. 바로 이 지점에서 과적합과 과소적합 이야기가 시작됩니다.
1. 과소적합 · 최적합 · 과적합
학습 상태는 크게 세 가지로 나뉩니다. 그래프 모양만 봐도 구별할 수 있어요.
| 상태 | 그래프 모양 | 한마디로 |
|---|---|---|
| 과소적합 | 직선형 📏 | 공부를 덜 함 |
| 최적합 | 데이터 흐름을 따라가는 부드러운 곡선 〰️ | 딱 알맞게 공부함 |
| 과적합 | 점 하나하나를 쫓는 지그재그 ⚡ | 통째로 외워버림 |
조금 더 풀어보면 이렇습니다.
- 과소적합(Underfitting): 훈련이 부족해 데이터의 경향성조차 따라가지 못하는 상태
- 최적합(Best fit): 적절한 훈련으로 훈련·테스트 데이터 모두 좋은 이상적인 상태
- 과적합(Overfitting): 과도한 훈련으로 훈련 데이터에 너무 맞춰져, 정작 실전 성능은 낮은 상태
성능 수치로 구별하기
말로는 헷갈리니 표로 정리하면 명확합니다.
| 상태 | 훈련 데이터 성능 | 테스트 데이터 성능 |
|---|---|---|
| 과소적합 | 낮음 ⬇️ | 낮음 ⬇️ |
| 최적합 | 높음 ⬆️ | 높음 ⬆️ |
| 과적합 | 높음 ⬆️ | 낮음 ⬇️ |
💡 핵심 한 줄: 훈련은 잘하는데 테스트가 유독 낮다? → 그게 바로 과적합입니다.
2. 데이터를 나눠 쓰는 이유
과적합을 막는 가장 기본적인 방법은 데이터를 용도별로 나누는 것입니다. 보통 세 가지로 분리합니다.
| 데이터 | 비유 | 역할 |
|---|---|---|
| 훈련 데이터 | 📘 교과서 | 모델이 학습하는 데 사용 |
| 검증 데이터 | 📝 연습 문제집 | 실전 전에 모델을 점검하고 다듬기 |
| 테스트 데이터 | 🎯 실전 시험 | 개발이 끝난 뒤 최종 성능을 평가 |
특히 테스트 데이터는 처음부터 따로 떼어놓고 학습에 전혀 사용하지 않습니다. 그래야 모델을 객관적으로 평가할 수 있거든요. (마치 시험 문제를 미리 보지 않아야 실력을 정확히 알 수 있는 것과 같습니다.)
단순 분할 vs K-폴드 교차 검증
데이터를 나누는 방법도 두 가지가 있습니다.
① 단순 분할
데이터를 한 번에 쭉 나누는 간단한 방식입니다. 빠르지만, 중요한 데이터가 한쪽에 몰리면 결과가 불안정해질 수 있다는 약점이 있어요.
② K-폴드 교차 검증 (K-Fold Cross Validation)
데이터를 K개 그룹으로 나눈 뒤, 그룹을 돌아가며 테스트 데이터로 사용합니다. 모든 데이터가 한 번씩 검증에 쓰이므로 결과의 신뢰도가 높아지죠. 다만 여러 번 반복 계산하니 시간이 오래 걸린다는 단점이 있습니다.
📌 "데이터를 여러 그룹으로 나누고, 매번 다른 그룹을 검증 데이터로 사용해 모든 데이터를 한 번씩 검증에 활용하는 기법" = K-폴드 교차 검증
3. 정확도? 정밀도? 재현율? 헷갈리는 평가 지표 완전 정복
성능을 숫자로 표현하는 지표들입니다. 이름이 비슷해 헷갈리기 쉬우니 천천히 보겠습니다.
| 지표 | 정의 | 쉽게 말하면 |
|---|---|---|
| 정확도 (Accuracy) | 전체 예측 중 맞춘 비율 | 전체적으로 얼마나 맞췄나 |
| 정밀도 (Precision) | '예'라고 예측한 것 중 실제 '예'인 비율 | 내가 찍은 것 중 진짜 비율 |
| 재현율 (Recall) | 실제 '예'인 것 중 '예'라고 예측한 비율 | 진짜 정답을 얼마나 놓치지 않았나 |
정밀도 vs 재현율, 스팸 메일로 이해하기
가장 헷갈리는 두 지표를 스팸 필터로 구분해볼게요.
- 정밀도: "스팸이라고 분류한 메일 중, 진짜 스팸은 몇 %인가?"
→ 정밀도가 낮으면 멀쩡한 메일을 스팸함에 던져버립니다. 😱 - 재현율: "실제 스팸 중, 스팸함으로 제대로 걸러낸 건 몇 %인가?"
→ 재현율이 낮으면 스팸이 받은편지함에 줄줄 새어 들어옵니다.
시험에서 "모델이 스팸이라 예측한 것 중 실제 스팸인 비율"을 묻는다면? 정답은 정밀도입니다.
F1 점수 — 균형 잡힌 종합 점수
F1 점수는 정밀도와 재현율의 조화 평균입니다. 모델이 종합적으로 얼마나 쓸만한지 보여주죠.
핵심은 이겁니다.
⚠️ 정밀도와 재현율 중 어느 하나라도 낮으면 F1 점수는 떨어집니다.
즉, 한쪽만 잘해서는 좋은 점수를 받을 수 없습니다. 두 지표가 균형 있게 높아야 F1도 높아져요. 그래서 F1은 "한쪽으로 치우치지 않은 진짜 실력"을 보는 지표라고 할 수 있습니다.
4. 한 단계 더 — 과적합을 막는 앙상블 기법
(자격증 1급을 노린다면 꼭 알아둬야 할 고급 기법입니다.)
여러 모델을 똑똑하게 조합해 과적합을 막고 최적합으로 유도하는 방법을 앙상블(Ensemble) 이라 합니다. 대표적으로 세 가지가 있어요.
| 기법 | 핵심 아이디어 |
|---|---|
| 배깅 (Bagging) | 같은 알고리즘을 쓰되 데이터만 다르게 구성. 하나의 데이터에 갇히지 않도록 다양한 모델의 예측을 모아 활용 |
| 부스팅 (Boosting) | 모델을 순차적으로 학습시키며 이전 모델의 오류를 보완 |
| 스태킹 (Stacking) | 여러 모델의 예측 결과를 또 다른 모델로 종합 |
핵심 철학은 같습니다. "하나의 모델, 하나의 데이터에 갇히지 말고 여러 관점을 모으자." 집단 지성이 한 명의 천재보다 나을 때가 많은 것처럼요.
마치며
정리하면 이렇습니다.
잘 나눈 데이터(훈련·검증·테스트) + 올바른 평가 지표(정확도·정밀도·재현율·F1) = 과적합 없는 믿을 수 있는 AI
정확도 99%라는 숫자에 속지 마세요. 그 모델이 처음 보는 데이터에서도 99%를 낼 수 있는지, 정밀도와 재현율의 균형은 맞는지 따져보는 것이 진짜 실력입니다.
📇 핵심만 빠르게 — 한 줄 암기 카드
- 직선형 + 둘 다 낮음 → 과소적합
- 부드러운 곡선 + 둘 다 높음 → 최적합
- 지그재그 + 훈련↑·테스트↓ → 과적합
- 교과서=훈련 / 연습문제=검증 / 실전시험(미사용)=테스트
- 골고루 나눠 돌아가며 검증 → K-폴드 교차 검증
- 예측한 것 중 진짜 → 정밀도 / 실제 정답 중 잡아낸 것 → 재현율
- 정밀도·재현율 조화 평균(하나만 낮아도 ↓) → F1 점수
- 데이터만 바꿔 다양하게 → 배깅 / 오류 보완 → 부스팅 / 예측 종합 → 스태킹
이 글이 도움이 되셨다면 공감과 댓글 부탁드려요. AI 개념 정리 시리즈, 다음 편에서 계속됩니다! 🙌
#인공지능 #머신러닝 #과적합 #성능평가 #정밀도 #재현율 #F1점수 #앙상블 #AI자격증
'공부 > AI-POT' 카테고리의 다른 글
| AI-POT 2급 자격증 공부(트랜스포머_사전학습_토크나이저_임베딩) (0) | 2026.06.12 |
|---|---|
| AI-POT 2급 자격증 공부(생성형AI_필수요소_NLP_파라미터_공격) (0) | 2026.06.12 |
| AI-POT 2급 자격증 공부(생성형AI_원리_모델_한계) (0) | 2026.06.12 |
| AI-POT 2급 자격증 공부(인공지능 알고리즘 이해) (0) | 2026.06.12 |
| AI-POT 2급 자격증 공부(인공지능의 기원) (0) | 2026.06.04 |