NeurIPS2018時間檢驗獎論文回顧:為什麼深度學習適合大規模數據集
雷鋒網 AI 科技評論按:NeurIPS 2018 於 12 月 3 日至 12 月 8 日在加拿大蒙特利爾會展中心舉辦。大會第一天下午頒布了各項論文獎,其中包括時間檢驗獎(Test of Time Award),獲獎論文是《The Trade-Offs of Large Scale Learning》。
這篇論文是機器學習界、尤其是深度學習發展道路上的一篇重要論文,也可以說是推動研究人員們不斷建立並使用更大的數據集的理念來源之一。谷歌 AI 蘇黎世研究院項目經理、丹麥科技大學教授 Anna Ukhanova 撰文解析了這篇論文的內容以及它對整個機器學習界的後續影響。雷鋒網 AI 科技評論編譯如下。
打開今日頭條,查看更多圖片
機器學習界的學術研究進展飛快,彷彿任何一種新點子、新想法只要一兩年就顯得過時了,或者是被別的東西取代了。不過,即便是許多研究者們後來已經不再關注的區域里,也有一些老想法持續地體現出自己的重要性。這種狀況之所以會發生是因為不同的語境:在某個研究方向里看起來死路一條的想法在另一個研究方向里則可能會變得非常成功。而對於深度學習這個具體的例子來說,可獲得的數據以及可利用的計算資源的大幅增長不斷為這個領域注入了新鮮的活力和注意力,也對研究方向的選擇產生了顯著影響。
當年發表在 NIPS 2007 會議的論文《The Trade-Offs of Large Scale Learning》就是這種現象的見證者。這篇來自 Léon Bottou (當時在 NEC 實驗室,現在在 Facebook 人工智慧研究院 FAIR)和 Olivier Bousquet(谷歌 AI 蘇黎世研究院)的論文獲得了今年 NeurIPS 的時間檢驗獎,論文內容是研究機器學習領域內數據和計算能力之間是如何相互作用的;他們的結果表明,在計算能力有限、但可以使用一個大規模數據集的情況下,面對「A,使用盡量多的訓練樣本,但每個樣本只進行較少的計算」,和「B,取一小部分數據進行高強度的計算」兩種選擇,前一種做法的效率更高。他們的研究對象是一種較老的演算法,隨機梯度下降(SGD),而它如今幾乎也和所有的深度學習應用形影不離。
梯度下降示意圖優化方法,以及大規模數據帶來的挑戰許多機器學習演算法都可以看作兩種因子的組合:
一個模型,它可以由許多種不同的函數組合而成,可以用來擬合數據
一個優化演算法,它可以具體描述出如何選擇出效果最佳的那個函數
1990 年代的時候,機器學習研究者們使用的數據集要比現在的小多了,而且當時他們也認為人工神經網路很難訓練,即便當時它們已經展現出了一些成果。到了 21 世紀初,隨著核方法(kernel machines),尤其是支持向量機(SVM)的出現,人們對神經網路的熱情迅速消失殆盡。與此同時,本來研究優化演算法的研究者們也把注意力從研究神經網路的優化演算法(隨機梯度下降)轉移到了研究核方法的優化演算法上(二次規劃法,quadratic programming)。這兩種優化方法之間的區別在於,對於隨機梯度下降,每次計算只使用一個訓練樣本用來計算梯度步驟(稱之為「隨機」);而對於核方法的優化演算法,每一次迭代中都需要使用所有的訓練樣本(稱之為「批量」)。
SVM 示意圖但隨著訓練數據集的大小變得越來越大,優化演算法處理大規模數據的效率就成為了瓶頸。比如對於二次規劃法,演算法的運行時間最少也要和訓練樣本的數量的平方成正比,也就是說,如果你的訓練數據變成了原來的 2 倍,那麼訓練時間至少也會變成原來的 4 倍。所以研究人員們也花了很多精力嘗試如何讓這些演算法更好地拓展到大規模數據集上。
曾經訓練過人工神經網路的研究人員們則深深知道把隨機梯度下降拓展到大規模數據集上會容易很多,只不過它的問題在於它的收斂很慢(想要達到和批量演算法相同的準確率,隨機方法需要的迭代次數要多很多),所以那時候大家也並不能清晰地判斷出它是否會是解決數據規模問題的那個黃金方案。
隨機方法有更好的可拓展性在機器學習領域裡,優化損失函數所需的迭代次數其實並不是最讓人頭疼的那個問題,畢竟一直調節模型、調節得到完美的損失函數,其實是過擬合到了訓練數據上。所以為什麼不省下調節模型花費的計算能力,而用這些計算能力處理更多的數據呢?
Léon Bottou 和 Olivier Bousquet 就對這種現象做了一次正式的研究。他們設置的實驗條件是,可以使用大規模數據集,同時計算能力是一個限制條件。他們的研究表明,對每一個訓練樣本進行盡量少的運算(同時也就可以用到更多的訓練樣本)可以取得更好的效果,而在較少的數據上進行大量運算的做法效果並不好。
他們也研究了許多種不同的優化演算法,結果表明隨機梯度下降是最好的。他們的結果得到了許多別的研究者的實驗支持,同時也引領了在線優化演算法的新研究興趣。如今,在線優化演算法也在機器學習領域有著許多的應用。
謎團尚未完全解開在隨後的幾年中,研究人員們開發了隨機梯度下降的許多變種,包括對於凸函數和非凸函數的(非凸函數的優化方法對深度學習非常重要)。最常見的一種變種被大家稱作「mini-batch SGD」,它在每次迭代中計算一小批(大約數十到數百量級)訓練樣本,對整個訓練數據集操作若干次,同時也配合使用一些其它的大規模梯度計算技巧。許多機器學習庫中都直接包含這樣的演算法的實現,它也是公認的深度學習的重要支柱之一。
雖然這篇論文的分析為理解隨機梯度下降的性質提供了充實的論據,但深度學習高速的、令人驚喜、甚至令人驚訝的發展繼續為科研界帶來了更多的問題。比如,這種演算法對深度神經網路的泛化性的影響被大家反覆提及,但我們仍然沒有什麼深入的了解。這也意味著,我們目前面對著許許多多有趣的研究課題,一旦做出了突破,我們不僅可以對現在正在使用的演算法有更好的了解,也可以引導我們未來開發出更高效的演算法。
Léon Bottou 和 Olivier Bousquet 十年前合作提出的觀點大大加速了優化演算法的發展,到如今已經是給我們帶來更多生活便利的機器學習演算法中重要的驅動力。谷歌 AI 團隊全體人員認為他們獲得這個獎項實至名歸,也向他們致以誠摯的祝賀。
via ai.googleblog.com,雷鋒網 AI 科技評論編譯。NIPS 開幕式完整回顧請閱讀近九千人齊聚 NeurIPS 2018,四篇最佳論文,十大研究領域,1010 篇論文被接收
※大咖Live X 星雲互聯王易之:開發者視角,V2X如何實現從「輔助人」到「網聯化交通」的技術落地?
※關於歷年NeurIPS 的歷史趨勢分析
TAG:雷鋒網 |