決策樹視覺化環境搭建

2021-08-09 03:46:15 字數 1730 閱讀 1111

scikit-learn中決策樹的視覺化一般需要安裝graphviz。主要包括graphviz的安裝和python的graphviz外掛程式的安裝。

graphviz:graphviz是貝爾實驗室開發的乙個開源的工具包,它使用乙個特定的dsl(領域特定語言):dot作為指令碼語言,然後使用布局引擎來解析此指令碼,並完成自動布局。graphviz提供豐富的匯出格式,如常用的格式,svg,pdf格式等。

1. 環境搭建

1.1 第一步是安裝graphviz

1.2 第二步是安裝python外掛程式graphviz

在命令列輸入pip install graphviz即可安裝。

1.3 第三步是安裝python外掛程式pydotplus

在命令列輸入pip install pydotplus。

至此就完成環境的搭建了。

有時候python會很笨,仍然找不到graphviz,這時,可以在**裡面加入這一行:

os.environ["path"] += os.pathsep + 'c:/program files (x86)/graphviz2.38/bin/' #注意後面的路徑是你自己的graphviz的bin目錄。
2. 示例演示

from sklearn.datasets import load_iris # 匯入類庫

from sklearn import tree

import pydotplus

import sys

import os

os.environ["path"] += os.pathsep + 'c:/program files (x86)/graphviz2.38/bin/'

iris = load_iris() # 載入sciki-learn的自帶資料

clf = tree.decisiontreeclassifier() # 載入決策樹分類模型

clf = clf.fit(iris.data, iris.target) # 決策樹擬合,得到模型

with open("iris.dot", 'w') as f: # 將模型存入dot檔案iris.dot

f = tree.export_graphviz(clf, out_file=f)

# 第一種方式,用graphviz的dot命令生成決策樹的視覺化檔案

#在命令列執行 dot -tpdf iris.dot -o iris.pdf, 執行完成後當前目錄就可以看到決策樹的視覺化檔案iris.pdf.

#開啟可以看到決策樹的模型圖。

# 第二種方式,用pydotplus生成iris.pdf

dot_data = tree.export_graphviz(clf, out_file=none)

graph = pydotplus.graph_from_dot_data(dot_data)

graph.write_pdf("iris.pdf")

3. 執行結果

決策樹視覺化

決策樹相比其他演算法的乙個重要特性就是 可解釋性,構建決策樹的過程就相當於形成 if then 規則集。如果我們能夠將生成的決策樹視覺化,那麼我們就可以對資料集與 值之間的關係有清晰的認識。首先,我們以 sklearn.datasets 包中的鳶尾花資料集為例。from sklearn.datase...

sklearn 決策樹視覺化

來自google developer 的machine learning recipes with josh gordon youtube鏈結 這裡使用了lris flower data set 生成了乙個認花的小樹 import numpy as np from sklearn.datasets ...

Scikit learn 決策樹視覺化

平常網上看到的關於決策樹的scikit learn教程大都是直接給出容器的訓練 clf tree.decisiontreeclassifier clf clf.fit x,y clf.predict 然而有時候要的不只是 資料的結果,選擇決策樹還想要看到訓練出來的決策樹是什麼樣的。於是經過各種搜尋,...