第8章 Adaboost算法

內(nèi)容

一慎式、Adaboost簡介

二、Adaboost算法過程

三趟径、Adaboost算法的訓(xùn)練誤差分析

四瘪吏、Adaboost算法的解釋

五、提升樹

六蜗巧、詳細理解“梯度提升算法”

##############################################################################

一掌眠、Adaboost簡介

????AdaBoost,是英文"Adaptive Boosting"(自適應(yīng)增強)的縮寫幕屹,由Yoav Freund和Robert Schapire在1995年提出蓝丙。它的自適應(yīng)在于:前一個基本分類器分錯的樣本會得到加強,加權(quán)后的全體樣本再次被用來訓(xùn)練下一個基本分類器香嗓。同時迅腔,在每一輪中加入一個新的弱分類器,直到達到某個預(yù)定的足夠小的錯誤率或達到預(yù)先指定的最大迭代次數(shù)靠娱。

? ? 對于提升方法來說沧烈,有兩個問題需要回答:

? ? (1)在每一輪如何改變訓(xùn)練數(shù)據(jù)的權(quán)值和概率分布?

? ? ? ? ? ? ? 提高那些被前一輪分類器錯誤分類樣本的權(quán)值,而降低那些被正確分類的樣本的權(quán)值像云。

? ? ? ? ? ? ? 這樣大權(quán)值的分類樣本在后一輪的分類器會被更加關(guān)注锌雀。

? ? (2)如何將弱分類器組合成強分類器?

? ? ? ? ? ? ? 強分類器是弱分類器的組合迅诬,adaboost采取多數(shù)表決的方法腋逆。加大誤差小的分類器的權(quán)? ? ? ? ? ? ? ? ? ? 值,使其在表中其較大作用侈贷,減小誤差大的分類器的權(quán)值惩歉,使其在表中其較小作用。

二俏蛮、Adaboost算法過程

1.具體說來撑蚌,整個Adaboost 迭代算法就3步:

????(1)初始化訓(xùn)練數(shù)據(jù)的權(quán)值分布。如果有N個樣本搏屑,則每一個訓(xùn)練樣本最開始時都被賦予相同的權(quán)值:1/N争涌。

????(2)訓(xùn)練弱分類器。具體訓(xùn)練過程中辣恋,如果某個樣本點已經(jīng)被準(zhǔn)確地分類亮垫,那么在構(gòu)造下一個訓(xùn)練集中模软,它的權(quán)值就被降低;相反饮潦,如果某個樣本點沒有被準(zhǔn)確地分類燃异,那么它的權(quán)值就得到提高。然后害晦,權(quán)值更新過的樣本集被用于訓(xùn)練下一個分類器特铝,整個訓(xùn)練過程如此迭代地進行下去。

????(3)將各個訓(xùn)練得到的弱分類器組合成強分類器壹瘟。各個弱分類器的訓(xùn)練過程結(jié)束后,加大分類誤差率小的弱分類器的權(quán)重鳄逾,使其在最終的分類函數(shù)中起著較大的決定作用稻轨,而降低分類誤差率大的弱分類器的權(quán)重,使其在最終的分類函數(shù)中起著較小的決定作用殴俱。換言之,誤差率低的弱分類器在最終分類器中占的權(quán)重較大枚抵,否則較小线欲。

2.?Adaboost算法流程

? ? 給定訓(xùn)練數(shù)據(jù)集:(x1,y1)...(xn,yn),其中yi屬于{-1,1}。用于表示訓(xùn)練樣本的類別標(biāo)簽汽摹,i=1,...,N李丰。Adaboost的目的就是從訓(xùn)練數(shù)據(jù)中學(xué)習(xí)一系列弱分類器或基本分類器,然后將這些弱分類器組合成一個強分類器逼泣。

相關(guān)符號說明:

算法流程如下:

相關(guān)說明:

綜合上面的推導(dǎo)趴泌,可得樣本分錯與分對時,其權(quán)值更新的公式為:

另外拉庶,Z的推導(dǎo)過程如下嗜憔;

3.Adaboost算法實例

例:給定如圖所示的訓(xùn)練樣本,弱分類器采用平行于坐標(biāo)軸的直線氏仗,用Adaboost算法的實現(xiàn)強分類過程吉捶。

數(shù)據(jù)分析:

