L1(Lasso)과 L2 regularization(Ridge)에 대한 고찰

1) L1(절댓값 함수)L2(제곱 함수) regularization 항을 그래프로 그려보면

 

그림1. 절댓값함수(빨간색)와 제곱함수(파란색)

 

 

weight parameter중 하나가 0으로 가까이 가면

 

L2 regularization은 나머지 하나도 0으로 가까이 가는 듯 하지만 0은 아닌데

 

L1 regularization은 확실하게 0으로 가려고 한다

 

결론은 L1 regularization은 많은 weight0으로 만들어낼 수있는데 L2 regularization0에 가까운 weight들을 만들어낸다.

 

 

2) 이 사실을 다른 그림을 통해 직관적으로 살펴보면

 

2개의 paramete $W _{1},W _{2}$가 있다고 가정하고

 

2가지 regularization에 대하여 regularization 항이 최소한 $s$이내에 있어야한다고 하면

 

$$\left | W _{1} \right | + \left | W _{2} \right |  \leq s$$은 L1 regularization이고 다이아몬드 형태를 나타낸다.

 

$$W _{1}^{2} +W _{2}^{2}  \leq s$$은 L2 regularization이고 원 형태를 나타낸다.

 

그림2. 서로 다른 4가지 cost function과 L1, L2 제약조건 그림

 

위 그림은 서로 다른 cost function 4가지에 대해 가운데 제약조건으로 L1 regularizationblue diamondL2 regularizationblack circle를 그렸다

 

보면 알겠지만 black circle(L2 regularization)cost functionintersection은 빨간색으로

 

blue diamond(L1 regularization)cost functionintersection은 검정색으로 나타냈는데

 

L1 regularization의 경우 weight parameter $\beta_{1}, \beta_{2}$0으로 갈 가능성이 높다는 것을 확인할 수 있다.

 

 

3) 조금 어렵게 수학적인 관점에서 살펴보면

 

weight parameter $W= \left ( W _{1} ,W _{2} \right )$라고 하고 편의상 $W _{1} ,W _{2} >0$라고 하자.

 

L1 regularization termL2 regularization term을 계산해보면

 

$$\left | W \right | _{1} =W _{1} +W _{2}$$

 

$$\left | W \right | _{2} =W _{1}  ^{2} +W _{2}^{2}$$

 

이제 regularization과정에서 $W _{1}$만 $\delta >0$만큼 줄었다고 가정하면

 

$$\left | W-( \delta ,0) \right | _{1} =W _{1} - \delta +W _{2}$$

 

$$\left | W-( \delta ,0) \right | _{2} =W _{1} ^{2} -2 \delta W _{1} + \delta  ^{2} +W _{2}^{2}$$

 

반대로 $W _{2}$만 $\delta >0$만큼 줄었다고 가정하면

 

$$\left | W-( 0, \delta) \right | _{1} =W _{1} +W _{2}- \delta $$

 

$$\left | W-( 0, \delta) \right | _{2} =W _{1} ^{2} +W _{2}^{2}-2 \delta W _{2} +\delta  ^{2}$$

 

이제 $W _{2}$가 0에 충분히 가깝다고 한다면 L1 regularization은 두가지 경우

 

$W _{1} - \delta$가 되어 $W _{1}$0에 가까이 갈 확률이 높은데

 

L2 regularization은 $$\left | W-( \delta ,0) \right | _{2} =W _{1} ^{2} -2 \delta W _{1} + \delta  ^{2}$$와

 

$$\left | W-( 0, \delta) \right | _{2} =W _{1} ^{2} +\delta  ^{2}$$가 되어 0에 가까이 갈 가능성이 적다

 

수학적으로도 “L1 regularization은 많은 weight0으로 확실히 만들어낼 수 있는데 L2 regularization0에 가까운 weight들을 만들어낸다.“

 

4) 더욱 어렵게 수학적인 관점에서 살펴보면

 

$W= \left ( W _{1} ,W _{2} ,...,W _{n} \right )$이라고 하면 각각의 regularization term은 $$L _{1} = \sum _{i=1} ^{n} \left | W _{i} \right |$$이고 $$L _{2} = \sum _{i=1} ^{n} W _{i}^{2}$$이다.

 

weight로 미분하여 gradient descent 과정으로 cost function을 줄여나갈 것이므로

 

regularization term의 특정한 weight parameter의 미분은

 

$$\frac{dL _{1} (W _{i} )}{dW _{i}} =Sign(W _{i} )=1\;or\;-1$$

 

$$\frac{dL _{2} (W _{i} )}{dW _{i}} =2W _{i}$$

 

이것이 무슨 뜻이냐면

 

L1 regularization은 weight의 크기와 무관하게 gradient가 1아니면 –1로 항상 일정해서,

 

항상 일정한 크기로 gradient descent가 이루어지는데

 

L2 regularization은 weight의 크기에 비례하여 gradient descent가 이루어진다는 사실이다.

 

이 사실에 의해서 L1 regularization은 대부분 0으로 weight를 확실하게 만들지만 L2 regularization0으로 가더라도 0에 가까운 값을 가지게 만든다.

 

 

아래 두 그림의 x축은 전부 regularization의 정도인 $\lambda$를 의미하는데 클수록 regularization에 더욱 집중하여 가중치를 작게 만든다

 

그림3. L1 regularization(Lasso)의 경우 대부분의 가중치가 0으로 가게 만들 수 있다

 

그림4. L2 regularization(Ridge)의 경우 0으로 가까이 가더라도 대부분 0이 되는 것은 아니다

 

결론

 

L1 regurlarizationweight parameter0으로 확실하게 만드는 성향을 가지고

 

L2 regularizationweight parameter0으로 가게 만드는 경향이 있더라도 완전히 0으로 만들지는 않습니다.

 

따라서 L1 regularization은 불필요한 feature를 확실하게 제거할 수 있는 feature selection에 적합하며

 

sparse model(희소한 모델, weight parameter0인 것이 많은 모델)을 만들기에 적합합니다.

 

반면 L2 regularization은 영향이 낮은 feature에도 어느정도 weight를 주어 더 좋은 예측값을 찾고자 합니다.

 

그래서 L1이 좋느냐? L2가 좋느냐? 단정지어서 말하기는 어렵습니다. modeling 목적에 따라 다르다고 말할 수 있겠습니다.

 

참고로 regularizationL1 regularization, L2 regularization외에도

 

L1L2를 합쳐서 사용할 수도 있고 이를 elastic net이라고 부릅니다.

 

dropout이나 early stopping, noisy input 등등도 모두 regularization에 속합니다.

 

참고

 

The difference between L1 and L2 regularization (explained.ai)

 

A visual explanation for regularization of linear models

A deep dive into exactly how regularization works, using visualizations rather than (just) mathematics. This article also dispels some myths and answer some important questions about Lasso and Ridge regression.

explained.ai

 

regression - Why L1 norm for sparse models - Cross Validated (stackexchange.com)

 

Why L1 norm for sparse models

I am reading books about linear regression. There are some sentences about the L1 and L2 norm. I know the formulas, but I don't understand why the L1 norm enforces sparsity in models. Can someone g...

stats.stackexchange.com

 

Regularization in Deep Learning — L1, L2, and Dropout | Towards Data Science

 

Regularization in Deep Learning — L1, L2, and Dropout

A Guide on the Theory and Practicality of the most important Regularization Techniques in Deep Learning

towardsdatascience.com

 

 

TAGS.

Comments