《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 業(yè)界動態(tài) > 學界 | Hinton提出的經(jīng)典防過擬合方法Dropout,只是SDR的特例

學界 | Hinton提出的經(jīng)典防過擬合方法Dropout,只是SDR的特例

2018-08-27

Hinton 等人提出的 Dropout 方案在避免神經(jīng)網(wǎng)絡過擬合上非常有效,而本文則提出,Dropout 中的按概率刪除神經(jīng)元的原則只是二項隨機變量的特例。也就是說,研究者用神經(jīng)元權重的連續(xù)分布替換了原先的二值(零/非零)分布,實現(xiàn)了廣義的 Dropout——隨機 delta 規(guī)則(SDR)。基準實驗表明,SDR 能顯著降低分類誤差和損失值,并且收斂得更快。


1 引言


多層神經(jīng)網(wǎng)絡在文本、語音和圖像處理的多種基準任務上都取得了令人矚目的效果。盡管如此,這些深層神經(jīng)網(wǎng)絡也會產(chǎn)生難以搜索的高維、非線性超參數(shù)空間,進而導致過擬合以及泛化能力差。早期的神經(jīng)網(wǎng)絡使用反向傳播算法,它們會由于缺乏足夠的數(shù)據(jù)、梯度損失恢復以及很可能陷入性能較差的局部最小值而失效。深度學習(Hinton et al,2006)引入了一些創(chuàng)新技術來減少、控制這些過擬合和過度參數(shù)化問題,包括用線性整流單元(ReLU)來減少連續(xù)梯度損失,用 Dropout 技術避免陷入局部最小值,以及通過有效的模型平均技術來增強泛化能力。盡管數(shù)據(jù)海嘯可以為各種各樣的分類和回歸任務提供大量的數(shù)據(jù),在本文中,作者仍將重點討論深層神經(jīng)網(wǎng)絡的過度參數(shù)化問題。Dropout 可以用來緩解過度參數(shù)化以及過度參數(shù)化引起的深度學習應用過擬合問題,還能夠避免陷入性能較差的局部最小值。具體而言,Dropout 實現(xiàn)了一個概率為 p(有偏的 0-1 抽簽法)的伯努利隨機變量,在每一輪更新時從網(wǎng)絡架構中隨機刪除隱藏單元及其連接,從而產(chǎn)生一個稀疏的網(wǎng)絡架構——其中剩余權重被更新并保留到下一個 dropout 步驟中。在學習結束時,通過計算每個權重 p_w_ij 的期望值,重構了深度學習網(wǎng)絡,這樣的做法近似于對指數(shù)級數(shù)量的一組神經(jīng)網(wǎng)絡進行模型平均。在大多數(shù)情況下,帶 Dropout 機制的深度學習能夠在常見的基準測試中降低 50% 以上的誤差率。


在本文余下的部分中,作者將介紹一種通用類型的 Dropout 技術,它能夠在權值級別上進行操作并在每輪更新中注入依賴于梯度的噪聲,這種技術被稱為隨機 delta 規(guī)則(SDR,參見 Murray & Andrews, 1991)。SDR 為每個權重實現(xiàn)了一個隨機變量,并且為隨機變量中的每個參數(shù)提供了更新規(guī)則,本文使用了帶自適應參數(shù)的高斯分布(均值為μ_w_ij,標準差為 σ_w_ij)。盡管所有的 SDR 可以作用于任意的隨機變量(gamma 分布、beta 分布、二項分布等)。本文將說明,Dropout 是一個帶有固定參數(shù) (np, np(1 ? p)) 的二項隨機變量的特例。最后,作者將用高斯 SDR 在標準基準(例如,CIFAR-10 和 CIFAR-100)中測試 DenseNet 框架,并且說明其相對于二項分布的 Dropout 具有很大的優(yōu)勢。


論文:Dropout is a special case of the stochastic delta rule: faster and more accurate deep learning 

微信圖片_20180827220805.jpg

論文地址:https://arxiv.org/pdf/1808.03578v1.pdf


摘要:多層神經(jīng)網(wǎng)絡在文本、語音和圖像處理的各種基準任務中都取得了令人矚目的效果。然眾所周知,層次模型中的非線性參數(shù)估計存在過擬合問題。Dropout(Srivastava, et al 2014, Baldi et al 2016)是一種用來解決這種過擬合以及相關問題(局部最小值、共線性、特征發(fā)現(xiàn)等)的方法。這種方法在每輪更新中通過帶有概率 p 的伯努利隨機變量刪除隱藏單元。在本文中,我們說明了 Dropout 是一種更加通用的模型特例,這種被稱為隨機 delta 規(guī)則(「SDR」, Hanson, 1990)的模型于 1990 年被首次發(fā)表。SDR 用一個均值為μ_w_ij、標準差為 σ_w_ij 的隨機變量將網(wǎng)絡中的權值參數(shù)化。這些隨機變量在每一次前饋激活中通過采樣得到,從而建立指數(shù)級數(shù)量的共享權值的潛在網(wǎng)絡。這兩個參數(shù)都會根據(jù)預測誤差而更新,從而實現(xiàn)了反映預測誤差局部歷史的權值噪聲注入和高效的模型平均。因此,SDR 對每個權值實現(xiàn)了一個局部梯度依賴的模擬退火,從而收斂為一個貝葉斯最優(yōu)網(wǎng)絡。使用改進版的 DenseNet 在標準基準(CIFAR)上進行測試的結果顯示,SDR 相較于標準 dropout 誤差率降低了 50% 以上,損失也減少了 50% 以上。此外,SDR 的實現(xiàn)在指定的解決方案上收斂得更快,而且,采用 SDR 的 DenseNet-40 只需要訓練 15 個 epoch 就實現(xiàn)誤差率為 5% 的目標,而標準 DenseNet-40 實現(xiàn)這一目標需要訓練 94 個 epoch。

