如何評價 ICLR 2017 中關於 Rethinking Generalization 的那篇文章?

文章鏈接見[1611.03530] Understanding deep learning requires rethinking generalization

該文是ICLR 2017的oral representation,然而各路研究人員對此文的評價兩極分化極其嚴重。究竟這是一篇被過分高估的工作,還是這篇文章有它重要的意義?

ICLR 2017官網消息:該論文被評為Best Paper,共有3篇文章獲此殊榮。


這篇文章揭示了很多有意思的現象,所以算是不錯的文章。但是文章的研究並不夠深入。文章只是揭示了現象而已,並沒有指出本質所在。甚至揭示的現象也是有待商榷的。

比如:

深度神經網路的容量足夠記住所有訓練數據

文章里用的圖像的數據集,是有上述這種現象。但是這是否能推廣?我們組裡有人試了MNIST(手寫數字識別)數據集+random labels,結果並不收斂。如果我們組的哥們實驗是正確的話,說明文章得出的結論並不正確。

  • 同樣是貓的圖片,但是它們之間的區別可以很大,或許這是random label能被神經網路擬合的原因。
  • 而在MNIST數據集,同樣是數字「2」的圖片之間區別非常小。如果用random label,神經網路未必能擬合。

上面是我們的推測而已。如果我們這種推測是對的,那麼文章的結論

深度神經網路的容量足夠記住所有訓練數據

只在有些數據集上有效。 我覺得,用random label,神經網路只是學出了一個曲面非常怪異的函數而已。在MNIST這樣的數據集上,學不出這種函數。


(更新)我仔細思考一下,感覺這個paper指出的問題確實是存在的:神經網路明明已經可以memorize所有noise label,為什麼在訓練一個數據集的時候還會有generalization performance呢?傳統的PAC learning theory並沒有解釋為什麼,而作者認為研究一個深度學習的泛化能力要結合這個問題的優化演算法一起研究,否則就沒法解釋它在實際應用中良好的泛化能力。從這個角度看,它能拿ICLR best paper是因為這個story line和傳統做神經網路的人是相同的philosophy。相比之下,ML圈做學習理論的人和做優化的人還是比較割裂的:做學習理論不關心模型是怎樣被優化的而是直接假設存在多項式演算法,而做優化的人則不關心泛化能力。


但是我原答案里的argument依然是成立的,我直覺上認為這個現象對很多非ERM的機器學習模型都是存在的,比如決策樹,association rule等。


----原答案----


湊個熱鬧,我就說說這篇文章claim的幾點contribution:

1. Randomization tests: Deep neural networks easily fit random labels. 但把DNN換成decision tree也有幾乎一樣的結論呦,為什麼大家非要做DNN呢?

2. The role of explicit regularization : Explicit regularization may improve generalization performance, but is neither necessary nor by itself sufficient for controlling generalization error. 這件事似乎大家只要做non-convex optimization都默認知道呀。另外我覺得Explicit regularization的目的並不是提升generalization performance而是做為一種對數據分布的先驗顯示的作用在模型上(或從Bayes角度看),如果這個先驗是錯誤的,自然不會提升performance(wrong model generalizes poorly)。

3. Finite sample expressivity :這個結果比較有意思,但是並不難證明,而且只是把Universal Approximation Theorem在一個特定的network下實例化了。另外,類似的結果做decision tree也是可以做到的。

4. The role of implicit regularization. :最後做了線性模型的SGD,感覺意義不大,更大程度就是為了把paper的故事圓上。其實哪怕作者在只有線性層的multilayer network上做sgd的文章都比做線性模型有意思,線性模型的sgd真得不要有太多工作啊。


按照作者同樣的思路,我感覺我下半年可以寫一篇幾乎類似的文章叫: UNDERSTANDING DEEP DECISION TREE REQUIRES RETHINKING GENERALIZATION

contribution都想好了:

1. Deep decision tree easily fit random labels : Wow

2. The role of split criterion : not sufficient

3. Finite sample expressivity : yet another case of UAT

4. The role of ensembling shadow trees : promising, deserving future studies

而且還投ICLR!


