특성 선택 (Feature Selection)
특성 선택(Feature Selection)은 모델 성능에 기여하는 특성만 선별하고, 불필요한 특성을 제거하는 과정입니다. 차원의 저주를 방지하고 모델의 일반화 성능을 향상시킵니다.학습 목표
- Filter, Wrapper, Embedded 세 가지 접근법의 차이를 이해합니다.
- scikit-learn의 특성 선택 도구를 사용할 수 있습니다.
- RFE(Recursive Feature Elimination)를 적용할 수 있습니다.
- 트리 기반 모델의 특성 중요도를 활용할 수 있습니다.
왜 중요한가
특성이 너무 많으면 과적합, 학습 시간 증가, 해석 어려움이 발생합니다. 반면 중요한 특성을 제거하면 모델 성능이 저하됩니다. 적절한 특성 선택은 성능과 효율의 균형을 맞추는 핵심 과정입니다.핵심 개념
세 가지 접근법 비교
| 방법 | 원리 | 장점 | 단점 |
|---|---|---|---|
| Filter | 통계적 기준으로 독립 평가 | 빠른 계산 | 특성 간 상호작용 미반영 |
| Wrapper | 모델 성능으로 부분집합 평가 | 높은 정확도 | 느린 계산 |
| Embedded | 모델 학습 과정에서 선택 | 효율적 | 특정 모델에 종속 |
Filter 방법
Wrapper 방법: RFE
Embedded 방법: 모델 기반
상관관계 기반 제거
AI/ML에서의 활용
Q: 특성 선택과 차원 축소의 차이는 무엇인가요?
Q: 특성 선택과 차원 축소의 차이는 무엇인가요?
특성 선택은 원본 특성 중 일부를 선택하여 남깁니다 (해석 가능). 차원 축소(PCA 등)는 원본 특성을 변환하여 새로운 특성을 만듭니다 (해석이 어려울 수 있음).
Q: 특성 선택은 학습 데이터에서만 수행해야 하나요?
Q: 특성 선택은 학습 데이터에서만 수행해야 하나요?
네. 특성 선택도 전처리의 일부이므로, 학습 데이터로 선택 기준을 결정(fit)하고 테스트 데이터에는 동일한 기준을 적용(transform)해야 합니다.
체크리스트
- Filter, Wrapper, Embedded 방법의 차이를 설명할 수 있다
- SelectKBest로 통계 기반 특성 선택을 수행할 수 있다
- RFE로 재귀적 특성 제거를 적용할 수 있다
- 트리 기반 모델의 feature_importances_를 활용할 수 있다

