School/머신러닝

과적합과 과소적합

응엉잉 2022. 3. 30. 00:22

<일반화와 일반화성능(MSE)>

머신러닝 알고리즘은 학습과정을 통해 학습데이터에 대하여 오차(학습오차)를 감소시켜나감

우리가 원하는 모델은 도메인에서 주어진 임의의 데이터에 대해 예측 성능이 뛰어난 모델을 원함

즉, 일반화 오차 가 적은 모델을 원하기 때문에, 모델의 일반화 성능(MSE) 평가시

1. 도메인에서 임의로 뽑은

2. 테스트 데이터(학습에 사용되지 않은 데이터) 로 성능을 평가해야함

 

과적합(overfitting) : 모델이 지나치게 학습 데이터에 맞춰져서 일반화 성능이 오히려 떨어지는 경우 

과소적합(underfitting) : 모델이 학습 데이터에 대해 제대로 학습되지 않아 모델의 성능이 떨어지는 경우

회귀분석에서의 과적합 및 과소적합

test error = training error + generalization gap

generalization gap = test error - training error 

* test error : 학습에 사용하지 않고 따로 빼둔 data 를 이용해서 구한 값

 

1) training error 가 커서 test error 가 큰 경우 = 과소적합 => 모델의 복잡도를 늘려서 개선시켜야

2) generalization gap 이 커서 test error 가 큰 경우 = 과적합 => 모델의 복잡도를 낮춰서 개선시켜야

 

<과적합 원인과 해결책>

원인

다중회귀분석에서 과적합 : 지나치게 많은 독립변수의 사용

곡선회귀분석에서 과적합 : 지나치게 높은 차원의 사용

 

해결책

1) 적절한 독립변수 개수(다항차수) 의 선택

2) 정규화

 

<정규화>

* 초매개변수(λ) : 추정값이 아닌, 학습을 위해 주어진 값.

  회귀계수가 발산하지 않는것이 중요할수록 값이 큼

 

1) Rigde regression(릿지 회귀) :

(오차)^2 을 최소화 + λ ∑(회귀계수)^2 

or

λ 가 제약조건 역할을 함(일정 값 이상이 되지 않게 함)

 

Ridge Regression 회귀계수

λ 클수록 회귀계수값들이 작아지고 안정화됨

 

2) Lasso regression(랏쏘 회귀) :

(오차)^2 을 최소화 + λ ∑|회귀계수|

or

Rigde 는 변수선택효과를 갖지 않지만, Lasso 는 가짐

 

타원 크기가 커질수록 오차 제곱의 합도 커짐. 색칠된 부분은 해가 존재할 수 있는 공간

∵ 최소제곱법 식을 좌표평면상에 그래프로 나타내면 타원. Lasso Regression 의 경우 절댓값때문에 마름모꼴의 형태로 제약조건이 나타나므로 최적값이 모서리 부분에서 나타날 확률이 릿지에 비해 높음. 따라서 몇몇 유의미하지 않은 변수들에 대해 계수를 0에 가깝게 추정해주어 변수 선택 효과를 갖게됨

 

일반화

 

0<=q<1 : 변수선택 가능

q > 1 : 변수선택 불가능

 

'School > 머신러닝' 카테고리의 다른 글

로지스틱 회귀  (0) 2022.04.12
선형분류  (0) 2022.04.06
회귀분석에서의 변수선택  (0) 2022.03.30
서브셋  (0) 2022.03.30
다중회귀모형의 선택  (0) 2022.03.29