본문 바로가기
개발노트/머신러닝

[머신러닝] 과대적합 vs 과소적합

by 전지적진영시점 2023. 3. 13.
반응형

과대적합(overfitting)

과대적합은 모델의 훈련 세트 성능이 테스트 세트 성능보다 훨신 높을 때 일어납니다.

과대적합이란 머신러닝 모델을 학습할 때 훈련 데이터셋에 지나치게 최적화하여 발생하는 문제입니다.

 

과대적합 발생 원인은

- 훈련 데이터를 지나치게 복잡하게 학습

- 데이터 셋 내 데이터가 충분치 못함

- 데이터 셋 내 분산이 크거나 노이즈가 심한 경우

 

이런 경우 모델은 훈련 세트 내 모든 데이터를 섭렵하여 오차를 줄이려 하므로 학습 데이터 셋에서는 모델 성능이 높게 나타나지만

새로운 데이터가 들어오면 낮은 정확도를 보여줍니다.

 

모델을 학습시킬 때 어느 순간 이후로 모델의 훈련세트에 대한 손실 값은 작아지고 검증 세트에 대한 손실값이 커진다면 이는 훈련세트에 밀착하여 모델이 학습하고 있다는 것이며 과대적합을 의미합니다.

 

과소적합(underfitting)

과소적합은  모델이 너무 단순하여 훈련세트에 적절히 훈련되지 않은 경우입니다.

과소적합은 훈련세트에 대한 손실값과 테스트 세트에 대한 손실값이 모두 크게 나타납니다.

과소적합은 훈련세트와 테스트세트의 손실값이 모두 낮을 수도 있지만 테스트 세트의 손실값만 낮을 수도 있습니다.

 

과소 적합의 원인은 다음과 같습니다.
- 모델의 복잡도가 낮은 경우

- 훈련 세트와 테스트 세트의 크기가 매우 작은 경우

 

과소적합이 발생할 경우 모델을 조금 더 복잡하게 만들면 됩니다.

예를들어 k-최근접 이웃 알고리즘의 경우 k의 개수를 줄이는 등의 방법이 있습니다.

반응형

댓글