機器學習之決策樹在sklearn中的實現
小夥伴們大家好~o( ̄▽ ̄)ブ,首先宣告一下,我的開發環境是Jupyter lab,所用的庫和版本大家參考:
Python 3.7.1(你的版本至少要3.4以上
Scikit-learn 0.20.0 (你的版本至少要0.20
Graphviz 0.8.4 (沒有畫不出決策樹哦,安裝程式碼conda install python-graphviz
Numpy 1.15.3, Pandas 0.23.4, Matplotlib 3.0.1, SciPy 1.1.0
用SKlearn 建立一棵決策樹
這裡採用的資料集是SKlearn中的紅酒資料集。
1 匯入需要的演算法庫和模組
from sklearn import tree #匯入tree模組
from sklearn.datasets import load_wine #匯入紅酒資料集
from sklearn.model_selection import train_test_split #匯入訓練集和測試集切分包
2 探索資料
wine = load_wine()
wine.data
wine.data.shape
wine.target
wine.target.shape
執行的結果是這樣子的:
data就是該資料集的特徵矩陣,從執行結果可以看出,該紅酒資料集一共有178條記錄,13個特徵。
特徵矩陣中有178條記錄,相對應的標籤Y就有178個資料。
如果wine是一張表,應該長這樣:
import pandas as pd
pd.concat([pd.DataFrame(wine.data),pd.DataFrame(wine.target)],axis=1)
這是資料集特徵列名和標籤分類
wine.feature_names
wine.target_names
3 分訓練集和測試集
這裡選取30%作為測試集。切分好之後,訓練集有124條資料,測試集有54條資料。
Xtrain, Xtest, Ytrain, Ytest = train_test_split(wine.data,wine.target,test_size=0.3)
Xtrain.shape
Xtest.shape
4 建立模型
clf = tree.DecisionTreeClassifier(criterion="entropy") #初始化樹模型
clf = clf.fit(Xtrain, Ytrain) #例項化訓練集
score = clf.score(Xtest, Ytest) #返回預測的準確度
score
5 畫出一棵樹吧
feature_name = ['酒精','蘋果酸','灰','灰的鹼性','鎂','總酚','類黃酮','非黃烷類酚類','花青素','顏色強度','色調','od280/od315稀釋葡萄酒','脯氨酸']
import graphviz
dot_data = tree.export_graphviz(clf
,out_file=None
,feature_names= feature_name
,class_names=["琴酒","雪莉","貝爾摩德"]
,filled=True
,rounded=True
)
graph = graphviz.Source(dot_data)
graph
6 探索決策樹
#特徵重要性
clf.feature_importances_
[*zip(feature_name,clf.feature_importances_)]
到現在為止,我們已經學會建立一棵完整的決策樹了。有興趣的話,動手建立一棵屬於自己的決策樹吧~
更多內容可移步:https://www.cda.cn/?seo-CSDN
相關文章
- 機器學習|決策樹-sklearn實現機器學習
- 決策樹在sklearn中的實現
- 機器學習之決策樹原理和sklearn實踐機器學習
- 機器學習Sklearn系列:(三)決策樹機器學習
- 機器學習之使用sklearn構造決策樹模型機器學習模型
- 機器學習之決策樹機器學習
- 機器學習之 決策樹(Decision Tree)python實現機器學習Python
- 機器學習之決策樹ID3(python實現)機器學習Python
- 機器學習——決策樹模型:Python實現機器學習模型Python
- 【Python機器學習實戰】決策樹和整合學習(二)——決策樹的實現Python機器學習
- 機器學習:決策樹機器學習
- 機器學習-決策樹機器學習
- 機器學習之決策樹演算法機器學習演算法
- 決策樹在機器學習的理論學習與實踐機器學習
- 機器學習——決策樹模型機器學習模型
- 春節不斷電之機器學習 —— 決策樹機器學習
- 《機器學習Python實現_09_02_決策樹_CART》機器學習Python
- 【機器學習】實現層面 決策樹 並用graphviz視覺化樹機器學習視覺化
- 機器學習筆記--決策樹機器學習筆記
- 機器學習經典演算法之決策樹機器學習演算法
- 機器學習之決策樹與隨機森林模型機器學習隨機森林模型
- SKlearn中分類決策樹的重要引數詳解
- Python機器學習:決策樹001什麼是決策樹Python機器學習
- 機器學習筆記(四)決策樹機器學習筆記
- 《機器學習實戰》決策樹(ID3演算法)的分析與實現機器學習演算法
- 決策樹ID3演算法python實現 -- 《機器學習實戰》演算法Python機器學習
- 機器學習西瓜書吃瓜筆記之(二)決策樹分類 附一鍵生成決策樹&視覺化python程式碼實現機器學習筆記視覺化Python
- 人工智慧之機器學習基礎——決策樹(Decision Tree)人工智慧機器學習
- 機器學習 Day 9 | 決策樹基礎機器學習
- 【機器學習】--決策樹和隨機森林機器學習隨機森林
- 機器學習 - 決策樹:技術全解與案例實戰機器學習
- [機器學習&資料探勘]機器學習實戰決策樹plotTree函式完全解析機器學習函式
- 圖解機器學習 | 決策樹模型詳解圖解機器學習模型
- 決策樹演算法的推理與實現演算法
- 【機器學習】線性迴歸sklearn實現機器學習
- 我用白話+案例給你講講機器學習中的決策樹機器學習
- 【Python機器學習實戰】決策樹和整合學習(一)Python機器學習
- 機器學習之決策樹詳細講解及程式碼講解機器學習