????將這10個樣本作為訓(xùn)練數(shù)據(jù),根據(jù)?X?和Y?的對應(yīng)關(guān)系皆尔,可把這10個數(shù)據(jù)分為兩類呐舔,圖中用“+”表示類別1,用“O”表示類別-1床佳。本例使用水平或者垂直的直線作為分類器滋早,圖中已經(jīng)給出了三個弱分類器,即:

初始化:

首先需要初始化訓(xùn)練樣本數(shù)據(jù)的權(quán)值分布砌们,每一個訓(xùn)練樣本最開始時都被賦予相同的權(quán)值:wi=1/N杆麸,這樣訓(xùn)練樣本集的初始權(quán)值分布D1(i):

令每個權(quán)值w1i= 1/N= 0.1搁进,其中,N= 10昔头,i= 1,2, ..., 10饼问,然后分別對于t= 1,2,3, ...等值進行迭代(t表示迭代次數(shù),表示第t輪)揭斧,下表已經(jīng)給出訓(xùn)練樣本的權(quán)值分布情況:

第1次迭代t=1:

初試的權(quán)值分布D1為1/N(10個數(shù)據(jù)莱革,每個數(shù)據(jù)的權(quán)值皆初始化為0.1),

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?D1=[0.1, ?0.1, 0.1, 0.1, 0.1, 0.1,0.1, 0.1, 0.1, 0.1]

在權(quán)值分布D1的情況下讹开,取已知的三個弱分類器h1盅视、h2和h3中誤差率最小的分類器作為第1個基本分類器H1(x)(三個弱分類器的誤差率都是0.3,那就取第1個吧)

在分類器H1(x)=h1情況下旦万,樣本點“5 7 8”被錯分闹击,因此基本分類器H1(x)的誤差率為:

可見,被誤分類樣本的權(quán)值之和影響誤差率e成艘,誤差率e影響基本分類器在最終分類器中所占的權(quán)重α赏半。

然后,更新訓(xùn)練樣本數(shù)據(jù)的權(quán)值分布淆两,用于下一輪迭代断箫,對于正確分類的訓(xùn)練樣本“1 2 3 4 6 9 10”(共7個)的權(quán)值更新為:

? ? ? ?這樣,第1輪迭代后秋冰,最后得到各個樣本數(shù)據(jù)新的權(quán)值分布:D2=[1/14,1/14,1/14,1/14,1/6,1/14,1/6,1/6,1/14,1/14]

? ? ? ?由于樣本數(shù)據(jù)“5 7 8”被H1(x)分錯了仲义,所以它們的權(quán)值由之前的0.1增大到1/6;反之丹莲,其它數(shù)據(jù)皆被分正確光坝,所以它們的權(quán)值皆由之前的0.1減小到1/14,下表給出了權(quán)值分布的變換情況:

????????可得分類函數(shù):f1(x)=?α1H1(x) = 0.4236H1(x)甥材。此時盯另,組合一個基本分類器sign(f1(x))作為強分類器在訓(xùn)練數(shù)據(jù)集上有3個誤分類點(即5 7 8),此時強分類器的訓(xùn)練錯誤為:0.3洲赵。

第二次迭代t=2:

在權(quán)值分布D2的情況下鸳惯,再取三個弱分類器h1、h2和h3中誤差率最小的分類器作為第2個基本分類器H2(x):

① 當(dāng)取弱分類器h1=X1=2.5時叠萍,此時被錯分的樣本點為“5 7 8”:誤差率e=1/6+1/6+1/6=3/6=1/2芝发;

② 當(dāng)取弱分類器h2=X1=8.5時,此時被錯分的樣本點為“3 4 6”:誤差率e=1/14+1/14+1/14=3/14苛谷;

③ 當(dāng)取弱分類器h3=X2=6.5時辅鲸,此時被錯分的樣本點為“1 2 9”:誤差率e=1/14+1/14+1/14=3/14;

?因此腹殿,取當(dāng)前最小的分類器h2作為第2個基本分類器H2(x)

顯然独悴,H2(x)把樣本“3 4 6”分錯了例书,根據(jù)D2可知它們的權(quán)值為D2(3)=1/14,D2(4)=1/14刻炒,?D2(6)=1/14决采,所以H2(x)在訓(xùn)練數(shù)據(jù)集上的誤差率:

這樣,第2輪迭代后坟奥,最后得到各個樣本數(shù)據(jù)新的權(quán)值分布:

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?D3=[1/22,1/22,1/6,1/6,7/66,1/6,7/66,7/66,1/22,1/22]

? 下表給出了權(quán)值分布的變換情況:

