機(jī)器學(xué)習(xí)技法--Blending and Bagging

本文參考整理了Coursera上由NTU的林軒田講授的《機(jī)器學(xué)習(xí)技法》課程的第七章的內(nèi)容蜕依,主要圍繞將不同hypotheses中具有預(yù)測性的features進(jìn)行融合的aggregation技術(shù)妥衣,講述了引入blending的動機(jī)万细,常用的blending方式(如uniform blending、linear blending和any blending等)脑奠,介紹了利用bootstrapping技術(shù)的Bagging Meta Algorithm基公,并利用實(shí)際例子表現(xiàn)了aggregation的巨大威力和用處。文中的圖片都是截取自在線課程的講義宋欺。
歡迎到我的博客跟蹤最新的內(nèi)容變化轰豆。
如果有任何錯誤或者建議,歡迎指出齿诞,感激不盡酸休!
--

本系列文章已發(fā)七章,前六章的地址如下:


Blending和Bagging都是Aggregation里面非常典型的做法私蕾。

Aggregation的動機(jī)

日常選股

假設(shè)你有T個朋友g1僵缺,g2...gT預(yù)測某支股票X是否會上漲gt(X)

你會怎么做?

  1. 根據(jù)他們的平常表現(xiàn)選擇最可信的朋友---即validation
  2. 均衡(uniformly)地混合朋友們的預(yù)測---讓他們一人一票踩叭,最后選擇票數(shù)最多的結(jié)果
  3. 不均衡(non-uniformly)地混合朋友們的預(yù)測---每個人的票數(shù)不一磕潮,讓他們投票翠胰,而票數(shù)的分配和問題有關(guān),比如有人擅長分析科技類股票自脯,有人擅長分析傳統(tǒng)產(chǎn)業(yè)股票之景,因此在不同條件下,對不同人的信任度也不同冤今,即如果[t 滿足某些條件]闺兢,則給朋友t多一些票茂缚。
  4. ...更多方式

對應(yīng)到機(jī)器學(xué)習(xí)里面戏罢,把T個人的意見融合起來以獲得更好的表現(xiàn),就是aggregation模型脚囊,即aggregation models = mix or combine hypotheses for better performance.

數(shù)學(xué)形式

數(shù)學(xué)化以上操作:

  1. 選擇平常表現(xiàn)(val)最好的人
  1. 等額投票
  1. 不等額投票(包括情形1龟糕、2)

包含了:

  • 選擇,即αt = [[ Eval(gt)最小 ]]
  • 等額: 即αt = 1
  1. 根據(jù)條件合并預(yù)測(包括情形1悔耘、2讲岁、3)
  • 包含了不等額投票,即qt(X)=αt衬以。

aggregation model是一個非常豐富的家族缓艳。

aggregation與selection的對比

selection: 選擇出一個strong的hypothesis(強(qiáng)人主導(dǎo))
aggregation: do better with many (possibly weaker) hypotheses(三個臭皮匠)

為什么aggregation可能會做得更好

  1. more power,more strong

如果只用垂直、水平線看峻,怎樣都做不太好阶淘,而如果能把垂直和水平的線結(jié)合起來,則可能會做得比較好互妓。

如果等額混合不同的弱弱的hypotheses溪窒,就可能會得到一個比較強(qiáng)的G(x),比較復(fù)雜的邊界冯勉,類似于之前的feature transform澈蚌,它也擴(kuò)展了我們的model的power。

  1. more moderate,more regularization

有若干條直線可以完美分割OO和XX灼狰,PLA會隨機(jī)選擇一條宛瞄。如果等額混合不同的random-PLA hypotheses,則會收斂于中間那條large margin的直線交胚,比較中庸份汗,具有regularization的效果。因此aggregation具有more powerful和more regularization這兩種看似對立的效果承绸。

Uniform Blending

uniform blending for classification

blending: 已知gt裸影。

uniform blending: known gt each with 1 ballot

  • 如果每個gt都一樣(獨(dú)裁政治),則G和g的表現(xiàn)是相同的军熏。
  • 如果gt各不相同(多樣性+民主)轩猩,則多數(shù)派能糾正少數(shù)派。
  • 對多類別分類,一樣的結(jié)果

對于regression如何做呢均践?

uniform blending for regression

  • 每個gt都一樣晤锹,融合g效果變化不大
  • 每個gt都不太一樣,有些gt(x) > f(x)彤委,而有些gt(x) < f(x)鞭铆,兩者抵消,平均值可能會比單一值更加準(zhǔn)確穩(wěn)定焦影。

