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