可得分類函數(shù):f2(x)=0.4236H1(x) + 0.6496H2(x)树瞭。此時,組合兩個基本分類器sign(f2(x))作為強分類器在訓(xùn)練數(shù)據(jù)集上有3個誤分類點(即3 4?6)爱谁,此時強分類器的訓(xùn)練錯誤為:0.3

第三次迭代t=3:

在權(quán)值分布D3的情況下晒喷,再取三個弱分類器h1、h2和h3中誤差率最小的分類器作為第3個基本分類器H3(x):

① 當(dāng)取弱分類器h1=X1=2.5時管行,此時被錯分的樣本點為“5 7 8”:誤差率e=7/66+7/66+7/66=7/22厨埋;

② 當(dāng)取弱分類器h2=X1=8.5時,此時被錯分的樣本點為“3 4 6”:誤差率e=1/6+1/6+1/6=1/2=0.5捐顷;

③ 當(dāng)取弱分類器h3=X2=6.5時,此時被錯分的樣本點為“1 2 9”:誤差率e=1/22+1/22+1/22=3/22

這樣雨效,第3輪迭代后迅涮,得到各個樣本數(shù)據(jù)新的權(quán)值分布為:

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?D4=[1/6,1/6,11/114,11/114,7/114,11/114,7/114,7/114,1/6,1/38]

? 下表給出了權(quán)值分布的變換情況:

?可得分類函數(shù):f3(x)=0.4236H1(x) + 0.6496H2(x)+0.9229H3(x)。此時徽龟,組合三個基本分類器sign(f3(x))作為強分類器叮姑,在訓(xùn)練數(shù)據(jù)集上有0個誤分類點。至此据悔,整個訓(xùn)練過程結(jié)束传透。

整合所有分類器,可得最終的強分類器為:

這個強分類器Hfinal對訓(xùn)練樣本的錯誤率為0极颓!

三朱盐、Adaboost算法的訓(xùn)練誤差分析

????Adaboost最基本的性質(zhì)它能夠在學(xué)習(xí)中不斷減少訓(xùn)練誤差,即在訓(xùn)練數(shù)據(jù)集上的分類誤差率菠隆。關(guān)于訓(xùn)練誤差界有如8.5定理兵琳。

證明過程如下:

關(guān)于(8.5)、(8.6)以及(8.7)式子如下所示:

該式子的推導(dǎo)過程分為兩個步驟:左邊“<=”和右邊“=”

對于紅色框I(x)是指示函數(shù)所以取值是{-1,1}骇径,故左邊的證明成立躯肌。

對于綠色框內(nèi)更加詳細的證明過程:

從推導(dǎo)過程可以看出在每一輪選取適當(dāng)?shù)腉(x)使得Zm最小,從而使訓(xùn)練誤差最快破衔。因為選取的G(x)影響am的值清女,所以在推導(dǎo)的過程可以看出G(x)是對誤差率起決定性作用。

注:這里邊我們對adaboost算法的描述以及adaboost算法的例子都是假設(shè)在給定二分類訓(xùn)練數(shù)據(jù)集的晰筛。若不是二分類的數(shù)據(jù)集也可以嫡丙,只不過是在做具體闡述的時候會簡單明了拴袭。

證明用到的相關(guān)公式:

四、Adaboost算法的解釋

????????Adaboost算法還有另外一種解釋迄沫,即可以認為Adaboost算法是模型為加法模型稻扬、損失函數(shù)為指數(shù)函數(shù)、學(xué)習(xí)算法為前向算法時的二分類學(xué)習(xí)方法羊瘩。

前向分布算法的大致描述:

前向算法的具體流程(前向):

五泰佳、提升樹

????????提升樹是以分類樹或者回歸樹為基本分類器的提升算法。提升樹被認為是統(tǒng)計學(xué)習(xí)中性能最好的方法之一尘吗。

????????提升方法實際采用加法模型(即基函數(shù)的線性組合)與前向分布算法逝她。

????????以決策樹為基函數(shù)的提升算法稱為提升樹。

????????對于分類問題的決策樹是二叉分類樹睬捶,對于回歸問題的決策樹是二叉回歸樹黔宛。

提升樹的模型可以表示為決策樹的加法模型(決策樹是二叉分類樹或者二叉回歸樹):

提升樹算法:

討論不同問題的提升樹模型的學(xué)習(xí)算法,主要區(qū)別在于使用的損失函數(shù)不同:

? ? ? ? 1.平方誤差損失函數(shù)的回歸問題

? ? ? ? 2.指數(shù)損失函數(shù)的分類問題