更新:剛發現這篇論文被評為ICLR"17 Best Paper Award (Monday April 24, 2017).
謝邀。我覺得吧,往往有爭議的文章,激發大家討論的文章,才是有意思的文章(好與壞本身太主觀)。深度學習越來越演變成了門實驗科學,本身跟煉丹差不多(笑),有人云亦云,也有意外和反直覺,裡面很多東西很難用理論解釋清楚。比如說之前那篇蠻有名的CVPR"15 oral論文 Deep Neural Networks are Easily Fooled(https://arxiv.org/pdf/1412.1897.pdf),也是偏實驗說理,得到了個反直覺的結論,對我們理解CNN的運作原理有很大幫助。我自己是蠻喜歡基於empirical的實驗結果說理的工作。ICLR"17還有篇類似的論文ADVERSARIAL EXAMPLES IN THE PHYSICAL WORLD(https://openreview.net/pdf?id=S1OufnIlx),可惜沒被接收,但是論文本身也激起了挺多有意思的討論(Thoughts on "Adversarial examples in the physical world")。

這篇文章也是類似的路子,蠻值得一讀,而且讀起來輕鬆愉快。論文利用corrupted label和shuffled pixel等對比實驗,測試了幾種不同的regularization techniques, 諸如data augmentation, weight decay, dropout, bnorm等,然而發現對深度模型的"overfitting"的問題效果都不好。隨後作者進一步討論neural network expressivity的問題,然後給了個簡化的線性模型,證明regularization同樣不能改進線性模型的泛化能力。這一段分析非常有意思,這跟Andrej Karpathy的一篇博客Breaking Linear Classifier on ImageNet (Breaking Linear Classifiers on ImageNet),有異曲同工之妙。Andrej的那個blog其實是把我之前提的那個CVPR"15 Deep Neural Networks are Easily Fooled在線性模型下的復現,說明問題並不是只在深度網路下存在,在淺層網路已經有類似的問題,只是大家沒有發現。這些工作無疑加深了我們對神經網路的理解,給人們開了個新的視角來看問題。

至於技術細節,我去問問一作馳原同學,就在隔壁樓,看能否讓他本人來給大家分享一下這篇論文的心得體會。另外,依稀記得上個暑假我在FAIR實習的時候內部討論群里Kaiming He就提過類似的實驗結果。我也相信肯定有其他組做過類似的實驗(overfitting本身就是訓練網路的老大難問題),但是,這篇ICLR文章能系統地把這個問題指明,並且通過一系列的實驗證明和分析,然後在簡化的線性模型上也復現和證明,我覺得contribution足夠。

我兩年前有篇ICLR oral論文object detectors emerge from deep scene CNNs(https://arxiv.org/pdf/1412.6856.pdf), 也是篇empirical的工作,可視化和對比分析了CNN內部表徵,感興趣同學可以讀讀。論文里也沒啥東西,不過Kevin Murphy來要了裡面的一些圖,會寫進改版的那本Machine Learning教材。

最後,剛發現成優秀回答者了,回答了不到30個問題。多謝朋友各位支持和厚愛:)


更新一下,我認為「神經網路能輕易通過暴力記憶來fit訓練數據集「這一結論其實並沒有大家所想的那麼顯而易見,主要是因為現在跑DL的實驗(特別是CV方向)隨便一個數據集就是幾十、幾百萬以上的樣本,如果任務本身難度非常高,那麼想在訓練集上overfit到接近100%也可能會非常的困難。

以我自己做的一個視頻分類任務為例,訓練集size為10萬規模,訓練準確率一般只能到80-82%就趨於穩定,測試集準確率一般是75-77%,所以這裡我可以得出神經網路的泛化性很優秀的結論,但是對文中所說的「神經網路能輕易通過暴力記憶來fit訓練數據集」依然持懷疑態度。

如果這個overfit確實像我所說並非如此容易,那麼作者顯然還應該討論一下到底多大的數據規模對一個網路算大,例如ResNet50、101、152分別能夠暴力memorize多少圖片,而關於這一部分,作者只以類似「2層ReLU就能輕易記憶xxx的數據」等理由,得出了「神經網路能輕易通過暴力記憶來fit訓練數據集」的結論。

--------------------------------

粗略讀了一下,個人感覺這篇論文想要討論的問題挺好挺有趣,設計的實驗及相關結果也非常值得繼續深入探討,並不像有些評論所說的那樣全篇只有一個簡單的「Deep neural networks easily fit random labels」結論。

但另一方面,我也覺得其作為Oral接收非常不適合,因為整篇文章幾乎都是在不斷的「a)做實驗,b)從結果(empirical observations)推測原因/直接給出規律而沒有得出原因」,沒有像其它做theory的文章那樣嘗試從更深的層次來解釋模型和試驗結果(完全是在總結規律),直觀感受就是這比較像實驗報告,而不能作為一篇論文;再一個,文章的實驗部分每次把模型訓練到overfit狀態其實和我們一般的訓練方式不太一樣,實際場景大部分都是訓練到loss降不下去就停止(或者再持續一段時間),除非預測準確率確實特別高,否則training loss很難真的接近0,因此我對作者的實驗結論是否具有普適性持懷疑態度。

