如何在 Apache Spark (PySpark 1.4.1) 中可视化/绘制决策树?
How do I visualise / plot a decision tree in Apache Spark (PySpark 1.4.1)?
我正在使用 Apache Spark Mllib 1.4.1(PySpark,Spark 的 python 实现)根据我拥有的 LabeledPoint 数据生成决策树。树生成正确,我可以将它打印到终端(提取规则,因为这个用户称之为 How to extract rules from decision tree spark MLlib)使用:
model = DecisionTree.trainClassifier( ... )
print(model.toDebugString()
但我想做的是可视化或绘制决策树,而不是将其打印到终端。有什么方法可以在 PySpark 中绘制决策树,或者我可以保存决策树数据并使用 R 绘制它?谢谢!
有这个项目Decision-Tree-Visualization-Spark 用于可视化决策树模型
它有两个步骤
对于解析器检查 Dt.py
函数 def tree_json(tree)
的输入是您的模型 toDebugString()
来自question
的回答
虽然有点老了post,只是提供我的答案,让以后来到这里post的其他人都能受益。
或者,您可以使用 "graphviz" python 在 PySpark 中使用的包。它将决策树模型打印成整齐的树结构,而不是通常的 if 循环结构。
可以在这个 link 中找到更多详细信息:https://pypi.python.org/pypi/graphviz
我们刚刚发布了 dtreeviz 1.1 版本,支持来自 Spark 的决策树。你可以可视化很多东西,比如整棵树,只是预测路径,叶信息,比如样本数或标准。
您可以在这个 notebook
中查看许多可视化效果
我正在使用 Apache Spark Mllib 1.4.1(PySpark,Spark 的 python 实现)根据我拥有的 LabeledPoint 数据生成决策树。树生成正确,我可以将它打印到终端(提取规则,因为这个用户称之为 How to extract rules from decision tree spark MLlib)使用:
model = DecisionTree.trainClassifier( ... )
print(model.toDebugString()
但我想做的是可视化或绘制决策树,而不是将其打印到终端。有什么方法可以在 PySpark 中绘制决策树,或者我可以保存决策树数据并使用 R 绘制它?谢谢!
有这个项目Decision-Tree-Visualization-Spark 用于可视化决策树模型
它有两个步骤
对于解析器检查 Dt.py
函数 def tree_json(tree)
的输入是您的模型 toDebugString()
来自question
的回答虽然有点老了post,只是提供我的答案,让以后来到这里post的其他人都能受益。
或者,您可以使用 "graphviz" python 在 PySpark 中使用的包。它将决策树模型打印成整齐的树结构,而不是通常的 if 循环结构。
可以在这个 link 中找到更多详细信息:https://pypi.python.org/pypi/graphviz
我们刚刚发布了 dtreeviz 1.1 版本,支持来自 Spark 的决策树。你可以可视化很多东西,比如整棵树,只是预测路径,叶信息,比如样本数或标准。
您可以在这个 notebook
中查看许多可视化效果