我在Python中创建了一个XGBoost模型,并使用以下代码更好地理解模型:
xgb.plot_importance(model)
要么
xgb.plot_importance(model, importance_type="gain")
我可以了解哪些参数最有价值,但似乎很缺乏告诉我这些值是什么。
假设我试图确定有多少人会在某一天租用自行车。运行上面的两个plot_importance方法可能会告诉我'温度'和'星期几'是确定自行车骑行量的最重要参数。我想知道的是,这些价值决定了高自行车骑行次数以及确定低自行车骑行次数的价值。
我猜你正在尝试做的是可视化和调试算法在预测时所做的事情。为此,我建议查看ELI5,特别是涵盖working with XGBoost的部分。有关如何在泰坦尼克号数据集上使用带有XGBoost的ELI5的综合示例,请查看this link。
为了解释预测,请执行以下操作:
from eli5 import show_prediction
show_prediction(moel, your_prediction, show_feature_values=True)