변수선택 방법

choyunjeong·2025년 1월 7일

15.2 변수선택 방법

  • 모든 가능한 회귀 (all possible regression)

  • 뒤로부터 제거 (backward elimination)

  • 앞으로부터 선택 (forward selection)

  • 단계별 회귀 (stepwise regression)

\\[40pt]

15.2.1 모든 가능한 회귀 (all possible regression)

이 방법은 모든 가능한 변수들의 조합 2k2^k을 회귀분석한다. 방대한 계산을 요구하므로 현실적으로 불가능하다. 따라서 kk개의 변수 중에서 pp개를 뽑겠다고 정한다음 "최적"모형을 선택하는 기준은 일반적으로 Rp2R_{p}^2이나 잔차평균제곱 MSEpMSE_{p}를 사용한다. kk개에서 pp를 뽑는 방법의 수는

(kp)=k!(kp)!p!\dbinom{k}{p}=\dfrac{k!}{(k-p)!p!}

개가 있으며, Rp2R_{p}^2을 가장 크게 하는 모형이나 MSEpMSE_{p} 가장 작게 하는 모형을 뽑으면 된다. 두개의 기준으로 뽑은 "최적" 모형은 같은 모형이다.

Rp2=1SSEpSST=11SST(np1)MSEpR_{p}^2=1-\dfrac{SSE_p}{SST}=1-\dfrac{1}{SST}\cdot (n-p-1)\cdot MSE_p

Rp2R_p^2을 최대로 하는 모형은 MSEpMSE_p를 최소로 만든다.

\\[40pt]

15.2.2 뒤로부터 제거 (backward elimination)

이 방법은 모든 가능한 회귀방정식을 비교하지 않고 다음과 같은 절차에 따라 변수를 선택하여 회귀분석한다.

  1. 모든 변수를 포함한 회귀방정식을 적합

  2. 변수 하나하나씩에 대한 partial Fpartial\ F-검정치를 구한다.

  3. 가장 작은 부분 FF-검정치 FLF_LFF-분포표로부터의 기각치 FcF_c를 비교.

  4. 만약 FL<FcF_L<F_c이면 FLF_L의 값을 준 변수 xLx_L을 제거시키고 나머지 변수들만을 가지고 회귀방정식 적합 후 (2)번 과정 반복. 만약 FLFcF_L\ge F_c이면 제거시킬 변수는 없으며, 현재 사용하고 있는 변수 선택

이 방법은 계산량이 작은 장점이 있으나 "최적"모형이라는 보장이 없으며 "좋은"모형을 선택하는 방법. 또한 한번 제거된 변수는 다시 선택할 수 없다.

partial Fpartial\ F- 검정치와 기각치 계산식은

xi:F0=b12Var^(b1),Fc=F(1,np1;α)x_i:F_0=\dfrac{b_1^2}{\hat{\text{Var}}(b_1)},\quad F_c=F(1,n-p-1;\alpha)

또한 partial Fpartial\ F-검정치를 구할 때 현재 남아 있는 모든 변수에 대한 회귀모형으로 MSEMSE를 구하고, 이것을 완전모형 FMFM으로 간주하여 계산한 SSRFMSSR_{FM}xix_i를 제외한 축소모형 RMRMSSRRMSSR_{RM}을 고려하여 다음과 같이 검정치를 구한다.

F0=SSR(F)SSR(R)MSEF_0=\dfrac{SSR(F)-SSR(R)}{MSE}

\\[40pt]

15.2.3 앞으로부터 선택 (forward selection)

이 방법은 가장 중요하다고 생각되는 변수부터 하나씩 골르면서 더 이상 중요한 변수가 없다고 판정될 때에 중단하여 이미 선택된 변수들만을 중요한 변수들로 간주하는 방법.

  1. 모든 독립변수 중에서 종속변수와 가장 상관관계(또는 결정계수)가 높은 변수를 선택. 선택된 변수 (xp)(x_p)의 회귀방정식 y^=f(xp)\hat{y}=f(x_p)이 유의한가 partial Fpartial\ F- 검정 수행.

  2. y^=f(xp,xi), ip\hat{y}=f(x_p,x_i),\ i\neq p을 각각 적합시키고 R2R^2을 구한다. R2R^2을 가장 크게 하여 주는 독립변수 xix_ixqx_q라 하자. xqx_q에 대한 partial Fpartial\ F- 검정을 수행하여 유의하면 다음 변수를 선택하고 유의하지 않으면 y^=f(xp)\hat{y}=f(x_p)회귀방정식 선택.

  3. y^=f(xp,xq,xi), ip,q\hat{y}=f(x_p,x_q,x_i),\ i\neq p,q을 각각 적합시키고 R2R^2을 구한다. R2R^2을 가장 크게 하여 주는 독립변수 xix_ixrx_r이라 하자. xrx_r에 대한 partial Fpartial\ F- 검정을 수행하여 유의하면 다음 변수를 선택하고 유의하지 않으면 y^=f(xp,xq)\hat{y}=f(x_p,x_q)회귀방정식 선택.

