绘制 XGBoost 模型特征重要性的增益、覆盖、权重



我有一个XGBoost模型xgboost_model。绘制此 XGBoost 模型的特征重要性;

plot_importance(xgboost_model)
pyplot.show()

该图显示了 F 分数。但是,有一些重要的指标,例如 F 分数背后的增益、覆盖范围、权重。

如何分别绘制重要性指标增益、覆盖范围、权重?

我正在使用python 3.7

您可以将不同的重要性类型传递给plot_importance

fig, ax = plt.subplots(3,1,figsize=(14,30))
nfeats = 15
importance_types = ['weight', 'cover', 'gain']
for i, imp_i in enumerate(importance_types):
plot_importance(xgboost_model, ax=ax[i], max_num_features=nfeats
, importance_type=imp_i
, xlabel=imp_i)

在上面的示例中,您可以构建一个包含 3 个图的subplot,每个图块对应于plot_importance支持的三种类型。

我在jupyter对此进行了测试.否则,您会致电plt.show().

最新更新