可视化特征重要性:数据集中哪些特征最重要
可视化 XGBoost 模型的另一种方法,是在模型中查看原始数据集中每个特征列的重要性。
一种简单做法是统计在模型的所有提升轮次(树)中,每个特征被用于分裂的次数,然后将结果绘制为条形图,并按出现次数对特征排序。XGBoost 提供了一个 plot_importance() 函数,正好可用于完成这一任务。在本练习中,您将亲自使用它!
本练习是课程的一部分
使用 XGBoost 的极端梯度提升
练习说明
- 与之前一样,从
X和y创建DMatrix。 - 创建参数字典,设置合适的
"objective"("reg:squarederror")以及"max_depth"为4。 - 使用
10个提升轮次训练模型,步骤与上一个练习完全相同。 - 使用
xgb.plot_importance()并传入训练好的模型,生成特征重要性的图表。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Create the DMatrix: housing_dmatrix
housing_dmatrix = ____
# Create the parameter dictionary: params
params = ____
# Train the model: xg_reg
xg_reg = ____
# Plot the feature importances
____
plt.show()