이 방법의 단점은 처음에 들어간 변수 xpx_p는 제거되지 않는다는 점이다. 예를 들어 하나의 변수만을 고려했을 때는 xpx_p가 가장 좋은 회귀방정식일 수 있지만 두개 이상의 변수가 있을 때는 xq, xrx_q,\ x_r만 있는 회귀방정식이 더 좋을 수 있다.

\\[40pt]

15.2.4 단계별 회귀 (stepwise regression)

이 방법은 앞으로부터 선택하는 방법을 개선한 것으로, 중요한 변수를 하나씩 추가선택하여 나가면서 미리 들어간 변수가 새로운 변수로 인해 중요성을 상실하여 제거될 수 있는지 매 단계별로 검토하는 방법.

  1. 모든 독립변수 중에서 종속변수와 가장 상관관계(또는 결정계수)가 높은 변수를 선택. 선택된 변수 (xp)(x_p)의 회귀방정식 y^=f(xp)\hat{y}=f(x_p)이 유의한가 partial Fpartial\ F- 검정 수행.

  2. y^=f(xp,xi), ip\hat{y}=f(x_p,x_i),\ i\neq p을 각각 적합시키고 R2R^2을 구한다. R2R^2을 가장 크게 하여 주는 독립변수 xix_i를 선택하고 partial Fpartial\ F- 검정으로 이 변수의 추가선택이 유의한가 검정한다. 유의하여 선택되었다면 이미 있는 변수 xpx_p에 대해 partial Fpartial\ F- 검정을 수행하여 유의하지 않으면 xpx_p변수를 제거한다.

  3. xpx_pxqx_q가 모두 유의하여 남아 있는 경우에 새로운 변수 y^=f(xp,xq,xi), ip,q\hat{y}=f(x_p,x_q,x_i),\ i\neq p,q을 각각 적합시키고 R2R^2을 구한다. R2R^2을 가장 크게 하여 주는 독립변수 xix_ixrx_r이라 하자. xrx_r에 대한 partial Fpartial\ F- 검정을 수행하여 유의했다면 xpx_pxqx_q에 대한 partial Fpartial\ F- 검정을 각각 수행하여 유의하지 않은 변수가 있다면 제거시키고 다음 순서로 넘어간다.

\\[40pt]

15.3 변수선택의 판정기준

앞선 변수선택의 계산방법에서 사용된 기준은 대부분 결정계수 R2R^2이었지만 다른 여러가지 방법도 자주 사용된다.

1. 잔차평균제곱 (residual mean square)

MSEp=SSEpnp1MSE_p=\dfrac{SSE_p}{n-p-1}

으로 SSEpSSE_p가 작으면 좋은 모형이므로 MSEpMSE_p가 작은 모형이 좋은 모형이 된다. 이 함수는 pp에 따라 감소, 증가함수가 아니므로 최소로 하는 pp값이 존재한다.

2. 결정계수

Rp2=1SSEpSST=SSRpSSTR_p^2=1-\dfrac{SSE_p}{SST}=\dfrac{SSR_p}{SST}

으로 SSEpSSE_p가 작으면 좋은 모형이므로 Rp2R_p^2가 큰 모형이 좋은 모형이 된다. 이 함수는 pp의 증가함수로 pp의 증가에 따라 Rp2R_p^2의 증가가 둔화되는 시점의 pp를 선택하는 것이 좋다.

3. 수정된 결정계수

Rap2=1(n1)(1Rp2)(np1)=1(n1)(SSEp/SST)(np1)=1(n1)MSEpSST\begin{aligned} R_{ap}^2 &= 1-\dfrac{(n-1)(1-R_p^2)}{(n-p-1)} \\[10pt] &= 1-\dfrac{(n-1)(SSE_p/SST)}{(n-p-1)} \\[10pt] &= 1-(n-1)\dfrac{MSE_p}{SST} \end{aligned}

이 함수는 결정계수가 갖는 단점을 보강하기 위하여 수정하였다. 이를 통해 증가함수가 아니게 되어 최적의 pp를 구할 수 있다. SSEpSSE_p가 작으면 좋은 모형이므로 Rp2R_p^2가 큰 모형이 좋은 모형이 된다.

4. 총제곱오차

Cp=SSEpσ2^+2(p+1)nC_p=\dfrac{SSE_p}{\hat{\sigma^2}}+2(p+1)-n

SSEpSSE_p가 작으면 좋은 모형이므로 Rp2R_p^2가 큰 모형이 좋은 모형이 된다.


[참고문헌]

  • 회귀분석 제 3판 - 박성현

0개의 댓글