【机器学习】 ID3,C4.5,CART决策树
決策樹模型在監督學習中非常常見,可用于分類(二分類、多分類)和回歸。雖然將多棵弱決策樹的Bagging、Random Forest、Boosting等tree ensembel 模型更為常見,但是“完全生長”決策樹因為其簡單直觀,具有很強的解釋性,也有廣泛的應用,而且決策樹是tree ensemble 的基礎,值得好好理解。一般而言一棵“完全生長”的決策樹包含,特征選擇、決策樹構建、剪枝三個過程,這篇文章主要是簡單梳理比較ID3、C4.5、CART算法。《統計學習方法》中有比較詳細的介紹。
一、決策樹的優點和缺點
??? 優點:
??? 缺點:
要翻墻
信息論基礎http://leijun00.github.io/2014/07/information-theory/
ID3:
根據信息增益(Information gain)來選取Feature作為決策樹分裂的節點
實際上就是一個互信息I(D,A)
C4.5
信息增益計算的是子節點的純度,是用樣本的label值,而分裂信息用的是特征的純度(劃重點)。
C5.0
C5.0?是Ross Quinlan 1998年提出來的,對C4.5做了很多改進,目前他是作為商業機密在售賣.該算法引入了Boosting的算法框架,比前面提到的算法性能更快,對內存的使用更有效,決策樹更小等等.更詳細的請訪問他的個人主頁查閱文章http://www.rulequest.com/see5-unix.html和http://rulequest.com/download.html.
CART
CART(Classification and regression tree)是由L.Breiman,J.Friedman,R.Olshen和C.Stone于1984年提出,是應用很廣泛的決策樹學習方法.
cart是顆二叉樹
看下算法的優點:
缺點:
分類樹
回歸樹
文中有一個簡單的例子,可以看一下加深印象
每一次都對子樹重復這個操作,不過樣本集變成子樹的樣本集,特征集也變成子樹的特征集。一直到可以結束條件。
CART為什么要用基尼系數
- 一方面是便于計算,熵模型需要計算log等。
- 最小化不純度而不是最大化信息增益。cart是一顆二叉樹,每一步通過判斷一個特征是與不是進行二分,慢慢提高子樹的純度。最大化信息增益是每一步消去一個特征使得信息增益最大,每一步做的太果斷了,不給后面留機會。就比如可能把人群分為青年,中年和老年,最大化信息增益可能在第一次分割的時候就直接把人群這個屬性給分掉了。而使用cart二分的話,可能第一步是判斷是不是老年,第二步可能去判斷性別了,第三步的特征才又回到是青年還是中年。留有一個余地。
?
下一章會詳細講剪枝策略,預剪枝和后剪枝
決策樹:http://leijun00.github.io/2014/09/decision-tree/
?
總結
以上是生活随笔為你收集整理的【机器学习】 ID3,C4.5,CART决策树的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【机器学习】 二次损失函数的不足及交叉熵
- 下一篇: 【机器学习】 树的剪枝策略