微信圖片_20180827220829.jpg

5 實驗結果


表 1:采用 SDR 的 DenseNet 與采用 dropout 的 DenseNet 誤差率對比


上述結果表明,在 DenseNet 測試中,用 SDR 替換 dropout 技術會使所有 CIFAR 基準測試的誤差減少 50 % 以上,降幅高達 64%。原始 DenseNet 實現(xiàn)的誤差結果低于原始 DenseNet 論文中的誤差結果,因為我們發(fā)現(xiàn)使用更大的批處理會帶來更高的總體準確率。

微信圖片_20180827220850.jpg

表 2:達到訓練誤差率為 15%,10%,5% 分別所需的 epoch 數(shù)量。


如表 2 所示,使用 SDR 后,在訓練中將誤差率降到 15%,10%,5% 所需的時間明顯縮短。使用了 SDR 的 DenseNet-40 只需要原本 1/6 的 epoch 就能夠取得 5% 的誤差率,而使用了 SDR 的 DenseNet-100 則只需原來 60% 的 epoch 就能實現(xiàn) 5% 的誤差率。

微信圖片_20180827220913.jpg

圖 3:采用 dropout 的 DenseNet-100 訓練 100 個 epoch 之后的準確率(橙色曲線)和采用 SDR 的 DenseNet-100 訓練 100 個 epoch 的準確率(藍色曲線)。比起 dropout,SDR 不僅能夠更快地提高訓練準確率(訓練 17 個 epoch 達到了 96% 的準確率,drouout 達到相同的準確率需要 33 個 epoch),而且還能夠在訓練 40 個 epoch 后達到 98% 的準確率。

微信圖片_20180827220943.jpg

圖 4:表示采用 SDR 的 DenseNet-100 的第 21 層第 1 塊的權重值頻率的直方圖,其中每個切片都是來自訓練一個 epoch 的 snapshot,而最上面的切片是來自第一個 epoch 的 snapshot。在訓練 100 個 epoch 的過程中,隨著權值的標準差趨近于零,曲線變窄。


2 隨機 delta 規(guī)則


眾所周知,實際的神經(jīng)傳播包含噪聲。如果一個皮質分離的神經(jīng)元周期性地受到完全相同的刺激,它永遠不會產(chǎn)生相同的反應(如燒傷等刺激)。設計 SDR 的部分原因是生物系統(tǒng)中通過神經(jīng)元傳遞信號的隨機性。顯然,平滑的神經(jīng)速率函數(shù)是建立在大量的刺激試驗基礎上的。這讓我們想到了一種實現(xiàn)方法,即兩個神經(jīng)元之間的突觸可以用一個具有固定參數(shù)的分布來建模。與這種分布相關的隨機變量在時域內(nèi)可能是一個 Gamma 分布(或在分級響應中,參見泊松分布)。在這里,我們假設有一個符合中心極限定理的獨立同分布集合,并且采用高斯分布作為一般形式。盡管如此,對于獨立成分分析(ICA)來說,同等情況下,長尾分布可能更具優(yōu)勢。

微信圖片_20180827221005.jpg

圖 1:SDR 采樣


如圖 1 所示,我們按照圖中的方法實現(xiàn)采用均值為 μwij、標準差為 σwij 的高斯隨機變量的 SDR 算法。因此,將從高斯隨機變量中采樣得到每個權值,作為一種前饋運算。實際上,與 Dropout 類似,指數(shù)級別的網(wǎng)絡集合通過訓練期間的更新采樣獲取。與 Dropout 在這一點上的區(qū)別是,SDR 會調(diào)整每個權重上附加的隱藏單元的權重和影響,以便在更新時隨誤差梯度自適應地變化。這里的效果也與 Dropout 相類似,除了每個隱藏單元的響應會分解到權重上(與分類誤差對信用分配的影響成比例)。因此,每個權重梯度本身也是基于隱藏單元預測性能的隨機變量,它讓系統(tǒng)能夠:(1)在相同的例程/刺激下接受多值響應假設,(2)保留一個預測歷史,與 Dropout 不同,Dropout 是局部的隱藏單元權重,在某個集合上是有條件的,甚至是一個特定的例程(3)可能返回由于貪婪搜索得到的性能較差的局部最小值,但是同時也遠離了更好的局部最小值。局部噪聲注入的結果對網(wǎng)絡的收斂具有全局影響,并且為深度學習提供了更高的搜索效率。最后一個優(yōu)點是,如 G. Hinton 所說,局部噪聲注入可能通過模型平均平滑誤差表面的溝壑,使模型能夠更快更穩(wěn)定地收斂到更好的局部最小值。

微信圖片_20180827221029.jpg

圖 2:Dropout 采樣


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權者。如涉及作品內(nèi)容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。