? ? ? ? 3.一般損失函數(shù)的一般決策問題

注:就是通過最小化各種損失函數(shù)來更新對應(yīng)的提升樹模型的參數(shù)擒贸,即對提升樹模型學(xué)習(xí)的過程臀晃。

回歸問題的提升樹算法的描述:

回歸樹提升算法的具體過程:

詳細例子見李航,adaboost算法的大框沒變介劫,知識這里邊加了回歸和樹徽惋。所以就命名為回歸樹提升算法。

六座韵、詳細理解“梯度提升算法”

? ? ? ? ? ?提升樹利用加法模型與前向分布算法實現(xiàn)學(xué)習(xí)的優(yōu)化過程险绘。當(dāng)損失函數(shù)是平方損失函數(shù)和指數(shù)損失函數(shù),利用前向算法每一步的優(yōu)化是很簡單的誉碴。

? ? ? ? ?但對一般的損失函數(shù)而言宦棺。往往不是那么容易。針對這一問題的存在黔帕,F(xiàn)reidman提出了梯度提升算法代咸。

梯度提升算法:

注:紅色框內(nèi)代表梯度提升算法的初始化;

? ? ? ? 綠色框內(nèi)代表計算偽殘差

? ? ? ? 藍色框內(nèi)代表利用線性搜索估計葉節(jié)點區(qū)域的值蹬屹,使損失函數(shù)極小化

? ? ? ? 黃色框內(nèi)代表更新樹

? ? ? ? 黑色代表得到最后的回歸樹

????????結(jié)合圖表理解下該算法:

詳細地址轉(zhuǎn)到:http://www.reibang.com/writer#/notebooks/29268484/notes/34244677

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末侣背,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子慨默,更是在濱河造成了極大的恐慌贩耐,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,123評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件厦取,死亡現(xiàn)場離奇詭異潮太,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,031評論 2 384
  • 文/潘曉璐 我一進店門铡买,熙熙樓的掌柜王于貴愁眉苦臉地迎上來更鲁,“玉大人,你說我怎么就攤上這事奇钞≡栉” “怎么了?”我有些...
    開封第一講書人閱讀 156,723評論 0 345
  • 文/不壞的土叔 我叫張陵景埃,是天一觀的道長媒至。 經(jīng)常有香客問我,道長谷徙,這世上最難降的妖魔是什么拒啰? 我笑而不...
    開封第一講書人閱讀 56,357評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮完慧,結(jié)果婚禮上谋旦,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 65,412評論 5 384
  • 文/花漫 我一把揭開白布判莉。 她就那樣靜靜地躺著,像睡著了一般指蚜。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上涨椒,一...
    開封第一講書人閱讀 49,760評論 1 289
  • 那天,我揣著相機與錄音绽媒,去河邊找鬼蚕冬。 笑死,一個胖子當(dāng)著我的面吹牛是辕,可吹牛的內(nèi)容都是我干的囤热。 我是一名探鬼主播,決...
    沈念sama閱讀 38,904評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼获三,長吁一口氣:“原來是場噩夢啊……” “哼旁蔼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起疙教,我...
    開封第一講書人閱讀 37,672評論 0 266
  • 序言:老撾萬榮一對情侶失蹤棺聊,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后贞谓,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體限佩,經(jīng)...
    沈念sama閱讀 44,118評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,456評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了祟同。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片作喘。...
    茶點故事閱讀 38,599評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖晕城,靈堂內(nèi)的尸體忽然破棺而出泞坦,到底是詐尸還是另有隱情,我是刑警寧澤砖顷,帶...
    沈念sama閱讀 34,264評論 4 328
  • 正文 年R本政府宣布贰锁,位于F島的核電站,受9級特大地震影響择吊,放射性物質(zhì)發(fā)生泄漏李根。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,857評論 3 312
  • 文/蒙蒙 一几睛、第九天 我趴在偏房一處隱蔽的房頂上張望房轿。 院中可真熱鬧,春花似錦所森、人聲如沸囱持。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,731評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽纷妆。三九已至,卻和暖如春晴弃,著一層夾襖步出監(jiān)牢的瞬間掩幢,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,956評論 1 264
  • 我被黑心中介騙來泰國打工上鞠, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留际邻,地道東北人。 一個月前我還...
    沈念sama閱讀 46,286評論 2 360
  • 正文 我出身青樓芍阎,卻偏偏與公主長得像世曾,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子谴咸,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,465評論 2 348

推薦閱讀更多精彩內(nèi)容