반응형
규제(Regularization) 선형모델
- 선형모델의 과적합을 방지하기 위해 고안된 방법이다.
- 과적합된 모델은 특성들이 너무 복잡하게 적용되어 있어 일어난다. 따라서 현재 특성을 줄이거나 특성들의 영향력을 최소화하는 방법이 필요하다. 그렇게 고안된 것이 규제 선형모델이다.
- 과적합된 모델은 보통 특성이 증가하면서 분산(Variance) 정도가 높고, 편향(Bias)은 낮다. (과소적합된 모델은 분산은 낮지만 편향이 높다.) 따라서 분산정도를 줄여주기 위해 특성치들을 규제하여 사용한다. 규제는 정규화라고도 불린다.
- 규제 선형모델에는 대표적으로 Ridge와 Lasso가 있다.
L1 Norm과 L2 Norm
- norm : 벡터의 크기 또는 길이를 측정하는 방법. L1,L2,L무한대 등 다양한 방법이 존재한다.
- L1 norm : 벡터의 모든 성분의 절대값을 더한 것. 예를 들어 [2 3 5] 벡터의 L1 Norm은 10.
- L2 norm : 도착점까지의 직선거리 유클리드 계산법으로 계산. 예를 들어 [2 3 5] 벡터의 L2 Norm은 $\sqrt38$
Ridge
- L2를 규제하는 것이다.
- 손실함수에 L2 Norm값을 더해 해당 값이 최소가 되도록 한다.
- L2 Norm값 앞에 alpha값을 부여해 조절하여 사용한다. alpha값은 사람이 직접 조절해주어야 한다.
- 모든 원소에 골고루 규제를 적용하여 0에 가깝도록 만든다.
Lasso
- L1을 규제하는 것이다.
- 손실함수에 L1 Norm값을 더해 해당 값이 최소가 되도록 한다.
- L1 Norm값 앞에 alpha값을 부여해 조절하여 사용한다. alpha값은 사람이 직접 조절해주어야 한다.
- 가중치의 모든 원소에 똑같은 힘으로 규제를 하기 때문에 특정 계수는 0이 될 수 있다.
- 즉, 특성 선택이 이루어진다.
alpha
- alpha는 해당 수식에서 L1(혹은 L2)값의 영향력을 조절해준다. L1(혹은 L2)값의 영향력이 크다는 것은 그만큼 현재 계산에 활용 중인 특성들을 강하게 규제(최소화)한다는 것이다.
- 즉, alpha로 모델에 대한 복잡도를 조절해줄 수 있다.
- alpha가 너무 작으면 과대적합(복잡도가 너무 큼)이 되고, alpha가 너무 크면 과소적합(복잡도가 너무 작음)이 된다.
- 기본적으로 Ridge회귀의 단점을 해결하기 위해 고안된 것이 Lasso이다.
- 현 데이터 중 유의미한 변수가 적을 때는 Lasso가 효율적이다. Lasso는 일부 계수를 0으로 만들 수도 있기 때문이다.
- 하지만 반대의 경우 과소적합이 덜 일어나는 Ridge가 더 효율적이다.
- L1 norm과 L2 norm 둘을 동시에 사용하는 ElasticNet Regression 방법도 존재한다. alpha값과 동시에 L1_ratio를 조절하여 L1 norm과 L2 norm에 대한 alpha값을 조절한다.
반응형
'🛠 기타 > Data & AI' 카테고리의 다른 글
[scikit-learn 라이브러리] Rasso 예제 (0) | 2020.07.24 |
---|---|
[scikit-learn 라이브러리] Ridge 예제 (0) | 2020.07.24 |
[scikit-learn 라이브러리] LinearRegression (선형회귀) (0) | 2020.07.23 |
단층 퍼셉트론 - 코드 복습 (0) | 2020.07.23 |
IMDB Dataset을 활용한 나이브베이즈 예제 (0) | 2020.07.22 |