오버피팅 vs 언더피팅: 머신러닝의 대표적인 오류
잡학다식의 지식공방

IT/Machine Learning

오버피팅 vs 언더피팅: 머신러닝의 대표적인 오류

carpe08 2025. 4. 24. 14:40
320x100

머신러닝 모델을 학습할 때 자주 마주하는 문제가 바로 오버피팅(Overfitting)과 언더피팅(Underfitting)입니다. 두 문제는 모두 모델의 일반화 성능을 떨어뜨리며, 적절한 복잡도의 모델을 선택하고 튜닝하는 데 중요한 기준이 됩니다.


오버피팅(Overfitting)이란?

정의: 학습 데이터에 너무 과도하게 맞춰져서 새로운 데이터(테스트 데이터)에 대한 성능이 떨어지는 현상

특징:

  • 학습 데이터 정확도는 매우 높음
  • 테스트 데이터 정확도는 낮음
  • 노이즈까지 학습해버리는 경향

예시 상황:

  • 너무 복잡한 모델 사용 (깊은 신경망, 고차 다항식 등)
  • 학습 데이터 수가 부족할 때
  • 정규화나 Dropout 없이 학습했을 때

해결 방법:

  • 모델 단순화
  • 데이터 양 늘리기
  • 정규화(L1, L2)
  • Dropout, Early Stopping 적용
  • 교차 검증(K-Fold CV) 활용

언더피팅(Underfitting)이란?

정의: 모델이 너무 단순하거나 학습이 부족해 학습 데이터조차 제대로 예측하지 못하는 현상

특징:

  • 학습 데이터, 테스트 데이터 모두 정확도 낮음
  • 패턴을 잘 포착하지 못함

예시 상황:

  • 너무 단순한 모델 사용 (선형 회귀, shallow tree 등)
  • 학습 시간 부족
  • 너무 강한 정규화 사용

해결 방법:

  • 모델 복잡도 증가 (은닉층 추가, 더 복잡한 알고리즘)
  • 학습 시간 늘리기
  • 정규화 강도 낮추기

오버피팅 vs 언더피팅 요약 비교

항목 오버피팅 언더피팅

정의 학습 데이터에 과도하게 적합 데이터 패턴을 충분히 학습 못함
학습 성능 높음 낮음
테스트 성능 낮음 낮음
원인 과도한 복잡도, 데이터 부족 등 모델 단순, 학습 부족 등
해결책 단순화, 정규화, 더 많은 데이터 모델 복잡도 증가, 더 많은 학습

결론

모델 성능 향상의 핵심은 오버피팅과 언더피팅 사이에서 균형을 맞추는 것입니다. 적절한 모델 선택, 하이퍼파라미터 조정, 정규화 기법을 통해 일반화 성능을 극대화해야 합니다.


https://link.coupang.com/a/cpQy6K

 

머신 러닝 교과서 with 파이썬 사이킷런 텐서플로 개정 3판 - 클라우드/빅데이터 | 쿠팡

쿠팡에서 머신 러닝 교과서 with 파이썬 사이킷런 텐서플로 개정 3판 구매하고 더 많은 혜택을 받으세요! 지금 할인중인 다른 클라우드/빅데이터 제품도 바로 쿠팡에서 확인할 수 있습니다.

www.coupang.com

이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

 

320x100
320x100