정형데이터 분석에서 feature selection하는 몇가지 방법
1. introduction
머신러닝 모델에서 직접 사용할 feature를 선택하는 과정
머신러닝 모델이 target변수를 예측하는데 유용한 feature와 유용하지 않은 feature를 구분해서 유용한 feature를 선택하는 과정
feature selection을 하면 모델의 복잡도를 낮춰주고 overfitting을 방지하며 속도를 높여주는 효과
그다지 도움이 되지 않는 noise feature를 제거하면 모델 성능이 오를 수도 있음
2. filter method
model과는 상관없이 통계적인 측정방법으로 feature들의 상관관계를 알아내어 selection을 하는 방식
feature간의 상관계수를 이용하는 이 방식이 모델에 반드시 적합하다고 보기는 어려운데
계산속도 빠르고 간단하면서 feature간 상관관계를 알아내기에 적합하다
wrapper method를 사용하기 전에 전처리하는데 쓰인다
2-1) 첫번째 방법
feature들 간 correlation을 계산
correlation이 매우 높으면 두 feature는 사실상 같은 feature나 다름없어서 하나는 제거해도 좋을 것이다
2-2) 두번째 방법(variance threshold??)
feature들의 variance를 계산함
variance 자체가 데이터가 얼마나 떨어져있는지 나타내는 값으로 variance가 작다면 feature안의 값들이 거의 비슷하다는 이야기로
model의 label예측에 별로 도움이 안될 것임
variance가 어떤 값 threshold 이상인 feature만 사용하자
이거 생각보다 괜찮음
3. wrapper method
예측 모델을 사용하여 ‘feature의 subset’을 계속 test하는 방식이다
기존 데이터셋에서 성능을 측정할 수 있는 holdout dataset을 따로 둬서 validation 성능을 측정하는 방법이 필요하다
subset을 게속 체크하면서 어떤 feature가 중요한지 알아내는 방식
4. embedded method
filter method와 wrapper method의 장점을 결합한 방식
학습알고리즘이 task랑 feature selection을 동시에 하는 방식?
'정형데이터' 카테고리의 다른 글
여러가지 ensemble learning 방법들 (0) | 2024.08.30 |
---|---|
정형데이터를 위한 딥러닝 모델 TabNet 간단하게 (0) | 2024.08.25 |
정형데이터 분석에서 feature importance와 permutation importance (0) | 2023.12.08 |
cross validation out of fold prediction (0) | 2023.12.07 |
time series data의 cross validation에 대한 여러가지 고찰 (0) | 2022.06.28 |