在H2O XGBoost模型中可视化树

问题描述 投票:0回答:2

我正在看这个答案来可视化H2O中的梯度增强树模型,它说GBM上的方法也可以应用于XGBoost: Finding contribution by each feature into making particular prediction by h2o ensemble model

http://docs.h2o.ai/h2o/latest-stable/h2o-docs/productionizing.html

但是当我尝试使用它在H2O XGBoost MOJO上提到的方法时,它失败了。

我查看了hex.genmodel.tools.PrintMojo:https://github.com/h2oai/h2o-3/blob/master/h2o-genmodel/src/main/java/hex/genmodel/tools/PrintMojo.java的源代码

它似乎只适用于randomforest和GBM模型,但不适用于XGBoost模型。

有谁知道如何在H2O XGBoost模型中可视化树木?谢谢!

machine-learning h2o xgboost
2个回答
0
投票

这是H2O目前正在添加的功能,您可以在此处跟踪其进度:https://0xdata.atlassian.net/browse/PUBDEV-5743

请注意,在票证中,有关如何使用本机xgboost可视化树的评论中有建议。


0
投票

我终于找到了解决方案,似乎没有为XGBoost记录,但它确实与其他树相关算法相同。

只需运行此命令即可从您的模型生成前50棵树:

for tn in {1..50}
do
   java -cp h2o-3.24.0.1/h2o.jar hex.genmodel.tools.PrintMojo --tree $tn -i <your mojo model> -o XGBOOST_$tn.gv
   dot -Tpng  XGBOOST_$tn.gv -o xgboost_$tn.png
done
© www.soinside.com 2019 - 2024. All rights reserved.