뒤로
권예영
권예영 ·

L2&L1 Regularization

  1. L2 Regularization

Regularization은 (정확하게 표현하면, L2 regularization은) 아래의 수식으로 표현할 수 있다.

image.png

위 수식에서 C₀는 원래의 cost function이며,

n은 훈련 데이터의 개수,

λ는 regularization 변수, w는 가중치를 나타낸다.

위 식처럼 regularization 항목이 들어가면,

학습의 방향이 단순하게 C₀ 값이 작아지는 방향으로만 진행되는 것이 아니라,

w 값도 역시 최소가 되는 방향으로 진행을 하게 된다.

이렇게 정의된 cost function을 가중치 w에 대해서 편미분을 수행하면,

결과적으로는 새로운 가중치는 아래와 같이 결정이 된다.

image.png

위 식에서 (1 - ηλ/n)w는
원래의 w 값에 (1 - ηλ/n) 항목을 곱한 형태가 되기 때문에
값이 작아지는 방향으로 진행을 하게 된다.

이를 "weight decay"라고 한다.
이 "weight decay"에 의해 특정 가중치가 비이상적으로 커지고
그것이 학습의 효과에 큰 영향을 끼치는 것을 방지할 수 있다.

--> 특정 가중치가 비이상적으로 커지는 것을 weight decay를 통해 줄이는 과정이다.

  1. L1 Regularization

Regularization은 통상적으로 L1과 L2 regularization으로 나눠지게 된다.

앞서 살펴본 수식은 L2 regularization에 속하고,

L1 regularization은 2차항 대신에 1차항이 오며, 식은 아래와 같다.

image.png앞서 살펴본 것과 마찬가지로 가중치 w에 대해서 편미분을 수행하면,

결과적으로는 새로운 가중치는 아래와 같이 결정이 된다.

image.png결과적으로 위 식을 보면,

weight 값 자체를 줄이는 것이 아니라

w의 부호에 따라 상수 값을 빼주는 방식으로 regularization을 수행한다.

-> L1 정규화에서 절댓값을 더하는 방식이 핵심인 이유는, 이 방식이 가중치를 0으로 만드는 특성을 가지고 있어 모델을 희소화시키고 불필요한 특성들을 제거할 수 있기 때문입니다. 절댓값을 사용하면 가중치가 0에 가까워지면서 모델이 중요한 정보에만 집중할 수 있게 되어, 과적합을 방지하고 성능을 향상시키는 데 도움이 됩니다.


L2 정규화와 L1 정규화의 차이점을 정리하자면:

  • L2 정규화:

    • 모든 가중치들이 튀지 않도록 균형 있게 줄이는 역할을 합니다.

    • 가중치의 제곱합을 비용 함수에 추가하여, 각 가중치가 너무 커지지 않도록 합니다.

    • 이렇게 하면 가중치가 과도하게 커지는 걸 막고, 모든 가중치들을 적절히 작게 유지하게 만듭니다. 즉, 특정 가중치가 지나치게 크거나 작은 값을 가지지 않게 하여 모델 전체의 균형을 맞추는 역할을 합니다.

    • 다만, 가중치들이 0이 되지는 않으며 단지 크기를 줄이는 데 그칩니다. 그래서 모든 변수(특성)를 고려하면서도 균형을 맞추려는 효과를 줍니다.

  • L1 정규화:

    • 튀는 가중치를 아예 없애버리는 역할을 합니다.

    • 가중치들의 절댓값을 비용 함수에 추가하여, 중요하지 않은 가중치들을 0으로 만들어버립니다.

    • 즉, 불필요한 변수들은 아예 제거하고, 중요한 변수들만 남깁니다. 이는 모델을 더 간결하게 만들고, 오버피팅을 방지하는 데 도움을 줍니다.

    • 결과적으로 L1 정규화는 모델에서 필요 없는 특성들의 영향을 제거하여, 희소성(sparsity)을 유도하는 특성을 가지고 있습니다. 즉, 많은 특성들 중 몇몇 중요하지 않은 특성들의 가중치를 0으로 만들어 모델을 단순하게 만듭니다.

요약:

  • L2 정규화는 가중치의 균형을 맞추는 방식으로 특정 가중치가 너무 커지지 않도록 부드럽게 제어합니다.

  • L1 정규화는 중요하지 않은 가중치들을 완전히 0으로 만들어버림으로써, 모델을 간결하게 하고 튀는 가중치를 아예 없애버립니다.

이 차이 때문에 L1 정규화는 특성 선택(feature selection)에 유리하고, L2 정규화는 모든 특성을 균형 있게 사용하는 데 유리합니다. 두 방식은 오버피팅을 막는 중요한 역할을 하지만, 그 방식과 효과가 다르다는 점에서 차이가 있습니다.

1

댓글

로그인 후 댓글을 남길 수 있습니다.

아직 댓글이 없습니다.