如何可视化 H2O 树?
How to visualize H2O Tree?
我有 df data_categorical
和一个模型 model
。
我用
将我的 df 转换为 h2o 框架
data = h2o.H2OFrame(data_categorical)
并用
训练我的模型
model = H2ORandomForestEstimator(ntrees=1, max_depth=20, nfolds=10)
# Train model
model.train(x=training_columns, y=response_column, training_frame=train)
我正在尝试可视化创建的树(请注意,我只需要一棵树),但我似乎做不到。
我用
下载了 mojo 文件
model.download_mojo(path,get_genmodel_jar=True)
但是我不知道接下来要做什么
您可以使用以下文档中描述的工作流程:
java -cp h2o.jar hex.genmodel.tools.PrintMojo --tree 0 -i model.zip -o model.gv -f 20 -d 3
dot -Tpng model.gv -o model.png
open model.png
我为 Windows/python 用户整理了一个小食谱,包括所有步骤的链接:
一般信息:
http://docs.h2o.ai/h2o/latest-stable/h2o-docs/mojo-quickstart.html
安装 graphViz:
https://forum.graphviz.org/t/new-simplified-installation-procedure-on-windows/224
安装javaJDK14:
https://www.oracle.com/java/technologies/javase/jdk14-archive-downloads.html
将 Java 添加到 PATH 环境变量(以便能够从控制台执行)
在python中编译H2O模型并使用.download_mojo(path)函数导出模型:
decTreeModel.download_mojo('C:/User/L/mojoExports/myMojoModel.zip')
- 转到 myMojoModel.zip 的位置并在此 directory.In CMD 类型中启动 CMD:
java -cp h2o.jar hex.genmodel.tools.PrintMojo --tree 0 --levels 21 --title "title for tree" -i myMojoModel.zip -o model.gv -f 20 -d 3
meaning of parameters:
--tree n : n is the number of the tree to be exported if there are more than one model in the mojo model (e.g. when using cross validation)
--levels n : n is number of categorical levels to be printed (default 10)
--title "string" : you can specify the title here
-i "path" : "path" is path to input model (myMojoModel.zip)
-o "path" : "path" is path to output graph (model.gv)
-f n : n is the font size
-d n : n is the number of decimals displayed for numbers
- 在 CMD 中,使用 graphViz 创建 .png。输入
dot -Tpng model.gv -o model.png
- 它将在该目录中创建一个 .png 文件,您可以使用任何 png 查看器查看该文件
我有 df data_categorical
和一个模型 model
。
我用
将我的 df 转换为 h2o 框架
data = h2o.H2OFrame(data_categorical)
并用
训练我的模型model = H2ORandomForestEstimator(ntrees=1, max_depth=20, nfolds=10)
# Train model
model.train(x=training_columns, y=response_column, training_frame=train)
我正在尝试可视化创建的树(请注意,我只需要一棵树),但我似乎做不到。
我用
下载了 mojo 文件
model.download_mojo(path,get_genmodel_jar=True)
但是我不知道接下来要做什么
您可以使用以下文档中描述的工作流程:
java -cp h2o.jar hex.genmodel.tools.PrintMojo --tree 0 -i model.zip -o model.gv -f 20 -d 3
dot -Tpng model.gv -o model.png
open model.png
我为 Windows/python 用户整理了一个小食谱,包括所有步骤的链接:
一般信息: http://docs.h2o.ai/h2o/latest-stable/h2o-docs/mojo-quickstart.html
安装 graphViz: https://forum.graphviz.org/t/new-simplified-installation-procedure-on-windows/224
安装javaJDK14: https://www.oracle.com/java/technologies/javase/jdk14-archive-downloads.html
将 Java 添加到 PATH 环境变量(以便能够从控制台执行)
在python中编译H2O模型并使用.download_mojo(path)函数导出模型:
decTreeModel.download_mojo('C:/User/L/mojoExports/myMojoModel.zip')
- 转到 myMojoModel.zip 的位置并在此 directory.In CMD 类型中启动 CMD:
java -cp h2o.jar hex.genmodel.tools.PrintMojo --tree 0 --levels 21 --title "title for tree" -i myMojoModel.zip -o model.gv -f 20 -d 3
meaning of parameters:
--tree n : n is the number of the tree to be exported if there are more than one model in the mojo model (e.g. when using cross validation)
--levels n : n is number of categorical levels to be printed (default 10)
--title "string" : you can specify the title here
-i "path" : "path" is path to input model (myMojoModel.zip)
-o "path" : "path" is path to output graph (model.gv)
-f n : n is the font size
-d n : n is the number of decimals displayed for numbers
- 在 CMD 中,使用 graphViz 创建 .png。输入
dot -Tpng model.gv -o model.png
- 它将在该目录中创建一个 .png 文件,您可以使用任何 png 查看器查看该文件