具體說下論文比較重要的幾個結論(或者說從實驗中總結的規律):

1. 「The effective capacity of neural networks is large enough for a brute-force memorization of the entire data set」:我覺得這個結論其實並沒有那麼的顯而易見,雖然大家一直說神經網路參數多,但是相比其巨大的訓練數據量依然還是差了很多,因此正常情況下,我們給一個樣本集合X配上一個完全隨機的標籤Y,模型應該在訓練階段無法收斂,準確率一直處於隨機的水準才對,然而作者在用一些CNN試驗後卻發現它們大多數時候仍然可以收斂到loss=0(過擬合),甚至在把X都變成隨機雜訊後結果依然不變,於是得出了「神經網路的effective capacity很大,大到足夠通過暴力記憶的方式記住整個訓練集」。

2. 「Even optimization on random labels remains easy」:上面談到我們不管把數據X還是標籤Y隨機化都無法阻止神經網路訓練階段的暴力過擬合,但是這些情況與原本真實數據是否在收斂難度上有差別呢?按照人類的直覺,要分辨不具備明顯pattern的樣本肯定比分辨小貓小狗這樣具有明顯pattern的樣本更難。實驗再一次打臉,數據隨機化後網路的收斂速度只是比原來慢了「a small constant factor」,也就是開始幾輪迭代或許loss變化不明顯,但之後一旦開始下降,收斂速度就比較快,遺憾的是作者似乎沒有對這個現象給出一個深入分析與解釋。

3. 「神經網路會優先對數據中的pattern進行學習,然後才選擇暴力記憶的方式學習剩餘部分」:這條結論原paper沒在特別顯著的地方標出來,但其實非常重要。作者在完全隨機X、完全隨機Y實驗基礎上繼續探究部分隨機X或部分隨機Y對網路收斂的影響,結果發現雖然訓練階段一如既往的overfit,但是測試時可以得到中間過渡的準確率結果,這說明神經網路懂得優先學習pattern,而不是從頭到尾非常粗暴的brute force memorization,原文是「neural networks are able to capture the remaining signal in the data, while at the same time fit the noisy part using brute-force」。

4. 「DL中的explicit regularization(例如l1 l2 weight decay, dropout, data augmentation等)或許可以提高模型的泛化能力,但並非必須,也不是網路泛化能力的核心保證」:原因是即使不用這些正則方法,神經網路通常也能在測試集上得到一個不錯的結果,並且泛化能力良好,而使用這些正則方法,也不能保證網路在訓練時不overfit,這裡可以看出explicit regularization對神經網路的影響其實是遠不及shallow model的。

5. 「generically large neural networks can express any labeling of the training data」:這點其實我還是持懷疑態度,原文舉例說可以用包含p = 2n + d個參數的2層ReLU網路來模擬n個d維樣本的任何標籤可能,但這只是一個網路表達能力的理論上界,作者沒有繼續討論要達到這個上界需要的條件,以及p、n、d的大小關係對論文核心問題也就是網路generalization performance的影響。


最後概括一下,我覺得這篇文章的作者挖了個大坑然後自己卻沒怎麼填,可能的原因一個是留著idea多寫幾篇paper,還有就是坐等別人幫忙填坑。


抖個無關的機靈。

