Lumiere, and s5unnyjjj

ML - Theory #8 : Regularization (정규화), Norm-based shrinkage, Ridge regression, Lasso regression 본문

Artificial Intelligence/Machine Learning

ML - Theory #8 : Regularization (정규화), Norm-based shrinkage, Ridge regression, Lasso regression

s5unnyjjj 2021. 4. 21. 22:35
반응형

정규화 (Regularization)

다중회귀분석에서는 지나치게 많은 독립변수를 사용하게 되면 과적합(Overfitting)이 발생한다. 또한, 곡선회귀분석에서는 지나치게 높은 차원을 사용하게 되면 과적합이 발생한다. Theory #3 ( https://s5unnyjjj.tistory.com/41?category=939071 ) 에서 확인했듯이 과적합은 일반화 성능을 떨어뜨리게되므로 피해야 한다. 이러한 과적합을 방지하기 위해서는 규제를 가하는 정규화 방법을 사용한다. 예시로는 Norm-based shrinkage와 Dropout, Noise-augmentation, Batch Normalization 등이 있다. 본 글에서는 Norm-based shrinkage에 대해서 알아본다.

 

Norm-based shrinkage

parametic model을 위해서는 파라미터가 더 작은 norm들을 갖도록 규제한다. 여기서의 norm은 벡터의 크기/길이를 의미한다. 그러므로 더 작은 norm들을 갖도록 규제한다는 것은 0을 향해 줄어든다는 것이다. 그러므로 더 작은 norm으로 구성된 파라미터들은 더 간단한 모델로 생각되어진다. 

아래 그림은 linear regression에서의 전형적인 식이다. P(theta1)은 intercept term을 제외한 theta상에서의 penalty term이다. lambda는 tradeoff를 조절하는 regularization parameter로 0보다 큰 값을 가진다. 

 

Norm-based dshrinkage에는 Ridge regression과 Lasso regression이 있다.

 

Ridge regression

아래 그림은 Ridge에서 사용되는 P(theta1)값과 해당 P(theta1)값을 이용한 linear regression 식이다. 해당 P(theta1)은 L2-norm으로 표현된다.

Ridge regression에서는 lambda가 0이면, OLS(Ordinary Least Squares, 최소제곱법) 와 동일하다.  lambda가 커질수록, 파라미터는 0에 가까워진다. 아래 그림을 보면, lambda가 커질 수록 파라미터가 0에 가까워지는 것을 확인할 수 있다. 그림에서는 0에 도달하는 것처럼 보이지만, 0에 가까워질 뿐, 0이 되지는 않는다. 

하지만, Ridge regression은 모든 features들을 사용하기 때문에, test MSE는 줄어들지라도 모델은 난해해진다. 이러한 Ridge regression의 한계점을 방지하기 위한 것이 Lasso regression이다.

Lasso regression

아래 그림은 Lasso에서 사용되는 P(theta1)값과 해당 P(theta1)값을 이용한 linear regression 식이다. 해당 P(theta1)은 L1-norm으로 표현된다.

Lasso regression에서는 lambda가 0이면, OLS(Ordinary Least Squares, 최소제곱법) 와 동일하다.  lambda가 커질수록, 파라미터는 0에 가까워지면 결국 0이 된다.(이것이 Ridge regression과 다른점) 아래 그림을 보면, lambda가 커질 수록 파라미터가 0에 가까워지다 정확히 0이 되어버린다.

Lasso와 Ridge를 그림으로 표현하면 아래와 같으며, Ridge와 다르게 0인 지점에 교점이 생기게 된다. 0이 됨으로써 그에 해당하는 특성들을 제외하여, 중요한 특성이 무엇인지 알게되는 모델 해석력이 좋아진다는 장점이 있다.

 이로써 p(theta1)를 결정하는 Lasso regression과 Ridge regression에 대해서 알아보았다. 하지만 linear regression의 전형적인 식을 확인해보면 p(theta1)에 곱해져있는 lambda를 확인할 수 있다. regularization을 위해서는 p(theta1) 뿐만 아니라 올바른 lambda를 선택하는 것도 중요하다. 그러므로 다음 글(AI/ML/Theory#5)에서 올바른 lambda를 선택하게하는 방법인 Cross-validation에 대해서 알아본다.


>> 위 내용은 필자가 공부하여 직접 정리한 내용입니다.

>> 부족한 점이 많을 수 있기에 잘못된 내용이나 궁금한 사항이 있으면 댓글 달아주시기 바랍니다.

>> 긴 글 읽어주셔서 감사합니다. 

 

∵ 이로써 Overfitting을 방지하는 정규화방법들 중, Norm-based shrinkage에 대해 알아보았다. 다른 정규화방법들인 Dropout과 Batch Normalization에 대해서는 본 블로그의 Deep Learning 파트에서 알아보도록 한다. 

반응형
Comments