集成學(xué)習(xí)
顧名思義樟蠕,就是將多個(gè)單一模型進(jìn)行組合,最后形成一個(gè)更好的模型的過程靠柑。之所以組合多個(gè)單一學(xué)習(xí)器寨辩,是因?yàn)楹芏鄷r(shí)候單一學(xué)習(xí)器的效果不夠理想,多個(gè)模型組合可以互幫互助歼冰,各取所長靡狞,從而能夠更好的完成任務(wù)。集成學(xué)習(xí)一般的結(jié)構(gòu)是先學(xué)習(xí)單一的學(xué)習(xí)器隔嫡,之后通過某種策略將其組合在一起甸怕。
- 條件
- 首先應(yīng)該保證分類器之間的差異性,如果分類器都相同腮恩,那么組合的出來的結(jié)果是不會有變化的梢杭。
- 每個(gè)個(gè)體分類器的精度必須大于0.5,如果個(gè)體分類器的精度低于0.5秸滴,那集成之后的精度低于規(guī)模的增大而降低武契。但如果精度是大于0.5的,最后的分類結(jié)果會趨于1荡含。
根據(jù)個(gè)體學(xué)習(xí)器的生成方式咒唆,目前可以分成兩類:第一類是單個(gè)學(xué)習(xí)器之間有著很強(qiáng)的依賴關(guān)系,需要以串行的序列化的方式生成释液,代表方法:Boosting全释。Boosting方法中也有很多分類:Adaboost、GBDT等等误债。第二類就是個(gè)體學(xué)習(xí)器之間不存在很強(qiáng)的依賴關(guān)系浸船,學(xué)習(xí)器可以并行生成,代表方法:Bagging 和Random Forest
Bagging(套袋法)
- Bagging的思想比較簡單糟袁,即每一輪迭代前從原始數(shù)據(jù)中根據(jù)均勻概率分布有放回的抽取和原始數(shù)據(jù)大小相同的樣本集合,樣本可能會出現(xiàn)重復(fù)躺盛,形成新的訓(xùn)練集(該方法叫做bootstrap)。共抽取k輪形帮,k為分類器個(gè)數(shù)槽惫,然后對每一次產(chǎn)生的訓(xùn)練集構(gòu)造一個(gè)分類器周叮,再對分類器進(jìn)行組合。
- 對分類問題:將上步得到的k個(gè)模型采用投票的方式得到分類結(jié)果界斜;對回歸問題仿耽,計(jì)算上述模型的均值作為最后的結(jié)果。(所有模型的的預(yù)測函數(shù)權(quán)重相同各薇,即重要性相同)
Boosting
- Boosting則是訓(xùn)練集合本身保持不變项贺,每次變化的是訓(xùn)練集中樣例的權(quán)重。每一次迭代峭判,都根據(jù)上一次迭代的結(jié)果开缎,減小在上一輪正確樣本的權(quán)重,增加被錯(cuò)誤分類的樣本的分布權(quán)重林螃,每一輪的訓(xùn)練集不變奕删,只是訓(xùn)練集中每個(gè)樣例在分類器中的權(quán)重發(fā)生變化,這是一個(gè)不斷學(xué)習(xí)的過程疗认,也是一個(gè)不斷提升的過程完残,這也就是boosting思想的本質(zhì)所在。
- 迭代完成之后横漏,將每次迭代的基分類器進(jìn)行集成谨设。Boosting預(yù)測函數(shù)權(quán)重不同,模型預(yù)測誤差越小的權(quán)重越大缎浇,有助于增加組合后模型準(zhǔn)確率扎拣。
綜上,Bagging和Boosting的區(qū)別可以歸納為:
- 訓(xùn)練數(shù)據(jù)集的抽樣方式
(Bagging均勻抽樣华畏,Boosting根據(jù)上一輪結(jié)果調(diào)整權(quán)重鹏秋,錯(cuò)誤率越大的樣本權(quán)重越大)- 預(yù)測函數(shù)
(Bagging所有的預(yù)測函數(shù)權(quán)重相同,Boosting預(yù)測函數(shù)權(quán)重不同亡笑,預(yù)測誤差小的模型權(quán)重越大)- 并行計(jì)算
(Bagging個(gè)體學(xué)習(xí)器之間不存在強(qiáng)依賴關(guān)系侣夷,可以并行生成,Boosting只能順序生成仑乌,因?yàn)楹笠粋€(gè)預(yù)測要用到上一個(gè)結(jié)果)- 個(gè)體分類器
Bagging多使用強(qiáng)分類器進(jìn)行組合百拓,個(gè)體學(xué)習(xí)器之間不存在強(qiáng)依賴關(guān)系,Boosting則使用弱分類器(個(gè)體分類器精度略大于0.5)進(jìn)行組合晰甚,個(gè)體學(xué)習(xí)器之間存在強(qiáng)依賴關(guān)系衙传,是一種序列化方法。