當前位置:
首頁 > 科技 > 專訪MIT教授Tomaso Poggio:表達、優化與泛化——數學視角里的深度學習

專訪MIT教授Tomaso Poggio:表達、優化與泛化——數學視角里的深度學習


機器之心原創


作者:邱陸陸


  



三月,受騰訊 AI Lab 學術論壇邀請,機器之心在深圳採訪了深度學習理論研究著名學者 Tomaso Poggio。他以平直易懂的語言介紹了自己的「長篇系列工作」,也談了談他對理論指導實踐以及仿生學指導深度學習演算法發展等觀點的看法。






Tomaso Poggio 的知名度,有相當一部分來源於他異常出色的導師身份:DeepMind 創始人及 CEO Demis Hassabis 和 Mobileye 創始人及 CTO Amnon Shashua,都是他的學生。這兩家公司一個創造出了擊敗了圍棋世界冠軍、重新定義這個項目的 AlphaGo,另一個將輔助駕駛系統裝進了全球超過 1500 萬輛車裡,製造了世界上第一款能在終端進行深度神經網路推理的量產車型的系統。Poggio 本人不僅鼓勵他的學生們以創業的形式將深度學習帶進現實世界,也親身投入指導了這兩家公司的早期創立。




然而在學術界,Poggio 的知名度更多來自於他的深度學習理論研究。他的論文非常好辨認——命名方式簡單粗暴如同長篇系列小說的就是他,《深度學習理論 II》,《深度學習理論 IIIb》…… 








這個編號系統來自他對深度學習理論問題進行的拆分:在 Poggio 看來,深度學習理論研究問題分為三類:






  • 第一類是表達(representation)問題:為什麼深層網路比淺層網路的表達能力更好?



  • 第二類是優化(optimization)問題:為什麼 SGD 能找到很好的極小值,好的極小值有什麼特點?



  • 第三類是 泛化(generalization)問題:為什麼參數比數據還多,仍然可以泛化、不過擬合?




對於每一類問題,他都嘗試以應用數學工具為基礎,通過舉出能夠用數學語言進行描述的例子然後給出解釋的方式,用理論推導(也輔以一定的實驗驗證)來說明自己的觀點。




深層網路表達組合函數的超強能力




早在 2002 年,Poggio 和著名數學家 Steve Smale 就合著了一篇論文 [1],總結了那些經典學習理論,它們的共同點是,都相當於具有單一隱藏層的網路。Poggio 是這樣解釋他研究「表達」的初衷:「當時我們就提出了一個問題:為什麼大腦具有很多層?為什麼當傳統理論告訴我們使用單層網路的時候,大腦的視覺皮層其實在用許多層解決這一問題?」



毫無疑問,目睹了深度網路的成功後,同樣的問題再一次被擺上了檯面。




Poggio 認為,事實上無論是深層網路還是單層網路,都能相當不錯地近似任意連續函數——這也是上世紀 80 年代的學者們通常忽略多層網路而採用單層網路的原因。但是,問題的核心在於表達清楚一個函數所需要的維度:單層網路需要的單元數非常多,甚至比宇宙中的原子數還要多。這就是數學上所說的「維度災難」:

參數的個數需要是方程維度的指數倍




為了跳出維度災難,過去的數學家嘗試假設方程的光滑性:他們發現,維度災難取決於「維度除以光滑性」。而深度學習給出了針對一類特定函數的獨特方法:如果近似的對象是一個組合函數,換言之,是一個函數嵌套函數的大函數,那麼

深度網路擬合它所需的單元數和函數的維度是線性關係

。換言之,無論維度多大,深度網路都能夠擺脫維度災難來擬合這個函數。




現在,能夠被深度神經網路很好地擬合的數據都具有組合函數的特點。以圖像為例,想要分類一張圖像,並不需要同時觀察左上角和右下角兩個相距甚遠的像素,只需要觀察每一小塊,再將它們組合在一起。有了這種「組合」(compositional)的性質,當卷積神經網路被用來刻畫圖像,甚至不需要參數共享的幫助,就能輕易擺脫維度災難。




而那些現在還不能被神經網路刻畫得很好的數據,通常都不是組合函數。但是知道「組合函數和神經網路很配」還遠遠不夠,Poggio 說,「作為計算機科學學者,甚至作為數學家,我們能不能進一步解釋一下組合函數,給出一些比『它是組合的』更明確的性質,從而更好地理解神經網路的工作機制。這對於我來說也是一個非常有趣的、希望更多研究者投入精力的開放問題。」




