본문 바로가기
IT/ML

Ridge regression(능형 회귀) 간단한 설명과 장점

by 모던네이쳐 2020. 10. 26.
728x90

 선형 모델(Linear model)의 예측력(accuracy) 혹은 설명력(interpretability)을 높이기 위해 여러 정규화(regularization) 방법들을 사용한다. 대표적인 shrinkage 방법에는 ridge regression과 lasso가 있으며 이번에는 ridge regression을 설명하고자 한다.

 

 

기본 선형 모델

 기본적인 선형모델은 다음과 같다.

 

$Y = \beta_0 + \beta_1X_1 + \dots + \beta_pX_p + \epsilon$

 

 이 선형 모델의 오차를 최소화하는 계수를 찾기 위한 최소 제곱 법(Least squares)은 다음과 같다.

 

$RSS = \sum_{i=1}^n(y_i-\beta_0-\sum^p_{j=1}\beta_jx_{ij})^2$

 

 

Ridge regression

 Ridge regression은 최소제곱법과 매우 유사하나, '각 계수의 제곱을 더한 값'을 식에 포함하여 계수의 크기도 함께 최소화하도록 만들었다는 차이가 있다.

 

$RSS + \lambda\sum^p_{j=1}\beta^2_j$

 

 

Ridge regression 장점 및 사용하는 이유

 기본 선형모델을 사용하다 보면 overfitting이 발생할 수 있다. Overfitting된 경우 데이터에 매우 적합되어 극단적으로 오르락내리락하는 그래프가 생성되며, 이를 표현하는 선형 회귀의 계수 값이 매우 크게 (예를 들면 $y=341523 -24635x + 456234x^2$) 나타난다. 이렇게 Variance가 큰 상황을 막기 위해, 계수 자체가 크면 페널티를 주는 수식을 추가 한 것이 ridge regression이다. $x^n$과 같이 차원이 큰 파라미터를 사람이 인위적으로 소거할 수도 있지만, ridge regression은 오차를 최소화하는 함수에 페널티를 줌으로써 보다 부드럽게 계수를 선택하는 차이가 있다. Ridge regression은 기본 선형 모델을 regularize 하여 좀 더 좋은 performance를 내기 위해 시도해볼 수 있는 아주 기본적인 기법이다.

 

 

Ridge regression 특징

 $\lambda$가 크면 계수를 많이 줄이는데 집중하게 되며, $\lambda$가 작으면 오리지날 최소 제곱 법 문제를 풀게 된다. 아래 그림을 보면 $\lambda$가 커질수록 계수의 크기가 shrink 되는 효과가 생기는 것을 볼 수 있다.

 또한, 식에 $\beta^2$을 사용하기 때문에 어떤 계수가 덜 중요하더라도 완전히 0으로 수렴하지는 않고 충분히 작은 소수점으로 남아 있는 특징이 있다.

Ridge regression coefficient estimate

 

 

Ridge regression 사용시 참고할 점

 Ridge regression은 변수의 크기가 결과에 큰 영향을 미치기에, 변수를 스케일링(Scaling of predictors)을 해주어 서로 사이즈가 비슷하도록 만들어주는 작업이 필요할 수 있다. 일반적으로 표준편차를 각 predictors마다 구한 뒤 각 데이터에 나누어준다.

 

$\tilde{x}_{ij} = \frac{x_{ij}}{\sqrt{\frac{1}{n}\sum^n_{i=1}(x_{ij}-\bar{x}_j)^2}}$

 

 $\lambda$를 바꿔보며 bias-variance tradeoff를 볼 수 있다. $\lambda$가 작을수록 계수 크기에 영향을 덜 미치기에 좀 더 flexible 한 모델이 형성되어 검은선인 bias 문제가 적고 초록 선인 variance 문제가 생기는 것을 볼 수 있다.

 

Ridge regression prediction