我正在努力将xgboost特征重要性图保存到文件中。我创建了一个模型,并在Jupyter笔记本中标绘了功能的重要性-
xgb_model = xgboost.train(best_params, dtrain, num_round)
xgboost.plot_importance(xgb_model)
它向我显示了功能重要性图,但无法将其保存到文件中。我什至在dir(xgboost.plot_importance(xgb_model))
中寻找了任何 save 属性,但一无所获。有什么办法吗?
答案 0 :(得分:1)
根据doc,xgboost.plot_importance(xgb_model)
返回matplotlib Axes
因此,您可以
ax = xgboost.plot_importance(xgb_model)
ax.figure.savefig('the-path-you-want-to-save.png')
另外,如果您丢失图形的左右边距,则可以设置tight_layout
ax = xgboost.plot_importance(xgb_model)
ax.figure.tight_layout()
ax.figure.savefig('the-path-you-want-to-save.png')
答案 1 :(得分:0)
在documentation中,您看到的是matplotlib
的输出。因此,您应该可以调用matplotlib的savefig
。
如果要保存模型,请查看How to save & load xgboost model?。