前置技能
決策樹(shù)and回歸樹(shù)
http://www.itdecent.cn/p/479e92cf4c2c
http://www.itdecent.cn/p/b90a9ce05b28
關(guān)于集成學(xué)習(xí)
集成學(xué)習(xí)就是將多個(gè)弱的學(xué)習(xí)器結(jié)合起來(lái)組成一個(gè)強(qiáng)的學(xué)習(xí)器。這就涉及到,先產(chǎn)生一組‘個(gè)體學(xué)習(xí)器’,再用一個(gè)策略將它們結(jié)合起來(lái)。Boosting、bagging是集成學(xué)習(xí)的兩種主要方法。
(這個(gè)有一個(gè)教程: http://www.itdecent.cn/p/389d28f853c0)
boosting
boosting方法通過(guò)分步迭代的方式來(lái)構(gòu)建模型,在迭代的每一步構(gòu)建的弱學(xué)習(xí)器都是為了彌補(bǔ)已有模型的不足。
boosting 里面有兩種常見(jiàn)的方法:
區(qū)別在于 :
AdaBoost算法通過(guò)給已有模型預(yù)測(cè)錯(cuò)誤的樣本更高的權(quán)重,使得先前的學(xué)習(xí)器做錯(cuò)的訓(xùn)練樣本在后續(xù)受到更多的關(guān)注的方式來(lái)彌補(bǔ)已有模型的不足。
與AdaBoost算法不同,梯度提升方法在迭代的每一步構(gòu)建一個(gè)能夠沿著梯度最陡的方向降低損失(steepest-descent)的學(xué)習(xí)器來(lái)彌補(bǔ)已有模型的不足。(我的理解是 :Boosting的最大好處在于,每一步的殘差計(jì)算其實(shí)變相地增大了分錯(cuò)instance的權(quán)重,而已經(jīng)分對(duì)的instance則都趨向于0。)經(jīng)典的AdaBoost算法只能處理采用指數(shù)損失函數(shù)的二分類學(xué)習(xí)任務(wù),而梯度提升方法通過(guò)設(shè)置不同的可微損失函數(shù)可以處理各類學(xué)習(xí)任務(wù)(多分類、回歸、Ranking等),應(yīng)用范圍大大擴(kuò)展。

GBDT
GBDT ( gradient boosting decision tree )是一種迭代的決策樹(shù)算法,該算法由多棵決策樹(shù)組成,所有樹(shù)的結(jié)論累加起來(lái)做最終答案。它在被提出之初就和SVM一起被認(rèn)為是泛化能力較強(qiáng)的算法。xgboost
XGBoost是一個(gè)優(yōu)秀的GBDT開(kāi)源軟件庫(kù),有多種語(yǔ)言接口 。換句話說(shuō),xgboost的核心算法就是GBDT。
關(guān)于GBDT, 參考了這個(gè)教程 :
https://www.zybuluo.com/yxd/note/611571#gbdt%E7%AE%97%E6%B3%95
http://www.itdecent.cn/p/005a4e6ac775
https://blog.csdn.net/suranxu007/article/details/49910323
關(guān)于xgb, 參考了這個(gè)教程 :
http://www.itdecent.cn/p/7e0e2d66b3d4
http://www.itdecent.cn/p/5709fa18cdb4
https://www.jiqizhixin.com/articles/2017-12-24-5
https://jiasuhui.com/article/14479
bagging
bagging:bootstrap aggregating 的縮寫(xiě),是一種并行式集成學(xué)習(xí)方法,可用于二分類,多分類,回歸等任務(wù)。

http://www.itdecent.cn/p/907fecc7135c
Bagging 和 Boosting 的區(qū)別
- 樣本選擇:Bagging 的訓(xùn)練集是在原始集中有放回選取的,各輪訓(xùn)練集之間是獨(dú)立的,每個(gè)樣例的權(quán)重相等;Boosting 的訓(xùn)練集不變,只是每個(gè)樣例在分類器中的權(quán)重發(fā)生變化,錯(cuò)誤的樣本會(huì)得到更大的重視;
- Bagging 的預(yù)測(cè)函數(shù)沒(méi)有權(quán)重之分;Boosting 的預(yù)測(cè)函數(shù)是有權(quán)重之分,效果好的函數(shù)權(quán)重大;
- Bagging 的各個(gè)預(yù)測(cè)函數(shù)并行產(chǎn)生,容易 map-reduce ,Boosting 的預(yù)測(cè)是順序產(chǎn)生,后一個(gè)模型參數(shù)需要前一輪模型的結(jié)果。
參考文獻(xiàn):
集成學(xué)習(xí):
http://www.itdecent.cn/p/389d28f853c0