因此车遂,如果我們的aggregation要起作用,很重要的前提是gt要各不一樣斯辰,暢所欲言舶担,對于diverse hypotheses,即使使用非常簡單的uniform blending彬呻,也可以比任何單一的hypothesis表現(xiàn)得更好衣陶。

uniform blending for regression work的理論保證

先討論對于固定的確定的X

隨便選一個gt,期望意義下的square error是

將gt的期望錯誤和G的錯誤聯(lián)系在一起闸氮。

avg代表
1/T*Σ

推廣到所有X上剪况,對X分布取期望,得到

由此可知蒲跨,最好的g是否比G好我們不得而知译断,但平均的g確實(shí)沒有G表現(xiàn)好,我們的uniform blending對于square error regression確實(shí)work了财骨。

bias-variance decomposition

考慮一個虛擬迭代過程(t = 1,2...T)

  1. 第t輪镐作,取得N筆資料Dt,Dt來自分布PN(i.i.d)
  2. 通過A(Dt)學(xué)習(xí)獲得gt

將剛剛得到的式子推廣到無窮大

把一個演算法的表現(xiàn)拆分成bias-variance decomposition

而uniform blending就是減少variance隆箩,使表現(xiàn)更加穩(wěn)定该贾。

Linear and Any Blending

linear blending

linear blending: known gt, each to be given αt ballot

什么樣的α是好的α?

min[αt>=0]Ein(α)

要求解的問題

有點(diǎn)類似two-level learning,先得到gt捌臊,再做LinReg杨蛋。

linear blending = LinModel + hypotheses as transform + constraints

唯一的不同是要求αt>=0,而一般的LinReg沒有要求Wt>=0理澎。

constraints on α

在實(shí)際中逞力,我們常常故意忽略掉α的約束,如果αt<0糠爬,就把對應(yīng)的gt想象成gt'=-gt好了寇荧,對于regression可能比較奇怪,但是大部分時候constraints放在一邊沒有什么影響执隧。

linear blending versus selection

之前我們都說gt直接給定揩抡,那么gt通常是怎么來的呢户侥?

在實(shí)踐中,常常g1∈H1峦嗤,g2∈H2 ... gT∈HT蕊唐,即g是從不同的model通過求最好的Ein來得到的,就像之前在model selection中發(fā)生的事情一樣烁设。

recall:
selection by minimum Ein --- best of best --- best of all

則 dvc = (∪Ht)替梨,這也就是為什么我們要用Eval而不是Ein來做選擇。

recall:
linear blending 包含了 selection 作為特殊情況
即αt = [[ Eval(gt-) 最小 ]]

如果用Ein來做linear blending装黑,即aggregation of best副瀑,模型復(fù)雜度代價比best of best還大,>= dvc = (∪Ht).

模型更加危險曹体,因此實(shí)踐中不建議使用Ein來選α俗扇,選擇α?xí)r讓Eval而不是Ein最小硝烂,gt-來自最小的E(train)箕别。

Any Blending

從某個比較小的D(train),訓(xùn)練得到g1-,g2-...,gT-滞谢,把Dval中的(xn,yn)轉(zhuǎn)換成(Zn=Φ-(xn),yn)串稀,Φ-(X) = (g1-(X), g2-(X) ... gT-(X))。

linear blending

注意最后回傳的是Φ而不是Φ-狮杨,


我們不一定要用linear來合并{Zn,yn}母截,可以用任何方法,即Any Blending橄教,也叫作Stacking.

對Z空間中的資料不一定用Linear model清寇,可用Non-linear model

any blending:

  • powerful,達(dá)成了根據(jù)條件來進(jìn)行blending的目的
  • 有overfitting的危險护蝶,要小心使用
Blending in Practice

資料來臨==>學(xué)習(xí)g==>validation set blending 得到G

  • a special any blending model

E[test](squared): 519.45 ==> 456.24

  • g华烟、G 再做一次 linear blending ,test set blending: linear blending using Etest~

E[test](squared): 456.24 ==> 442.06

在實(shí)踐中持灰,blending是非常有用的盔夜,如果不考慮計(jì)算負(fù)擔(dān)。

Bagging(Bootstrap Aggregation)

What We Have Done

blending: aggregate after getting gt
learning: aggregate as well as getting gt

gt的多樣性很重要堤魁,如何得到不一樣的g?

  • 通過不同的模型: g1∈H1喂链,g2∈H2 ... gT∈HT
  • 同一模型的不同參數(shù): 如GD的不同的η,SVM中不同的C
  • 演算法本來就有randomness: 如有不一樣的randome seeds的隨機(jī)PLA
  • 資料的randomness: within-cross-validation hypotheses gv-

接下來,我們嘗試用同一份資料制造好多g妥泉,以產(chǎn)生多樣性椭微。

