Xgboost - 如何将 feature_importances_ 与 XGBRegressor() 一起使用?

数据挖掘 Python 回归 xgboost
2021-10-13 06:19:45

feature_importances当我们执行回归时,我们怎么能得到XGBRegressor()

有类似的东西XGBClassifier().feature_importances_吗?

3个回答
from xgboost import XGBClassifier
model = XGBClassifier.fit(X,y)

# importance_type = ['weight', 'gain', 'cover', 'total_gain', 'total_cover']
model.get_booster().get_score(importance_type='weight')

但是,下面的方法也返回特征重要性,并且与上面方法中的任何“importance_type”选项具有不同的值。这是在这个 github 问题中提出的,但没有答案 [截至 2019 年 1 月]。

model.feature_importances_

最后我通过以下方式解决了这个问题:

model.booster().get_score(importance_type='weight')

过去 Scikit-Learn 包装器XGBRegressor应该XGBClassifier使用model.booster().get_score(). 不确定来自哪个版本,但现在xgboost 0.71我们可以使用

model.feature_importances_