重磅 | 機器學習大神Bengio最新論文釋出,專注RNN優化難題,將在NIPS提出新概念fraternal dropout...

weixin_34253539發表於2017-11-08
6011252-64bf68771d05ebc7

編譯 | Troy·Chang、愛心心、reason_W

校對 | reason_W

下個月機器學習領域的頂會Nips就要在大洋彼岸開幕啦,那麼這次的Nips又有什麼值得關注的亮點呢?Bengio在新作中提出了RNN優化的新概念fraternal dropout,通過最小化使用不同的dropout mask的同一個RNN的預測差異,提升RNN對於不同dropout mask的不變性,來對RNN進行優化。模型在對比實驗中取得了非常驚豔的效果,同時在影像標註和半監督任務上也表現不俗,下面就跟隨小編對這篇文章進行一發膜拜吧。

摘要

RNN作為神經網路中的一類十分重要的架構,主要用於語言建模和序列預測。然而,RNN的優化卻相當棘手,比前饋神經網路要難的多,學界也提出了很多技術來解決這個問題。我們在我們中提出了一項叫做fraternal dropout的技術,主要通過利用dropout來實現這個目標。具體來說,我們首先用不同的dropout mask對兩個一模一樣的RNN進行訓練,同時最小化它們(pre-softmax)預測的差異。通過這種方式,我們的正則項會促進RNN的表示對dropout mask的不變性。我們證明了我們的正則項的上限是線性期望dropout目標,而且線性期望dropout目標已經被證明了可以解決dropout在訓練和推理階段的差異導致的較大差異(gap)。我們在兩個基準資料集(Penn Treebank 和Wikitext-2.)上進行了序列建模任務以評價我們的模型,並且獲得了十分驚豔的結果。我們也證明了這種方法可以為影像標註(Microsoft COCO)和半監督(CIFAR-10)任務帶來顯著的效能提升。

1 前言

像LSTM網路(LSTM; Hochreiter & Schmidhuber(1997))和門控迴圈單元(GRU; Chung et al. (2014))這樣的迴圈神經網路都是處理諸如語言生成、翻譯、語音合成以及機器理解等序列建模任務的流行架構。然而由於輸入序列的長度可變性,每個時刻相同轉換運算元的重複應用以及由詞彙量決定的大規模密集嵌入矩陣等問題的存在,與前饋網路相比,這些RNNs網路架構更加難以優化。也正是由於同前饋神經網路相比,RNNs在優化問題上遇到的這些挑戰,使得批歸一化以及它的變體(層歸一化,迴圈批歸一化,迴圈歸一化傳播),儘管確實帶來了很大的效能提升,但其應用依然沒有像它們在前饋神經網路中對應的部件一樣成功(Laurent等, 2016),。同樣的,dropout的樸素應用(Srivastava等,2014)也已經證明在RNNs中是無效的(Zaremba等,2014)。因此,RNNs的正則化技術到目前為止依然是一個活躍的研究領域。

為了解決這些挑戰,Zaremba等人(2014)提出將dropout僅用於多層RNN中的非環式連線。Variational dropout(Gal&Ghahramani,2016))會在訓練期間在整個序列中使用相同的dropoutmask。DropConnect(Wan等,2013)在權重矩陣上應用了dropout操作。Zoneout(Krueger et al等(2016))以類似的dropout方式隨機選擇使用前一個時刻隱藏狀態,而不是使用當前時刻隱藏狀態。類似地,作為批歸一化的替代,層歸一化將每個樣本內的隱藏單元歸一化為具有零均值和單位標準偏差的分佈。迴圈批標準化適用於批標準化,但對於每個時刻使用非共享的mini-batch統計(Cooijmans等,2016)。

Merity等人(2017a)和Merity等(2017b)從另一方面證明啟用正則化(AR)和時域啟用正則化(TAR)也是正則化LSTMs的有效方法。

在我們中,我們提出了一個基於dropout的簡單正則化,我們稱之為fraternal dropout。這個方法將最小化兩個網路預測損失的等權重加權和(這兩個網路由兩個不同dropoutmask在同一個LSTM上得到),並將兩個網路的(pre-softmax)預測結果的L2差作為正則項相加。我們分析證明了,該方法的正則化目標等於最小化來自不同的i.i.d. dropoutmask的預測結果的方差。該方法將會提升預測結果對於不同dropoutmask的不變性。同時,文章也討論了我們的正則項和線性期望dropout(Ma等,2016)、II-model(Laine&Aila,2016)以及啟用正則化(Merity等,2017a)的相關性,並且通過實驗證明了我們的方法與這些相關方法相比帶來的效能提升,第五部分的ablation study將進一步解釋這些方法。

