0
本文作者: 夏睿 | 2017-03-09 09:29 |
雷鋒網(wǎng)[AI科技評(píng)論]按:本文根據(jù)王立威教授在中國(guó)人工智能學(xué)會(huì)AIDL第二期人工智能前沿講習(xí)班*機(jī)器學(xué)習(xí)前沿所作報(bào)告《機(jī)器學(xué)習(xí)理論:回顧與展望》編輯整理而來(lái),雷鋒網(wǎng)在未改變?cè)獾幕A(chǔ)上略作了刪減。
王立威
王立威,在北京大學(xué)教授主要研究領(lǐng)域?yàn)闄C(jī)器學(xué)習(xí)。在包括COLT, NIPS,JMLR, PAMI等權(quán)威會(huì)議期刊發(fā)表論文60余篇。2010年入選 AI’s 10 to Watch,是首位獲得該獎(jiǎng)項(xiàng)的亞洲學(xué)者。2012年獲得首屆國(guó)家自然科學(xué)基金優(yōu)秀青年基金,新世紀(jì)優(yōu)秀人才。任 NIPS 等權(quán)威會(huì)議 Area Chair,和多家學(xué)術(shù)期刊編委。以下為王立威教授所做的現(xiàn)場(chǎng)演講的第三部分,主要闡述了Margin Theory,算法穩(wěn)定性等相關(guān)問(wèn)題,并對(duì)深度學(xué)習(xí)算法展開(kāi)了一些討論。
接下來(lái)給大家介紹機(jī)器學(xué)習(xí)中第二個(gè)比較重要的理論——Margin Theory。
VC Theory和算法關(guān)系不大,它刻畫(huà)的是集合的復(fù)雜程度;
Margin Theory則不同,它牽扯到很多算法,后面我介紹的Margin Theory就是完全在刻畫(huà)算法。所以大家要理解,機(jī)器學(xué)習(xí)理論的發(fā)展,是先從刻畫(huà)一些結(jié)構(gòu)的性質(zhì),再逐漸變化到刻畫(huà)算法本身。
我認(rèn)為當(dāng)前,尤其對(duì)深度學(xué)習(xí)來(lái)說(shuō),最有價(jià)值的學(xué)習(xí)理論一定是在刻畫(huà)深度學(xué)習(xí)算法本身的性質(zhì)。當(dāng)然你的模型復(fù)雜程度也有用,但那可能不是最主要的。
Margin Theory大家可能都聽(tīng)說(shuō)過(guò),像SVM、Boosting這樣的方法都包含有Large Margin的概念。它到底是什么含義呢?
Margin Theory在SVM中怎么用大家都比較熟悉了,想象一下:
比如空間中有正負(fù)兩類(lèi)點(diǎn),現(xiàn)在要找一條線(xiàn)把這兩類(lèi)點(diǎn)分開(kāi)。需要找一種個(gè)分法使得這兩類(lèi)點(diǎn)分完了以后,離分類(lèi)面的間距越大越好,而這個(gè)間距就叫Margin。
而對(duì)于Boosting來(lái)講,也有類(lèi)似的概念。我前面也講到,Boosting就是由許多基本分類(lèi)器把線(xiàn)性組合起來(lái)而得到的一個(gè)最終結(jié)果。
比如你組合了100個(gè)分類(lèi)器,你要看這100個(gè)分類(lèi)器里面究竟有多少是把這個(gè)數(shù)據(jù)看成正的點(diǎn),有多少是看成負(fù)的。
如果50%判成正的、50%判成負(fù)的,實(shí)際上這個(gè)判別結(jié)果對(duì)數(shù)據(jù)就沒(méi)有Margin,Margin就是0;
如果百分之百的判成正的,Margin就非常大。
所以大家可以領(lǐng)會(huì)一下,Boosting的Margin實(shí)際上體現(xiàn)了這個(gè)Boosting所用的基本分類(lèi)器對(duì)數(shù)據(jù)分類(lèi)結(jié)果的置信度(confidence)。如果百分之百都分成正的這一類(lèi),說(shuō)明這個(gè)結(jié)果的置信度非常高;如果接近50%,則說(shuō)明置信度非常低。所以,這個(gè)置信度就是用Margin來(lái)表示的,它實(shí)際上對(duì)泛化能力起到了非常重要的影響。
大家最開(kāi)始用VC Theory研究Boosting的時(shí)候,理論結(jié)果肯定是綜合越多的基本分類(lèi)器,泛化效果越差。但實(shí)際上實(shí)驗(yàn)結(jié)果卻是,綜合了幾千個(gè)基本分類(lèi)器之后,泛化性能不僅沒(méi)有變差,還在不斷變好。這看起來(lái)就很奇怪,因此也引導(dǎo)人們?nèi)ニ伎?,不僅要考慮模型的復(fù)雜程度,還要考慮算法本身是否也對(duì)泛化產(chǎn)生影響。
Margin既可以對(duì)SVM刻畫(huà)泛化,也可以對(duì)Boosting刻畫(huà)泛化。不過(guò)我們先把所有這些理論都忘掉,單純從直觀的角度來(lái)思考。
現(xiàn)在大家有這樣兩種情形大家來(lái)比較一下:
第一種情形,我現(xiàn)在有一個(gè)分類(lèi)器,它對(duì)絕大部分的數(shù)據(jù)都有一個(gè)很大的置信度,要么是全部分成正類(lèi),要么全部分成負(fù)類(lèi)。用Margin語(yǔ)言來(lái)說(shuō),就是對(duì)于絕大部分?jǐn)?shù)據(jù)Margin都很大;
第二種情形,對(duì)于絕大部分?jǐn)?shù)據(jù)來(lái)說(shuō)Margin都很小,基本上都是只比50%稍微多一點(diǎn)。
這兩種分類(lèi)器雖然差別很大,但是我們假定這兩種情況在訓(xùn)練數(shù)據(jù)上的訓(xùn)練錯(cuò)誤率是完全相同的。
訓(xùn)練錯(cuò)誤率只能表示把數(shù)據(jù)分對(duì)還是分錯(cuò)了,而置信度實(shí)際上則代表了具體分類(lèi)值的大小。大家想想,在訓(xùn)練錯(cuò)誤率完全相同的前提下,是置信度大的更可能有強(qiáng)泛化能力,還是說(shuō)置信度小的可能性更大?即使從非常直覺(jué)的角度,不用通過(guò)任何理論你也能知道,一定是置信度大的泛化能力更大。Margin Theory就是把剛才那個(gè)很直觀的想法建立在精確的數(shù)學(xué)基礎(chǔ)上,再用嚴(yán)密的語(yǔ)言給表述出來(lái)。
對(duì)數(shù)學(xué)很感興趣的同學(xué)可以去看里面數(shù)學(xué)具體的證明;如果對(duì)這個(gè)沒(méi)有興趣的,就理解我剛才講的。就是說(shuō)對(duì)于分類(lèi)結(jié)果,千萬(wàn)不要只看訓(xùn)練錯(cuò)誤率這么一個(gè)簡(jiǎn)單的數(shù)字,你要關(guān)注Margin。Margin代表了置信度,而置信度對(duì)泛化能力有相當(dāng)重大的作用。
我和周志華老師一起合作過(guò)很多工作,特別是在解釋Boosting這方面。這大概是將近十年前做的工作。后來(lái)周老師和他的學(xué)生又做了很多更深入、更精致的一些工作。所以如果大家感興趣的話(huà)可以參閱一下這方面的論文。
VC Theory是宏觀的,它是對(duì)問(wèn)題的一種最簡(jiǎn)單的表述,只考慮算法對(duì)每個(gè)數(shù)據(jù)判對(duì)還是判錯(cuò)和模型的復(fù)雜程度,用這兩點(diǎn)來(lái)刻畫(huà)泛化。
而Margin Theory告訴大家要更關(guān)注算法的信息,算法會(huì)輸出很多置信度方面的信息。
其實(shí)在今天的深度學(xué)習(xí)里面,同樣有這個(gè)問(wèn)題: 深度學(xué)習(xí)最后輸出的不光是對(duì)錯(cuò),而是輸出了一個(gè)實(shí)數(shù)值,這個(gè)值本身含有一定的信息量,這個(gè)值的大小在某種程度上其實(shí)也反映了置信度的大小。作為研究?jī)?nèi)容大家可以去探討一下,這個(gè)值對(duì)于深度學(xué)習(xí)的泛化能力有什么樣作用。
剛才我們講了Margin Theory對(duì)SVM、對(duì)Boosting都是適用的,大家還可以探討一下兩者之間的關(guān)系。
下面是一個(gè)關(guān)于Boosting針對(duì)具體的Margin理論給出的數(shù)學(xué)的表達(dá)式,這個(gè)表達(dá)式比較復(fù)雜的,最初是由Boosting的提出者Freund和Schapire提出來(lái)的。這個(gè)里面其實(shí)還有很多的故事。
簡(jiǎn)單說(shuō)一下這里面的故事。
Boosting其實(shí)很有趣,大家如果回顧一下機(jī)器學(xué)習(xí)的發(fā)展歷史,你會(huì)發(fā)現(xiàn)歷史總是在不斷重復(fù)的發(fā)生。大概在1995、1996年,人們提出了adaBoost算法。這個(gè)算法提出來(lái)之后大家覺(jué)得,怎么這么簡(jiǎn)單的一個(gè)組合就能大幅度提升性能了呢?這看起來(lái)就像魔術(shù),像今天的深度學(xué)習(xí)一樣。它的方法其實(shí)就是把基本的分類(lèi)器組合起來(lái)?,F(xiàn)在沒(méi)有人能夠解釋為什么深度學(xué)習(xí)在實(shí)際中就是有這么好的效果,而當(dāng)年adaBoost算法剛剛出來(lái)的時(shí)候也是如此。不過(guò)很快,adaBoost的提出者Freund和Schapire他們兩個(gè)人就給出了理論Margin Theory,從數(shù)學(xué)上證明其原因是Boosting能夠得到一個(gè)分類(lèi)器,而它的Margin很大。
但是不久之后,隨機(jī)森林和bagging的提出者Leo Breiman又提出一個(gè)理論,叫Minimum Margin。這個(gè)理論在定量方面做得更好,但是在實(shí)驗(yàn)結(jié)果上卻和理論恰好相反——理論上更好的Boosting算法,反倒沒(méi)有理論上不太好的Boosting算法的實(shí)驗(yàn)結(jié)果表現(xiàn)得好。所以大家能理解了,這個(gè)時(shí)候的實(shí)驗(yàn)結(jié)果和理論預(yù)測(cè)是完全矛盾的,那到底應(yīng)該是相信實(shí)驗(yàn)還是相信理論呢?這時(shí)我們就必須本著實(shí)事求是的精神,百分之百的尊重實(shí)驗(yàn)結(jié)果:肯定是理論上出了什么問(wèn)題。所以Breiman得出一個(gè)結(jié)論:Margin Theory肯定是有極大問(wèn)題的,它不能解釋實(shí)際的現(xiàn)象。
很多年以后,通過(guò)學(xué)者們,包括我和周志華老師,在這方面做的一些研究,我們發(fā)現(xiàn)這個(gè)理論其實(shí)并沒(méi)有問(wèn)題,問(wèn)題在于之前的理論在定量的意義上沒(méi)有做到最好。你把定量做的更加深入、更加精細(xì)之后,就會(huì)發(fā)現(xiàn)Margin的理論和試驗(yàn)觀測(cè)就統(tǒng)一了。所以Boosting發(fā)展歷程的故事對(duì)我個(gè)人的一個(gè)啟發(fā)是,其實(shí)有的時(shí)候算法的提出是會(huì)比理論超前的,adaBoosting就是一個(gè)很典型的例子。但是不要著急,我們慢慢的深入研究它、理解它,我相信對(duì)深度學(xué)習(xí)是一樣的,應(yīng)該在不久的將來(lái),我們從理論上會(huì)對(duì)深度學(xué)習(xí)有一個(gè)更深刻的認(rèn)識(shí)。
關(guān)于王教授及其他教授的主題報(bào)告,敬請(qǐng)期待雷鋒網(wǎng)的后續(xù)報(bào)道。
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見(jiàn)轉(zhuǎn)載須知。