要理解深度學習,必須突破常規視角去理解優化

2021-01-14 手機鳳凰網

選自offconvex.org

作者:Sanjeev Arora

機器之心編譯

參與:韓放、shooting

普林斯頓計算機科學教授 Sanjeev Arora 認為,常規的優化觀點只關注目標的價值和收斂的速度,而這對於日益重要的深度學習來說是遠遠不夠的。深度學習算法有一些重要的特性並不總是反映在目標值中。所以,要加深對深度學習的理解,還得超越常規視角。

深度學習時代,機器學習通常歸結為首先為手頭的學習任務定義合適的目標/成本函數,然後使用梯度下降的某種變體(通過反向傳播實現)來優化這個函數。

難怪每年有數以百計的機器學習論文貢獻給優化的不同領域。但我認為,如果你的目標是對深度學習進行數學理解的話,那麼從常規視角去理解優化明顯是不夠的。

優化的常規視角:儘快找到目標最小可能值的解決方案。

先驗上來說,並不確定是否所有的學習都要優化一個目標。大腦中的學習是否也如此是神經科學中一個長期存在的開放性問題。大腦的組成部分似乎已經通過各種進化事件被重新利用/拼湊在一起,整個組合可能或不可以歸結為目標的優化。詳情見 Marblestone 等人的研究《Towards an integration of deep learning and neuroscience》。

我認為,深度學習算法也有一些重要的特性並不總是反映在目標值中。目前的深度網絡是非常過度參數化的,因此有多個最優值。它們被訓練到目標幾乎為零(即接近最優),如果由此發現的最優(或接近最優)模型在未見過/保留的數據上也表現良好(即泛化效果好),則認為該訓練是成功的。這裡的問題是,目標的值可能和泛化並不相關(見《Understanding deep learning requires rethinking generalization》)。

當然,專家們現在會問:「泛化理論不正是因為這個原因而被發明為機器學習的「第二條腿」,而優化是「第一條腿」嗎?」比如說,這個理論展示了如何給訓練目標添加正則化器,以確保解決方案的泛化性。或者,即使在回歸等簡單任務中,早停(即在達到最佳值之前停止)或者甚至給梯度添加噪聲(例如,通過調整批量大小和學習速率)都比完美優化更可取。

然而在實踐中,即使是在具有隨機標籤的數據上,顯式正則化器和噪聲技巧都無法阻止深度網絡達到較低的訓練目標。當前的泛化理論旨在對特定模型的泛化原因進行後驗解釋。但它不知道如何獲得解決方案,因此除了建議一些正則化方法之外,不能提供什麼優化方法。(我在之前的博客裡解釋了描述性方法和規定性方法之間的區別,且泛化理論主要是描述性的。)主要的謎團在於:

即使是普通的梯度下降也能很好地找到具有合理泛化性能的模型。此外,加快梯度下降的方法(例如加速或自適應正則化)有時會導致更差的泛化。

換句話說,梯度下降天生就擅長尋找具有良好泛化性能的解決方案。沿著梯度下降的軌跡,我們會看到「魔法」的痕跡,而這魔法在目標值中是捕捉不到的。這讓我們想起了那句古老的諺語:

過程比結果更重要。

我將通過在兩個簡單但具有啟發性的任務中進行梯度下降分析來說明這一觀點。

使用無限寬的深度網絡進行計算

由於過度參數化似乎不會對深度網絡造成太大的傷害,研究人員想知道參數到達無窮大這一極限會發生什麼:使用固定的訓練集(如 CIFAR10)來訓練經典的深度網絡架構,如 AlexNet 或 VGG19。

這些網絡的寬度(即卷積濾波器中的通道數)和全連接內部層中的節點數允許參數增加到無窮大。注意,不管網絡有多大,初始化(使用足夠小的高斯權重)和訓練對於任何有限的寬度來說都是有意義的。我們假設輸出損失為 L2。

可以理解的是,這樣的問題似乎是無望和無意義的:世界上所有的計算加起來都不足以訓練一個無限的網絡,而我們的理論家們已經在忙著尋找有限的網絡了。

