Decision Tree——ID3、C4.5、CART

ID3

決策樹關鍵問題:如何選擇特徵進行分支
ID3算法思想:選擇信息增益最大的屬性作爲當前的特徵對數據集進行分類。

信息熵(Information Entropy):信息的不確定性程度,變量的不確定性越大,熵的值越大;隨機變量不確定性的度量叫熵。一個變量X,它可能的取值有n多種,分別是x1,x2,……,xn,每一種取到的概率分別是P1,P2,……,Pn,那麼X的熵就定義爲
Entropy(X)=H(X)=i=1mpilog(pi)
知乎:信息熵是什麼?

信息增益(Information Gain): 在一個條件下,信息不確定性減少的程度;信息增益=信息熵 - 條件熵

Gain(D,A)=g(D,A)=H(D)H(D|A)
其中a是有V個不同取值的離散特徵,使用特徵a對樣本集D進行劃分會產生V個分支.

條件熵:已知隨機變量X的條件下隨機變量Y的不確定性
H(Y|X)=xXp(x)H(Y|X=x)
通俗理解決策樹算法中的信息增益

https://blog.csdn.net/u011327333/article/details/51167952

ID3算法構建決策樹存在的問題:

  1. 不能處理連續特徵
  2. 用信息增益作爲標準容易偏向於取值較多的特徵
  3. 缺失值處理的問
  4. 過擬合問題

C4.5

信息增益比(Information Gain Ratio): 信息增益g(D,A) 與訓練集D關於特徵A的值的熵HA(D) 之比:
gR(D,A)=g(D,A)HA(D)

C4.5生成算法與ID3的不同之處:使用信息增益比來選擇特徵

C4.5算法構建決策樹存在的問題:

  1. 由於決策樹算法非常容易過擬合,因此對於生成的決策樹必須要進行剪枝.->預剪枝後剪枝
  2. C4.5生成的是多叉樹,即一個父節點可以有多個節點
  3. C4.5只能用於分類
  4. C4.5由於使用了熵模型,裏面有大量的耗時的對數運算,如果是連續值還有大量的排序運算

https://mp.weixin.qq.com/s/EZY3l73aSAA88o-8zJp3ww

決策樹剪枝

決策樹學習的損失函數:
Cα(T)=t=1|T|NtHt(T)+α|T|
使損失函數最小,可動態規劃實現。

預剪枝:決策樹生成過程中,對每個結點在劃分前先進行估計,若當前結點的劃分不能帶來決策樹泛化性能提升,則停止劃分並將當前結點標記爲葉節點。有欠擬合風險
後剪枝:先從訓練集生成一顆完整的決策樹,然後自底向上地對非葉節點進行考察,若將該節點對應的子樹替換爲葉節點能提升決策樹的泛化性能,則將該子樹減去。訓練時間開銷大

CART

基尼指數
Gini(D)=1k=1|y|pk2
屬性a的基尼指數定義爲:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章