谷歌大腦發現神經網路的「牛頓法」:網路足夠寬,就可以簡化成線性模型
曉查 發自 凹非寺
量子位 報道 | 公眾號 QbitAI
來自谷歌大腦的研究者發現,對於寬神經網路,深度學習動態可以大大簡化,並且在無限寬度限制條件下,它們由網路初始參數的一階泰勒展開的線性模型所決定。
所謂的無限寬度(infinite width),指的是完全連接層中的隱藏單元數,或卷積層中的通道數量有無窮多。
雖然這些理論結果只是在無限寬度條件下成立,但谷歌發現原始網路的預測與線性版本的預測之間的一致性極好。而且對不同的體系結構、優化方法和損失函數都適用。
隨著網路寬度變大,神經網路可以被其初始化參數的一階泰勒展開項所取代。 而一階線性模型動態的梯度下降是可解析的。
我們將這項研究的內容簡單介紹如下:
實驗方法
本文採用完全連接、卷積和寬ResNet體系結構,使用足夠小的學習速率,用完全和小批(mini-batch)梯度下降來訓練模型,對比原始模型和線性模型之間的差異。
最後在CIFAR-10 (馬和飛機)上進行二元分類,以及在MNIST和CIFAR-10上進行十種分類。
理論原理
在高等數學中,有一種叫做「牛頓法」的方程近似解法。當所選區域足夠小,就能用直線代替曲線,即一階泰勒展開求近似解。在神經網路中,也有這麼一種方法。
對於任何神經網路參數都可以做泰勒展開,即初始值加無限的多項式形式。當網路層的寬度趨於無限的時候,只需要展開中的第一個線性項,就成了線性模型。
假設D是訓練集,X和Y分別表示輸入和標註。這個完全連接的前饋網路有L個隱藏層、寬度為n。
在監督學習中,通過參數θ最小化經驗損失,它是一個隨時間變化的參數。f為輸出的logits。
線性化網路
我們將神經網路的輸出做一階泰勒展開:
ωt定義為θt ? θ0,即參數θ相對於初始值的變化。輸出包含兩個部分,第一項是神經網路輸出的初始值,在訓練過程中不會改變;第二項是訓練過程中的改變數。
ωt和ft隨時間的變化滿足以下常微分方程(ODE):
無限寬度的高斯過程
隨著隱藏層寬度的增加,更加統計學中的中心極限定理,輸出的分別將趨於高斯分布。
logits f(x)的平均值和標準差滿足以下方程:
結果討論
當寬度無限且數據集有限時,神經網路的訓練動態與線性化的訓練動態相匹配。
在以前的實驗中,選擇足夠寬的網路,能實現神經網路和較小數據集線性化之間較小的誤差。
谷歌研究了如何在在模型寬度度和數據集大小在相當大的一個取值範圍內,讓線性化動態和真實動態之間取得一致性。
最終,谷歌考察了測試集上網路的預測輸出和真實輸出之間的均方根誤差( RMSE )。RMSE會隨著時間的推移而增加,直到訓練結束時達到某個最終值。
我們可以看出,隨著網路寬度的增加,二者之間的誤差逐漸減小。對於全連接網路來說,這種下降的速率大約為1/N,對於卷積和WRN體系結構來說,則下降的比例更為模糊。
此外,我們還可以看出,誤差隨著數據集大小,呈近似線性增長。儘管誤差隨著會數據集增加,但可以通過相應地增加模型大小來抵消這一點。
作者系網易新聞·網易號「各有態度」簽約作者
—完—
加入社群
量子位現開放「AI 行業」社群,面向AI行業相關從業者,技術、產品等人員,根據所在行業可選擇相應行業社群,在量子位公眾號(QbitAI)對話界面回復關鍵詞「行業群」,獲取入群方式。行業群會有審核,敬請諒解。
此外,量子位AI社群正在招募,歡迎對AI感興趣的同學,在量子位公眾號(QbitAI)對話界面回復關鍵字「交流群」,獲取入群方式。
誠摯招聘
量子位正在招募編輯/記者,工作地點在北京中關村。期待有才氣、有熱情的同學加入我們!相關細節,請在量子位公眾號(QbitAI)對話界面,回復「招聘」兩個字。
喜歡就點「好看」吧 !
※用英偉達StyleGAN生成老婆吧,他生成了一百多隻明日香
※Google智能硬體偷藏麥克風,用戶炸毛後道歉:不是不說,是真忘了
TAG:量子位 |