集成算法是我們將不同的分類器組合起來,而這種組合結(jié)果就被稱為集成方法或者是元算法。使用集成方法時(shí)會(huì)有多種形式:可以是不同算法的集成,也可以是同意算法在不同設(shè)置下的集成,還可以是數(shù)據(jù)集不同部分分配給不同分類器之后的集成。
兩種形式:
bagging方法:從原始數(shù)據(jù)集選擇S次后得到S個(gè)新數(shù)據(jù)集,之后將某個(gè)學(xué)習(xí)算法分別作用于數(shù)據(jù)集,就得到了S個(gè)分類器,在對(duì)新的數(shù)據(jù)集進(jìn)行分類時(shí),使用這些分類器進(jìn)行分類,同時(shí),選擇分類器投票結(jié)果中最多的類別作為最后的分類結(jié)果。不同的分類器是通過串行訓(xùn)練而獲得的,每個(gè)新分類器都根據(jù)已訓(xùn)練出來的分類器的性能來進(jìn)行訓(xùn)練。分類器的權(quán)重是相等的。
例子:隨機(jī)森林
boosting方法:使用多個(gè)分類器,它是通過集中關(guān)注被已有分類器錯(cuò)分的那些數(shù)據(jù)來獲得新的分類器,boosting分類的結(jié)果是基于所有分類器的加權(quán)求和結(jié)果的,權(quán)重不相等,每個(gè)權(quán)重代表的是其對(duì)應(yīng)分類器在上一輪迭代中的成功度。
例子:Adaboost,GBDT
AdaBoost的思想:
? ? 1.訓(xùn)練數(shù)據(jù)中的每一個(gè)樣本,并賦予一個(gè)權(quán)重,初始化為相等值,這些權(quán)重構(gòu)成了向量D
? ? 2.首先在訓(xùn)練數(shù)據(jù)上訓(xùn)練出一個(gè)弱分類器并計(jì)算該分類器的錯(cuò)誤率,然后在同一個(gè)數(shù)據(jù)集上再次訓(xùn)練弱分類器。在分類器的第 ? ? 二次訓(xùn)練中,將會(huì)重新調(diào)整每個(gè)樣本的權(quán)重。其中第一次分對(duì)的樣本的權(quán)重會(huì)降低,而第一次分錯(cuò)的樣本的權(quán)重會(huì)提高。
? ? 3.為了從所有弱分類器中得到最終的分類結(jié)果,Adaboost為每個(gè)分類器分配了一個(gè)權(quán)重alpha,這些alpha值是基于每個(gè)弱分類器的錯(cuò)誤率進(jìn)行的
4.計(jì)算出alpha值后,可以對(duì)權(quán)重向量D進(jìn)行更新,以使得那些正確分類的樣本的權(quán)重降低而錯(cuò)分樣本的權(quán)重升高。








暫無數(shù)據(jù)