去年暑假的時候有次我去找正在G實習的馳原(一作),我問你最近在做啥?他說天天折騰tensorflow。我再問,好用否?他捏著鼻子說,特別難用。

接著某天晚上我跟我老婆(四作的博士後)一邊哄娃一邊一起認真學習這篇論文。

這個讓我感慨,工具怎麼樣有時候並不關鍵,能利用它做出什麼樣的工作才是重要的。


補充3:儘管我反對這一論文,但反對點是在它內容中的推理漏洞上,以及它是否恰當使用複雜度並完整歸納理論學界之前的研究。我不同意一種觀點,那就是沒有理論框架的情況下不可以做深度學習實驗。物理也有實驗物理嗎不是。

補充2:跟一些支持這篇論文的人有所交流,大多同意即使這篇論文的實驗內容沒什麼令人驚訝的地方,也可以發出來看看。但是可惜很多人沒有看明白我反對這篇論文最主要的原因不是這點,也許是因為這裡面一些同學同事沒有接觸過PAC-Learning學習理論。這篇論文的內容在PAC-Learning學習理論框架下是沒有任何價值的,因為已有無數前人的研究會導致類似的結果。論文中對於Rademacher複雜度的使用也僅僅是理論學界使用此複雜度的一種方式,換一種方式其結果就完全不會這麼吸引眼球。拿一個大家都明白的實驗結果,僅僅使用了最簡單的理論框架,就說「Rethinking Generalization」,然後ICLR會議對它的評價如此高,這對於理論學界非常不公平。這讓那些幾十年一輩子付出到學習理論上的人們何以能接受。還有,不要總想著理論學派對實踐學派「當年」如何不公平,大多數學者根本就沒有這麼想的份。

補充:這篇論文把理論學界已經非常明確的事情倒騰出來又說一遍,然後會議評價這麼高,是有失偏頗的。深度學習的各位(註:我也是搞深度學習的)如果想學習傳統機器學習泛化理論,深入淺出的書多的是,把這麼一篇論文捧的高高在上,分明是噱頭。ICLR沒有合適的傳統學習理論評審是個大問題。

---- 以下是原回答

總結一句話:這篇論文說明在跟輸入無關的隨機標籤下模型泛化能力很差。

太顯然以至於沒意思,不用讀了。論文的標題太過吸引眼球,對理論界前輩十分不公平。評審和領域主席的意見都挺滑稽的。

如果對細節方面的評價有興趣,歡迎讀一下我發的一篇OpenReview評論(Forum | OpenReview,標題是「Not useful」)。得知這篇論文被ICLR 2017接受並且竟然是Oral,不得不說點什麼。


深度神經網路自從在各大領域Benchmark上屠榜廣為人知以來,始終有一個問題困擾著研究者:模型容量(model capacity)這麼大的模型,它為什麼不過擬合(overfit)?還是說它已經過擬合了,並且高效地記住了大量訓練數據,但因為測試數據與訓練數據接近,甚至被包含,所以它才能表現這麼好?

Rethinking generalization 便是圍繞這個問題開展的工作。既然叫做rethinking generalization(重新思考泛化),那麼以前機器學習領域是怎麼理解模型泛化的?泛化,簡單來說就是模型在已有數據上的表現應該和在未來數據上的表現一致。當模型在已有數據上表現好,但是在未來數據上表現差時,我們說模型過擬合了,沒有泛化。如何保證模型泛化能力強呢?以往為大家所接受的是奧茲卡姆剃刀原則,如果有兩個模型在已有數據上表現同樣好,我們選簡單(參數少)的那個。因為這樣的模型更可能學到數據的某種規律(領域知識,domain knowledge),而不是簡單地記住所有的已有數據。直觀來說,規律是簡單的,所以模型也應該是簡單的。泛化的關鍵是模型正確地學習到了對雜訊魯棒的,數據的規律。模型越複雜,則越有可能受雜訊干擾,學到的規律與真實規律不一致。總結來說,以往的理論都指向:學習數據中的規律是模型泛化的關鍵。為了讓模型泛化能力強,更有效地學習到數據中的規律,主要是兩個辦法:

  1. 尋找與數據規律匹配的模型(trial-and-error)。每個模型都有它的假設,當數據規律與模型假設匹配時,效果好;
  2. 通過一些直覺上可靠的假設限制模型容量(regularization),比如模型參數稀疏效果好。

