-
L1, L2 RegularizationAI 2026. 1. 21. 10:57
L1 Regularization
L1 Regularization은 머신러닝 모델의 과적합(Overfitting)을 방지하기 위해 손실 함수(Loss Function)에 가중치의 절대값 합을 추가하는 기법입니다. 흔히 Lasso(Least Absolute Shrinkage and Selection Operator) 회귀라 합니다.
수학적 정의
모델을 학습시킬 때 최소화해야 할 전체 손실 함수는 다음과 같이 구성됩니다.
$$Cost = Loss(y, \hat{y}) + \lambda \sum_{j=1}^{n} |w_j|$$- $Loss(y, \hat{y})$: 모델의 예측값과 실제값 사이의 오차 (예: MSE)
- $\lambda$ (Lambda): 정규화 강도를 조절하는 하이퍼파라미터입니다. 이 값이 클수록 가중치에 대한 제약이 강해집니다.
- $\sum |w_j|$: 가중치들의 절대값 합(L1 Norm)입니다.
희소성 (Sparsity) 및 변수 선택
L1 정규화의 가장 큰 특징은 중요하지 않은 가중치를 0으로 만드는 경향이 있다는 것입니다.
- 가중치가 0이 된다는 것은 해당 특성(Feature)이 모델에서 제거됨을 의미합니다.
- 이로 인해 모델이 더 단순해지고, 어떤 변수가 중요한지 파악하는 변수 선택(Feature Selection) 효과를 얻을 수 있습니다.
중요한 변수만 남기 때문에 복잡한 데이터셋에서도 모델이 직관적으로 어떤 데이터를 기반으로 판단하는지 알기 쉬워집니다.
L1 정규화는 데이터에 불필요한 특징이 많거나, 모델을 최대한 가볍고 해석 가능하게 만들고 싶을 때 매우 유용한 도구입니다.
L2 Regularization
손실 함수에 가중치의 제곱 합을 더해주는 기법입니다. 통계학에서는 릿지 회귀(Ridge Regression)**라고도 불리며, 딥러닝에서는 가중치 감쇠(Weight Decay)라는 용어로도 자주 쓰입니다.
수학적 정의
L2 정규화가 포함된 전체 손실 함수는 다음과 같습니다.
$$Cost = Loss(y, \hat{y}) + \lambda \sum_{j=1}^{n} w_j^2$$- $\sum w_j^2$: 모든 가중치의 제곱을 합한 값(L2 Norm의 제곱)입니다.
- $\lambda$ (Lambda): 규제의 강도를 조절합니다. $\lambda$가 클수록 가중치를 더 강하게 억제하여 모델을 단순하게 만듭니다.
L2 Regularization의 주요 특징
- 가중치 감쇠 (Weight Decay)
L2 정규화는 가중치 $w$가 너무 커지지 않도록 골고루 작게 만듭니다. 가중치가 작아지면 입력 데이터의 작은 변화에 모델이 민감하게 반응하지 않게 되어, 결과적으로 부드러운(Smooth) 모델이 만들어지고 일반화 성능이 올라갑니다. - 0에 가깝게 만들지만, 0은 되지 않음
L1이 중요하지 않은 변수를 완전히 제거(0으로 만듦)하는 것과 달리, L2는 모든 변수를 유지하면서 그 영향력을 최소화합니다. 따라서 모든 특성(Feature)이 어느 정도 중요하다고 판단될 때 유리합니다. - 다중공선성(Multicollinearity) 해결
서로 상관관계가 높은 변수들이 있을 때, L1은 하나만 선택하고 나머지를 0으로 만들지만, L2는 가중치를 서로 나누어 가져 모델의 안정성을 높여줍니다
언제 L2를 사용해야 할까?
- 데이터의 모든 특성이 결과에 어느 정도 기여하고 있다고 판단될 때
- 모델의 성능(정확도)을 최대한 안정적으로 유지하고 싶을 때
- 변수들 간에 상관관계가 복잡하게 얽혀 있을 때
'AI' 카테고리의 다른 글
데이터 전처리: Outlier 탐지와 처리: Z-Score부터 IQR까지 (1) 2026.01.23 데이터 전처리: Normalization (0) 2026.01.23 Batch Normalization (1) 2026.01.21 딥러닝의 Overfitting 해결사: Dropout 이해하기 (0) 2026.01.21 Overfitting과 Regularization (0) 2026.01.21