로그인   |  회원가입  |  사이트맵  |  Contact Us
  아이디 저장하기
 
홈 > SAS Tech & Tip > SAS E-Miner 활용하기
[EM] Linear Model Regularization (Shrinkage Methods) (1) 2017.06.17
한노아 428 0
http://www.mysas.co.kr/SAS_tiptech/j_eminer.asp?b_no=7326&gotopage=1&con=subject&keyword=&cmd=content&bd_no=29&gubun=

​안녕하세요 MySAS 홍보대사 한노아입니다.  

오늘 연재는 지난 시간까지 다뤘던 내용과 별개로 Regularization 방법을 준비해 보았습니다. (지난 연재와 이어지는 부분은 좀 더 공부해서 추후 연재를 이어가도록 가겠습니다)


Introduction

Variance-Bias 즉, 모형의 분산과 편향은 trade-off 관계를 갖고 있습니다. 하지만 OLS (Ordinary Least Squares) 추정법의 경우 일반적으로 주어진 데이터에서의 error가 최소가 되도록 학습하는 경향이 있습니다. 이러한 성질은 실데이터 상에서 bias는 낮을 수 있지만 variance가 커지는 문제가 발생할 수 있습니다. 이런 문제를 해결하기 위한 방법으로는 shrinkage method (수축 방법)와 dimensionality reduction (차원 축소) 방법 등이 있습니다. 오늘은 shrinkage method를 이용한 선형모형 개선 방법의 이론적 배경에 대해 알아보도록 하겠습니다. 


Variance – Bias Trade off 

일반적으로 complexity (복잡성)가 높은 모형은 validation set이나 testing set에서 낮은 bias (편향)을 갖고 높은 variance (분산)을 갖습니다. 두 관계를 알아보기에 앞서 bias와 variance의 의미부터 명확하게 짚어보도록 하겠습니다. 


 


 

각 모형의 error는 bias와 Variance로 이뤄져 있다고 볼 수 있습니다. Bias가 발생하는 이유를 예로 들면 2차 선형 관계를 갖는 두 변수를 1차 식으로 추정할 경우 ‘올바르지 않은 모형 적합’으로 인한 오차가 발생하게 됩니다. 이러한 경우 bias가 커지게 됩니다. 반면 variance는 training set과 validation set의 상이함에 의해 발생하는 오차항입니다.

 

 


 


이 둘은 서로 trad-off 관계를 갖습니다. 먼저 bias를 낮추기 위해서는 모형의 complexity (복잡도)를 높여주면 됩니다. 이 경우 3차 관계, 4차 관계를 갖든 모형을 통해 그 관계를 설명하는 것이 가능할 것입니다. 하지만 training set에 overfitting되어 noise로 인한 변동까지 학습하게 되는 문제가 발생할 수 있고, 그 결과 validation set이나 testing set에서 큰 정확도 차이를 보이게 돼 실효성을 떨어트리게 됩니다. 핵심은 이 둘의 trade-off관계를 이해하고, bias와 variance가 만나는 점 즉, optimal point를 찾는 것입니다.


Limitations of Ordinary Least Squares

OLS의 한계는 bias-variance trade-off 관계를 기준으로 봤을 때 명확합니다. OLS를 이용한 regression 모형의 objective function은 training data의 error가 최소가 되도록 유도됩니다. model의 complexity 즉, 변수의 수를 늘릴수록 더 낮은 error rate을 나타내게 됩니다. 단순하게 training set만을 기준으로 봤을 때는 매우 타당해 보이지만 이런 특징은 자칫 모형의 complexity를 필요 이상으로 높여 overfitting 문제를 일으킬 수 있습니다. (즉, 매우 높은 variance를 갖게 될 수 있음) 이런 문제를 해결하기 위한 방법은 크게 세 가지가 있습니다.


(1) Variable Selection: 변수 선택을 통해 complexity를 줄이는 방법

(2) Shrinkage: 각 변수의 β 값을 수축시켜 variance를 낮추는 방법

(3) Dimensionality Reduction: 차원축소방법을 통해 Complexity를 줄이는 방법


Variable selection 방법의 경우 이론적 배경이 복잡하지 않기 때문에 별도의 설명은 생략하겠습니다. 이번 시간에는 이 중 shrinkage (수축) 방법에 대해 알아보도록 하겠습니다.


Shrinkage Methods

Shrinkage 방법은 기존의 OLS 방법에 penalize term을 추가에 각 변수의 coefficient를 수축시키는 방법입니다. 일반적으로 절편을 제외한 β 값들의 수축은 variance를 낮춰주는 효과가 있다고 알려져 있습니다. 이때 bias는 증가하게 되지만 각 β 값의 수축 정도를 결정하는 hyperparameter λ가 일정수준 증가할 때까지 그 bias의 증가량보다 variance의 감소량이 더 크기 때문에 모형의 전반적인 성능을 올리는 데에 좋습니다. Shrinkage methods는 크게 Ridge regression과 LASSO가 있습니다. 그럼 이제 각각에 대해 자세하게 알아보도록 하겠습니다.


1) Ridge Regression

Ridge Regression은 OLS의 objective function에 coefficient 증가에 대한 penalty term을 추가합니다. 그 결과 OLS보다 estimate data (training set)에서는 더 높은 error를 보일 수 있지만, validation set에서는 더 높은 예측력을 보일 수 있습니다. Ridge regression의 objective function은 아래와 같습니다.

 