但有時在數學/物理學中,人們可以通過研究極限情況來洞察其中的問題。在這裡,我們在有限的數據集(如 CIFAR10)上訓練一個無限的網絡,最優值的數目是無窮大的,而我們試圖理解梯度下降的作用。

多虧了最近關於過度參數化深度網絡可證明學習的論文中的見解(其中一些關鍵論文:《Learning and Generalization in Overparameterized Neural Networks, Going Beyond Two Layers》、《A Convergence Theory for Deep Learning via Over-Parameterization》、《Gradient Descent Finds Global Minima of Deep Neural Networks》和《Stochastic Gradient Descent Optimizes Over-parameterized Deep ReLU Networks》),研究人員已經認識到出現了一個很好的限制結構:

當寬度→∞時,對於一個核回歸問題,軌跡接近梯度下降的軌跡,其中(固定)核是所謂的神經切線內核(NTK)。(對於卷積網絡,內核是卷積的 NTK 或 CNTK。)

內核由 Jacot 等人鑑定並命名,同時也隱含在一些上述關於過度參數化網絡的論文中,例如《Gradient Descent Provably Optimizes Over-parameterized Neural Networks》。

這個固定內核的定義在隨機初始化時使用了無限網絡。對於兩個輸入 x_i 和 x_j,內核內積 K(x_i,x_j) 是輸出相對於輸入的梯度∇x 的內積,分別在 x = x_i 和 x = x_j 處求值。隨著網絡大小增加到無窮大,可以發現該內核內積收斂到極限值。

我們與 Simon Du 等人的新論文《On Exact Computation with an Infinitely Wide Neural Net》表明,通過動態規劃可以有效地計算 CNTK,這讓我們得以為任何期望輸入有效計算訓練網絡的結果,即使直接訓練無限網絡是不可行的。

另外:請不要將這些新結果與一些早期論文混淆,後者將無限網絡視為內核或高斯過程,因為它們僅訓練網絡頂層,將較低層凍結並且隨機初始化。

根據經驗,我們發現這個無限網絡(相對於 NTK 的內核回歸)在 CIFAR10 上產生的性能比任何先前已知的內核都要好,當然,不包括那些通過圖像數據訓練手動調整或設計的內核。例如,我們可以計算與 10 層卷積網絡(CNN)相對應的內核,並在 CIFAR10 上獲得 77.4%的成功率。

求解矩陣完備化的深度矩陣分解

由推薦系統的設計推動,矩陣完備化已經經過了十多年的充分研究:給定未知矩陣的 K 個隨機條目,我們希望恢復未知的條目。

解決方案通常不是唯一的。但是如果未知矩陣是低秩或近似低秩並且滿足一些額外的技術假設(例如不相干),那麼各種算法可以近似甚至精確地恢復未知的條目。

基於核/跡範數最小化的著名算法如下:找到適合所有已知觀察並具有最小核範數的矩陣(注意,核範數是秩的凸鬆弛)。也可以將此作為常規視角所要求的形式的單個目標改寫如下,其中 S 是已知條目的索引的子集,λ是乘數:

如果你不了解核範數,你會喜歡 Gunasekar 等人(2017)提出的有趣建議:先把核範數懲罰項丟到一邊。嘗試通過基於損失的第一項來簡單地訓練(通過簡單的梯度下降/反向傳播)具有兩層的線性網絡來恢復缺失的條目。

這個線性網絡只是兩個 n×n 矩陣的乘積,所以我們得到以下公式,其中 e_i 是所有為 0 的條目的向量:

「數據」現在對應於索引 (i,j)∈S,並且訓練損失捕獲端到端模型 M_2M_1 與已知條目的擬合程度。由於 S 是在所有條目中隨機選擇的,因此如果在預測剩餘條目方面做得很好就意味著「泛化」良好。

根據經驗,通過深度學習來完成矩陣完備化工作(即,通過梯度下降來解決 M_1,M_2,並完全忘記確保低秩)和經典算法一樣效果,因此有了以下猜想,如果這是真的則意味著在這種情況下,核範數捕獲可以精確捕獲梯度下降的隱式正則化效應。

猜想:當使用深度為 2 的線性網絡解決上述矩陣完備化時,所獲得的解恰好是通過核範數最小化方法獲得的解。

