전산직/컴퓨터일반

머신러닝에서의 Overfitting과 Underfitting

glorypang 2025. 11. 7. 22:13
728x90
반응형
SMALL

개념 요약

구분  설명  특징  결과
Underfitting
(과소적합)
모델이 너무 단순해서 데이터의 패턴을 제대로 학습하지 못한 상태 학습 데이터와 테스트 데이터 모두 오차 큼 모델이 데이터를 충분히 설명 못함
Overfitting
(과적합)
모델이 너무 복잡해서 학습 데이터에 과도하게 맞춘 상태 학습 데이터 오차는 작지만, 테스트 데이터 오차는 크다 일반화 성능 낮음

시각적 이해

(데이터 패턴 예시)
 ● ● ● ● ● ● ● ●

Underfitting:   직선 — 너무 단순함
Overfitting:    지그재그 — 너무 복잡함
적절한 모델:    완만한 곡선 — 패턴을 잘 포착
  • Underfitting: 패턴을 제대로 못 잡음 → “학습이 덜 된 상태”
  • Overfitting: 노이즈(우연한 데이터 특성)까지 외워버림 → “학습을 너무 한 상태”

학습 곡선으로 구분하기

구분  Training Error Validation Error  특징
Underfitting 높음 높음 둘 다 잘 안 맞음
적절한 학습 낮음 낮음 일반화 잘 됨
Overfitting 낮음 높음 훈련만 잘 되고 검증은 망함

원인

Underfitting 원인

  • 모델이 너무 단순함 (예: 선형모델로 비선형 데이터 학습)
  • 학습 시간 부족
  • 피처(Feature) 부족
  • 정규화(Regularization) 강도가 너무 셈 (ex: λ 너무 큼)

Overfitting 원인

  • 모델이 너무 복잡함 (파라미터 과다)
  • 데이터가 적음
  • 노이즈가 많은 데이터 학습
  • 정규화 부족
  • 너무 오래 학습 (epoch 과다)

해결 방법

구분  주요 방법


Underfitting 방지





더 복잡한 모델 사용
학습 더 오래 시키기
피처 추가 OR 다항식 추가
정규화 약화



Overfitting 방지







정규화 (L1/L2) 강화
Dropout 사용 (신경망)
Early Stopping (조기 종료)
Cross Validation 사용
데이터 증강(Data Augmentation)
모델 단순화
더 많은 데이터 확보

 


실제 예시

     
상황  현상  유형
모델이 학습 데이터에선 정확도 99%, 테스트 데이터에선 60% 데이터 외워버림 Overfitting
모델이 학습/테스트 둘 다 정확도 60% 학습이 제대로 안 됨 Underfitting

 

728x90
반응형
LIST