日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

Python?sklearn分類決策樹方法詳解_python

作者:#妖言惑眾 ? 更新時間: 2022-11-12 編程語言

決策樹模型

??決策樹(decision tree)是一種基本的分類與回歸方法。

??分類決策樹模型是一種描述對實例進行分類的樹形結構。決策樹由結點(node)和有向邊(directed edge)組成。結點有兩種類型:內部結點(internal node)和葉結點(leaf node)。內部結點表示一個特征或屬性,葉結點表示一個類。

??用決策樹分類,從根結點開始,對實例的某一特征進行測試,根據測試結果,將實例分配到其子結點;這時,每一個子結點對應著該特征的一個取值。如此遞歸地對實例進行測試并分配,直至達到葉結點。最后將實例分到葉結點的類中。

?????用于預測一個人是否肥胖或不肥胖的決策樹

決策樹學習

??決策樹學習算法包括3部分:特征選擇、樹的生成和樹的剪枝。常用的算法有ID3、 C4.5和CART。

??1、特征選擇的目的在于選取對訓練數據能夠分類的特征。特征選擇的關鍵是其準則。常用的準則如下:

??(1)樣本集合D對特征A的信息增益(ID3)

??(2)樣本集合D對特征A的信息增益比(C4.5)

??(3)樣本集合D的基尼指數(CART)

??2.決策樹的生成。通常使用信息增益最大、信息增益比最大或基尼指數最小作為特征選擇的準則。決策樹的生成往往通過計算信息增益或其他指標,從根結點開始,遞歸地產生決策樹。這相當于用信息增益或其他準則不斷地選取局部最優的特征,或將訓練集分割為能夠基本正確分類的子集。

?? 3.決策樹的剪枝。由于生成的決策樹存在過擬合問題,需要對它進行剪枝,以簡化學到的決策樹。決策樹的剪枝,往往從已生成的樹上剪掉一些葉結點或葉結點以上的子樹,并將其父結點或根結點作為新的葉結點,從而簡化生成的決策樹。

使用Scikit-learn進行決策樹分類

import numpy as np
from sklearn.datasets import load_iris
from sklearn import tree
import matplotlib.pyplot as plt
iris=load_iris()
print(iris.feature_names)
print(iris.target_names)
#劃分數據集
removed =[0,50,100]
new_target = np.delete(iris.target,removed)
new_data = np.delete(iris.data,removed, axis=0)
#訓練分類器
clf = tree.DecisionTreeClassifier() # 定義決策樹分類器
clf=clf.fit(new_data,new_target)
prediction = clf.predict(iris.data[removed])
print("Original Labels",iris.target[removed])
print("Labels Predicted",prediction)
#繪制決策樹
plt.figure(figsize=(15, 10))
tree.plot_tree(clf, feature_names=iris.feature_names, filled=True)
plt.show()

參考鏈接傳送門

原文鏈接:https://blog.csdn.net/weixin_43316082/article/details/126867910

欄目分類
最近更新