機器學習實戰(10)—— 決策樹代碼實現
我們學完決策樹算法原理,來通過 Python 代碼實戰一下。
首先,導入數據集合各種用到的包。並且顯示鳶尾花數據集信息。
from sklearn.datasets import load_iris #導入鳶尾花數據集
from sklearn import tree #導入決策樹模塊
iris = load_iris() #加載數據集
print(iris.DESCR) #顯示數據集信息
用到的是鳶尾花數據集。
然後看一下鳶尾花的四個特徵數據:
iris.data#數據
查看鳶尾花的分類:
iris.target#類別
0、1、2 分別表示 3 種鳶尾花。
引入決策樹算法並訓練模型:
clf = tree.DecisionTreeClassifier()
#clf = tree.DecisionTreeClassifier(max_depth=2)#設置最深的樹的層數
clf.fit(iris.data, iris.target)#訓練決策樹
從下圖可以看出決策樹的默認參數。
接下來進行預測(建議劃分數據集操作):
clf.predict(iris.data)#預測結果
預測結果如上所示。
接下來繪製決策樹。
tree.export_graphviz(clf, out_file='tree.dot')#畫出決策樹
在 jupyter notebook 中顯示決策樹:
%matplotlib inline
from IPython.display import Image
Image('tree.png')
# X[3] petal width
#values【 , , 】三種的數量
如果想要繪製出上圖的決策樹,需要做一些額外操作。
https://graphviz.gitlab.io/_pages/Download/Download_windows.html
下載後正常安裝,c 盤 programx86 文件夾中,bin 目錄加入環境變量中
cmd 進入圖片目錄
cd C:\Users\Administrator\代碼
dot -T png tree.dot -o tree.png
其實就是將. dot 文件轉爲了. png 格式的圖片。
這就是 Python 實現決策樹的內容,你學會了麼?
本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源:https://mp.weixin.qq.com/s/NaV0CF9hOe5sMtNEXs-UfA