集成學(xué)習(xí)方法是一類先進(jìn)的機(jī)器學(xué)習(xí)方法,這類方法訓(xùn)練多個學(xué)習(xí)器并將它們結(jié)合起來解決一個問題,在實(shí)踐中獲得了巨大成功,并成為機(jī)器學(xué)習(xí)領(lǐng)域的“常青樹”,受到學(xué)術(shù)界和產(chǎn)業(yè)界的廣泛關(guān)注。
本文選自周志華教授專著《集成學(xué)習(xí):基礎(chǔ)與算法》,帶你進(jìn)一步了解集成學(xué)習(xí)方法及應(yīng)用。
集成學(xué)習(xí)方法
和傳統(tǒng)學(xué)習(xí)方法訓(xùn)練一個學(xué)習(xí)器不同,集成學(xué)習(xí)方法訓(xùn)練多個學(xué)習(xí)器并結(jié)合它們來解決一個問題。通常,集成學(xué)習(xí)也被稱為基于委員會的學(xué)習(xí)(committee-based learning)或多分類器系統(tǒng)(multiple classifier system)。
下圖為一個通用的集成學(xué)習(xí)框架。
一個集成由多個基學(xué)習(xí)器(base learner)構(gòu)成,而基學(xué)習(xí)器由基學(xué)習(xí)算法(base learning algorithm)在訓(xùn)練數(shù)據(jù)上訓(xùn)練獲得,它們可以是決策樹、神經(jīng)網(wǎng)絡(luò)或其他學(xué)習(xí)算法。
大多數(shù)集成學(xué)習(xí)方法使用同一種基學(xué)習(xí)算法產(chǎn)生同質(zhì)的基學(xué)習(xí)器,即相同種類的學(xué)習(xí)器,生成同質(zhì)集成(homogeneous ensemble);同時,也有一些方法使用多種學(xué)習(xí)算法訓(xùn)練不同種類的學(xué)習(xí)器,構(gòu)建異質(zhì)集成(heterogeneous ensemble)。在異質(zhì)集成中,由于沒有單一的基學(xué)習(xí)算法,相較于基學(xué)習(xí)器,人們更傾向于稱這些學(xué)習(xí)器為個體學(xué)習(xí)器(individual learner)或組件學(xué)習(xí)器(component learner)。
通常,集成具有比基學(xué)習(xí)器更強(qiáng)的泛化能力。實(shí)際上,集成學(xué)習(xí)方法之所以那么受關(guān)注,很大程度上是因?yàn)樗鼈兡軌虬驯入S機(jī)猜測稍好的弱學(xué)習(xí)器(weak learner)變成可以精確預(yù)測的強(qiáng)學(xué)習(xí)器(strong learner)。因此,在集成學(xué)習(xí)中基學(xué)習(xí)器也稱為弱學(xué)習(xí)器。
由于使用多個模型解決問題的思想在人類社會中有悠久的歷史,我們難以對集成學(xué)習(xí)方法的歷史進(jìn)行溯源。例如,作為科學(xué)研究的基本假設(shè),當(dāng)簡單假設(shè)和復(fù)雜假設(shè)都符合經(jīng)驗(yàn)觀測時,奧卡姆剃刀(Occam’s razor)準(zhǔn)則偏好簡單假設(shè);但早在此之前,希臘哲學(xué)家伊壁鳩魯(Epicurus,公元前 341—270)提出的多釋準(zhǔn)則(principle of multiple explanations) [Asmis,1984] 主張應(yīng)該保留和經(jīng)驗(yàn)觀測符合的多個假設(shè)。
集成學(xué)習(xí)領(lǐng)域的發(fā)展得益于三個方面的早期研究,即:分類器結(jié)合、弱分類器集成和混合專家模型(mixture of experts)。
分類器結(jié)合主要來自模式識別領(lǐng)域。這方面的研究關(guān)注強(qiáng)分類器,試圖設(shè)計強(qiáng)大的結(jié)合規(guī)則來獲取更強(qiáng)的結(jié)合分類器,在設(shè)計和使用不同的結(jié)合規(guī)則上積累深厚。
弱分類器集成方面的研究主要集中在機(jī)器學(xué)習(xí)領(lǐng)域。這方面的研究關(guān)注弱分類器,試圖設(shè)計強(qiáng)大的算法提升弱分類器的效果,產(chǎn)生了包括 AdaBoost 和 Bagging 等眾多著名的集成學(xué)習(xí)算法,并且在將弱學(xué)習(xí)器提升為強(qiáng)學(xué)習(xí)器方面有深入的理論理解。
混合專家模型的研究主要集中在神經(jīng)網(wǎng)絡(luò)領(lǐng)域。在此,人們通??紤]使用分而治之的策略來共同學(xué)習(xí)一組模型,并結(jié)合使用它們獲得一個總體解決方案。
20 世紀(jì) 90 年代以來,集成學(xué)習(xí)方法逐漸成為一個主要的學(xué)習(xí)范式,這主要得益于兩項先驅(qū)性工作。其中,[Hansen & Salamon,1990] 是實(shí)驗(yàn)方面的工 作, 如下圖,它指出一組分類器的集成經(jīng)常會產(chǎn)出比其中最優(yōu)個體分類 器更精準(zhǔn)的預(yù)測;
集成通常比最優(yōu)個體學(xué)習(xí)器更準(zhǔn)確,其中橫坐標(biāo)為噪聲水平(noise level),縱坐標(biāo)為分類錯誤率(error),三種對比方法分別為平均法(average)、最優(yōu)個體法(best single)和結(jié)合方法(combination)[Hansen & Salamon,1990]。
[Schapire,1990] 是理論方面的工作,它構(gòu)造性地證明了弱學(xué)習(xí)器可以被提升為強(qiáng)學(xué)習(xí)器。雖然我們所需的高精度學(xué)習(xí)器難以訓(xùn)練,但弱學(xué)習(xí)器在實(shí)踐中卻容易獲得,這個理論結(jié)果為使用集成學(xué)習(xí)方法獲得強(qiáng)學(xué)習(xí)器指明了方向。
一般來講,構(gòu)建集成有兩個步驟:首先產(chǎn)生基學(xué)習(xí)器,然后將它們結(jié)合起來。為了獲得一個好的集成,通常認(rèn)為每個基學(xué)習(xí)器應(yīng)該盡可能準(zhǔn)確,同時盡可能不同。
值得一提的是,構(gòu)建一個集成的計算代價未必會顯著高于構(gòu)建單一學(xué)習(xí)器。這是因?yàn)槭褂脝我粚W(xué)習(xí)器時,模型選擇和調(diào)參經(jīng)常會產(chǎn)生多個版本的模型,這與在集成學(xué)習(xí)中構(gòu)建多個基學(xué)習(xí)器的代價是相當(dāng)?shù)?;同時,由于結(jié)合策略一般比較簡單,結(jié)合多個基學(xué)習(xí)器通常只會花費(fèi)很低的計算代價。
集成學(xué)習(xí)方法的應(yīng)用
KDD Cup作為最著名的數(shù)據(jù)挖掘競賽,自 1997 年以來每年舉辦,吸引了全球大量數(shù)據(jù)挖掘隊伍參加。競賽包含多種多樣的實(shí)際任務(wù),如網(wǎng)絡(luò)入侵檢測(1999)、分子生物活性和蛋白質(zhì)位點(diǎn)預(yù)測(2001)、肺栓塞檢測(2006)、客戶關(guān)系管理(2009)、教育數(shù)據(jù)挖掘(2010)和音樂推薦(2011)等。在諸多機(jī)器學(xué)習(xí)技術(shù)中,集成學(xué)習(xí)方法獲得了高度的關(guān)注和廣泛的使用。例如,在連續(xù)三年的 KDD Cup 競賽中(2009—2011),獲獎的冠軍和亞軍都使用了集成學(xué)習(xí)方法。
另一項著名的賽事 Netflix Prize由 Netflix 公司舉辦。競賽任務(wù)是基于用戶的歷史偏好提升電影推薦的準(zhǔn)確度,如果參賽隊伍能在 Netflix 公司自己的算法基礎(chǔ)上提升 10% 的準(zhǔn)確度,就能夠獲取百萬美元大獎。2009 年 9 月 21 日,Nexflix 公司宣布,百萬美元大獎由 BellKor’s Pragmatic Chaos 隊獲得,他們的方案結(jié)合了因子模型、回歸模型、玻爾茲曼機(jī)、矩陣分解、k-近鄰等多種模型。另外還有一支隊伍取得了和獲獎隊伍相同的效果,但由于提交結(jié)果晚了 20 分鐘無緣大獎,他們同樣使用了集成學(xué)習(xí)方法,甚至使用 “The Ensemble” 作為隊名。
除了在競賽上獲得顯赫戰(zhàn)績,集成學(xué)習(xí)方法還被成功應(yīng)用到多種實(shí)際應(yīng)用中。實(shí)際上,在幾乎所有的機(jī)器學(xué)習(xí)應(yīng)用場景中都能發(fā)現(xiàn)它的身影。例如,計算機(jī)視覺的絕大部分分支,如目標(biāo)檢測、識別、跟蹤,都從集成學(xué)習(xí)方法中受益。
基于 AdaBoost 和級聯(lián)結(jié)構(gòu),Viola & Jones [2001,2004] 提出了一套通用的目標(biāo)檢測框架。Viola & Jones [2004] 顯示在一臺 466MHz 計算機(jī)上,人臉檢 測器僅需 0.067 秒就可以處理 384×288 的圖像,這幾乎比當(dāng)時最好的技術(shù)快 15倍,且具有基本相同的檢測精度。在隨后的十年間,這個框架被公認(rèn)為計算機(jī)視覺領(lǐng)域最重大的技術(shù)突破。
Huang et al. [2000] 設(shè)計了一套集成學(xué)習(xí)方法解決姿態(tài)無關(guān)的人臉識別問題。它的基本思路是使用特殊設(shè)計的模型集成多個特定視角的神經(jīng)網(wǎng)絡(luò)模型。和需要姿態(tài)信息作為輸入的傳統(tǒng)方法相比,這個方法不需要姿態(tài)信息,甚至能在輸出識別結(jié)果的同時輸出姿態(tài)信息。Huang et al. [2000] 發(fā)現(xiàn)這個方法的效果甚至優(yōu)于以完美姿態(tài)信息作為輸入的傳統(tǒng)方法。類似的方法后來被用于解決多視圖人臉檢測問題 [Li et al.,2001]。
目標(biāo)跟蹤的目的是在視頻的連續(xù)幀中對目標(biāo)對象進(jìn)行連續(xù)標(biāo)記。通過把目標(biāo)檢測看成二分類問題,并訓(xùn)練一個在線集成來區(qū)分目標(biāo)對象和背景,Avidan [2007] 提出了集成跟蹤(ensemble tracking)方法。該方法通過更新弱分類器來學(xué)習(xí)由于對象外觀和背景發(fā)生的變化。Avidan [2007] 發(fā)現(xiàn)這套方法能處理多種 具有不同大小目標(biāo)的不同類別視頻,并且運(yùn)行高效,能應(yīng)用于在線任務(wù)。
在計算機(jī)系統(tǒng)中,用戶行為會有不同的抽象層級,相關(guān)信息也會來自多個渠道,集成學(xué)習(xí)方法就非常適合于刻畫計算機(jī)安全問題 [Corona et al.,[2009]。Giacinto et al. [2003] 使用集成學(xué)習(xí)方法解決入侵檢測問題??紤]到有多種特征刻畫網(wǎng)絡(luò)連接,他們?yōu)槊恳环N特征構(gòu)建了一個集成,并將這些集成的輸出結(jié)合 起來作為最終結(jié)果。Giacinto et al. [2003] 發(fā)現(xiàn)在檢測未知類型的攻擊時,集成學(xué)習(xí)方法能夠獲得最優(yōu)的性能。此后,Giacinto et al. [2008] 提出了一種集成方法解決基于異常的入侵檢測問題,該方法能夠檢測出未知類型的入侵。
惡意代碼基本上可以分為三類:病毒、蠕蟲和木馬。通過給代碼一個合適的表示,Schultz et al. [2001] 提出了一種集成學(xué)習(xí)方法用以自動檢測以往未見的惡意代碼?;趯Υa的 n-gram 表示,Kolter & Maloof [2006] 發(fā)現(xiàn)增強(qiáng)決策樹(boosted decision tree)能夠獲得最優(yōu)的檢測效果,同時他們表示這種方法可以在操作系統(tǒng)中檢測未知類型的惡意代碼。
集成學(xué)習(xí)方法還被應(yīng)用于解決計算機(jī)輔助醫(yī)療診斷中的多種任務(wù),尤其用于提升診斷的可靠性。周志華等人設(shè)計了一種雙層集成架構(gòu)用于肺癌細(xì)胞檢測任務(wù) [Zhou et al.,2002a],其中當(dāng)且僅當(dāng)?shù)谝粚又械乃袀€體學(xué)習(xí)器都診斷為“良性”時才會預(yù)測為“良性”,否則第二層會在“良性”和各種不同的癌癥類型間進(jìn)行預(yù)測。他們發(fā)現(xiàn)雙層集成方法能同時獲得高檢出率和低假陽性率。
對于老年癡呆癥的早期診斷,以往的方法通常僅考慮來自腦電波的單信道數(shù)據(jù)。Polikar et al. [2008] 提出了一種集成學(xué)習(xí)方法來利用多信道數(shù)據(jù);在此方法中,個體學(xué)習(xí)器基于來自不同電極、不同刺激和不同頻率的數(shù)據(jù)進(jìn)行訓(xùn)練,同時它 們的輸出被結(jié)合起來產(chǎn)生最終預(yù)測結(jié)果。
除了計算機(jī)視覺、安全和輔助診斷,集成學(xué)習(xí)方法還被應(yīng)用到多個其他領(lǐng)域和任務(wù)中。例如,信用卡欺詐檢測 [Chan et al.,1999;Panigrahi et al.,2009],破產(chǎn)預(yù)測 [West et al.,2005],蛋白質(zhì)結(jié)構(gòu)分類 [Tan et al.,2003;Shen & Chou,2006],種群分布預(yù)測 [Araujo & New,2007],天氣預(yù)報 [Maqsood et al.,2004;Gneiting & Raftery,2005],電力負(fù)載預(yù)測 [Taylor & Buizza,2002], 航空發(fā)動機(jī)缺陷檢測 [Goebel et al.,2000;Yan & Xue,2008],音樂風(fēng)格和藝 術(shù)家識別 [Bergstra et al.,2006] 等。
評論
查看更多