Rethinking generalization通過實驗表明:1. 目前深度神經網路的容量足夠記住所有訓練數據;2. 即便不用regularization,深度神經網路表現也不錯。所以傳統的基於模型容量的泛化理論(如VC維)無法解釋深度神經網路出色的泛化能力。最終,作者做了一個大多數人心照不宣的解釋:深度神經網路確實記住了大量的數據,它的泛化能力歸因於:記憶+規律。當然,這個觀點是否正確還有待考驗。事實上,在ICLR 2017 Workshop track上,立即就有人表示反對說:DEEP NETS DON"T LEARN VIA MEMORIZATION。https://openreview.net/pdf?id=rJv6ZgHYg

先不論這篇論文結論是否正確,它確確實實激發了研究者討論深度學習有效性原因的熱情,也許這也是reviewer考慮把它放到oral的原因之一吧。希望以後能有更多的工作對深度學習為什麼有效進行論述,從而在根本上推動這個領域的發展。

TL;DR: 這是一篇領域推動論文,贊!


展示了CNN過擬合是什麼樣子,以及當今主流對抗過擬合方法的效果
作為一個調參狗表示對這類實驗司空見慣,一般都是當成調參經驗私下交流

個人認為一篇Oral+滿分論文應該是這樣的:
本文提出了一種意料之外的對抗過擬合方法,其引入的雜訊之多看起來就要使訓練完全失敗了,但最終卻在ImageNet任務上有效的提高了測試準確率,並極大的降低了訓練準確率,使人不得不思考深度學習學習能力和泛化能力的根源。


剛粗略讀完,整理一下作者邏輯:


全文作者在干兩件事情:

1.用實驗結果證明,任你怎麼randomize data和label,神經網路都有能力「吃下」所有訓練樣本。

訓練網路結構:Inception, AlexNet,多層感知機(MLP)

實驗數據集:ImageNet, CIFAR10

顯/隱式正則化:Dropout, Data Augmentation, Weight Decay, Early Stopping。

試驗過程幾乎遍歷上述所有組合。


實驗結果:

在CIFAR10上,採用1x512結構的MLP同學砍下了99.34%的最差紀錄。其餘幾乎都吃下了100%的訓練數據。

在ImageNet上,只用Inception V3結構作縱向對比,最差紀錄為87.81%,由僅採用Weight Decay正則化方法且randomize label後的組合砍下。

由此導出神經網路的容量足夠暴力記憶所有樣本的結論。


2.證明在深度學習中,正則化技術不是所謂的fundamental skills,對網路泛化性能不起決定性作用。(讀的時候略微蛋疼。因為這很明顯。。。)

證據就是:

在CIFAR10上,去掉所有正則化技術後,泛化的準確率僅降低了3%~4%

在ImageNet上,僅用Data Augmentation,泛化準確率增加約13%;如果用Data Augmentation + Dropout + Weight Decay,相對於什麼都不用,準確率增加了約18%(我覺得這個提升已經很明顯了,不懂作者為什麼還說不是fundamental phase change...)。

由此(略微奇怪地)導出結論。


跳過線性模型分析部分。。。


兩件事幹完後,作者來個宇宙終極總結:

他覺得傳統機器學習觀念遵循奧卡姆剃刀原理,相信簡單的解釋模型,暴力記憶只是偶爾為之。但是根據實驗結果,他提出在深度學習中,暴力記憶並非只是偶爾為之,反而模型是利用了自身「大記憶容量」的優勢,才獲得了更好高的泛化性能,正則化扮演的角色僅僅是modify網路性能的tricks。作者拋磚引玉,希望各路專家以此篇論文為契機,rethinking generalization。


我也同意大部分專家答主們的觀點,實驗+解釋結果的思路以及得出的數據沒有太多亮點,但是最後的總結很有分量,雖然寫的比較飄忽,卻提出了認識深度學習強大能力的一條新路徑,即正視網路強大的暴力記憶能力,這可能是使深度學習脫穎而出的關鍵。


