[통계] Feature selection - 변수 선택방법 (전진 단계적 선택 / 후진 단계적 선택 / 하이브리드 방식)
00. 관측치의 수(n)과 변수의 수(p)
1) n의 수와 p의 수가 비슷한 경우
- 최소제곱적합에 많은 변동이 존재할 수 있어, 과적합 발생, 일반화 성능 떨어질 수 있음
2) n > p
- 최소제곱 추정치들은 낮은 분산을 가지는 경향이 있고, 따라서 검정 관측치에 대해서도 좋은 성능을 낼 것임
3) n < p
- 더 이상 유일한(unique) 최소 제곱 계수 추정치가 존재하지 않는다. 즉, 분산이 무한대가 되어 최소제곱 방법을 전혀 사용할 수 없게 됨
01. 설명변수와 목적변수
설명변수(X) | 목적변수(y) |
- 독립 변수(Independent variable) - 예측 변수(Predictor variable) - 원인 변수 - 조작 변수(mulipulated variable) - 통제 변수(controlled variable) - 노출 변수(exposure variable) - 리스크 팩터(risk factor) - 특징(feature) - 공변량(Covariate) (연속형 자료) - 요인(Factor) (범주형 자료) - 입력 변수(input variable) |
- 종속 변수(Dependent variable) - 반응 변수(Response variable) - 결과 변수(Outcome variable) - 표적 변수(Target variable) |
02.Subset Selection
- p개의 설명변수 중, 반응 변수(y)와 관련 있다고 생각하는 서브셋을 식별하는 것
- 변수의 수가 줄어든 서브셋에 최소제곱을 사용하여 모델을 적합
2-1. 최상의 부분집합 선택(Best subset selection)
- p개 설명변수의 모든 가능한 조합 각각에 대해 최소제곱회귀를 적합하고, RSS(=SSE)가 최소가 되거나 / R2이 최대가 되는 모델을 최고의 모델로 선택하는 방법
- 로지스틱 회귀의 경우, 6.1의 Step2에서 RSS가 아닌, 이탈도(deviance)를 사용하여 모델의 순위를 정한다.
- 이탈도는 더 넓은 부류의 모델들에 대해 RSS 역할을 하는 측도로, 최대 로그 우도(maximized log-likelihood)를 -2배 한 것이며, 이탈도가 작을수록 더 좋은 모델이라는 의미
- best subset selection방법은 가능한 모든 조합 2p의 수가 커질수록 계산 비용이 증가(p가 증가함에 따라 고려해야 하는 모델수가 급격히 늘어나기 때문)
*적합하다 : 데이터에 어떤 함수나 수학적 모델을 적용하여, 그 모델이 데이터를 얼마나 잘 설명하는지를 판단하는 과정. 예를 들어, 여러 점들이 있을 때(데이터) 이 점들의 사이의 관계를 나타내는 직선/곡선 등을 찾는 것을 '모델 적합'이라고 함
2-2. 단계적 선택(Stepwise Selection)
2-2-1. 전진 단계적 선택(forward stepwise selection)
- 설명변수가 하나도 포함되지 않은 '영모델'에서 시작하여, 모든 설명변수가 모델에 포함될 때까지 한 번에 하나씩 설명변수를 추가
- RSS(=SSE)가 최소가 되거나 / R2 이 최대가 되는 모델을 최고의 모델로 선택
- 실제로 잘 동작하긴 하지만, p개 설명변수의 서브셋을 포함하는 모든 2p개의 모델 중에서 가능한 최고의 모델을 찾는다는 보장은 없음
- n < p인 경우에 사용할 수 있으므로, p가 아주 클 때도(즉, 변수의 수가 아주 많을 때도) 사용가능한 유일한 부분집합 방법
2-2-2. 후진 단계적 선택(backward stepwise selection)
- p개의 설명변수를 모두 포함하는 완전 모델(full model)로 시작하여 한번에 하나씩 반복적으로 유용성이 가장 적은 설명변수를 제외
- p개 설명변수들을 서브셋을 포함하는 최고의 모델을 찾는다는 보장은 없음
- n(표본의 수)이 p(설명변수) 보다 커야 사용할 수 있다. (즉, 완전 모델 적합이 가능해야 한다.)
2-2-3. 하이브리드 방식
- 전진 단계적 선택 + 후진 단계적 선택
- 변수들이 모델에 순차적으로 추가된다는 점에서 전진 단계적 선택과 비슷한 동시에, 새로운 변수를 추가한 후에 모델 적합을 더 이상 향상시키지 않는 변수가 있으면 제거할 수도 있음
참고문헌(교재 다운로드)
https://www.statlearning.com/?ref=dataschool.io