在集成學(xué)習(xí)原理小結(jié)中,我們講到了集成學(xué)習(xí)有兩個(gè)流派,一個(gè)是boosting派系,它的特點(diǎn)是各個(gè)弱學(xué)習(xí)器之間有依賴關(guān)系。另一種是bagging流派,它的特點(diǎn)是各個(gè)弱學(xué)習(xí)器之間沒(méi)有依賴關(guān)系,可以并行擬合。本文就對(duì)集成學(xué)習(xí)中Bagging與隨機(jī)森林算法做一個(gè)總結(jié)。
隨機(jī)森林是集成學(xué)習(xí)中可以和梯度提升樹(shù)GBDT分庭抗禮的算法,尤其是它可以很方便的并行訓(xùn)練,在如今大數(shù)據(jù)大樣本的的時(shí)代很有誘惑力。
1. bagging的原理
在集成學(xué)習(xí)原理小結(jié)中,我們給Bagging畫(huà)了下面一張?jiān)韴D。
從上圖可以看出,Bagging的弱學(xué)習(xí)器之間的確沒(méi)有boosting那樣的聯(lián)系。它的特點(diǎn)在“隨機(jī)采樣”。那么什么是隨機(jī)采樣?
隨機(jī)采樣(bootsrap)就是從我們的訓(xùn)練集里面采集固定個(gè)數(shù)的樣本,但是每采集一個(gè)樣本后,都將樣本放回。也就是說(shuō),之前采集到的樣本在放回后有可能繼續(xù)被采集到。對(duì)于我們的Bagging算法,一般會(huì)隨機(jī)采集和訓(xùn)練集樣本數(shù)m一樣個(gè)數(shù)的樣本。這樣得到的采樣集和訓(xùn)練集樣本的個(gè)數(shù)相同,但是樣本內(nèi)容不同。如果我們對(duì)有m個(gè)樣本訓(xùn)練集做T次的隨機(jī)采樣,,則由于隨機(jī)性,T個(gè)采樣集各不相同。
注意到這和GBDT的子采樣是不同的。GBDT的子采樣是無(wú)放回采樣,而B(niǎo)agging的子采樣是放回