新聞中心

EEPW首頁 > 消費(fèi)電子 > 設(shè)計(jì)應(yīng)用 > 理解神經(jīng)網(wǎng)絡(luò)中的Dropout

理解神經(jīng)網(wǎng)絡(luò)中的Dropout

作者: 時(shí)間:2018-07-24 來源:網(wǎng)絡(luò) 收藏

dropout是指在深度學(xué)習(xí)網(wǎng)絡(luò)的訓(xùn)練過程中,對(duì)于神經(jīng)網(wǎng)絡(luò)單元,按照一定的概率將其暫時(shí)從網(wǎng)絡(luò)中丟棄。注意是暫時(shí),對(duì)于隨機(jī)梯度下降來說,由于是隨機(jī)丟棄,故而每一個(gè)mini-batch都在訓(xùn)練不同的網(wǎng)絡(luò)。

本文引用地址:http://2s4d.com/article/201807/383602.htm

過擬合是深度神經(jīng)網(wǎng)(DNN)中的一個(gè)常見問題:模型只學(xué)會(huì)在訓(xùn)練集上分類,這些年提出的許多過擬合問題的解決方案,其中dropout具有簡單性而且效果也非常良好。

算法概述

我們知道如果要訓(xùn)練一個(gè)大型的網(wǎng)絡(luò),而訓(xùn)練數(shù)據(jù)很少的話,那么很容易引起過擬合,一般情況我們會(huì)想到用正則化、或者減小網(wǎng)絡(luò)規(guī)模。然而Hinton在2012年文獻(xiàn):《Improving neural networks by preventing co-adaptation of feature detectors》提出了,在每次訓(xùn)練的時(shí)候,隨機(jī)讓一半的特征檢測器停過工作,這樣可以提高網(wǎng)絡(luò)的泛化能力,Hinton又把它稱之為dropout。

第一種理解方式是,在每次訓(xùn)練的時(shí)候使用dropout,每個(gè)神經(jīng)元有百分之50的概率被移除,這樣可以使得一個(gè)神經(jīng)元的訓(xùn)練不依賴于另外一個(gè)神經(jīng)元,同樣也就使得特征之間的協(xié)同作用被減弱。Hinton認(rèn)為,過擬合可以通過阻止某些特征的協(xié)同作用來緩解。

第二種理解方式是,我們可以把dropout當(dāng)做一種多模型效果平均的方式。對(duì)于減少測試集中的錯(cuò)誤,我們可以將多個(gè)不同神經(jīng)網(wǎng)絡(luò)的預(yù)測結(jié)果取平均,而因?yàn)閐ropout的隨機(jī)性,我們每次dropout后,網(wǎng)絡(luò)模型都可以看成是一個(gè)不同結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò),而此時(shí)要訓(xùn)練的參數(shù)數(shù)目卻是不變的,這就解脫了訓(xùn)練多個(gè)獨(dú)立的不同神經(jīng)網(wǎng)絡(luò)的時(shí)耗問題。在測試輸出的時(shí)候,將輸出權(quán)重除以二,從而達(dá)到類似平均的效果。

需要注意的是如果采用dropout,訓(xùn)練時(shí)間大大延長,但是對(duì)測試階段沒影響。

帶dropout的訓(xùn)練過程

而為了達(dá)到ensemble的特性,有了dropout后,神經(jīng)網(wǎng)絡(luò)的訓(xùn)練和預(yù)測就會(huì)發(fā)生一些變化。在這里使用的是dropout以p的概率舍棄神經(jīng)元

訓(xùn)練層面

對(duì)應(yīng)的公式變化如下如下:

沒有dropout的神經(jīng)網(wǎng)絡(luò)

有dropout的神經(jīng)網(wǎng)絡(luò)

無可避免的,訓(xùn)練網(wǎng)絡(luò)的每個(gè)單元要添加一道概率流程。

測試層面

預(yù)測的時(shí)候,每一個(gè)單元的參數(shù)要預(yù)乘以p。

除此之外還有一種方式是,在預(yù)測階段不變,而訓(xùn)練階段改變。

關(guān)于這個(gè)比例我查了不少資料,前面的是論文的結(jié)論;后面是keras源碼中dropout的實(shí)現(xiàn)。有博客寫的公式不一致,我寫了一個(gè)我覺得是對(duì)的版本。

Dropout與其它正則化

Dropout通常使用L2歸一化以及其他參數(shù)約束技術(shù)。正則化有助于保持較小的模型參數(shù)值。

使用Inverted Dropout后,上述等式變?yōu)椋?/p>

可以看出使用Inverted Dropout,學(xué)習(xí)率是由因子q=1−p進(jìn)行縮放 。由于q在[0,1]之間,η和q之間的比例變化:

參考文獻(xiàn)將q稱為推動(dòng)因素,因?yàn)槠淠茉鰪?qiáng)學(xué)習(xí)速率,將r(q)稱為有效的學(xué)習(xí)速率。

有效學(xué)習(xí)速率相對(duì)于所選的學(xué)習(xí)速率而言更高:基于此約束參數(shù)值的規(guī)一化可以幫助簡化學(xué)習(xí)速率選擇過程。



關(guān)鍵詞:

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