LIGHT
공부/AI-POT 2026. 6. 12. 00:36

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자격증

h

hyos

IT · 스타트업 · 개인기록. 만들고, 실패하고, 기록합니다.

COMMENTS