日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人工智能 > pytorch >内容正文

pytorch

如何优雅地从四个方面加深对深度学习的理解

發布時間:2024/8/23 pytorch 55 豆豆
生活随笔 收集整理的這篇文章主要介紹了 如何优雅地从四个方面加深对深度学习的理解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在今年的 ICML 上,深度學習理論成為最大的主題之一。會議第一天,Sanjeev Arora 就展開了關于深度學習理論理解的教程,并從四個方面分析了關于該領域的研究:非凸優化、超參數和泛化、深度的意義以及生成模型。

2017 年 12 月 NIPS 的 Test-of-Time Award 頒獎典禮上,Ali Rahimi 這樣呼吁人們加深對深度學習的理解:

我希望生活在這樣的一個世界,它的系統是建立在嚴謹可靠而且可證實的知識之上,而非煉金術。[……] 簡單的實驗和定理是幫助理解復雜大現象的基石。

Ali 的目標不是解散各個領域,而是「展開對話」。這個目標已經實現了,但對于目前的深度學習應被視為煉金術還是工程或科學,人們仍存在分歧。

7 個月后,在斯德哥爾摩舉行的國際機器學習會議 (ICML) 上,機器學習社區又聚焦了這個問題。此次大會與會者有 5000 多名,并累計發表論文 629 篇,這是基礎機器學習研究的「年度大戲」。而深度學習理論已成為此次會議的最大主題之一。

會議第一天,最大的房間里就擠滿了機器學習相關人員,他們準備聆聽 Sanjeev Arora 關于深度學習理論理解的教程。這位普林斯頓大學計算機科學教授在演講中總結了目前的深度學習理論研究領域,并將其分成四類:

非凸優化:如何理解與深度神經網絡相關的高度非凸損失函數?為什么隨機梯度下降法會收斂?

超參數和泛化:在經典統計理論中,為什么泛化依賴于參數的數量而非深度學習?存在其它較好的泛化方法嗎?

深度的意義:深度如何幫助神經網絡收斂?深度和泛化之間的聯系是什么?

生成模型:為什么生成對抗網絡(GAN)效果非常好?有什么理論特性能使模型穩定或者避免模式崩潰?

在這一系列的文章中,我們將根據最新的論文(尤其是 ICML2018 的論文),幫助大家直觀理解這四個方面。

第一篇文章將重點討論深度網絡的非凸優化問題。

?非凸優化?

我敢打賭,你們很多人都曾嘗試過訓練自己的「深度網絡」,結果卻因為無法讓它發揮作用而陷入自我懷疑。這不是你的錯。我認為都是梯度下降的錯。

Ali Rahimi 在 NIPS 演講中曾說,隨機梯度下降 (SGD) 的確是深度學習的基石,它應該解決高度非凸優化問題。理解它何時起作用,以及為什么起作用,是我們在深度學習的基本理論中一定會提出的最基本問題之一。具體來說,對于深度神經網絡的非凸優化研究可以分為兩個問題:

損失函數是什么樣的?

SGD 為什么收斂?

?損失函數是什么樣的??

如果讓你想象一個全局最小值,很可能你腦海中出現的第一幅圖是這樣的:

二維世界中的全局最小值附近,函數是嚴格凸的(這意味著 hessian 矩陣的兩個特征值都是正數)。但在一個有著數十億參數的世界里,就像在深度學習中,全局最小值附近的方向都不平坦的可能性有多大?或者 hessian 中一個為零(或近似為零)的特征值都沒有的概率有多大?

Sanjeev Arora 在教程中寫的第一個評論是:損失函數的可能方向數量會隨著維度的增長呈指數增長。

直觀上看,全局最小值似乎不是一個點而是一個連接管(connected manifold)。這意味著如果找到了全局最小值,你就能夠穿過一條平坦的路徑,在這條道路上,所有的點都是最小值。海德堡大學的一個研究團隊在論文《Essentially No Barriers in Neural Network Energy Landscape》中證明了這一點。他們提出了一個更常規的說法,即任何兩個全局最小值都可以通過一條平坦的路徑連接。

在 MNIST 上的 CNN 或在 PTB 上的 RNN 已經是這樣的情況,但是該項研究將這種認知擴展到了在更高級的數據集(CIFAR10 和 CIFAR100)上訓練的更大網絡(一些 DenseNet 和 ResNet)上。為了找到這條路徑,他們使用了一種來自分子統計力學的啟發式方法,叫做 AutoNEB。其思想是在兩個極小值之間創建一個初始路徑(例如線性),并在該路徑上設置中心點。然后迭代地調整中心點的位置,以最小化每個中心點的損失,并確保中心點之間的距離保持不變(通過用彈簧建模中心點之間的空間)。

雖然他們沒有從理論上證明這個結果,但他們對為什么存在這樣的路徑給出了一些直觀的解釋:

如果我們擾亂單個參數,比如添加一個小常數,然后讓其它部分去自適應這種變化,仍然可以使損失最小化。因此可以認為,通過微調,無數其它參數可以「彌補」強加在一個參數上的改變。

因此,本文的結果可以幫助我們通過超參數化和高維空間,以不同的方式看待極小值。

通俗來說,當考慮神經網絡的損失函數時,你應該牢記一個給定的點周圍可能有非常多的方向。由此得出另一個結論,鞍點肯定比局部最小值多得多:在給定的關鍵點上,在數十億個可能的方向中,很可能會找到一個向下的方向(如果不是在全局最小值上)。這種認知在 NIPS 2014 年發表的論文《Identifying and attacking the saddle point problem in high-dimensional non-convex optimization》中被嚴格規范化,并得到了實證證明。