Revisit of Bias-Variance

  • consensus 比直接 A(D) 更加穩(wěn)定,但是需要很多筆資料
  • 我們想要近似的g的平均盲链,要做兩個妥協(xié)
  1. 無限大T(很大的T)
  2. 只使用手中資料D蝇率,生成T個近似的gt=A(Dt)检诗,其中Dt~PN

我們需要用到統(tǒng)計(jì)學(xué)中的工具bootstrapping,它做的是從D中重新抽樣來模擬Dt瓢剿。

Bootstrap Aggregation

sampling with replacement 有放回的抽樣

bootstrap aggregation:我們稱為BAGging逢慌,一個簡單的meta algorithm,在base algorithm A 之上间狂。

Bagging Pocket In Action

每個Pocket演算法跑1000趟攻泼,使用25條Pocket線組合而成。

  • 每個來自bagging生成的g都很不一樣
  • aggregation后形成了還算合適的non-linear邊界來進(jìn)行二元分類

如果base algorithm對數(shù)據(jù)隨機(jī)性很敏感鉴象,則bagging通常工作得很好

在bootstrapping過程里忙菠,原來的N筆資料D里面再重新抽樣N個D',則D'正好為D的可能性是N!/N^N。

Mind Map Summary


下一章我們講述是否可以得到比Bagging更加diverse的hypotheses,從而使blending后的G更加strong墨微,即逐步增強(qiáng)法启具。歡迎關(guān)注!

如果您對這一系列文章感興趣沛硅,歡迎訂閱我的專題或者關(guān)注我以獲得最新的更新信息!

本文首發(fā)于我的博客,如果您想提前看到更多的內(nèi)容或者懶于尋找之前的章節(jié)拾稳,可以直接來我的博客閱讀長文版,感謝您的鼓勵支持腊脱!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末访得,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子陕凹,更是在濱河造成了極大的恐慌悍抑,老刑警劉巖,帶你破解...
    沈念sama閱讀 210,914評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件杜耙,死亡現(xiàn)場離奇詭異搜骡,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)泥技,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,935評論 2 383
  • 文/潘曉璐 我一進(jìn)店門浆兰,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人珊豹,你說我怎么就攤上這事簸呈。” “怎么了店茶?”我有些...
    開封第一講書人閱讀 156,531評論 0 345
  • 文/不壞的土叔 我叫張陵蜕便,是天一觀的道長。 經(jīng)常有香客問我贩幻,道長轿腺,這世上最難降的妖魔是什么两嘴? 我笑而不...
    開封第一講書人閱讀 56,309評論 1 282
  • 正文 為了忘掉前任,我火速辦了婚禮族壳,結(jié)果婚禮上憔辫,老公的妹妹穿的比我還像新娘。我一直安慰自己仿荆,他們只是感情好贰您,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,381評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著拢操,像睡著了一般锦亦。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上令境,一...
    開封第一講書人閱讀 49,730評論 1 289
  • 那天杠园,我揣著相機(jī)與錄音,去河邊找鬼舔庶。 笑死抛蚁,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的栖茉。 我是一名探鬼主播篮绿,決...
    沈念sama閱讀 38,882評論 3 404
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼吕漂!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起尘应,我...
    開封第一講書人閱讀 37,643評論 0 266
  • 序言:老撾萬榮一對情侶失蹤惶凝,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后犬钢,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體苍鲜,經(jīng)...
    沈念sama閱讀 44,095評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,448評論 2 325
  • 正文 我和宋清朗相戀三年玷犹,在試婚紗的時候發(fā)現(xiàn)自己被綠了混滔。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,566評論 1 339
  • 序言:一個原本活蹦亂跳的男人離奇死亡歹颓,死狀恐怖坯屿,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情巍扛,我是刑警寧澤领跛,帶...
    沈念sama閱讀 34,253評論 4 328
  • 正文 年R本政府宣布,位于F島的核電站撤奸,受9級特大地震影響吠昭,放射性物質(zhì)發(fā)生泄漏喊括。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,829評論 3 312
  • 文/蒙蒙 一矢棚、第九天 我趴在偏房一處隱蔽的房頂上張望郑什。 院中可真熱鬧,春花似錦蒲肋、人聲如沸蹦误。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,715評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽强胰。三九已至,卻和暖如春妹沙,著一層夾襖步出監(jiān)牢的瞬間偶洋,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,945評論 1 264
  • 我被黑心中介騙來泰國打工距糖, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留玄窝,地道東北人。 一個月前我還...
    沈念sama閱讀 46,248評論 2 360
  • 正文 我出身青樓悍引,卻偏偏與公主長得像恩脂,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子趣斤,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,440評論 2 348

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