優化的致勝:取之不盡的參數和性質漂亮的 SGD




解線性方程組的時候,如果未知量的數量大於方程數,我們將收穫很多解。




拿神經網路處理數據的時候,以圖像舉例子,包含 6 萬張訓練數據的 CIFAR 數據集,通常會用一個包含數十萬乃至上百萬參數的神經網路進行處理——一個教科書般的過參數化(overparameterization)例子。




將神經網路近似看成一個多項式——把每個具有非線性的小單元都用一個單變數多項式替代,得到一個由數十萬乃至上百萬多項式組成的大多項式,此時,想要在 CIFAR 上獲得 0 訓練誤差,就轉化成了一個解 6 萬個線性方程的問題。根據貝祖定理(Bézout"s theorem),此時的解的數量比宇宙中的原子數量還多。另外,參數多於數據量帶來了「退化」(degenerate)性質:每一個解都對應著一個無限大的解集。



因此,

過參數化意味著,神經網路有無限多個退化的全局最優解,它們在損失空間里形成平坦的谷地




而眾所周知,隨機梯度下降(SGD)的特性就是會以較高的概率傾向於停留在退化的谷地里,即,停留在全局最優解上。二者的結合,就讓神經網路的優化變得輕鬆:確定有全局最優、有很多,它們的特徵明顯,很容易被優化演算法找到。




就算過擬合也能泛化:分類問題與交叉熵的絕妙搭配




過參數化是優化的福音,同時也是泛化的噩夢。在經典機器學習里,隨著優化進行,測試錯誤率會呈現一條先減後增的 U 型曲線,尤其是模型規模與數據規模不匹配的時候,後半段的過擬合是十分可怕的。




然而在深度學習里,泛化錯誤率卻經常呈現一個「下降,然後停住不動」的態勢,即使不是零,也能保持在一個相當低的水準上。




Poggio 對此的解釋是:這是深度學習所進行的任務與所用的損失函數之間的特定組合帶來的美好化學反應。




具體來說,就是大多數神經網路都是用來解決分類問題(而不是回歸問題)的,錯誤率通常以 0-1 損失計算,而目標函數卻通常是交叉熵。




這種差異是因為 0-1 損失函數是好的效果衡量指標,卻並不適合做優化的目標函數。拿手寫數字分類器舉例,神經網路分類器最後是通過 softmax 轉 hardmax 來選擇分類類別的,這也就意味著,即使模型認為一張「1」的圖像是「1」的概率只有 30%,但只要這 30% 是所有 10 個可能性中最高的,模型仍然會將這張圖像分類為「1」。一個信心水平只有 30% 的模型,即使分類正確,也遠稱不上一個好模型,需要繼續優化。但是,如果選用 0-1 損失函數作為目標函數,只要分對了,該樣本的損失就是 0 了,沒辦法計算梯度,也自然沒辦法進行反向傳播來優化參數。




選用交叉熵做損失函數就沒有這個煩惱,你可以一直優化到信心水平無限接近 100%。




而交叉熵函數與 0-1 損失這對組合的奇妙之處在於,即使

測試集上的交叉熵過擬合了,分類誤差也不會過擬合




幾個月前,芝加哥大學的 Srebro 組的工作 [2] 證明了:對於單層線性網路來說,如果數據集雜訊較小、可分,那麼即使交叉熵過擬合了,分類誤差也不會過擬合。




「這是一個非常優美的,角度獨特的工作。在此之上,我們用微分方程動力系統理論的工具證明了,在全局最小值附近,深度網路表現得就像一個線性網路。因此,我們可以將 Srebro 工作的結果用在深度學習上,說明即使神經網路分類器的交叉熵過擬合了,分類器本身也不會過擬合。」




交叉熵的這一性質是最小平方誤差(least square error)等其他損失函數所不具備的,擁有這一性質的最簡單的損失函數是指數誤差(exponential loss)。而當我詢問究竟是交叉熵的哪些特質讓它擁有了如此特別的性質,是否和它的不對稱性有關,Poggio 表示這仍然是一個有待討論的問題。




以上就是 Poggio 的「深度學習理論三部曲」的內容概要了,詳情請參閱 [3-7]。




除了他的工作本身,我們也和他聊了一些關於深度學習理論工作的其他問題:




平坦的極小值意味著好的泛化能力嗎?一個觀點轉變




關於極小值的形狀與泛化之間的關係,Poggio 說,他的觀點轉變了:「確實有學者在工作中表示,平坦是有利於泛化的。大概一年多以前我也曾經發表過類似的觀點,但是我現在不再這麼認為了。」




在關於優化的研究中,Poggio 證明了平坦確實會讓優化過程變得容易,平坦的最小值也有更大可能是全局最小值。「但是我不覺得它和泛化之間有直接的聯繫,起碼現在沒有。如今對於泛化能力的研究,依賴於分類問題、依賴於損失函數的選擇,卻不依賴於平坦。Bengio 兄弟兩人都參與的一篇論文就證明了,陡峭的極小值也是可以泛化的 [8],因為你完全可以通過改變不同層的參數,在不改變網路的輸入輸出關係的前提下,讓一個平坦的極小值變得陡峭。」




另外,他也認為完全平坦的極小值是不存在的,起碼對於現在這種以多項式網路為基礎添加非線性的神經網路來說,是不存在的。「我們都知道,一旦多項式在一個解集上都為 0,那麼這個多項式處處為 0,因此,我不覺得存在完全平坦的極小值了。」




對應用側的建議:小心過擬合




致力於應用深度學習演算法的工程師們最經常對深度學習的理論研究者提出的一個問題就是:「你的工作很棒,但請問這能如何幫助我訓練我的模型?」了解更多的理論知識當然具有啟發意義,但是理論研究範圍廣闊且往往十分艱深,究竟哪些理論研究有助於應用開發者,應用開發者應該了解理論到何種程度?




機器學習里的無免費午餐定理(No Free Lunch Theorem),也就是 Wolpert 在 1996 和 1997 年發表的兩篇著名論文里 [9, 10] 所提到的,學習演算法之間沒有先驗區別,對於任何兩個演算法 A 和 B 來說,都存在一樣多的兩堆目標,對一堆目標來說 A 的檢驗誤差比 B 高,對另一堆來說 B 的檢驗誤差比 A 高。Poggio 援引了無免費午餐定理到理論研究中:不存在一個適用於所有問題的演算法,類似地,也很難給出一個普適性正確的理論陳述。




「理論通常給出的是通常情況或最壞情況的分析,他們給出建議,告訴你應該做/不做什麼,以避免最壞情況的發生。但是理論無法告訴你,對於一個特定案例來說,最佳方案是什麼。」




而他對今天的深度學習應用者的建議是,小心過擬合。




「在過去幾十年的機器學習發展史中,我們學到的一課是,如果你的數據集沒有大到排除過擬合可能性,那麼在一個特定數據集上的最佳方法通常是過擬合的、無法擴展到其他數據集上的。並不是說學者們『偷看』了驗證集測試集,而是當一個社區的學者都在用不同的方法進行試錯,那麼一段時間後的最佳做法通常是過擬合了這個特定數據集的。」




「我曾經是一名物理學研究者,在我的學生時代,最普遍的經驗法則是,如果你想建立一個參數為 n 的模型,那麼至少要有規模為 2n 的數據,如果你想從統計的角度得出一些結論,更為推薦的數據規模是 10n。然而現在的深度學習研究者傾向於對所有問題都套用有數百萬參數的模型。我們得出的『深度學習模型不受過擬合困擾』的論證只適用於特定問題(分類)、且要求數據集質量良好(可分),因此深度學習研究者應該對過擬合持有更謹慎的態度。」




如何看待先驗?理論研究能夠告訴我們哪些關於先驗的結論呢?




人是很好的學習者,既不需要數百萬數據,也不需要數據有標籤,而這部分取決於我們與生俱來的、寫在基因里的先驗知識。然而,關於先天與後天(nature versus nurture)的爭論從未停止。




「模型需要多少先驗,是一個不能一概而論的、沒有簡單答案的問題。」Poggio 總結道,「理論研究的目的是找到能夠做出特定預測所需的先驗的下限。」




他以回歸問題舉例,「對於給定一些數據點來恢復一條曲線的任務來說,如果你什麼都不告訴我,那麼除非給我曲線上的所有點,否則我基本上什麼也做不了。

連續

是一個必須的先驗,但這還不夠。我起碼需要類似

平滑

(smothness)這樣的性質,才能進行預測。而最重要的還是數據量,樣本複雜度和先驗之間,存在一個權衡取捨的關係。」




深度學習能從人腦的學習過程中學到什麼?




三十年前,「深度學習之父」Geoffrey Hinton 用利於優化且計算高效的「反向傳播」將整個領域帶入了高速發展,而近年來,他則致力於尋找比反向傳播更有可能在仿生學(bionics)上成立的結構。




MIT 對於深度學習的研究素來與腦神經科學結合緊密,Poggio 是如何看待這一問題的呢?




「我認為從生物學上完成反向傳播並非完全不可能(not impossible),只能說,根據我們現在對神經元以及信號傳遞機制的了解,可能性不大(unlikely)。然而我認為真正不可能的是對所有樣本的標註。」




「因此一個有趣的研究課題是,大腦是如何『繞開』標註的。例如,一個有趣的假設是,我們的視覺系統是以學習給圖像『填色』來進行預訓練的,它接收到了顏色信息,卻只給其他視覺皮層以黑白的灰度信息,以此訓練一個能夠預測顏色的網路。在這個設定下,你不需要『神諭』(oracle)來告訴你真實的顏色是什麼,你是有這部分信息的,只不過通過把它藏起來而建立了一個可以進行優化的模型。」




「類似的假設還有,大腦在不斷地預測下一幀影像並進行優化等等。而能夠預測顏色的、預測下一幀影像的視覺系統,是不是能夠更好地進行其他視覺任務呢?是不是能夠利用更少的數據就能學會識別物體呢?這都是有趣的開放問題,而且一旦得到答案後,將對深度學習產生巨大的推動。」






Reference




1. Cucker, F., & Smale, S. (2002). On the mathematical foundations of learning. Bulletin of the American mathematical society, 39(1), 1-49.


2. Neyshabur, B., Tomioka, R., Salakhutdinov, R., & Srebro, N. (2017). Geometry of optimization and implicit regularization in deep learning. arXiv preprint arXiv:1705.03071.


3. Poggio, T., Mhaskar, H., Rosasco, L., Miranda, B., & Liao, Q. (2017). Why and when can deep-but not shallow-networks avoid the curse of dimensionality: A review. International Journal of Automation and Computing, 14(5), 503-519.


4. Liao, Q., & Poggio, T. (2017). Theory of Deep Learning II: Landscape of the Empirical Risk in Deep Learning. arXiv preprint arXiv:1703.09833.


5. Zhang, C., Liao, Q., Rakhlin, A., Miranda, B., Golowich, N., & Poggio, T. (2018). Theory of Deep Learning IIb: Optimization Properties of SGD. arXiv preprint arXiv:1801.02254.


6. Poggio, T., Kawaguchi, K., Liao, Q., Miranda, B., Rosasco, L., Boix, X., ... & Mhaskar, H. (2017). Theory of Deep Learning III: explaining the non-overfitting puzzle. arXiv preprint arXiv:1801.00173.


7. Zhang, C., Liao, Q., Rakhlin, A., Sridharan, K., Miranda, B., Golowich, N., & Poggio, T. (2017). Theory of deep learning iii: Generalization properties of sgd. Center for Brains, Minds and Machines (CBMM).


8. Dinh, L., Pascanu, R., Bengio, S., & Bengio, Y. (2017). Sharp minima can generalize for deep nets. arXiv preprint arXiv:1703.04933.


9. Wolpert, D. H. (1996). The lack of a priori distinctions between learning algorithms. Neural computation, 8(7), 1341-1390.


10. Wolpert, D. H., & Macready, W. G. (1997). No free lunch theorems for optimization. IEEE transactions on evolutionary computation, 1(1), 67-82.







本文為機器之心原創,

轉載請聯繫本公眾號獲得授權


?------------------------------------------------


加入機器之心(全職記者/實習生):hr@jiqizhixin.com


投稿或尋求報道:editor@jiqizhixin.com


廣告&商務合作:bd@jiqizhixin.com

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 機器之心 的精彩文章:

302頁吳恩達Deeplearning.ai課程筆記,詳記基礎知識與作業代碼
從論文到測試:Facebook Detectron開源項目初探

TAG:機器之心 |