決策樹API
- class sklearn.tree.DecisionTreeClassifier(criterion=’gini’, max_depth=None,random_state=None)
- 決策樹分類器
- criterion:默認是’gini’系數,也可以選擇信息增益的熵’entropy’
- max_depth:樹的深度大小
- random_state:隨機數種子
- 其中會有些超參數:max_depth:樹的深度大小
#鳶尾花決策樹
def decision_iris():
"""
用決策樹對鳶尾花進行分類
:return:
"""
#獲取數據集
iris = load_iris()
#划分數據集
x_train,x_test,y_train,y_test=train_test_split(iris.data,iris.target,random_state=22)
#決策樹預估器
estimator=DecisionTreeClassifier(criterion="entropy")#criterion默認為gini系數,此處選擇的為信息增益的熵
#max_depth:樹深的大小,random_state:隨機數種子
estimator.fit(x_train,y_train)
#模型評估
y_predict=estimator.predict(x_test)
print("y_predict:\n",y_predict)
print("直接對比真實值和預測值:\n",y_test==y_predict)
score=estimator.score(x_test,y_test)
print("准確率為:\n",score)
#決策樹可視化
export_graphviz(estimator,out_file="iris_tree.dot")