Итеративный RFE баллов sklearn

Я использую RFE с ExtraTreeRegressor в качестве оценщика, чтобы сделать SupervisedFeatureSelection в проблеме регрессии.

Я получаю рейтинг и поддержку от модели с общим кодом ниже:

rfe_vola = RFE(estimator=ExtraTreesRegressor(), n_features_to_select=1, step=1)
rfe_vola.fit(X_allfeatures, y_vol)
ranking_vola = rfe_vola.ranking_
print("ranking: ",ranking_vola)
print("support: ",rfe_vola.support_)

то, что я хотел бы получить, - это более глубокая информация, таким образом, оценка или оценка характеристик на каждой итерации RFE. Я заметил, что есть какая-то скрытая функция, такая как _fit, и я пытаюсь заставить параметр step_score отличаться от none... Дело в том, что я не могу достичь того, чего хочу.. (Я новичок в Python...) Я хотел бы получить печать результатов на каждой итерации. Есть ли у кого опыт работы с такой задачей? Каким должно быть правильное значение параметра step_score? (Я пробовал с логическим, но это не работает)

Спасибо за любой совет!!!

1 ответ

Вот что я искал:

from sklearn.metrics import r2_score

rfe_vola = RFE(estimator=ExtraTreesRegressor(),n_features_to_select=None, step=1, verbose=2)    
r2_scorer = lambda est, features: r2_score(y_true=y_vol,y_pred=est.predict(X_allfeatures[:, features]))
rfe_vola._fit(X_allfeatures, y_vol, r2_scorer)
ranking_vola = rfe_vola.ranking_
Другие вопросы по тегам