+ 연산자를 기준으로 첫 번째 부분은 OLS Regression의 β 추정식입니다. 두 번째 부분이 새롭게 추가된 부분으로 이 부분은 shrinkage penalty라고 부릅니다. λ는 tuning parameter로 이 값이 클수록 회귀 모형 slope들의 수축 정도는 커지게 됩니다. 


만약 ‘λ = ∞’인 경우 intercept를 제외한 모든 회귀 계수는 0으로 수렴하게 됩니다. 반면 ‘λ = 0’인 경우 OLS와 같은 추정치를 갖게 됩니다. 이런 이유로 ridge regression은 λ를 어떻게 설정하느냐에 따라서 서로 다른 slope 추정치를 갖습니다.

OLS와 달리 ridge regression은 자체적인 scaling 효과가 없습니다. 따라서 Ridge Regression을 적용하기 전에 먼저 predictor들이 모두 동일한 scale을 갖도록 표준화 작업을 선행하는 것이 좋습니다. (대부분의 패키지의 경우 자동으로 scaling이 적용됩니다)


 

2) LASSO

Lasso는 ridge regression과 마찬가지로 penalty term을 추가해 coefficient의 수축을 유도하는 ‘Shrinkage Method’ 중 하나입니다. lasso의 경우 아래 식이 최소가 되도록 β를 유도합니다.


 


Lasso의 경우 penalty term의 형태가 ridge regression과 달리 절댓값의 형태로 주어지는 것을 알 수 있습니다. 하지만 이 term이 존재하는 목적은 ridge regression과 같고 그 성질 역시 매우 유사합니다. 그렇다면 절댓값으로 penalty term을 갖는 경우 얻게 되는 이점은 무엇이 있을까요?


 

Ridge Regression vs. LASSO

 

 

위 그림은 lasso와 ridge regression을 그림으로 표현해 놓은 것입니다. 각 그래프의 β 추정치는 OLS를 이용해 추정했을 경우 갖게 되는 값을 의미합니다. 그리고 그 주변의 타원형 영역은 같은 RSS를 갖는 β 추정치 들의 영역을 나타냅니다. 


하단의 청록색 영역은 penalty term에 의한 제한 영역을 의미합니다. 즉, 두 영역이 만나는 지점의 β 추정치가 모형의 slope 값으로 결정되게 되는 원리입니다. (사실 더 많은 이론적 배경들이 숨어 있지만, 세부적인 내용은 본 연재의 범위를 넘어서기 때문에 생략하도록 하겠습니다)


먼저, ridge regression의 경우 제한 영역이 원형(3차원인 경우 구)을 갖기 때문에 β 추정치가 0이 되는 것은 상당히 어렵습니다. 반면 lasso의 경우 제한 영역이 마름모 형태로 주어지기 때문에 β 추정치가 0이 될 가능성이 상당히 높습니다. 


이런 특성은 결과적으로 변수 선택 효과를 불러일으킬 수 있습니다. 앞서 말했듯 모형의 complexity가 높으면 overfitting의 우려가 있을 수 있습니다. 또한, 변수가 과하게 많은 경우 모형을 설명기 역시 쉽지 않습니다. 


Ridge regression이 variance-bias trade-off 관점에서 OLS보다 더 우수한 예측력을 나타낼 가능성이 높다는 사실을 앞선 과정을 통해 알 수 있었습니다. (OLS의 경우 항상 bias가 최소가 되도록 학습함) 하지만 ridge regression의 경우 각 변수의 설명력이 매우 떨어지더라도 해당 변수에 대한 slope가 완전히 0이 되기 어렵다는 단점을 알 수 있었습니다. 반면 lasso의 경우 절댓값 함수를 이용한 제한 영역을 이용해 변수 선택이 가능하고 그 결과 ridge regression의 약점을 보강할 수 있었습니다.

 

Conclusion

이번 시간에는 variance-bias trade-off 관계에 대해 알아보았습니다. OLS의 경우 bias는 작지만 높은 variance를 가질 수 있다는 단점이 존재했습니다. 이런 단점을 보강하는 방법으로 각 회귀 계수에 대한 penalty를 주는 방법으로 shrinkage method를 알아보았습니다. 이 중 ridge regression의 경우 β 추정치의 제곱 형태의 함수를 penalty term으로 이용했습니다. 그 결과 각 계수 추정치가 완전히 0이 되기 힘들다는 단점이 존재했습니다. 이런 단점을 보강한 방법으로 penalty term을 절댓값의 형태로 이용한 lasso 방법에 대해서 알아보았습니다. 이번 시간에는 이론적 배경에 대해 개괄적으로 알아 보았습니다. 다음 연재에서는 오늘 알아본 이론적 배경을 토대로 SAS EM을 이용한 구현 방법을 다루도록 하겠습니다. 


Reference

[1] James, Gareth, et al. An introduction to statistical learning. Vol. 6. New York: springer, 2013.

[2] Friedman, Jerome, Trevor Hastie, and Robert Tibshirani. The elements of statistical learning. Vol. 1. Springer, Berlin: Springer series in statistics, 2001.

[3] Montgomery, Douglas C., Elizabeth A. Peck, and G. Geoffrey Vining. Introduction to linear regression analysis. John Wiley & Sons, 2015.

 



 





 

 
 
    
 
 [EM] Linear Model Regularization (Shrinkage Methods) (2)
 [EM] Dealing with imbalanced data - SMOTE