實驗三、數據挖掘之決策樹 一、實驗目的 1. 熟悉掌握決策樹的原理, 2. 熟練掌握決策樹的生成方法與過程 二、實驗工具 1. Anaconda 2. sklearn 3. pydotplus 三、實驗簡介 決策樹是一個非參數的監督式學習方法,主要用於分類和回歸。演算法的目標是通過推斷數據特征,學習決 ...
實驗三、數據挖掘之決策樹
一、實驗目的
1. 熟悉掌握決策樹的原理,
2. 熟練掌握決策樹的生成方法與過程
二、實驗工具
1. Anaconda
2. sklearn
3. pydotplus
三、實驗簡介
決策樹是一個非參數的監督式學習方法,主要用於分類和回歸。演算法的目標是通過推斷數據特征,學習決策規則從而創建一個預測目標變數的模型。
四、實驗內容
1. 自己創建至少2個向量,每個向量至少1個屬性和1個類標號,根據向量生成決策樹,並利用該決策樹進行預測。如:
from sklearn import tree X = [[0, 0], [1, 1]] Y = [0, 1] clf = tree.DecisionTreeClassifier() clf = clf.fit(X, Y) clf.predict([[2., 2.]]) clf.predict_proba([[2., 2.]]) #計算屬於每個類的概率
要求根據要求隨機生成數據,並構建決策樹,並舉例預測。
2. 對鳶尾花數據構建決策樹,
(1) 調用數據的方法如下:
from sklearn.datasets import load_iris
iris = load_iris()# 從sklearn 數據集中獲取鳶尾花數據。
(2) 利用sklearn中的決策樹方法對鳶尾花數據建立決策樹
(3) 為了能夠直觀看到建好的決策樹,安裝 pydotplus, 方法如下:
pip install pydotplus
pydotplus使用方法
import pydotplus #引入pydotplus
dot_data = tree.export_graphviz(clf, out_file=None)
graph = pydotplus.graph_from_dot_data(dot_data)
graph.write_pdf("iris.pdf")#將圖寫成pdf文件
代碼展示
決策樹效果pdf
(4)(選做) 不使用sklearn中的決策樹方法,自己編寫決策樹構建程式(建議用python語言),並對鳶尾花數據構建決策樹。
五、實驗總結(寫出本次實驗的收穫,遇到的問題等)
通過本次實驗,瞭解了Python中構建決策樹的函數方法,並用鳶尾花數據集的可視化看到了生成的決策樹效果圖。困難在於不太理解決策時具體的構建過程,經過多次試驗,自動構建的決策樹和自己預測的規律結果是保持一致的,這說明瞭決策樹的實用性。下一步應該學習理解自己構建出決策樹。