當然作為一個剛入門的小白,另一大收穫就是得到了好多新鮮出爐的參考實驗數據!!媽媽再也不用擔心我水不過本科畢設啦~


PS:

文中有理解不當之處請知友們多多指教~~

以及所有數據均引自原文。

Reference:

Chiyuan Zhang,Samy Bengio,Moritz Hardt,Benjamin Recht and Oriol Vinyals. Understanding Deep Learning Requires Rethinking Generalization. arXiv:1611.03530v1 [cs.LG] 10 Nov 2016


我個人非常喜歡這篇文章。

當然,這篇文章的核心觀點是所有做DL的人早就心知肚明的事情(做DL要是連模型過擬合都做不到那肯定是哪兒有問題了),Hinton和LeCun在非官方的場合也都發表過類似觀點,所以確實一點都不新穎。而且我確實對於他提出的「Learning by
memorization」有很大意見(請看另一篇ICLR 2017上反駁這一觀點的文章「Deep learning don』t
learn via memorization」 https://openreview.net/pdf?id=rJv6ZgHYg)

但是畢竟做學術,嗅覺和taste這個事情,說不清道不明。深度學習長期以來缺乏很強的理論支持,尤其是與傳統的generalization
vs model capacity的理論實際上是相悖的,這是一隻Elephant in the
room.

傳統的機器學習理論認為,當模型複雜度達到一定程度的時候,雖然可以在訓練集上過擬合,但是在測試集上的表現就會越來越差。下面這張圖,所有學習機器學習的孩子應該都不陌生,尤其是VC維理論有非常紮實的數學基礎,怎麼看都難以反駁——但是如今的深度學習模型幾乎全都是超級複雜,卻依然可以維持很小的Training Error和Test Error——根本就是水火不容的好嘛(我甚至都不知道如今的ML 101該怎麼教了=_=||)

在Deep Learning還不受學術界待見的那幾年(剛巧也是VC維度和SVM最流行的年代),打造堅實的理論基礎顯然並不是最優先的事情,最重要的是要讓這個技術能夠穩定地work,然後拿出去刷分、弄幾個大新聞——至於為什麼會work,那是一個信仰的問題,而到底如何work,就要靠dark
magic。

然而這幾年深度學習摧枯拉朽,顯然已經取得了江湖地位,那麼打下江山以後要證明自己坐穩這個江山的理論合理性就成為了一個問題。至於為什麼是在2017年的春天我們開始關注這頭在房間里伴隨大家生活了這麼多年的大象,這真的是一種嗅覺。畢竟,2016年還是戰鬥的一年。

說到這篇文章,我認為它之所以引來這麼多非議,以及受到評委會這麼大的肯定,原因很簡單,就是因為它立了一個flag:傳統的理論有問題!這是一個destructive的命題,意味著connectionists要革命,要變天了,意味著攻佔敵人的最高堡壘的號角,已經吹響。

所以,我想,在這樣紅旗飄揚的年代,挖出這樣大的一個坑,才是這篇文章的意義所在。

讓我們拭目以待。


本回答來自Emotibot機器學習科學家馬永寧。


贊同@豆豆葉答案的更新部分和@劉弘也答案的第3點.

這篇文章的貢獻在於指出了那些只考慮hypotheses set不管optimization的傳統理論是不可能解釋CNN為什麼能泛化的, 而optimization恰恰是CNN泛化的關鍵所在. @張翔在openreview上的評論提到他的一篇論文中考慮了optimization, 但似乎仍然不能解決這篇文章的問題. 事實上, 我估計以後也很難有理論能對CNN給出一個有意義的generalization error bound, 因為這篇文章的核心實驗就是確定CNN+SGD的泛化是extremely data dependent, 雖然SVM的泛化同樣是data dependent也能證出bound, 但畢竟CNN要複雜太多了.

這篇文章的理論比較少, 不過貢獻已經足夠. 這裡我也來試圖給CNN的泛化作一點直觀的解釋吧. 我們知道CNN既能暴力記憶訓練樣本, 也能模式識別, 那麼可以近似地把CNN看作兩個模型之和, 一個是只知道暴力記憶, 另一個只會模式識別. 那為什麼最終的模型是讓模式識別的部分貢獻主要輸出呢? 從文章里的一幅圖可以看出, 模式識別的部分比暴力記憶的部分收斂更快, 這就是為什麼最後模式識別的部分佔主導.

至於為什麼暴力記憶的部分收斂慢, 我們可以認為SGD收斂的進度大致是與epoch數量成正比的, 對於暴力記憶的部分來說, 1個epoch就是實打實的整個訓練樣本, 而對於模式識別的部分來說, 可能整個訓練集的模式有很多重複的, 那麼等效的epoch大小也就會小得多. 至少, 1個epoch內暴力記憶的部分是學不到任何東西的(注意訓練曲線開頭的一段平台), 這段時間內訓練loss就是測試loss. 按這個觀點, 隨機label的訓練曲線(圖a紅線)就是暴力記憶的部分的訓練曲線, 它代表了過擬合程度與訓練步數的關係. 所以要更好的泛化就要讓模式識別的部分跑得更快, 暴力記憶的部分跑得更慢, 也就是讓圖(a)中的藍線降得快, 紅線降得慢. data augmentation和pretraining/fine tuning是兩個很好的例子, 前者不影響模式識別部分的同時減緩暴力記憶部分的收斂, 後者不影響暴力記憶部分的同時加速模式識別部分的收斂. 而L2, dropout這些殺敵一千自損八百的方法, 是否有效就要看臉了.

當然, 說了這麼多, 貝葉斯觀點下都是一句話的事情 : )


