提升方法(Boosting)算法筆記(一)-Python

出差結(jié)束勋陪,繼續(xù)好好學(xué)習(xí)機(jī)器學(xué)習(xí)基礎(chǔ)算法髓梅,今天了解提升方法(Boosting),主要側(cè)重于AdaBoost算法糙俗,同樣理論知識(shí)來自Peter Harrington的《機(jī)器學(xué)習(xí)實(shí)戰(zhàn)》和李航的《統(tǒng)計(jì)學(xué)習(xí)方法》绷杜,非常感謝這些優(yōu)秀人物和優(yōu)秀書籍直秆,正文開始啦


提升算法(Boosting)

考慮前幾篇提到的分類算法,各有利弊鞭盟,如果可以有效地將這些分類器結(jié)合起來圾结,各取所長(zhǎng),應(yīng)該也是不錯(cuò)的選擇齿诉。提升算法正是基于這樣的思想筝野,但是它不是簡(jiǎn)單、均等的將不同分類器的結(jié)果相加粤剧,而是基于全部分類器的加權(quán)求和結(jié)果歇竟,而這個(gè)權(quán)重代表的是該分類器在上一輪迭代中的成功度。歷史上抵恋,Kearns和Valiant首先提出了'強(qiáng)可學(xué)習(xí)(strongly learnable)'和'弱可學(xué)習(xí)(weakly learnable)'的概念焕议。指出:在概率近似正確(probably approximately correct, PAC)學(xué)習(xí)的框架中,一個(gè)概念(一個(gè)類)弧关,如果存在一個(gè)多項(xiàng)式的學(xué)習(xí)算法能夠?qū)W習(xí)它盅安,并且正確率很高,那么就稱這個(gè)概念是強(qiáng)可學(xué)習(xí)的世囊;一個(gè)概念别瞭,如果存在一個(gè)多項(xiàng)式的學(xué)習(xí)算法能夠?qū)W習(xí)它,學(xué)習(xí)的正確率僅比隨機(jī)猜測(cè)略好株憾,那么就稱這個(gè)概念是弱可學(xué)習(xí)的蝙寨。非常有趣的是Schapire后來證明強(qiáng)可學(xué)習(xí)與弱可學(xué)習(xí)是等價(jià)的,也就是說,在PAC學(xué)習(xí)的框架下籽慢,一個(gè)概念是強(qiáng)可學(xué)習(xí)的充分必要條件是這個(gè)概念是弱可學(xué)習(xí)的。這樣一來猫胁,問題便成為箱亿,在學(xué)習(xí)中,如果已經(jīng)發(fā)現(xiàn)了'弱學(xué)習(xí)算法'弃秆,那么能否將它提升(boost)為'強(qiáng)學(xué)習(xí)算法'届惋。大家知道,發(fā)現(xiàn)弱學(xué)習(xí)算法通常要比發(fā)現(xiàn)強(qiáng)學(xué)習(xí)算法容易得多菠赚。那么如何具體實(shí)施提升脑豹,便成為開發(fā)提升方法時(shí)所要解決的問題。關(guān)于提升方法的研究很多衡查,有很多算法被提出瘩欺。最具代表性的是AdaBoost算法(AdaBoost algorithm,adaptive boosting algorithm)拌牲。

AdaBoost算法工作原理:開始時(shí)俱饿,賦予訓(xùn)練數(shù)據(jù)中的每個(gè)樣本一個(gè)相等的初始權(quán)重值,這些權(quán)重構(gòu)成了向量D塌忽。首先在訓(xùn)練數(shù)據(jù)上訓(xùn)練出一個(gè)弱分類器并計(jì)算該分類的錯(cuò)誤率拍埠,然后在同一數(shù)據(jù)集上再次訓(xùn)練弱分類器。在分類器的第二次訓(xùn)練中土居,將第一次分對(duì)的樣本的權(quán)重降低枣购,將第一次分錯(cuò)的樣本的權(quán)重提高。這樣一來擦耀,那些沒有得到正確分類的數(shù)據(jù)棉圈,由于其權(quán)值的加大而受到后一輪的弱分類器的更大關(guān)注。反復(fù)學(xué)習(xí)埂奈,不斷調(diào)整樣本權(quán)重迄损,最終得到一個(gè)強(qiáng)分類器。

圖1 AdaBoost算法實(shí)現(xiàn)流程

最終账磺,AdaBoost算法的分類器是:

圖2 AdaBoost算法分類器的函數(shù)表示

舉栗子-AdaBoost算法模型:

1)準(zhǔn)備數(shù)據(jù)

圖3 準(zhǔn)備數(shù)據(jù)