為什么 SGD 收斂(或不收斂)?

深度神經網絡優化的第二個重要問題與 SGD 的收斂性有關。雖然這種算法長期以來被看做是一種快速的近似版梯度下降,但我們現在可以證明 SGD 實際上收斂于更好、更一般的最小值。但我們能否將其規范化并定量地解釋 SGD 脫離局部極小值或鞍點的能力?

SGD 修改了損失函數

論文《An Alternative View: When Does SGD Escape Local Minima?》表明,實施 SGD 相當于在卷積(所以平滑)的損失函數上進行常規梯度下降。根據這一觀點并在某些假設下,他們證明了 SGD 將設法脫離局部最小值,并收斂到全局最小值附近的一個小區域。

?SGD 由隨機微分方程控制?

連續 SGD 徹底改變了我對這個算法的看法。在 ICML 2018 關于非凸優化的研討會上,Yoshua Bengio 在他關于隨機梯度下降、平滑和泛化的演講中提出了這個想法。SGD 不是在損失函數上移動一個點,而是一片點云或者說一個分布。

幻燈片摘自 Y. Bengio 在 ICML 2018 發表的演講。他提出用分布(或點云)代替點來看待 SGD。

這個點云的大小(即相關分布的方差)與 learning_rate / batch_size 因子成正比。Pratik Chaudhari 和 Stefano Soatto 在論文《Stochastic gradient descent performs variational inference, converges to limit cycles for deep networks》中證明了這一點。這個公式非常直觀:較低的 batch size 意味著梯度非常混亂(因為要在數據集一個非常小的子集上計算),高學習率意味著步驟混亂。

將 SGD 視為隨時間變化的分布可以得出:控制下降的方程現在是隨機偏微分方程。更準確地說,在某些假設下,論文表明控制方程實際上是一個 Fokker-Planck 方程。

幻燈片摘自 P. Chaudhari 和 S. Soatto 在 ICML 2018 發表的演講——《High-dimensional Geometry and Dynamics of Stochastic Gradient Descent for Deep Networks》。他們展示了如何從離散系統過渡到 Fokker-Plank 方程所描述的連續系統。

在統計物理學中,這種類型的方程描述了暴露在曳力 (使分布推移,即改變平均值) 和隨機力 (使分布擴散,即增加方差) 下的粒子的演化。在 SGD 中,曳力由真實梯度建模,而隨機力則對應算法的內在噪聲。正如上面的幻燈片所示,擴散項與溫度項 T = 1 /β= learning_rate /(2 * batch_size) 成正比,這再次顯示了該比值的重要性!

Fokker-Planck 方程下分布的演化。它向左漂移,隨時間擴散。圖源:維基百科

通過這個框架,Chaudhari 和 Soatto 證明了我們的分布將單調地收斂于某個穩定的分布(從 KL 散度的意義來說):

Pratik Chaudhari 和 Stefano Soatto 論文的一個主要定理,證明了分布的單調會收斂到穩定狀態(在 KL 散度意義中)。第二個方程表明,使 F 最小化相當于最小化某個潛在的?以及擴大熵的分布(溫度 1 /β控制的權衡)。

在上面的定理中有幾個有趣的觀點:

SGD 最小化的函數可以寫成兩項之和(Eq. 11):潛在Φ和熵的分布。溫度 1 /β控制這兩項的權衡。

潛在Φ只取決于數據和網絡的架構(而非優化過程)。如果它等于損失函數,SGD 將收斂到全局最小值。然而, 本文表明這種情況比較少見。而如果知道Φ與損失函數的距離,你將可以知道 SGD 收斂的概率。

最終分布的熵取決于 learning_rate/batch_size(溫度)的比例。直觀上看,熵與分布的大小有關,而高溫會導致分布具有更大的方差,這意味著一個平坦的極小值。平坦極小值的泛化能力更好,這與高學習率和低 batch size 能得到更優最小值的經驗是一致的。

因此,將 SGD 看作是一個隨時間變化的分布表明,在收斂性和泛化方面,learning_rate/batch_size 比每個獨立的超參數更有意義。此外,它還引入了與收斂相關的網絡潛力,為架構搜索提供了一個很好的度量。

?結論?

探索深度學習理論的過程可以分為兩部分:首先,通過簡單的模型和實驗,建立起關于深度學習理論如何及其為什么起作用的認知,然后將這些理念以數學形式呈現,以幫助我們解釋當前的結論并得到新的結果。

在第一篇文章中,我們試圖傳達更多關于神經網絡高維損失函數和 SGD 解說的直觀認知,同時表明新的形式主義正在建立,目的是建立一個關于深層神經網絡優化的真正數學理論。

然而,雖然非凸優化是深度學習的基石并且擁有大量的層數和參數,但它取得的成功大部分源于其優秀的泛化能力。這將是下一篇文章將分享的內容。

Sanjeev Arora:印度裔美國理論計算機科學家,他以研究概率可檢驗證明,尤其是PCP定理而聞名。研究興趣包括計算復雜度理論、計算隨機性、概率可檢驗證明等。他于2018年2月被推選為美國國家科學院院士,目前是普林斯頓大學計算機科學系教授。

∑編輯?|?Gemini

來源 | 數盟

算法數學之美微信公眾號歡迎賜稿

稿件涉及數學、物理、算法、計算機、編程等相關領域,經采用我們將奉上稿酬。

投稿郵箱:math_alg@163.com

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的如何优雅地从四个方面加深对深度学习的理解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。