본 글은 An Introduction to Statistical Learning의 Chapter 6. Linear Model Selection and Regularization 을 정리한 것입니다.
목차
1. Introduction
2. Subset selection
2.1. Best subset selection
2.2. Stepwise selection
2.3 Choosing the Optimal model
3. Shrinkage method
3.1. Ridge regression
3.2. The Lasso
3.3. Selecting tuning parameter
4. Dimension reduction
4.1. Principal component Regression
4.2. Partial least squares
1. Introduction
일반적인 least square 방식에 비해 이번 장에서 소개될 fitting method는 예측 정확도와 모델의 interpretability 측면에서 이점을 가질 수 있습니다. 모델을 학습시키는 데 사용할 데이터가 트레이닝을 통해 찾아야 할 파라미터의 수보다 적거나 같을 경우, overfitting 이 발생하기 쉽고, 유일한 parameter를 찾기 어렵다. 모든 변수가 y 값에 영향을 주지는 않는 경우, 일반적인 least square 방식에서는 모든 x를 이용하여 y값을 예측하기 때문에 정확도에는 기여하지 않지만 모델의 복잡도가 증가한다.
본 장에서는 이러한 상황에서 least square fitting을 대체하여 선형 모델을 향상시킬 수 있는 방식에 대해 소개하고있다.
2. Subset selection
: Y값 예측에 불필요한 변수를 제거하는 것
2.1. Best subset selection
: 모든 가능한 변수 조합에 대해 성능 비교를 수행하고, 최고 성능을 보이는 subset을 탐색하는 방법
Algorithm
- k개의 변수로 만들 수 있는 모든 모델을 만들고 해당 모델 간의 성능 비교를 통해 최고의 성능을 보이는 모델 하나를 선택함
-> RSS나 R2 값을 이용하여 모델 성능을 비교함
- 서로 다른 갯수의 변수로 만들어진 모델끼리 비교하여 최고 성능을 보이는 모델을 최종 선택함
-> Cp, AIC, BIC, adjusted R2 등의 값을 통해 변수 갯수가 다른 모델간의 성능 비교
Algorithm에서 앞 단계와 뒷 단계에서 서로 다른 measure를 통해 모델 성능을 비교하 는 이유?
- RSS나 R 2 값은 모델에 사용된 x값이 많아질수록 작아지는 특성을 가져서 서로 다른 갯수의 변수로 만들어진 모델을 비교하기에는 적합하지 않음
- 이에 서로 다른 개수의 변수로 만들어진 모델을 비교할 때는 모델에 사용된 변수의 갯수에 penalty를 줄 수 있는 수치가 필요하고, Cp, AIC, BIC, adjuster R2 등이 이런 상황에 활용될 수 있도록 만들어짐
2.2. Stepwise selection
: 초기 변수의 subset으로부터 순차적으로 변수를 추가하거나 제거하면서 최적의 변수 조합을 찾는 방법
- Best subset selection은 x값이 많아지면 많아질수록 고려해야하는 경우의 수 (변수의 조합)가 많아지게 됨
- 이에 대한 대안으로 만들어진 방법이며, 변수를 추가/제거하는 방향(더하거나, 빼거나)에 따라 다음과 같은 세 방법이 만들어져 있음
Forward stepwise selection
- NULL 모델에서 변수를 하나씩 추가해가면서 최적의 모델을 찾는 방법
- 데이터보다 모델에서 fitting해야할 parameter값의 개수가 많을 때도 사용가능
- 아래 표와 같이 변수의 개수에 따라 최적의 x값 조합이 달라지는 경우 최적의 x값 subset 을 찾지 못하는 문제가 발생함
Backward stepwise selection
- 모든 변수를 포함하고 있는 모델에서 에서 변수를 하나씩 제거해가면서 최적의 모델을 찾는 방법
Hybrid stepwise selection
- Forward와 Backward stepwise selection 기법을 혼합하여 절충한 방식
- 변수의 추가 제거를 반복함으로써 최적의 모델을 찾는 방법
2.3 Choosing the Optimal model
- 최적의 모델을 찾기 위해서는 모델간 비교가 필요함
- Subset selection 기법을 통해 만들어진 모델들은 model에 사용된 변수의 개수가 다르므로 정확한 성능 비교를 위해서는 모델에 활용된 변수 개수에 penalty를 주는 수치를 활용해야 함
- One standard error rule
-> 다양한 measure로 test error을 구해 서로 다른 갯수의 변수로 만들어진 모델 비교가 가능하지만, 변수 갯수에 따라 큰 차이나지 않는 경우 모델의 해석 측면에서 적은 변수를 사용한 모델이 용이하기에 사용된 변수 수가 적은 모델을 선택하는 규칙
-> 위 예시에서는 변수 수가 3이 넘어가는 경우 각 measure에서 최소값을 가지는 모델과 크게 차이나지 않으므로 최적의 모델은 변수 갯수가 3개인 모델이 될 수 있음
3. Shrinkage method
: 모델에 사용하는 변수 중 중요성이 크지 않은 변수에 대해 coefficient를 0이나 0에 가깝게 만들어주는 방식
- RSS 값에 shrinkage penalty 값을 더해준 값을 이용하여 모델을 fitting 함
- Shrinkage penalty를 정의하는 방법에 따라 Ridge와 LASSO regression으로 나뉨
3.1. Ridge regression
3.2. The Lasso
두 방식의 비교
- Ridge regression의 경우 coefficient가 정확히 0이 되지 않지만 Lasso의 경우 정확히 0이 될 수 있음 (해석 측면에서 Lasso가 유리함)
- 두 방법 모두 penalty가 가장 작아지는 model을 탐색하므로 중요하지 않은 변수의 coefficient값이 되도록이면 0에 가까워지게 fitting 하게 됨
- Tuning parameter 의 역할이 중요한데, 이 값이 0에 가까워질수록 ordinary linear regression과 동일한 결과를 얻게 되고, 무한대가 될 수록 모든 coefficient값이 0에 가까워지게 됨
- Shrinkage method는 subset selection에 비해 계산량이 적다는 장점이 있으나 ridge regression의 경우 coefficient가 정확히 0이 되지 않으므로 모델 해석에 어려움이 있을 수 있음
3.3. Selecting tuning parameter
- 다양한 tuning parameter(λ)에 대해 cross-validation을 수행한 뒤 계산된 cross-validation error값이 가장 작은 λ 선택
4. Dimension reduction
: 모델이 사용하는 변수를 바로 사용하지 않고 새로운 변수로 변환하는 방식으로 모델에 사용되는 변수의 갯수를 줄일 수 있음
4.1. Principal component Regression
: 데이터를 가장 넓게 퍼뜨릴 수 있는 선 또는 평면 Principal component 탐색 후 해당 PC 상에 데이터를 투영시켜 새로운 변수를 생성하고, 이를 이용해 모델을 만드는 방법
- 일반적으로 PC 는 가지고 있는 변수의 수 보다 적은 갯수로 탐색되므로 모델에 사용하는 변수의 갯수를 줄이는 효과를 얻을 수 있음
4.2. Partial least squares
: PCA에서 데이터의 분포를 고려하여 새로운 차원에서의 변수를 정의한 것에서 y값과의 상관관계를 추가로 고려하여 y값과 높은 상관관계를 가지는 변수가 PC를 결정하는데 더 높은 가중치를 주도록 하는 방법
- Principal Component (PC)는 데이터의 분포만을 고려하여 탐색되므로 변수(PC)들이 y값을 가장 잘 설명하는 축이 아닐 수 있음
- PC 탐색 단계에서 y값과 더 높은 상관관계를 가지는 변수에 가중치를 주는 방법
'Concepts' 카테고리의 다른 글
Support Vector Machine (0) | 2022.10.17 |
---|---|
복제수변이(Copy Number Variants) 이해하기 (0) | 2022.09.29 |
Methylome sequencing data 처리 워크플로우 (0) | 2021.12.19 |
불균형 데이터 처리를 위한 7가지 Over Sampling 기법들 (0) | 2021.10.09 |
Understanding P-value from CAFE results (0) | 2021.08.10 |