본문 바로가기

인공지능/이론

(8) 선형회귀 과대적합/과소적합

훈련세트에서는 좋은 결과를 내지만, 검증세트에서는 좋은 결과를 내지 못하는 모델을 흔히 과대적합된 모델이라고 표현합니다.

 

그리고 훈련세트와 검증세트 둘 모두에서 좋은 결과를 내지 못하는 모델을 과소적합이라고 부릅니다.

 

선형회귀에서 과대적합과 과소적합을 어떻게 발견하고, 해결할 수 있을까요

 

먼저 과대적합과 과소적합을 발견하는 방법을 말씀드리겠습니다.

 

가장 간단하게는 실제 데이터와 훈련한 모델을 시각화하여 살펴보는 것입니다.

 

 

수치적으로는 학습곡선으로 알아볼 수 있습니다.

 

학습곡선은 훈련세트의 크기나 epoch을 x축으로 하고 각 loss를 y축으로 하여 검증세트와 학습세트에 한해서 시각화해보는 것입니다.

 

 

과소적합의 학습 곡선은 학습셋과 검증셋의 간격이 좁고, 둘 모두 Loss가 높습니다.

과소적합은 모델의 복잡도를 높이거나 규제를 낮추어 해결할 수 있습니다.

혹은 데이터셋의 품질이 낮은 것일 수도 있습니다.

 

overfitting learning curve

위의 그림은 극단적인 과대적합의 학습곡선입니다.

 

과대적합이 된 모델의 학습 곡선은 훈련셋과 검증셋의 Loss에 간격이 있고, 훈련셋의 Loss가 많이 낮습니다.

 

과대적합은 훈련셋을 늘리거나, 모델의 복잡도를 줄이고 규제를 높여 해결할 수 있습니다.

 

 

과소적합과 과대적합은 서로 트레이드오프가 존재합니다.

이를 편향/분산 트레이드오프라고 합니다.

 

편향은 실제 데이터셋의 복잡도보다 더 낮은 복잡도의 모델을 학습시키는 것입니다. 이는 과소적합으로 진행될 수 있습니다.

 

분산은 실제 데이터셋의 복잡도보다 높은 복잡도의 모델을 학습시키는 것입니다. 이는 과대적합으로 진행될 수 있습니다.

 

 

선형회귀의 과대적합을 해결하기 위해 여러 방법들이 존재합니다.

 

다음 글에서는 라쏘 회귀, 릿지 회귀, 엘라스틱넷, 조기종료를 알아보도록 하겠습니다.

'인공지능 > 이론' 카테고리의 다른 글

(12) 결정 트리  (0) 2021.10.12
(11) SVM  (0) 2021.10.11
(7) 경사하강법  (0) 2021.10.10
(6) 선형 회귀  (0) 2021.10.10
(5) ROC 곡선  (0) 2021.10.07