我覺得這篇文章之所以能中,是因為回答了前面vgg inception resnet沒有回答的原因,比如說你vgg為啥用了更深的網路,更小的size效果就會好,只能像nin裡面說的,更深就有更好的抽象能力了呀,所以我們的效果好,又或者你inception 還有resnet 為啥這麼設計會這麼好的結果,又有文章出來解釋說,其實多通路可以看成是淺層網路的投票。這樣效果才好,但是大家都沒說,其實神經網路的學習能力如此強大,以至於我們的文章其實效果這麼好,都在解決的都是泛化性的問題。
手機作答,之後補上引用。:)


去年9月份去MIT開會,吃晚飯的時候碰到了馳原學長。他說他在搞一些deep learning理論方面的東西。今天突然看到他中了iclr最佳論文,想來應該就是這篇了。Anyway點個贊!


dl 模型記住了了那一千萬個if else,這說明我們對現有的QA系統理解沒錯。至於圖形不知道,因為畢竟人腦腦補能力很強,是不是貓其實只要在考察「人腦」的學習能力,而不是機器的學習能力。
最好的人工智慧就是人腦,計算器的話還是用來memorize吧。當然dl簡化了這個記憶的過程,讓步驟抽象化了。人類還是很聰明的摸摸大


題外話:這篇文章的第一作者在mxnet上貢獻了一個基於cudnn的time-major PTB LSTM-RNN訓練樣例代碼,聲稱他的time-major方式的RNN比傳統的batch-major方式訓練速度能快1.5-2倍。但我不能重現他的結果。我跑出來的速度與batch-major的代碼速度並無區別(mxnet 0.9.3,單個GTX1080)。原因是cudnn本身是time-major的,而傳統batch-major的PTB LSTM-RNN例子實際上最終還是用的同一個cudnn實現,只是前端的一些Reshape/Transpose/SwapAxis這些Op有些不一樣而已,基本影響不了訓練速度。

有鑒於此,我暫且對作者的結論存疑。雖然論文中的觀點與大多數人的直觀感受是一致的,但是沒有關於其機理的決定性分析,比如網路依賴記憶來擬合數據等等,雖然我直觀感受也是這樣,但實際上是不是真的,文章也只是根據實驗的推測而已。

暫且mark,過1,2年回頭再看。


推薦閱讀:

最優化問題中,牛頓法為什麼比梯度下降法求解需要的迭代次數更少?
Python 在網頁爬蟲、數據挖掘、機器學習和自然語言處理領域的應用情況如何?
什麼是機器學習?
如何評價聚類結果的好壞?
為什麼交叉熵(cross-entropy)可以用於計算代價?

TAG:人工智慧 | 機器學習 | 深度學習(Deep Learning) |