: 모델에 가장 영향을 많이 미치는 feature를 선택하는 방법
import eli5
from eli5.sklearn import PermutationImportance
perm = PermutationImportance(lgbm_model, scoring = "neg_mean_squared_error", random_state = 42).fit(x_val, y_val)
eli5.show_weights(perm, top = 80, feature_names = x_val.columns.tolist())
from eli5 import show_weights
from eli5.sklearn import PermutationImportance
from sklearn.datasets import make_friedman1
from sklearn.feature_selection import RFECV
from sklearn.model_selection import KFold
from sklearn.svm import SVR
X, y = make_friedman1(n_samples=50, n_features=10, random_state=0)
estimator = SVR(kernel="linear")
selector = RFECV(
PermutationImportance(estimator, scoring='neg_mean_squared_error', n_iter=10, random_state=42, cv=KFold(n_splits=3)),
cv=KFold(n_splits=3),
scoring='neg_mean_squared_error',
step=1
)
selector = selector.fit(X, y)
selector.ranking_
show_weights(selector.estimator_)
[참고]