在协作实验室中可视化决策树

时间:2018-11-05 19:35:53

标签: python scikit-learn visualization decision-tree google-colaboratory

使用Google Colab可视化决策树的最佳方法是什么? 'dtreeviz'(例如Github)的可视化效果非常好,但是运行类似

!pip install dtreeviz

from sklearn.datasets import *
from sklearn import tree
from dtreeviz.trees import *

之后

classifier = tree.DecisionTreeClassifier(max_depth=4)
cancer = load_breast_cancer()
classifier.fit(cancer.data, cancer.target)
viz = dtreeviz(classifier,
              cancer.data,
              cancer.target,
              target_name='cancer',
              feature_names=cancer.feature_names, 
              class_names=["malignant", "benign"],
              fancy=False )  

viz.view()

我知道

ExecutableNotFound: failed to execute ['dot', '-Tsvg', '-o', '/tmp/DTreeViz_62.svg', '/tmp/DTreeViz_62'], make sure the Graphviz executables are on your systems' PATH

哪些功能可以通过我的g盘运行Colab?

任何帮助表示赞赏!

1 个答案:

答案 0 :(得分:1)

简短答案

  • 确保通过graphviz安装了!apt-get install graphviz
  • 您可以通过viz.svg()
  • 获取创建的SVG。
  • 将输出包装在IPython的HTML中,然后调用display将其显示在笔记本中

    from IPython.core.display import display, HTML
    display(HTML(viz.svg()))
    

更长的答案

  • dtreeviz view()在您的临时目录中创建SVG文件
  • 此文件将传递到graphviz库,具体取决于您的操作系统,该库将打开该文件
  • Google colab被识别为linux,它尝试通过默认查看应用程序打开SVG文件
  • 如果您不在本地运行笔记本电脑,那么最后一步将无济于事(可能Google服务器现在有几个打开的SVG图像或一些错误消息)
  • 简短答案中的代码仅获取SVG代码而不保存它,然后将其显示在笔记本中