2 FRATERNAL DROPOUT

Dropout在神經網路中是一種強大的正則化方式。它通常在密集連線的層上更有效,因為與引數共享的卷積層相比,它們更容易受到過擬合的影響。出於這個原因,dropout是RNN系列一個重要的正則化方式。然而,dropout的使用在訓練和推理階段之間是存在gap的,因為推理階段假設是用線性啟用的方式來校正因子,因此每個啟用的期望值都會不同。(小編注:為了更好的理解這部分內容,大家可以參考Dropout with Expectation-linear Regularization - https://arxiv.org/abs/1609.08017 ,這篇文章從理論上分析了dropout的ensemble模式和一般的求期望模式的gap。然後提出了將這個gap作為一種正則化方式,也就是說gap的優化目標就是要儘可能小)。另外,帶有dropout的預測模型通常會隨著不同dropout mask而變化。然而,在這種情況下理想的結果就是最後的預測結果不隨著dropout mask的變化而變化。

因此,提出fraternal dropout的想法就是在訓練一個神經網路模型時,保證在不同dropout masks下預測結果的變化儘可能的小。比如,假定我們有一個RNN模型M(θ),輸入是X,θ 是該模型的引數,然後讓

6011252-c00d80b20c5ee19e

表示預測模型,即給定一個在t時間點的輸入樣例X,dropout mask是

6011252-aac1eecc5b2c45ff

當前輸入是zt ,其中zt  是關於輸入X的一個函式,隱藏層的狀態是跟之前時刻有關。同樣的,

6011252-152a473c8270613f

是跟整個輸入目標樣本對(X,Y)在第t時刻的損失值相關的。

在fraternal dropout中,我們採用兩個相同的RNN來同時前饋輸入樣本X。這兩個RNN共享相同的模型引數θ,但是在每個時刻t有不同的dropout masks

6011252-f800df29b008463e

。這樣在每個時間點t,會產生兩個損失值

6011252-ebe49af1e2fdd34b

6011252-4d7b1364d685efd0

6011252-745c7edffc963070

因此,fraternal dropout整體的損失函式就可以由下面公式表示,

6011252-b13c5f1d03d8c8e2

其中κ是正則化係數,m是

的維數,

6011252-69c7f1be9fde1788

是fraternal dropout正則化項,具體表示如下,

6011252-6eec869a1f1fc463
6011252-ab4517354aa922cb

我們採用蒙特卡洛取樣來估計

6011252-734d6165e0617e81

其中,

6011252-461e4ab3249a34f0

和計算

6011252-f4cc124d882df264

值使用的是同一表示式。因此,額外的計算可以忽略不計。

6011252-6f73f7e5b75cd340

我們注意到,如下面所示,我們正則化項的目標等價於最小化在不同dropout masks下,預測函式的方差(附錄中有證明)

備註1  假定

6011252-ce287fb6c17c4ac8

均是獨立同分布的,dropout masks和

6011252-c49a184d450b34fd

是上述的預測函式。

6011252-0dd936bc0af7d276

因此,

6011252-6645071982ab0927

3 相關工作

3.1 線性期望dropout相關工作

Ma et al.(2016)分析研究顯示下述兩者之間的預期誤差(在樣本上)是有上限的,即在所有的dropout mask下的模型的期望值與使用平均mask的期望值之間的誤差。基於這一結論,他們提出了明確地最小化差異(我們在我們的該符號表達中採用了他們的正則式),

6011252-a885240dbc45b924

其中,s是dropout mask。但是,基於可行性考慮,他們提出在實踐中使用下列正則式進行替代,

6011252-9a99002af33fd622

特別地,這個式子是通過在網路中的兩次前饋輸入(分別使用和不使用dropout mask),以及最小化主要網路損失(該損失是在有dropout的情況下的)和前面指定的正則項(但是在無dropout的網路中沒有反向傳播梯度)來實現的。Ma et al.(2016)的目標是最小化網路損失以及期望差異,這個期望差異是指來自獨立的dropout mask的預測值和來自期望的dropout mask的預測值之間的差異。同時,我們的正則專案標的上限是線性期望dropout,如下式所示(附錄中證明):

6011252-ac9650759306c153

結果表明,最小化ELD目標可以間接地最小化我們的正則項。最終如前文所述,他們僅在無dropout的網路中應用了目標損失(target loss)。實際上,在我們的ablation研究中(參見第5節),我們發現通過網路(無dropout)反向傳播目標損失(target loss)會讓優化模型更難。但是,在該設定中,同時反向傳播目標損失(target loss)能夠獲得包括效能增益和收斂增益的網路收益。我們認為由於在所用例項(case)中,網路權重更有可能通過反向傳播更新來達到目標,所以我們的正則項收斂速度會更快。尤其對於權重dropout(Wan et al., 2013)更是如此,因為在這種情況下,dropout權重將不會在訓練的迭代中獲得更新。

3.2 II –model 相關工作

為了實現在半監督分類任務中提高效能的目標,Laine & Aila(2016)提出了II –model。他們提出的模型和我們提出的模型相似,除了他們僅在其中一個網路中應用了目標損失(target loss),並且使用的是依賴時間的權重函式(而我們使用常量k/m),可以等價於是我們模型的深度前饋版本。他們例項的直覺(intuition)是利用未標記的資料來最小化兩種預測上的差異,即兩種使用不同dropout mask的同一網路的預測值。而且,他們也在監督任務中測試了他們的模型,但是無法解釋使用這一正則項帶來的提升。

通過對我們的例項(case)進行分析,我們證明了,最小化該正則項(在II –model中也使用了)同最小化模型預測結果(備註1)中的方差是等價的。此外,我們也證明了正則項同線性期望dropout(命題1)之間的關係。在第5節,我們研究了基於沒有在II –model中使用的兩種網路損失的目標的影響。我們發現在兩個網路中應用目標損失(target loss)將使得網路獲得關鍵性的更快的收斂。最後,我們注意到時域嵌入(temporal embedding ,Laine&Aila(2016)提出的另一模型,聲稱對於半監督學習來說,是比II –model更好的版本)在自然語言處理應用中相當的棘手,因為儲存所有時刻的平均預測值會十分消耗記憶體(因為預測值的數目往往非常大-數以萬計)。還有一點,我們證明了在監督學習的例項(case)中,使用時間依賴的權重函式來代替一個常量值k/m是沒有必要的。因為標記的資料是已知的,我們沒有觀察到Laine&Aila(2016)提到的問題,即當在早期訓練的epoch中太大時,網路會陷入退化。我們注意到尋找一個優化的常量值比調整時間依賴的函式更加容易,這也在我們的例項中進行了實現。

和II –model的方法相似,我們的方法也和其他半監督任務相關,主要有Rasmus et al.(2015)和Sajjadi et al.(2016)。由於半監督學習並不是本文要關注的部分,因此我們參考了Laine&Aila(2016)的更多細節。

6011252-16548a3a6914a402

4 實驗

4.1 語言模型

在語言建模的情形下,我們在兩個基準資料集Penn Tree-bank(PTB)資料集(Marcus等,1993)和WikiText-2(WT2)資料集(Merity等,2016)上測試了我們的模型。預處理操作參考了Mikolov等(2010)(用於PTB語料庫),並且用到了Moses tokenizer(Koehn等,2007)(用於WT2資料集)。

對於這兩個資料集,我們都採用了Merity等人描述的AWD-LSTM 3層架構。 (2017a)。 用於PTB的模型中的引數數量是2400萬,而WT2的引數數量則是3400萬,這是因為WT2詞彙量更大,我們要使用更大的嵌入矩陣。 除了這些差異之外,架構是相同的。

Penn Tree-bank(PTB)詞級任務

我們使用混淆度指標來評估我們的模型,並將我們獲得的結果與現有的最好結果進行比較。表1顯示了我們的結果,在現有benchmark上,我們的方法達到了最先進的效能。

WikiText-2詞級任務

在WikiText-2語言建模任務的情況下,我們的表現優於目前的最新技術水平。 表2列出了最終結果。關於實驗的更多細節可以在5.4節中找到。

4.2 影像標註

我們也把fraternal dropout應用到了影像標註任務上。我們使用著名的show and tell模型作為baseline(Vinyals等,2014)。這裡要強調的是,在影像標註任務中,影像編碼器和句子解碼器架構通常是一起學習的。但既然我們想把重點放在在RNN中使用fraternal dropout的好處上,我們就使用了凍結的預訓練ResNet-101(He 等,2015)模型作為我們的影像編碼器。這也就意味著我們的結果不能與其他最先進的方法直接比較,但是我們提供了原始方法的結果,以便讀者可以看到我們的baseline良好的表現。表3提供了最終的結果。

我們認為,在這個任務中,κ值較小時,效果最好,因為影像標註編碼器在開始時就被給予了所有資訊,因此連續預測的方差會小於在無條件的自然語言處理任務中的方差。Fraternal dropout可能在這裡是有利的,主要是因為它對不同mask的平均梯度進行了平均,從而更新權重頻率更快。

5 ABLATION STUDIES (模型簡化測試)

在本節中,我們的目標是研究與我們方法密切相關的現有方法。expectation linear dropout (Ma et al. ,2016),Π-model(Laine & Aila 2016)和activity regularization(Merity et al. 2017b),我們所有的ablation studies(小編注:ablation study是為了研究模型中所提出的一些結構是否有效而設計的實驗)都是採用一個單層LSTM,使用相同的超引數和模型結構。

5.1 線性期望DROPOUT (ELD)

第二部分已經討論了我們法方法和ELD方法的聯絡。這裡我們進行實驗來研究使用ELD正則化和我們的正則化(FD)效能上的差異。除了ELD,我們還研究了一個ELD的改進版ELDM。ELDM就是跟FD的用法相似,將ELD應用在兩個相同的LSTM上(在原作者的實驗中只是在一個LSTM上用了dropout)。因此我們得到了一個沒有任何正則化方式的基準模型。圖1畫出了這幾種方法訓練過程的曲線。與其他方法相比,我們的正則化方法在收斂性上表現的更好。而在泛化效能上,我們發現FD和ELD相似,而基準模型和ELDM表現得更差。有趣的是,如果一起看訓練和驗證曲線,ELDM似乎還有待進一步的優化。

5.2 Π-MODEL

因為Π-MODEL和我們的演算法相似(即使它是為前饋網路中的半監督學習而設計的),所以我們為了明確我們演算法的優勢,分別從定性和定量的角度研究了它們在效能上的差異。首先,基於PTB(Penn Treebank Dataset)任務,我們執行了單層LSTM和3層AWD-LSTM來在語言建模上對兩種演算法進測試比較。圖1和2顯示了測試結果。我們發現我們的模型比Π-MODEL收斂速度明顯加快,我們相信這是因為我們採用兩個網路(Π-MODEL相反)反向傳播目標損失,導致了更多的採用基於目標梯度的引數更新。

6011252-6d31b94a6b2ae9c5

儘管我們設計的演算法是專門來解決RNN中的問題,但為了有一個公平的對比,我們在半監督任務上也與Π-MODEL做了對比。因此,我們使用了包含10類由32x32大小影像組成的CIFAR-10資料集。參照半監督學習文獻中通常的資料拆分方法,我們使用了4000張標記的圖片和41000張無標記圖片作為訓練集,5000張標記的圖片做驗證集合10000張標記的圖片做測試集。我們使用了原版的56層殘差網路結構,網格搜尋引數

6011252-66f0bff0c5543867

dropout率在{0.05,0.1,0.15,0.2},然後保持剩下的超引數不變。我們另外測驗了使用無標記資料的重要性。表4給出了結果。我們發現我們演算法的表現和Π-MODEL幾乎一樣。當無標記資料沒有使用時,fraternal dropout僅僅比普通的dropout表現得要稍微好些。

5.3啟用正則化(AR)和時域啟用正則化(TAR)分析

Merity et al.(2017b)的作者們研究了啟用正則化(AR)的重要性,和在LSTM中的時域啟用正則化(TAR),如下所示,

6011252-e56c998b7db55a2c
6011252-0af4bfe8a13826ee

表4:基於ResNet-56模型在改變的(半監督任務)CIFAR-10資料集的準確率。我們發現我們提出的演算法和II模型有同等的表現。當未標記資料沒有被使用,傳統dropout會破壞效能,但是fraternal dropout提供了略好的結果。這意味著當缺乏資料和不得不使用額外的正則方法時,我們的方法是有利的。

6011252-6fc9c13d6555bf5c

圖4:Ablation研究:使用PTB詞級模型的單層LSTM(10M引數)的訓練(左)和驗證(右)混淆度。顯示了基準模型、時域啟用正則化(TAR)、預測模型(PR)、啟用正則化(AR)和fraternal dropout(FD,我們的演算法)的學習動態曲線。我們發現與對照的正則項相比,FD收斂速度更快,泛華效能更好。

其中,是LSTM在時刻t時的輸出啟用(因此同時取決於當前輸入和模型引數)。注意AR和TAR正則化應用在LSTM的輸出上,而我們的正則化應用在LSTM的pre-softmax輸出上。但是,因為我們的正則項能夠分解如下:

6011252-7c0ea48dbaa4ad22

並且,封裝了一個項和點積項,我們通過實驗確定了在我們的方法中的提升並不是單獨由正則項決定的。TAR目標也有一個相似的爭論。我們在上執行網格搜尋,包括在Merity et al.(2017b)中提到的超引數。我們在提出的正則項中使用。而且,我們也在一個正則式為正則項(PR)上進行了比較,以進一步排除僅來自於正則項的任何提升。基於這一網格搜尋,我們選擇了在驗證集上對所有正則化來說最好的模型,另外還報告了一個未使用已提及的4種正則化的基準模型。學習動態如圖4所示。與其他方法相比,我們的正則項在收斂和概括期間都表現更好。當描述的任意正則項被應用時,平均隱藏態啟用減少(如圖3所示)。

5.4 LANGUAGE MODELING FAIR COMPARISON(語言模型比較)

正如4.1小節所述,由於Melis等人(2017)的影響,我們要確保fraternal dropout能夠超越現有的方法不僅僅是因為廣泛的超引數網格搜尋。因此,在我們的實驗中,我們保留了原始檔案中提到的絕大多數超引數,即嵌入和隱藏狀態大小,梯度裁剪值,權重衰減以及用於所有dropout層的值(詞向量上的dropout,LSTM層間的輸出,最終LSTM的輸出和嵌入dropout)。

6011252-c45f5c3edc1452f4

當然,也進行了一些必要的變化:

AR和TAR的係數必須改變,因為fraternal dropout也影響RNN的啟用(如5.3小節所述) - 我們沒有進行網格搜尋來獲得最好的值,而是簡單地去除了AR和TAR正則項。

由於我們需要兩倍的記憶體,所以batch的size被減小了一半,從而讓模型產生大致相同的記憶體量需求,並且可以安裝在同一個GPU上

最後一項變動的地方是改變ASGD的非單調間隔超引數n。我們在n∈{5,25,40,50,60}上進行了一個網格搜尋,並且在n取最大值(40,50和60)的時候獲得了非常相似的結果。因此,我們的模型使用普通SGD優化器的訓練時間要長於原始模型。

為了確保我們的模型效果,我們在PTB資料集上通過使用不同種子的原始超引數(不進行微調)執行了10個學習程式來計算置信區間。平均最佳驗證混淆度為60.64±0.15,最小值為60.33。測試混淆度分別為58.32±0.14和58.05。我們的得分(59.8分驗證混淆度和58.0分測試混淆度)比最初的dropout得分好。

由於計算資源有限,我們在WT2資料集對fraternal dropout執行了一次單獨的訓練程式。在這個實驗中,我們使用PTB資料集的最佳超引數(κ= 0.1,非單調間隔n = 60,batch size減半)。

我們證實使用fine-tuning會對ASGD有好處(Merity等,2017a)。然而,這是一個非常耗時的做法,因為在這個附加的學習過程中可能會使用不同的超引數,所以通過廣泛的網格搜尋而獲得更好的結果的可能性更高。因此,在我們的實驗中,我們使用與官方儲存庫中實施的相同的fine-tunin程式(甚至沒有使用fraternal dropout)。表5中列出了fine-tuning的重要性。

我們認為,執行網格聯合搜尋所有超引數可能會獲得更好的結果(改變dropout率可能是尤其有利,因為我們的方法就明確地使用了dropout)。然而,我們這裡的目的是排除僅僅因為使用更好的超引數而表現更好的可能性。

6 結論

在論文中,我們提出了一個叫做fraternal dropout的簡單RNNs正則化方法,通過作為正則項來減少模型在不同的dropout mask上預測結果的方差。通過實驗證明了我們的模型具有更快的收斂速度,同時在基準語言建模任務上取得了最先進的成果。 我們也分析研究了我們的正則項和線性期望dropout (Ma 等,2016)之間的關係。我們進行了一系列的ablation 研究,從不同的角度評估了模型,並從定性和定量的角度將其與相關方法進行了仔細比較。

論文連結 Fraternal Dropout

https://arxiv.org/abs/1711.00066

相關文章