모델을 훈련하면서 다중공선성을 지닌 특성에 대해서는 훈련이 제대로 진행되지 않습니다. 자세한 내용은 아래 포스트에서 확인할 수 있습니다.
2020/08/12 - [Data/Theory] - 다중공선성은 모델에 어떤 영향을 미치는가?
그래서 이번 포스트에서는 Feature Importance를 제대로 찾기 위한 방법에 대해서 소개하겠습니다.
포스트의 그림 및 코드는 Medium에서 가져왔습니다.
from boruta import BorutaPy
from sklearn.ensemble import RandomForestRegressor
import numpy as np
###initialize Boruta
forest = RandomForestRegressor(
n_jobs = -1,
max_depth = 5
)
boruta = BorutaPy(
estimator = forest,
n_estimators = 'auto',
max_iter = 100 # number of trials to perform
)
### fit Boruta (it accepts np.array, not pd.DataFrame)
boruta.fit(np.array(X), np.array(y))
### print results
green_area = X.columns[boruta.support_].to_list()
blue_area = X.columns[boruta.support_weak_].to_list()
print('features in the green area:', green_area)
print('features in the blue area:', blue_area)
'데이터분석' 카테고리의 다른 글
[Warehouse] PLT Plot 정리 (0) | 2020.09.01 |
---|---|
다중공선성은 모델에 어떤 영향을 미치는가? (0) | 2020.08.12 |
Biased Estimation, Unbiased Estimation (0) | 2020.08.04 |
Frequentist vs Bayesian (0) | 2020.08.03 |
Spark 기본 설명 (0) | 2020.07.30 |