[Regression] 정규화 선형회귀 - Ridge, Lasso, Elastic Net

과적합을 방지하기 위한 정규화 선형회귀 모형(Ridge, Lasso, Elastic Net) 에 대해 정리한 글입니다.

과적합과 정규화 선형회귀

과적합

Overfitting means that a model fits too closely to the training samples so that it fails to generalize. 따라서, 과적합된 모델은 훈련 데이터에서는 좋은 성능을 보이지만, 테스트 데이터에서는 좋지 않은 성능을 보인다.

과적합은 다음 3가지 요소 훈련데이터 크기, 모델 복잡도, 오차 분산의 불균형으로 발생한다.

  1. Number of training samples 훈련 데이터의 수 $N$
    훈련 데이터가 많을수록, (복잡한 모델이어도) 더 학습이 잘된다. 반대로 훈련 데이터가 적고 모델이 복잡하다면 모델은 훈련데이터에 과적합될 것이다. 회귀문제에서 가장 중요한 문제는 충분하지 않은 훈련 데이터 크기이다.
  2. Model order 모델의 차수 $d$
    모델의 복잡도를 의미한다. 예를 들어, 모델이 polynomial 다항식인 경우, 다항식의 차수를 의미한다. 훈련 데이터가 매우 작은 경우, 덜 복잡한 모델을 사용할 필요가 있다. less is more.
  3. Noise Variance $\sigma^2$ 오차의 분산
    데이터에 더하는 오차 $e_n$의 분산을 의미한다.

정규화 선형회귀

선형회귀모형에서 과적합을 방지하기 위해 선형 회귀계수의 w 가중치에 대한 penalty term 제약조건을 추가한다. 제약조건으로 계수의 크기를 제한함으로써 데이터에 따른 계수의 변동성을 줄이는 방식이다.

하이퍼파라미터 $\lambda$

  • $λ$ (정규화정도)
    잔차 제곱합과 가중치 제곱합의 비중을 조절하기 위한 하이퍼파라미터이다.
    • $\lambda$ 값이 클수록 정규화 정도가 커지고, w 가중치값이 작아진다.
    • 반대로 $\lambda$ 값이 작을수록 정규화 정도가 작아지고, $\lambda=0$이면 일반 선형회귀모형이 된다.

정규화 선형회귀 모형

각 모형의 회귀계수에 대한 제약조건 식을 정리하면 다음과 같다.

1. Ridge 회귀모형

가중치 제곱합을 최소화 제약조건을 추가한다.

2. Lasso 회귀모형

가중치의 절대값 합을 최소화 제약조건 추가한다.

3. Elastic Net 회귀모형

가중치 제곱합을 최소화 + 가중치의 절대값 합을 최소화 제약조건 추가한다. (2개의 하이퍼파라미터 $λ_1, λ_2$)