Bagging和Boosting都是將已有的分類或回歸算法通過(guò)一定方式組合起來(lái)囚聚,形成一個(gè)性能更加強(qiáng)大的分類器俯渤,更準(zhǔn)確的說(shuō)這是一種分類算法的組裝方法歧杏。即將弱分類器組裝成強(qiáng)分類器的方法砰碴。
首先介紹Bootstraping九榔,即自助法:它是一種有放回的抽樣方法(可能抽到重復(fù)的樣本)兽埃。
1侥钳、Bagging (bootstrap aggregating)
Bagging即套袋法,其算法過(guò)程如下:
A)從原始樣本集中抽取訓(xùn)練集柄错。每輪從原始樣本集中使用Bootstraping的方法抽取n個(gè)訓(xùn)練樣本(在訓(xùn)練集中舷夺,有些樣本可能被多次抽取到苦酱,而有些樣本可能一次都沒(méi)有被抽中)。共進(jìn)行k輪抽取给猾,得到k個(gè)訓(xùn)練集疫萤。(k個(gè)訓(xùn)練集之間是相互獨(dú)立的)
B)每次使用一個(gè)訓(xùn)練集得到一個(gè)模型,k個(gè)訓(xùn)練集共得到k個(gè)模型敢伸。(注:這里并沒(méi)有具體的分類算法或回歸方法扯饶,我們可以根據(jù)具體問(wèn)題采用不同的分類或回歸方法,如決策樹(shù)池颈、感知器等)
C)對(duì)分類問(wèn)題:將上步得到的k個(gè)模型采用投票的方式得到分類結(jié)果尾序;對(duì)回歸問(wèn)題,計(jì)算上述模型的均值作為最后的結(jié)果躯砰。(所有模型的重要性相同)
2每币、Boosting
其主要思想是將弱分類器組裝成一個(gè)強(qiáng)分類器。在PAC(概率近似正確)學(xué)習(xí)框架下琢歇,則一定可以將弱分類器組裝成一個(gè)強(qiáng)分類器兰怠。
關(guān)于Boosting的兩個(gè)核心問(wèn)題:
1)在每一輪如何改變訓(xùn)練數(shù)據(jù)的權(quán)值或概率分布?
通過(guò)提高那些在前一輪被弱分類器分錯(cuò)樣例的權(quán)值李茫,減小前一輪分對(duì)樣例的權(quán)值痕慢,來(lái)使得分類器對(duì)誤分的數(shù)據(jù)有較好的效果。
2)通過(guò)什么方式來(lái)組合弱分類器涌矢?
通過(guò)加法模型將弱分類器進(jìn)行線性組合掖举,比如AdaBoost通過(guò)加權(quán)多數(shù)表決的方式,即增大錯(cuò)誤率小的分類器的權(quán)值娜庇,同時(shí)減小錯(cuò)誤率較大的分類器的權(quán)值塔次。
而提升樹(shù)通過(guò)擬合殘差的方式逐步減小殘差,將每一步生成的模型疊加得到最終模型名秀。
3励负、Bagging,Boosting二者之間的區(qū)別
Bagging和Boosting的區(qū)別:
1)樣本選擇上:
Bagging:訓(xùn)練集是在原始集中有放回選取的匕得,從原始集中選出的各輪訓(xùn)練集之間是獨(dú)立的继榆。
Boosting:每一輪的訓(xùn)練集不變,只是訓(xùn)練集中每個(gè)樣例在分類器中的權(quán)重發(fā)生變化汁掠。而權(quán)值是根據(jù)上一輪的分類結(jié)果進(jìn)行調(diào)整略吨。
2)樣例權(quán)重:
Bagging:使用均勻取樣,每個(gè)樣例的權(quán)重相等
Boosting:根據(jù)錯(cuò)誤率不斷調(diào)整樣例的權(quán)值考阱,錯(cuò)誤率越大則權(quán)重越大翠忠。
3)預(yù)測(cè)函數(shù):
Bagging:所有預(yù)測(cè)函數(shù)的權(quán)重相等。
Boosting:每個(gè)弱分類器都有相應(yīng)的權(quán)重乞榨,對(duì)于分類誤差小的分類器會(huì)有更大的權(quán)重秽之。
4)并行計(jì)算:
Bagging:各個(gè)預(yù)測(cè)函數(shù)可以并行生成
Boosting:各個(gè)預(yù)測(cè)函數(shù)只能順序生成当娱,因?yàn)楹笠粋€(gè)模型參數(shù)需要前一輪模型的結(jié)果。
4考榨、總結(jié)
這兩種方法都是把若干個(gè)分類器整合為一個(gè)分類器的方法跨细,只是整合的方式不一樣,最終得到不一樣的效果河质,將不同的分類算法套入到此類算法框架中一定程度上會(huì)提高了原單一分類器的分類效果冀惭,但是也增大了計(jì)算量。
下面是將決策樹(shù)與這些算法框架進(jìn)行結(jié)合所得到的新的算法:
1)Bagging + 決策樹(shù) = 隨機(jī)森林
2)AdaBoost + 決策樹(shù) = 提升樹(shù)
3)Gradient Boosting + 決策樹(shù) = GBDT