但正如你可能已經猜到的那樣,這太簡單了。在與 Nadav Cohen 等人的新論文中,我們報告了新的實驗,表明上述猜想是錯誤的。

更有趣的是,我們發現,如果通過進一步將層數從 2 增加到 3 甚至更高來過度參數化問題(我們將這稱之為深度矩陣分解),這種解決矩陣完備化的效果甚至比核範數最小化更好。

請注意,我們正在使用略小於核範數算法精確恢復矩陣所需的值 S。在這種數據貧乏的設置中,歸納偏差最為重要!

我們通過分析梯度下降的軌跡以及它的偏置如何強烈偏向於尋找低秩的解決方案,提供了對深度 N 網絡改進性能的部分分析,這種偏置比簡單的核範數更強。

此外,我們的分析表明,這種對低秩的偏置不能被核範數或端到端矩陣的任何明顯的 Schatten 準範數所捕獲。

注意:我們發現,著名的深度學習加速方法 Adam 在這裡也加快了優化速度,但略微損失了泛化。這與我上面所說的關於傳統觀點不足以捕捉泛化的內容有關。

結論

雖然上述設置很簡單,但這些表明,要理解深度學習,我們必須超越傳統的優化觀點,後者只關注目標的價值和收斂的速度。

不同的優化策略如 GD、SGD、Adam、AdaGrad 等,會導致不同的學習算法。它們引發不同的跡,這可能導致具有不同泛化特性的解。我們需要開發一個新的詞彙(和數學)來推理跡。這超出了靜止點、梯度範數、Hessian 範數、平滑度等通常的「景觀視圖」。注意:跡取決於初始化!如果在大學裡學到一些關於 ODE / PDE /動力系統/拉格朗日的技巧,可能會更好地理解跡。

