全域性最優解?為什麼 SGD 能令神經網路的損失降到零
昨日,reddit 上一篇帖子引發熱議,該帖介紹了一篇關於梯度下降對過引數化神經網路影響的論文,該論文只用單個非常寬的隱藏層,並證明了在一定條件下神經網路能收斂到非凸優化的全域性最優解。這是對深度學習的復古?到底是否有效?社群中很多人對此發表了看法。機器之心簡要介紹了該論文,更詳細的推導過程與方法請檢視原論文,不過這樣的證明讀者們都 Hold 住嗎。
用一階方法訓練的神經網路已經對很多應用產生了顯著影響,但其理論特性卻依然成謎。一個經驗觀察是,即使優化目標函式是非凸和非平滑的,隨機初始化的一階方法(如 隨機梯度下降 )仍然可以找到全域性最小值(訓練損失接近為零)。令人驚訝的是,這個特性與標籤無關。在 Zhang 等人的論文 [2016] 中,作者用隨機生成的標籤取代了真正的標籤,但仍發現隨機初始化的一階方法總能達到零訓練損失。
關於神經網路為什麼能適應所有訓練標籤,人們普遍認為是因為神經網路過引數化了。例如,Wide ResNet [Zagoruyko and Komodakis] 使用的引數數量是訓練資料的 100 倍,因此必須存在一個這種架構的神經網路,能夠適應所有訓練資料。然而,這並不能說明為什麼由隨機初始化的一階方法找到的神經網路能夠適應所有資料。目標函式是非凸和非平滑的,這使得傳統的凸優化分析技術在這種情況下沒有用。據我們所知,理論只能保證現有的方法收斂到一個駐點 [Davis et al., 2018]。
在本文中,作者將解釋這一令人驚訝的現象,即帶有修正線性單元(ReLU)啟用函式的兩層神經網路能收斂到全域性最優解。形式化的,我們可以考慮有以下形式的神經網路:
其中 x ∈ R^d 為 d 維實數向量輸入,w_r ∈ R^d 為第一層的權重向量,a_r ∈ R 為輸出權重。此外,σ (·) 表示 ReLU啟用函式:σ (z) = z if z ≥ 0、 σ (z) = 0 if z < 0。
隨後我們可以根據二次損失函式(歐式距離)定義經驗風險最小化問題,若給定 n 筆資料的訓練集 {(x_1, y_1), ..., (x_i, y_i), ..., (x_n, y_n) },我們希望最小化:
為了實現經驗風險最小化,我們需要修正第二層並針對第一層的權重矩陣應用梯度下降(GD):
其中η > 0 為學習率(在本論文中為步長),因此每一個權重向量的梯度計算式可以表示為:
儘管這只是一個淺層全連線網路,但由於使用了 ReLU啟用函式,目標函式仍然是非凸和不平滑的。不過即使針對這樣簡單的目標函式,為什麼隨機初始化的一階梯度方法能實現零的訓練誤差仍然不太清楚。實際上,許多先前的研究工作都在嘗試回答這個問題。他們嘗試的方法包括損失函式面貌分析、偏微分方程、演算法動力學分析或最優傳輸理論等。這些方法或研究結果通常都依賴於標籤和輸入分佈的強假設,或者並沒有明示為什麼隨機初始化的一階方法能實現零的訓練損失。
在這一篇論文中,作者們嚴格證明了只要 m 足夠大,且資料是非退化的,那麼使用適當隨機初始化的 a 和 W(0),梯度下降能收斂到全域性最優解,且收斂速度對於二次損失函式是線性的。線性速率也就是說模型能在 K = O(log (1/ε)) 次迭代內搜尋到最優解 W(k),它能令 L(W(K)) ≤ ε。因此,作者理論結果並不僅僅展示了全域性收斂性,同時還為達到期望的準確率提供了量化的收斂率。
分析技術概覽:
-
首先作者直接分析了每一次獨立預測的動力學特徵,即 f(W, a, x_i) for i = 1, . . . , n。他們發現預測空間的動力學是由格拉姆矩陣(Gram matrix)譜屬性決定的,且只要格拉姆矩陣的最小特徵值是下界,那麼梯度下降就服從線性收斂速度。
-
其次作者觀察到格拉姆矩陣僅和啟用模式相關(ReLU 輸入大於零的情況),因此他們就能使用矩陣微擾分析探索是否大多數的模式並沒有改變,因此格拉姆矩陣仍然接近於初始化狀態。
-
最後作者發現過引數化、隨機初始化和線性收斂聯合限制了權重向量 w_r 仍然接近於初始值。
最後作者根據這三個觀察結果與方法嚴格證明了他們的論點,此外他們還表示整個證明僅使用了線性代數與標準概率邊界,因此能推廣到其它深度神經網路。以下我們展示了他們證明出的兩個定理(Theorem 3.1 和 Theorem 4.1),證明過程請查閱原論文。
論文:Gradient DescentProvably Optimizes Over-parameterizedNeural Networks
論文連結:https://arxiv.org/abs/1810.02054
摘要:神經網路一個最神祕的地方是梯度下降等隨機初始化的一階優化方法能實現零的訓練損失,即使目標函式是非凸和不平滑的。本論文揭祕了這一現象,即帶有 ReLU啟用函式的兩層全連線網路為什麼能實現零的訓練損失。對於有 m 個隱藏神經元的淺層神經網路(ReLU啟用函式)和 n 項訓練資料,我們的實驗表示只要 m 足夠大,且資料是非退化的,那麼隨機初始化的梯度下降能收斂到全域性最優解,且收斂速度對於二次損失函式是線性的。
我們的分析基於以下觀察:過引數化和隨機初始化聯合限制了每一個權重向量在所有迭代中都接近於它的初始值,這令我們可以利用比較強的類凸屬性,並展示梯度下降能以全域性線性的速率收斂到全域性最優解。我們相信這些觀點同樣能用於分析深度模型和其它一階梯度優化方法。
3 連續型時間分析
本章展示了分析梯度流(gradient flow)的結果,即將步長設定為無窮小量的梯度下降。在後一部分的離散型時間分析中,我們將進一步修正這一部分的證明,併為帶正下降步長的梯度下降設定一個定量邊界。
形式化而言,我們考慮常微分方程,公式如下所示:
其中 r 屬於 1 到 m。我們將 u_i(t) = f(W(t), a, x_i) 指定為輸入 x_i 在時間 t 上的預測,u(t) = (u_1(t), . . . , u_n(t)) ∈ R^n 指定為時間 t 上的預測向量。本章的主要結果見以下定理:
4 離散型時間分析
本章展示了具有正常數項步長的隨機初始化梯度下降以線性速率收斂到全域性最小值。我們首先介紹主要定理:
定理 4.1 表明,即使目標函式是非平滑和非凸的,具有正常數步長的梯度下降仍然具有線性收斂速度。我們對最小特徵值和隱藏節點數的假設與梯度流定理完全相同。值得注意的是,與之前的研究 [Li and Liang, 2018] 相比,我們對步長的選擇與隱藏節點 m 的數量無關。
ofollow,noindex" target="_blank">理論 優化演算法 SGD 論文
相關資料
Neural Network
(人工)神經網路是一種起源於 20 世紀 50 年代的監督式機器學習模型,那時候研究者構想了「感知器(perceptron)」的想法。這一領域的研究者通常被稱為「聯結主義者(Connectionist)」,因為這種模型模擬了人腦的功能。神經網路模型通常是通過反向傳播演算法應用梯度下降訓練的。目前神經網路有兩大主要型別,它們都是前饋神經網路:卷積神經網路(CNN)和迴圈神經網路(RNN),其中 RNN 又包含長短期記憶(LSTM)、門控迴圈單元(GRU)等等。深度學習是一種主要應用於神經網路幫助其取得更好結果的技術。儘管神經網路主要用於監督學習,但也有一些為無監督學習設計的變體,比如自動編碼器和生成對抗網路(GAN)。
來源:機器之心
Convex optimization
凸優化,或叫做凸最優化,凸最小化,是數學最優化的一個子領域,研究定義於凸集中的凸函式最小化的問題。凸優化在某種意義上說較一般情形的數學最優化問題要簡單,譬如在凸優化中區域性最優值必定是全域性最優值。凸函式的凸性使得凸分析中的有力工具在最優化問題中得以應用,如次導數等。 凸優化應用於很多學科領域,諸如自動控制系統,訊號處理,通訊和網路,電子電路設計,資料分析和建模,統計學(最優化設計),以及金融。在近來運算能力提高和最優化理論發展的背景下,一般的凸優化已經接近簡單的線性規劃一樣直捷易行。許多最優化問題都可以轉化成凸優化(凸最小化)問題,例如求凹函式f最大值的問題就等同於求凸函式 -f最小值的問題。
來源: 維基百科
Deep neural network
深度神經網路(DNN)是深度學習的一種框架,它是一種具備至少一個隱層的神經網路。與淺層神經網路類似,深度神經網路也能夠為複雜非線性系統提供建模,但多出的層次為模型提供了更高的抽象層次,因而提高了模型的能力。
來源:機器之心 Techopedia
Convergence
在數學,電腦科學和邏輯學中,收斂指的是不同的變換序列在有限的時間內達到一個結論(變換終止),並且得出的結論是獨立於達到它的路徑(他們是融合的)。 通俗來說,收斂通常是指在訓練期間達到的一種狀態,即經過一定次數的迭代之後,訓練損失和驗證損失在每次迭代中的變化都非常小或根本沒有變化。也就是說,如果採用當前資料進行額外的訓練將無法改進模型,模型即達到收斂狀態。在深度學習中,損失值有時會在最終下降之前的多次迭代中保持不變或幾乎保持不變,暫時形成收斂的假象。
Loss function
在數學優化,統計學,計量經濟學,決策理論,機器學習和計算神經科學等領域,損失函式或成本函式是將一或多個變數的一個事件或值對映為可以直觀地表示某種與之相關“成本”的實數的函式。
來源: Wikipedia
neurons
(人工)神經元是一個類比於生物神經元的數學計算模型,是神經網路的基本組成單元。 對於生物神經網路,每個神經元與其他神經元相連,當它“興奮”時會向相連的神經元傳送化學物質,從而改變這些神經元的電位;神經元的“興奮”由其電位決定,當它的電位超過一個“閾值”(threshold)便會被啟用,亦即“興奮”。 目前最常見的神經元模型是基於1943年 Warren McCulloch 和 Walter Pitts提出的“M-P 神經元模型”。 在這個模型中,神經元通過帶權重的連線接處理來自n個其他神經元的輸入訊號,其總輸入值將與神經元的閾值進行比較,最後通過“啟用函式”(activation function)產生神經元的輸出。
來源: Overview of Artificial Neural Networks and its Applications. (2018). medium.com.
Objective function
目標函式f(x)就是用設計變數來表示的所追求的目標形式,所以目標函式就是設計變數的函式,是一個標量。從工程意義講,目標函式是系統的效能標準,比如,一個結構的最輕重量、最低造價、最合理形式;一件產品的最短生產時間、最小能量消耗;一個實驗的最佳配方等等,建立目標函式的過程就是尋找設計變數與目標的關係的過程,目標函式和設計變數的關係可用曲線、曲面或超曲面表示。
來源: 百度百科
Stochastic gradient descent
梯度下降(Gradient Descent)是遵循成本函式的梯度來最小化一個函式的過程。這個過程涉及到對成本形式以及其衍生形式的認知,使得我們可以從已知的給定點朝既定方向移動。比如向下朝最小值移動。 在機器學習中,我們可以利用隨機梯度下降的方法來最小化訓練模型中的誤差,即每次迭代時完成一次評估和更新。 這種優化演算法的工作原理是模型每看到一個訓練例項,就對其作出預測,並重復迭代該過程到一定的次數。這個流程可以用於找出能導致訓練資料最小誤差的模型的係數。
來源: 機器之心
Weight
線性模型中特徵的係數,或深度網路中的邊。訓練線性模型的目標是確定每個特徵的理想權重。如果權重為 0,則相應的特徵對模型來說沒有任何貢獻。
來源:Google AI Glossary
Accuracy
分類模型的正確預測所佔的比例。在多類別分類中,準確率的定義為:正確的預測數/樣本總數。 在二元分類中,準確率的定義為:(真正例數+真負例數)/樣本總數

機器之心是國內領先的前沿科技媒體和產業服務平臺,關注人工智慧、機器人和神經認知科學,堅持為從業者提供高質量內容和多項產業服務。
推薦文章