2)準(zhǔn)備一些后續(xù)用到的工具函數(shù)

圖4 工具函數(shù)

在此芹敌,要先介紹下“單層決策樹”。單層決策樹(decision stump垮抗,也稱決策樹樁)是一種簡(jiǎn)單的決策樹氏捞,它僅基于單個(gè)特征來做決策,由于這棵樹只有一次分裂過程冒版,因此實(shí)際就是一個(gè)樹樁液茎。而圖4中的stumpClassify函數(shù)就是基于這一思想,在分類時(shí),根據(jù)某種比較規(guī)則捆等,如less than (lt) 或者 great than (gt)等滞造,判斷屬性值與閾值的關(guān)系。buildStump函數(shù)是構(gòu)建單層決策樹栋烤,包括三層嵌套循環(huán)谒养。

3)基于單層決策樹的AdaBoost算法

圖5 基于單層決策樹的AdaBoost算法

此算法主要流程為:在限定最大運(yùn)算次數(shù)的限制下,分別計(jì)算alpha明郭、weights买窟、和errorRate,當(dāng)errorRate=0時(shí)跳出循環(huán)薯定,此過程中的計(jì)算主要是依據(jù)圖1中的計(jì)算式始绍。實(shí)際分類器不是僅限于單層決策樹,任何一種分類算法都可以作為基分類器话侄。

4)AdaBoost分類函數(shù)

圖6 基于單層決策樹的AdaBoost算法的分類函數(shù)

好噠亏推,關(guān)于提升方法的基礎(chǔ)學(xué)習(xí)先到這里,等在下一階段的深入學(xué)習(xí)中再往深挖掘满葛,希望對(duì)大家有幫助径簿,歡迎大神隨時(shí)指點(diǎn)。謝謝

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末嘀韧,一起剝皮案震驚了整個(gè)濱河市篇亭,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌锄贷,老刑警劉巖译蒂,帶你破解...
    沈念sama閱讀 206,482評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異谊却,居然都是意外死亡柔昼,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,377評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門炎辨,熙熙樓的掌柜王于貴愁眉苦臉地迎上來捕透,“玉大人,你說我怎么就攤上這事碴萧∫亦郑” “怎么了?”我有些...
    開封第一講書人閱讀 152,762評(píng)論 0 342
  • 文/不壞的土叔 我叫張陵破喻,是天一觀的道長(zhǎng)虎谢。 經(jīng)常有香客問我,道長(zhǎng)曹质,這世上最難降的妖魔是什么婴噩? 我笑而不...
    開封第一講書人閱讀 55,273評(píng)論 1 279
  • 正文 為了忘掉前任擎场,我火速辦了婚禮,結(jié)果婚禮上几莽,老公的妹妹穿的比我還像新娘迅办。我一直安慰自己,他們只是感情好章蚣,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,289評(píng)論 5 373
  • 文/花漫 我一把揭開白布礼饱。 她就那樣靜靜地躺著,像睡著了一般究驴。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上匀伏,一...
    開封第一講書人閱讀 49,046評(píng)論 1 285
  • 那天洒忧,我揣著相機(jī)與錄音,去河邊找鬼够颠。 笑死熙侍,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的履磨。 我是一名探鬼主播蛉抓,決...
    沈念sama閱讀 38,351評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼剃诅!你這毒婦竟也來了巷送?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,988評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤矛辕,失蹤者是張志新(化名)和其女友劉穎笑跛,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體聊品,經(jīng)...
    沈念sama閱讀 43,476評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡飞蹂,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,948評(píng)論 2 324
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了翻屈。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片陈哑。...
    茶點(diǎn)故事閱讀 38,064評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖伸眶,靈堂內(nèi)的尸體忽然破棺而出惊窖,到底是詐尸還是另有隱情,我是刑警寧澤赚抡,帶...
    沈念sama閱讀 33,712評(píng)論 4 323
  • 正文 年R本政府宣布爬坑,位于F島的核電站,受9級(jí)特大地震影響涂臣,放射性物質(zhì)發(fā)生泄漏盾计。R本人自食惡果不足惜售担,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,261評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望署辉。 院中可真熱鬧族铆,春花似錦、人聲如沸哭尝。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,264評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽材鹦。三九已至逝淹,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間桶唐,已是汗流浹背栅葡。 一陣腳步聲響...
    開封第一講書人閱讀 31,486評(píng)論 1 262
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留尤泽,地道東北人欣簇。 一個(gè)月前我還...
    沈念sama閱讀 45,511評(píng)論 2 354
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像坯约,于是被迫代替她去往敵國(guó)和親熊咽。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,802評(píng)論 2 345

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