相關焦點

  • 深度| 理解深度學習中的卷積
    以下是正文:卷積現在可能是深度學習中最重要的概念。正是靠著卷積和卷積神經網絡,深度學習才超越了幾乎其他所有的機器學習手段。但卷積為什麼如此強大?它的原理是什麼?在這篇博客中我將講解卷積及相關概念,幫助你徹底地理解它。網絡上已經有不少博客講解卷積和深度學習中的卷積,但我發現它們都一上來就加入了太多不必要的數學細節,艱深晦澀,不利於理解主旨。
  • 深度學習中的「深度」究竟怎麼理解?
    介紹為了研究神經網絡,我們必須要對什麼網絡是什麼有一個更直觀的認識。一、基本變換:層神經網絡是由一層一層構建的,那麼每層究竟在做什麼?每層神經網絡的物理理解:通過現有的不同物質的組合形成新物質。二、理解視角:現在我們知道了每一層的行為,但這種行為又是如何完成識別任務的呢?
  • 運用深度學習教機器人理解自然語言
    譯者/趙屹華 審校/劉帝偉、朱正貴 責編/周建丁。在深度學習出現之前,文字所包含的意思是通過人為設計的符號和結構傳達給計算機的。本文討論了深度學習如何用向量來表示語義,如何更靈活地表示向量,如何用向量編碼的語義去完成翻譯,以及有待改進的地方。在深度學習出現之前,我們書寫的文字所包含的意思是通過人為設計的符號和結構傳達給計算機的。
  • 史丹福大學馬騰宇:無法理解現有的深度學習算法?那就設計一個能...
    「雖然我們無法理解現有的深度學習算法,但我們可以設計我們既能理解又能保證有效的新算法。」我們下面來看馬騰宇的報告內容:一、為什麼過參數化的深度學習模型能實現泛化?深度學習是馬騰宇研究組的重要研究方向,他們的主要研究思路是從方法論層面,通過一些數學或理論的分析從技術的角度提高深度學習模型的性能。
  • Facebook AI 正在升維突破:教AI像人類一樣理解三維世界
    ,還必須學會以三維視角理解視覺場景,比如將二維圖片中的沙發、餐桌和茶几以三維建模的方式重現出來。 這對 AI 的圖像理解能力提出了極高的要求,因為它必須知道如何判斷景深,搞清楚對象位於照片的前景還是背景中,甚至要在一定程度上推斷出缺失部分的樣子。
  • 微軟IJCAI2016演講PPT:深度學習在語義理解上不再難有用武之地
    微軟研究院在IJCAI2016第一天的Tutorial上講述了自己將深度學習、深度神經網絡應用於語義理解上的一些經驗和收穫。
  • 用深度學習理解遙感圖像,識別效率提升90倍 | PaddlePaddle出品
    需要注意的是,這些算法並不是自動化的,仍舊需要人工去配合。中國960萬平方公裡,想要完成一遍,至少需要千餘人集中工作2到3個月。怎麼辦?可以用深度學習。但在從傳統的人工+算法模式到現在深度學習的模式切換中,還經歷了不少困難。用AI理解遙感圖像,有什麼難的?圖像識別,可以說是當前AI領域比較成熟的技術了,各種用於圖像理解的深度學習模型層出不窮,而且在特定領域已達到了人類同等水準。
  • 用概念激活向量 (CAVs) 理解深度網絡
    可解釋性仍然是現代深度學習應用的最大挑戰之一。最近在計算模型和深度學習研究方面的進展,使創建高度複雜的模型成為可能,這些模型可以包括數千個隱藏層和數千萬個神經元。雖然創建令人驚訝的高級的深度神經網絡模型相對簡單,但理解這些模型如何創建和使用知識仍然是一個挑戰。
  • 如何理解和評價機器學習中的表達能力、訓練難度和泛化性能
    在「學習」過程中, 我們在(可能很大的)模型空間內搜索一個比較好的, 利用數據中的知識學到的模型來做決策。 搜索的過程常常被構造成一個在模型空間上的優化問題。優化的不同類型通常, 特別是在深度學習中, 我們會定義一些標量度量來評價模型的好壞, 然後使用數值優化技術來使模型「變好」。
  • 如何理解深度學習分布式訓練中的large batch size與learning rate...
    雷鋒網 AI科技評論按,本文源自譚旭在知乎問題【如何理解深度學習分布式訓練中的large batch size與learning rate的關係?】下的回答,雷鋒網 AI科技評論獲其授權轉載。問題詳情:在深度學習進行分布式訓練時,常常採用同步數據並行的方式,也就是採用大的batch size進行訓練,但large batch一般較於小的baseline的batch size性能更差,請問如何理解調試learning rate能使large batch達到small batch同樣的收斂精度和速度?
  • 理解神經網絡:從神經元到RNN、CNN、深度學習
    並且形成了很多種類,像CNN(卷積神經網絡),RNN,自編碼,深度學習等等。神經網絡對於數據科學和或者機器學習從業者,就像線性回歸對於統計學家一樣。因此,對神經網絡是什麼有一個基本的理解是有必要的,比如,它是怎麼構成的,它能處理問題的範圍以及它的局限性是什麼。這篇文章嘗試去介紹神經網絡,從一個最基礎的構件,即一個神經元,深入到它的各種流行的種類,像CNN,RNN等。
  • 王海峰出席CCHI2018 深度解析「多模態深度語義理解」
    百度大腦新階段:多模態深度語義理解 「多模態深度語義理解」是指對文字、聲音、圖片、視頻等多模態的數據和信息進行深層次多維度的語義理解,包括數據語義、知識語義、視覺語義、語音語義一體化和自然語言理解等多方面的語義理解技術。
  • 中科大劉淇:從自適應學習的角度理解AI+教育
    劉淇老師對於接下來的步驟提出了一個問題:在得到學生的認知水平之後,怎樣結合學生的認知背景去給學生做個性化學習的推薦?對於這個問題,劉淇老師指出這和傳統的機器自適應學習、推薦系統有所區別。傳統的機器學習更關注的是學習的結果,即做出決策,而對於我們人的自適應學習更關注的是建模和學生學習的過程。
  • 近年來深度神經網絡模型不斷迎來重大突破
    近年來深度神經網絡模型不斷迎來重大突破,由深度學習為代表的機器學習相關研究取得了長足進步。但對機器學習研究普及者和研究機構來說,由於對機器學習原理、應用實踐以及技術應用多方面的缺乏概念理解,這些機器學習技術發展存在顯著的「彎路」。
  • 學習是一個頓悟,這是理解的產生瞬間,頓悟會讓同學們受益良多
    學習是一個學習知識和能力的過程,也是一個自我養成的過程。在這個過程中,想要不斷的進步,就是不斷的積累,然後進行自我的突破。但是如果想要有很大的突破,那麼在學習上必須有所頓悟,什麼是頓悟呢?就是說一個同學,突然間感覺到自己有一些與眾不同,或者是發現了一些自己在學習上和生活上的優點。然後不斷地去擴大這些優點,把這些頓悟會通過學習的方式,去運用到自己的學習當中去,形成自己一些學習習慣和學習興趣。然後不斷地擴大自己的頓悟方面,直到到達一個理解的臨界值。
  • 一場突如其來的討論:到底什麼是深度學習?SVM其實也是深度學習嗎?
    一定要用成串連起來的特徵提取器做表徵學習,這才是深度學習。它的本質在於通過深度層次化的特徵來描述輸入數據,而這些特徵都是從數據裡學習到的。根據定義也能看出來,深度學習是一種逐步完善的、一點點優化的從數據中提取表徵的方法。以深度學習現在的形式來看,它至少是 C1 連續的(甚至到無限階都是連續的)。這一條可能不那麼關鍵,但「逐步優化」的這一條也是深度學習的固有屬性。
  • 深度| 為什麼隨機性對於深度學習如此重要?
    在一個怡人的午後,我開始嘗試著用通俗易懂的語言向我媽媽解釋隨機性對於深度學習的重要性。儘管我媽媽還是對於深度學習一知半解,但是我認為我的努力部分成功了,我迷上了這種方式並將它應用在了我的實際工作中。我想將這篇稍具技術性的小文章送給在深度學習領域的實踐者,希望大家能夠對神經網絡內部的運行過程有更好的理解。如果你是一個剛剛入門的新手,那麼你有可能會覺得一大堆技術被隨意一股腦地用在了訓練神經網絡上,例如dropout正則化、擴增梯度噪聲、異步隨機下降。那這些技術有什麼相同的呢?
  • 前沿| 利用遺傳算法優化神經網絡:Uber提出深度學習訓練新方式
    Stanley、Jeff Clune 機器之心編譯 參與:陳韻竹、劉曉坤 在深度學習領域,對於具有上百萬個連接的多層深度神經網絡(DNN),現在往往通過隨機梯度下降(SGD)算法進行常規訓練但是,Uber 近日發布的五篇論文表明,神經進化(neuroevolution)這種利用遺傳算法的神經網絡優化策略,也是訓練深度神經網絡解決強化學習(RL)問題的有效方法。
  • 突破AI和機器理解的界限,牛津CS博士143頁畢業論文學習重建和分割...
    牛津大學計算機科學系博士生 Bo Yang 在其畢業論文中詳細解讀了如何重建和分割 3D 物體,進而賦予機器感知 3D 環境的能力,突破了人工智慧和機器理解的界限。賦予機器像人類一樣感知三維真實世界的能力,這是人工智慧領域的一個根本且長期存在的主題。考慮到視覺輸入具有不同類型,如二維或三維傳感器獲取的圖像或點雲,該領域研究中一個重要的目標是理解三維環境的幾何結構和語義。
  • 化學:系統理解基本原理 準確把握化學本質
    解答嘉賓:貴陽六中馬靜仁特級教師試卷特點:基礎知識靈活呈現2017年的化學試題,從內容來看涵蓋了高考所必須的知識點,從難度來看,試題側重對學生基礎知識學習情況的準確考查,體現了基本能力的學習要求。3.對試題設問意圖理解不準。考試不僅是與知識原理對話,同時也是在與命題者的思想對話,要學會理解命題者設問意圖,明白他問我什麼?關鍵是本質的東西在哪裡?4.表達不準確。文字表達口頭化問題嚴重,學生使用化學用語表達化學問題的能力需要廣泛提高。5.計算能力欠缺。6.實驗操作規範性,操作流程和實驗目的邏輯性欠缺。