機(jī)器學(xué)習(xí)中Bagging和Boosting的區(qū)別
點擊上方“小白學(xué)視覺”,選擇加"星標(biāo)"或“置頂”
重磅干貨,第一時間送達(dá)
?Bagging和Boosting都是將已有的分類或回歸算法通過一定方式組合起來,形成一個性能更加強(qiáng)大的分類器,更準(zhǔn)確的說這是一種分類算法的組裝方法。即將弱分類器組裝成強(qiáng)分類器的方法。
?????? 首先介紹Bootstraping,即自助法:它是一種有放回的抽樣方法(可能抽到重復(fù)的樣本)。
Bagging即套袋法,其算法過程如下:
從原始樣本集中抽取訓(xùn)練集。每輪從原始樣本集中使用Bootstraping的方法抽取n個訓(xùn)練樣本(在訓(xùn)練集中,有些樣本可能被多次抽取到,而有些樣本可能一次都沒有被抽中)。共進(jìn)行k輪抽取,得到k個訓(xùn)練集。(k個訓(xùn)練集之間是相互獨立的)
每次使用一個訓(xùn)練集得到一個模型,k個訓(xùn)練集共得到k個模型。(注:這里并沒有具體的分類算法或回歸方法,我們可以根據(jù)具體問題采用不同的分類或回歸方法,如決策樹、感知器等)
對分類問題:將上步得到的k個模型采用投票的方式得到分類結(jié)果;對回歸問題,計算上述模型的均值作為最后的結(jié)果。(所有模型的重要性相同)
?????? 其主要思想是將弱分類器組裝成一個強(qiáng)分類器。在PAC(概率近似正確)學(xué)習(xí)框架下,則一定可以將弱分類器組裝成一個強(qiáng)分類器。
關(guān)于Boosting的兩個核心問題:
2.1 在每一輪如何改變訓(xùn)練數(shù)據(jù)的權(quán)值或概率分布?
?????? 通過提高那些在前一輪被弱分類器分錯樣例的權(quán)值,減小前一輪分對樣例的權(quán)值,來使得分類器對誤分的數(shù)據(jù)有較好的效果。
2.2 通過什么方式來組合弱分類器?
?????? 通過加法模型將弱分類器進(jìn)行線性組合,比如AdaBoost通過加權(quán)多數(shù)表決的方式,即增大錯誤率小的分類器的權(quán)值,同時減小錯誤率較大的分類器的權(quán)值。
而提升樹通過擬合殘差的方式逐步減小殘差,將每一步生成的模型疊加得到最終模型。
Bagging和Boosting的區(qū)別:
1)樣本選擇上:
Bagging:訓(xùn)練集是在原始集中有放回選取的,從原始集中選出的各輪訓(xùn)練集之間是獨立的。
Boosting:每一輪的訓(xùn)練集不變,只是訓(xùn)練集中每個樣例在分類器中的權(quán)重發(fā)生變化。而權(quán)值是根據(jù)上一輪的分類結(jié)果進(jìn)行調(diào)整。
2)樣例權(quán)重:
Bagging:使用均勻取樣,每個樣例的權(quán)重相等
Boosting:根據(jù)錯誤率不斷調(diào)整樣例的權(quán)值,錯誤率越大則權(quán)重越大。
3)預(yù)測函數(shù):
Bagging:所有預(yù)測函數(shù)的權(quán)重相等。
Boosting:每個弱分類器都有相應(yīng)的權(quán)重,對于分類誤差小的分類器會有更大的權(quán)重。
4)并行計算:
Bagging:各個預(yù)測函數(shù)可以并行生成
Boosting:各個預(yù)測函數(shù)只能順序生成,因為后一個模型參數(shù)需要前一輪模型的結(jié)果。
?????? 這兩種方法都是把若干個分類器整合為一個分類器的方法,只是整合的方式不一樣,最終得到不一樣的效果,將不同的分類算法套入到此類算法框架中一定程度上會提高了原單一分類器的分類效果,但是也增大了計算量。
下面是將決策樹與這些算法框架進(jìn)行結(jié)合所得到的新的算法:
Bagging + 決策樹 = 隨機(jī)森林
AdaBoost + 決策樹 = 提升樹
Gradient Boosting + 決策樹 = GBDT
交流群
歡迎加入公眾號讀者群一起和同行交流,目前有SLAM、三維視覺、傳感器、自動駕駛、計算攝影、檢測、分割、識別、醫(yī)學(xué)影像、GAN、算法競賽等微信群(以后會逐漸細(xì)分),請掃描下面微信號加群,備注:”昵稱+學(xué)校/公司+研究方向“,例如:”張三?+?上海交大?+?視覺SLAM“。請按照格式備注,否則不予通過。添加成功后會根據(jù)研究方向邀請進(jìn)入相關(guān)微信群。請勿在群內(nèi)發(fā)送廣告,否則會請出群,謝謝理解~

