python決策樹
⑴ python 決策樹可以調什麼參數
調用這個包:
sklearn.treesklearn(scikit-learn)可以去下載,解壓後放入C:Python27Libsite-packages直接使用。需要用同樣的方法額外下載numpy和scipy包,不然會報錯。
例子:
fromsklearn.datasetsimportload_iris
fromsklearn.model_selectionimportcross_val_score
fromsklearn.
clf=DecisionTreeClassifier(random_state=0)
iris=load_iris()
cross_val_score(clf,iris.data,iris.target,cv=10)
⑵ 如何將python生成的決策樹利用graphviz畫出來
#這里有一個示例,你可以看一下。
#http://scikit-learn.org/stable/moles/tree.html
>>>fromIPython.displayimportImage
>>>dot_data=tree.export_graphviz(clf,out_file=None,
feature_names=iris.feature_names,
class_names=iris.target_names,
filled=True,rounded=True,
special_characters=True)
>>>graph=pydotplus.graph_from_dot_data(dot_data)
>>>Image(graph.create_png())
⑶ python中的sklearn中決策樹使用的是哪一種演算法
要弄清楚這個問題,首先要弄懂決策樹三大流行演算法ID3、C4.5和CART的原理,以及sklearn框架下DecisionTreeClassifier的幫助文檔。
3個演算法的主要區別在於度量信息方法、選擇節點特徵還有分支數量的不同。
ID3,採用熵(entropy)來度量信息不確定度,選擇「信息增益」最大的作為節點特徵,它是多叉樹,即一個節點可以有多個分支。
C4.5,同樣採用熵(entropy)來度量信息不確定度,選擇「信息增益比」最大的作為節點特徵,同樣是多叉樹,即一個節點可以有多個分支。
CART,採用基尼指數(Gini index)來度量信息不純度,選擇基尼指數最小的作為節點特徵,它是二叉樹,即一個節點只分兩支。
然後你認真閱讀sklearn的DecisionTreeClassifier的幫助文檔,可以發現,度量信息的方法默認是Gini,但可以改成entropy,請按需選擇;構建的樹是二叉樹;可以通過設置max_deepth、max_leaf等來實現「剪枝」,這是根據CART的損失函數減少的理論進行的。
所以總結說,如果信息度量方法按照默認的設置,那麼sklearn所用的決策樹分類器就是CART,如果改成了entropy,那麼只是使用了別的度量方法而已。其實兩者差不多。
⑷ 如何將python生成的決策樹畫出來
示例
# http://scikit-learn.org/stable/moles/tree.html
>>> from IPython.display import Image
>>> dot_data = tree.export_graphviz(clf, out_file=None,
feature_names=iris.feature_names,
class_names=iris.target_names,
filled=True, rounded=True,
special_characters=True)
>>> graph = pydotplus.graph_from_dot_data(dot_data)
>>> Image(graph.create_png())
⑸ python 決策樹怎樣修剪枝
include#include#defineMAX100structaddr{charname[30];charstreet[40];charcity[20];charstate[3];unsignedlongintzip;}addr_list[MAX];voidinit_list(void);intmenu_select(void);voidenter(void);intfind_free(void);voiddeleted(void);voidlist(void);intmain(void){charchoice;init_list();/*initializethestructurearray*/for(;;){choice=menu_select();switch(choice){case1:enter();break;case2:deleted();break;case3:list();break;case4:exit(0);}}return0;}/*initializethelist*/voidinit_list(void){registerintt;for(t=0;t4);returnc;}/*Inputaddressintothelist*/voidenter(void){intslot;chars[80];slot=find_free();if(slot==-1)
⑹ python實現的決策樹怎麼可視化
常用的幾種決策樹演算法有ID3、C4.5、CART:
ID3:選擇信息熵增益最大的feature作為node,實現對數據的歸納分類。
C4.5:是ID3的一個改進,比ID3准確率高且快,可以處理連續值和有缺失值的feature。
CART:使用基尼指數的劃分准則,通過在每個步驟最大限度降低不純潔度,CART能夠處理孤立點以及能夠對空缺值進行處理。
⑺ python 怎麼做決策樹模型 案例
Original values: (1, 'abc', 2.7)
Format string : I3sf
Uses : 12 bytes
Packed Value : 0100000061626300cdcc2c40
Unpacked Type : <type 'tuple'> Value: (1, 'abc', 2.700000047683716)
⑻ python sklearn決策樹的圖怎麼畫
#coding=utf-8
from sklearn.datasets import load_iris
from sklearn import tree
iris = load_iris()
clf = tree.DecisionTreeClassifier()
clf = clf.fit(iris.data, iris.target)
from sklearn.externals.six import StringIO
import pydot
dot_data = StringIO()
tree.export_graphviz(clf, out_file=dot_data)
graph = pydot.graph_from_dot_data(dot_data.getvalue())
graph[0].write_dot('iris_simple.dot')
graph[0].write_png('iris_simple.png')
⑼ python決策樹怎麼定義label
1首先需要安裝Cython,網上下載後進行本地安裝pythonsetup.pyinstall2下載Sklearn包,進行本地安裝(使用pip或easy_install總是出錯,如cannotimportmurmurhash3_32,最終本地安裝成功)3安裝後可用nosetests-vsklearn來進行測試