來自google developer 的machine learning recipes with josh gordon
youtube鏈結
這裡使用了lris_flower_data_set
生成了乙個認花的小樹
import numpy as np
from sklearn.datasets import load_iris
from sklearn import tree
iris = load_iris()
test_idx=[0,50,100]
#train data
train_target =np.delete(iris.target,test_idx)
train_data = np.delete(iris.data,test_idx,axis = 0)
#testing fata
test_target = iris.target[test_idx]
test_data = iris.data[test_idx]
clf = tree.decisiontreeclassifier()
clf.fit(train_data,train_target)
print(clf.predict(test_data))
這裡總共有3類鳶尾花,每類50條資料,每組的第乙個資料作為測試資料,剩餘所有的資料作為訓練資料
[0
12]
使用pydot
可以pip安裝
首先需要pip安裝graphviz包
pip install graghviz
但是僅僅安裝python包會產生
runtimeerror: failed to execute ['dot', '-tpdf', '-o', 'test-output/round-table.gv'], make sure the graphviz executables are on
your
systems
' path
解決方案:安裝了anaconda可以
conda install graphviz
然後將anaconda\library\bin\graphviz加入path可以使 決策樹視覺化
決策樹相比其他演算法的乙個重要特性就是 可解釋性,構建決策樹的過程就相當於形成 if then 規則集。如果我們能夠將生成的決策樹視覺化,那麼我們就可以對資料集與 值之間的關係有清晰的認識。首先,我們以 sklearn.datasets 包中的鳶尾花資料集為例。from sklearn.datase...
Sklearn 決策樹視覺化 (未完成)
個人總結困難之處有三點 1 屬性存在二元屬性 標稱屬性 序數屬性 連續屬性四種,訓練方式沒有視覺化比較混亂 2 每個步驟有足夠的意義,所以需要觀察分類過程 3 不同於難以解釋的神經網路,或者分離超平面可以用乙個式子表達,決策樹劃分結果通常需要語言描述 1 等高線方法,只能觀察兩種特徵值對結果的影響,...
Scikit learn 決策樹視覺化
平常網上看到的關於決策樹的scikit learn教程大都是直接給出容器的訓練 clf tree.decisiontreeclassifier clf clf.fit x,y clf.predict 然而有時候要的不只是 資料的結果,選擇決策樹還想要看到訓練出來的決策樹是什麼樣的。於是經過各種搜尋,...