Predictor가 많으면 training data에서의 standard error가 낮아지지만 overfitting을 초래하고 이는 prediction에 악영향을 끼칠 수 있다. 또한 여러 회귀 모델에서 많은 변수가 실제로 반응 변수와 관련이 없을 때가 종종 있다. 이를 포함하는 것은 모델의 불필요한 복잡성을 초래하므로 이러한 변수 계수를 제한하거나 축소함으로써 bias의 미미한 증가를 대가로 변동성을 크게 줄일 수 있다. 따라서 중요한 predictor를 선택하는 것이 필수적이다. 이번 장에서는 variable selection하는 방법에 대해 살펴볼 것이다.
Chapter 7.1 Subset selection
Predictor가 $k$개라면 이 predictor들을 이용해 만들 수 있는 조합은 $2^k$개이다. Best subset selection은 $2^k$개의 모델들을 비교하여 최적의 모델을 선택하는 것이다. 모델의 predictor 수가 같다면 error SS가 작은 모델을 선택하면 되지만, predictor를 추가할수록 변수의 관련도와 상관없이 error SS는 무조건 줄어들기 때문에 Mallow's $C_p$, AIC, BIC, $R^2$를 이용하여 모델을 비교하는 것이 좋다. 이 모델 비교하는 방법에 대해서는 chapter 7.2에서 살펴볼 것이다.
Predictor가 많은 경우에는 가능한 조합이 매우 크기 때문에 다른 방법으로 모델을 선택해야 한다. 이때는 forward stepwise selection 또는 backward stepwise selection을 사용한다.
Forward stepwise selection은 처음에는 predictor가 없는 $\hat{y}=\bar{y}$에서 시작해서 $k$개의 predictor 중 1개의 predictor를 추가한 $k$개의 모델을 만든다. 이 모델들 중 error SS가 가장 낮은 최적의 모델(모델에 가장 큰 개선을 제공하는 변수)을 선택하고 남은 $k-1$개의 predictor 중 1개를 더 추가한 $k-1$개의 모델을 만든다. 이 모델들 중 error SS가 가장 낮은 모델을 선택하고 이 과정을 모든 $k$개의 변수가 모델에 추가될 때까지 반복한다. 그럼 predictor가 없을 때의 최적 모델, predictor가 1개일 때의 최적 모델, predictor가 2개일 때의 최적 모델,...,predictor가 $k$개일 때의 최적 모델로 총 $k+1$개의 모델이 존재한다. 이 모델들을 Mallow's $C_p$, AIC, BIC, adjusted $R^2$를 이용하여 비교한다. RMAF 교재에서는 매 단계에 t-ratio를 이용하여 t-ratio가 가장 큰 변수를 추가하고, 미리 정한 t 값을 초과하는 변수가 없다면 변수 선택 과정을 중단한다고 설명한다. 하지만 t-ratio를 이용하면 각 단계에서 유의미한 변수를 찾기 위해 여러번 가설 검정을 하므로 "실수로" 유의미하지 않음에도 불구하고 유의미한 변수로 선택할 가능성이 있다.
Forward stepwise selection에서는 총 $1 + \sum_{i=0}^{k-1} (k - i) = 1 + \frac{k(k + 1)}{2}$개의 모델을 fitting한다. 이 모델은 전 단계에 선택했던 predictor를 다음 단계에서 사용하기 때문에 최적의 모델이 선택될 보장은 없다. Forward stepwise selection은 데이터의 수가 predictor의 수보다 작아도 사용할 수 있지만 predictor가 $n-1$개 이하인 모델만 고려한다.
Backward stepwise selection은 모든 predictor를 포함한 전체 모델에서 시작하여 1개의 predictor를 제외한 모델을 만든다. 이 $k$개의 모델 중 error SS가 가장 작은 모델을 선택하고, 이 모델에서 1개의 predictor를 추가로 제외하여 $k-1$개의 모델을 만든다. 이 과정을 predictor가 없는 모델이 될 때까지 반복하고 forward stepwise selection과 마찬가지로 총 $k+1$개의 모델 중 Mallow's $C_p$, AIC, BIC, adjusted $R^2$를 이용하여 최적 모델을 찾는다.
Backward stepwise selection은 forward와 마찬가지로 총 $ 1 + \frac{k(k + 1)}{2} $개의 모델을 fitting하고, $2^k$개의 모델 중 일부만 고려하기 때문에 최적의 모델이 선택된다는 보장은 없다. 또한 데이터의 수가 predictor의 수보다 작다면 backward stepwise selection 방법은 사용할 수 없다.
Mixed selection은 forward 방식과 비슷하지만, model의 fit을 개선하지 않으면 변수를 제거할 수 있다. Mixed selection은 predictor가 없는 모델에서 시작하여 변수를 1개씩 추가하고 error SS가 가장 낮은 모델을 선택한다. 이 모델의 각 변수를 살펴보고 t ratio가 미리 정해진 임계값보다 낮으면 해당 변수를 제거한다. 이 임계값을 충족하는 변수가 더 추가될 수 없을 때까지 이 과정을 반복한다.
모든 subset selection에서 한번에 하나의 predictor만 추가/제거된다. 따라서 categorical 변수의 경우 2개 이상의 범주를 가졌다면 범주 중 일부만 선택될 수 있는 문제가 있다. 또한 두 변수를 한꺼번에 추가했을 때의 joint effect는 고려되지 않는다. 하지만 backward selection은 한 변수씩 제거되기 때문에 joint effect를 고려한다.
Stepwise selection은 모든 outlier와 leverage를 고려하지 않고, 자동화된 절차이기 때문에 조사관의 의견 또한 반영되지 않는다.
Chapter 7.2 Choosing the best model
최적 모델을 선택할 때 일반적으로 $R^2$ 또는 error SS를 사용하지만 이 값은 predictor가 증가할수록 무조건 증가/감소하는 문제가 있다. Train error가 낮은 모델이 아니라 test error가 낮은 모델을 선택하고 싶기 때문에 이러한 통계는 test error의 좋은 추정치가 될 수 없다. 따라서 predictor의 갯수가 다른 모델에서 최적의 모델을 선택할 때는 과적합으로 인한 bias를 보정한 Mallow's $C_p$, AIC, BIC, adjusted $R^2$를 사용한다.
Mallow's $C_p$
전체 $k$개의 predictor 중에 $p<k$개의 predcictor subset을 고려할 때, mallow's $C_p$는 다음과 같이 정의된다.
$$C_p = \frac{(error SS)_p}{s^2} - n + 2p= \frac{1}{n} \left( (error SS)_p + 2ps^2 \right).$$
이때 $s^2 = \frac{\sum_{i=1}^{n} e_i^2}{n - k - 1}$는 k-predictor regression의 residual variance이고, $error SS_p$는 p-predictor regression의 residual sum of squares이다. 왼쪽의 수식은 RMAF 교재에서 정의한 수식이고, 오른쪽의 수식은 ISLR 교재에서 정의한 것이다. 비교에 영향을 끼치지 않는 것들을 제외하면 두 수식 모두 같은 결과를 얻는다. $C_p$의 값이 작은 모델이 더 바람직하며 패널티는 모델에 포함된 예측 변수의 수가 증가할수록 증가한다.
AIC/BIC
Linear regression은 likelihood를 최대화하는 것을 목표로 하는데, 변수를 추가할수록 변수의 유의미한 것과 관계없이 likelihood는 증가한다. 따라서 AIC(Akaike Information Criterion)과 BIC(Bayes Information Criterion)은 변수 추가에 대한 패널티를 부여하여 loglikelihood를 측정한다. Predictor가 $p$개 있을 때, AIC는 predictor에 대해 $2p$의 패널티를 부여하는 반면, BIC는 $p\ln n$을 부여한다. 따라서 변수 추가에 대한 BIC의 패널티가 일반적으로 더 크기 때문에 BIC를 사용할 경우 AIC보다 더 적은 변수를 가질 수 있다.
AIC와 BIC의 수식은 다음과 같다.
$$AIC = n \ln s^2 + n \ln(2\pi) + n + k + 3 = \frac{1}{ns^2} \left((\text{error SS})_p + 2ps^2\right) $$
$$BIC = \frac{1}{ns^2} \left((\text{error SS})_p + (\ln n)ps^2\right)$$
AIC의 왼쪽 수식은 RMAF 교재에서 정의한 수식이고, 오른쪽은 ISLR 교재에서 정의한 수식이다. 모델 비교를 할 때 이 값들이 낮은 모델을 선택한다.
Adjusted $R^2$
Adjusted $R^2$는 $R^2$에서 변수 추가한 것에 대한 패널티를 부여한 것이다. 수식은 다음과 같다.
$$\text{Adjusted } R^2 = 1 - \left(\frac{\text{error SS}}{\text{TSS}}\right) \left(\frac{n - 1}{n - p - 1}\right) = 1 - (1 - R^2) \left(\frac{n - 1}{n - p - 1}\right)$$
변수의 갯수 $p$가 늘어날수록 $n-p-1$이 감소하므로 error SS 감소량이 $n-p-1$감소하는 것보다 더 감소해야 adjusted $R^2$를 증가시킬 수 있다.
'SOA > SRM(Statistics for Risk Modeling)' 카테고리의 다른 글
SRM 정리 - Chapter 9. Linear Regression: Predictions (0) | 2024.08.03 |
---|---|
SRM 정리 - Chapter 8. Linear Regression: Shrinkage and Dimension Reduction (0) | 2024.08.02 |
SRM 정리 - Chapter 6. Resampling Methods (0) | 2024.07.31 |
SRM 정리 - Chapter 5. Linear Regression: Validation (0) | 2024.07.24 |
SRM 정리 - Chapter 4. Linear Regression: $F$ (0) | 2024.07.24 |