L1, L2 Regularization

이준학·2024년 7월 18일

개념 정리

목록 보기
2/7

  L1,L2 Regularization은 이전에 정리한 L1,L2 norm을 기반으로 하는 Regularization 방식이다. cs231n 3강을 복습하면서 이 개념들이 항상 헷갈려 정리해보게 되었다. 일단 regularization이 뭔지부터 알아보자.

1. Regularization

  Regularization은 training data에 모델을 fitting 시키는 것보다는 모델의 복잡도를 낮추기 위해 적용하는 모든 방식을 의미한다. regularization을 이용하면 overfitting을 방지할 수 있다. 데이터를 표현하는 더 단순한 모델을 찾기 위해 적용하는 과정이라고 생각하면 될 것 같다. 주로 Loss function과 합쳐서 쓴다.

람다: Regularization strength(규제화 강도)

  regularization term을 적용한 최종 loss L은 위의 사진과 같이 쓸 수 있다. 사진에서 Loss function은 MSE를 써도되고, 쓰고 싶은것을 쓰면 된다. R(w)R(w)는 regularization term을 뜻한다. 람다를 이용해서 규제화 강도를 의미한다. 이제 L1, L2 regularization에 대해 자세히 알아보자.

2. L1 Regularization

  위의 사진에서 Loss function을 MSE로 가정하자. 그러면 L1의 loss는 아래 사진과 같이 표현된다.

  사진을 보면 R(w)R(w) 부분이 L1 norm에서 착안되어 만들어진 것을 알 수 있다. 결국 우리의 최종 목표는 언제나 그렇듯이 Loss의 최소화이다. 그런데 여기서 살펴봐야 할 문제가 있다.

Q. 만약 모든 weight들이 0에 가깝게 초기화되어 있다면, Loss가 최소가 될 수 있을까?
A. 아니다. w들이 다 0에 가까운 값이라면, model의 output이 0에 가깝게 될 것이기 때문에 MSE 값을 오히려 더 크게 만들 수도 있다. 결국 적당히 작고, 동시에 MSE를 최소화 시키는 weight set들을 찾는 것이 목표인 것이다.

  가장 간단한 linear regression y=wx+by= wx+b 식을 생각해보자. 이 경우, weight parameter는 ww 1개이다. 그렇기 때문에 Loss를 계산할 때도 하나의 w만 고려하면 된다. y^\hat y 자리에 wx+bwx+b를 넣고, parameter update를 위해 편미분을 통한 gradient를 얻자. 우리가 늘 하던 방식은 gradient descent를 이용하기 때문에, 위에서 구한 gradient로 update를 진행하면,

  위의 사진과 같은 결과를 얻을 수 있다. 이때, ww^*는 update 된 ww이다. 이제 식을 해석해보자. ww^*w>0w>0 인 경우 (-) 부호에 의해 작아질 것이고, w<0w<0인 경우 커질 것이다. 이것이 반복되면, 최종 ww들은 0에 가까워질 것이다. 따라서, 만약 초기화 단계에서 굉장히 작은 값(0이나 다름 없는 값)을 얻은 ww들은 0이 될 것이다. 즉, output을 얻기 위해 중요한 역할을 하지 않는 작은 값으로 초기화된 ww들은 training 과정에서 사라지게 된다는 것이다. 이것이 L1 regularization이 ww들에게 미치는 영향이다.

2. L2 Regularization

  L2 regularization도 위의 L1 과 그닥 다르지 않다. R(w)R(w)만 L2 norm에 맞게 바꿔주면 된다. 기존에 사용하던 MSE를 loss function으로 사용하고, y=wx+by=wx+b의 Linear Regression을 사용한다는 전제는 그대로 가져가자.

  식만 바꿔치기 해주면 위의 사진처럼 식들을 얻게 된다. L1의 경우와 마찬가지로, w>0w>0인 경우, ww^*는 작아지게 되고, w<0w<0인 경우 ww^*는 커지게 된다. 결국 이 과정이 반복되면 ww들이 0에 가까워질 것이다. L2가 L1 reg.과 다른 점이 있다면, L2는 ww의 값에 대해 신경 쓰기 때문에 큰 ww에 대해서는 큰 update를 적용하고, 작은 ww에 대해서는 작은 update를 적용한다는 점이다. L2 reg.는 ww들을 even out 해주는 효과가 있다는 것을 알 수 있는 것이다.

3. 출처

아래 영상을 보면서 많은 도움을 받았다.
https://www.youtube.com/watch?v=swYILd-M2Ks

profile
AI/ Computer Vision

0개의 댓글