決策樹(decision tree)
一、背景知識 符號
xi的資訊量:
l(xi) = - log2p(xi)
熵:h = -
∑p(xi)log2p(xi)
資訊增益: 特徵
a對訓練資料集
d的資訊增益
g(d,a)
= h(d) - h(d|a
)其中,定義集合
d的經驗熵
h(d)
與特徵a
給定條件下
d的經驗條件熵
h(d|a)之差
二、優缺點及適用資料型別
缺點:可能產生過度匹配問題,連續變數處理效果不好。
適用資料型別:數值型和標稱型。
三、基本演算法——id3演算法
決策樹類似於流程圖的樹結構:
每個內部節點表示在乙個屬性上的測試
每個分支表示乙個屬性輸出
樹葉節點表示類或類分布
樹的最頂層是根節點
演算法:尋找劃分資料集的最好特徵,劃分資料集,建立分支點
對於劃分的子集,遞迴上步
遞迴終止條件:所有子項屬同一類或用完所有特徵(使用多數表決分類)
四、優化
構造決策樹很耗時:
→將分類器儲存在硬碟上,使用
python
中的pickle
模組處理連續性變數的屬性:
→離散化
避免overfitting
:→先剪枝、後剪枝
五、演算法比較
c4.5(
gain ratio)
cart
(gain index)
id3(資訊增益)
異:屬性選擇度量方法不同
同:都是貪心演算法,自上而下
六、實現**位址
決策樹演算法簡介
決策樹思想的 非常樸素,程式設計中的條件分支結構就是if else結構,最早的決策樹就是利用這類結構分割資料的一種分類學習方法 決策樹 是一種樹形結構,其中每個內部節點表示乙個屬性上的判斷,每個分支代表乙個判斷結果的輸出,最後每個葉節點代表一種分類結果,本質是一顆由多個判斷節點組成的樹。決策樹分類原...
決策樹演算法原理簡介
1,決策樹概念簡介 不同的演算法模型適合於不同型別的資料。首先,在了解樹模型之前,自然想到樹模型和線性模型有什麼區別呢?其中最重要的是,樹形模型是乙個乙個特徵進行處理,之前線性模型是所有特徵給予權重相加得到乙個新的值。決策樹與邏輯回歸的分類區別也在於此,邏輯回歸是將所有特徵變換為概率後,通過大於某一...
決策樹簡介
決策樹 decision tree 也稱為判定樹,是一類常見的機器學習方法。決策樹是基於樹結構來進行決策的,這恰是人類在面臨決策問題時一種很自然的處理機制。決策過程中提出的每個判定問題都是對某個屬性的 測試 每個測試的結果或是匯出最終結論,或是匯出進一步的判定問題,其考慮範圍是在上次決策結果的限定範...