Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift

1. 摘要

  • 訓(xùn)練深層的神經(jīng)網(wǎng)絡(luò)非常困難,因為在訓(xùn)練的過程中奶躯,隨著前面層數(shù)參數(shù)的改變,每層輸入的分布也會隨之改變亿驾。這需要我們設(shè)置較小的學(xué)習(xí)率并且謹(jǐn)慎地對參數(shù)進(jìn)行初始化嘹黔,因此訓(xùn)練過程比較緩慢。

  • 作者將這種現(xiàn)象稱之為 internal covariate shift莫瞬,通過對每層的輸入進(jìn)行歸一化來解決這個問題儡蔓。

  • 引入 BN 后,我們可以不用太在意參數(shù)的初始化疼邀,同時使用更大的學(xué)習(xí)率浙值,而且也會有正則化的效果,在一些情況下可以不用再使用 Dropout檩小。

2. 介紹

因為網(wǎng)絡(luò)中每一層的輸入都受到前面所有層參數(shù)的影響开呐,因此參數(shù)的一個小的改變將會隨著網(wǎng)絡(luò)加深而被逐漸放大。在這樣的情況下规求,每一層網(wǎng)絡(luò)都需要一直去適應(yīng)新的輸入分布筐付,訓(xùn)練過程也就變得很慢。

考慮如下的網(wǎng)絡(luò)計算

F_1F_2 是任意的變換阻肿,\Theta_1\Theta_2 是需要學(xué)習(xí)的參數(shù)瓦戚。學(xué)習(xí) \Theta_2 可以看作是輸入 x=F_1(u, \Theta_1) 被傳入子網(wǎng)絡(luò)

因此,如果 x 的分布保持不變的話丛塌, \Theta_2 就不用去重新適應(yīng)來補(bǔ)償 x 分布的變化较解。

另一方面畜疾,如果我們采用 Sigmoid 激活函數(shù)的話,隨著網(wǎng)絡(luò)加深印衔,我們很容易落入到飽和區(qū)域啡捶,容易產(chǎn)生梯度消失現(xiàn)象,減緩訓(xùn)練過程奸焙。但是瞎暑,如果我們能夠確保非線性輸入的分布維持穩(wěn)定的話,優(yōu)化就不容易陷入到飽和區(qū)域与帆,從而能夠加速訓(xùn)練了赌。

3. 小批量歸一化

針對每一層的所有輸入進(jìn)行白化代價非常高并且不是處處可微,因此作者進(jìn)行了兩個必要的簡化玄糟。

第一勿她,我們獨立地歸一化一層中的每一個特征,讓它們具有零均值標(biāo)準(zhǔn)方差阵翎。針對一個 d 維的輸入 x=(x^{(1)}...x^{(d)})逢并,我們將分別對每一維進(jìn)行歸一化。

但是贮喧,這樣簡單地歸一化每個輸入會改變當(dāng)前層網(wǎng)絡(luò)的表達(dá)能力。比如猪狈,歸一化 Sigmoid 函數(shù)的輸入將會使它們落入激活函數(shù)的線性區(qū)域箱沦。為了解決這個問題,我們要保證嵌入到網(wǎng)絡(luò)中的變換能夠表示恒等變換雇庙。對此谓形,我們引入一對參數(shù) \gamma^{(k)}, \beta^{(k)} 來對歸一化后的值再進(jìn)行縮放和平移。

這樣疆前,通過設(shè)定 \gamma^{(k)}=\sqrt {Var[x^{(k)}]}, \beta^{(k)}=E[x^{(k)}] 寒跳,如果原始激活值是最優(yōu)的話,我們也能夠恢復(fù)到原有狀態(tài)竹椒。

第二童太,用小批量樣本來產(chǎn)生對每個激活值均值和方差的估計。針對 m 個樣本的小批量胸完,歸一化變換如下所示:

在訓(xùn)練過程中书释,我們需要計算 BN 變換參數(shù)的梯度來進(jìn)行反向傳播,根據(jù)鏈?zhǔn)椒▌t赊窥,有

因此爆惧,BN 在網(wǎng)絡(luò)中引入了對激活值的歸一化,并且是一個可微的變換锨能。這樣扯再,每一層都可以在同樣的分布上持續(xù)學(xué)習(xí)而不用擔(dān)心內(nèi)部偏移問題芍耘,所以可以加速訓(xùn)練過程。最后熄阻,在歸一化后學(xué)習(xí)到的仿射變換允許網(wǎng)絡(luò)表示恒等變換斋竞,因此也保留了網(wǎng)絡(luò)的容量也即表示能力。

4. 測試

雖然對小批量的激活值進(jìn)行歸一化在訓(xùn)練時是非常有效的饺律,但在測試時卻是不必要也不可取的窃页,我們想讓輸出只確定地依賴于輸入。因此复濒,一旦訓(xùn)練好了一個網(wǎng)絡(luò)脖卖,我們用訓(xùn)練時總體的均值和方差來進(jìn)行歸一化。

忽略 \epsilon巧颈,這些歸一化后的激活值就具有了和訓(xùn)練時一樣的零均值和標(biāo)準(zhǔn)方差畦木。我們采用無偏的方差估計

期望是根據(jù)訓(xùn)練過程中所有大小為 m 的小批量樣本計算的,\sigma_B^2 代表它們的方差砸泛。同時十籍,我們使用滑動平均來跟蹤訓(xùn)練過程中每個小批量的均值和方差。

5. 在全連接和卷積網(wǎng)絡(luò)中引入 BN

針對全連接網(wǎng)絡(luò)唇礁,我們在非線性之前加入 BN 變換勾栗,對 x=Wu+b 進(jìn)行歸一化。注意到盏筐,偏置 b 可以被忽略围俘,因為在后序的減去均值的過程中它的作用被抵消了。因此琢融,就變成了

z=g(Wu+b) \to z=g(BN(Wu))

對于 x 的每一個維度我們學(xué)習(xí)一對參數(shù) \gamma^{(k)}, \beta^{(k)} 界牡。

針對卷積網(wǎng)絡(luò),我們想要歸一化保持卷積的特性漾抬,因此宿亡,不同樣本的所有位置的同一個特征圖用同樣的方式進(jìn)行歸一化。對于一個大小為 m 的小批量樣本和大小為 p×q 的特征圖纳令,有效的小批次為

m'=m\cdot pq

對于每一個特征圖我們學(xué)習(xí)一對參數(shù) \gamma^{(k)}, \beta^{(k)} 挽荠。

6. BN 允許更高的學(xué)習(xí)率

在傳統(tǒng)的網(wǎng)絡(luò)中,太高的學(xué)習(xí)率可能會導(dǎo)致梯度消失或者爆炸平绩,也會使網(wǎng)絡(luò)陷入在糟糕的局部最優(yōu)解坤按。但引入 BN 后,它會阻止參數(shù)的小的變化被放大成激活值和梯度的更大變化或者次優(yōu)變化馒过,比如說不會讓訓(xùn)練陷入到非線性的飽和區(qū)域臭脓。

BN 也使得訓(xùn)練對參數(shù)的規(guī)模更適應(yīng)。正常情況下腹忽,大的學(xué)習(xí)率會增大參數(shù)来累,然后放大反向傳播的梯度導(dǎo)致模型爆炸砚作。但是,引入 BN 后嘹锁,反向傳播不受參數(shù)的規(guī)模影響葫录。實際上,對于標(biāo)量 a领猾,有

x_i = Wu_i
\mu = \frac{1}{m}\sum_{i=1}^{m}x_i
\sigma^2 = \frac{1}{m}\sum_{i=1}^{m}(x_i-\mu)^2
\hat x_i = \frac{x_i-\mu}{\sqrt{\sigma^2+\epsilon}}
y_i =\gamma \hat x_i+\beta=BN[Wu_i]

所以米同,BN[Wu] = BN[(aW)u]\hat x_i 求取時分子分母都放大 a 倍摔竿。反向傳播時面粮,有

\frac{\partial BN[(aW)u]}{\partial x} = \frac{1}{a} \cdot \frac{\partial BN[Wu]}{\partial x}

\tag{1}\frac{\partial BN[(aW)u]}{\partial u} = \frac{\partial BN[Wu]}{\partial u}
\tag{2}\frac{\partial BN[(aW)u]}{\partial (aW)} = \frac{1}{a} \cdot \frac{\partial BN[Wu]}{\partial W}

由式 (1) 可以看到,參數(shù)的規(guī)模不影響梯度的反向傳播继低。而且熬苍,由式 (2) 知,較大的參數(shù)將會獲得較小的梯度袁翁,BN 能夠穩(wěn)定參數(shù)的增長柴底。

7. BN 的正則化效果

當(dāng)使用 BN 進(jìn)行訓(xùn)練時,小批次中的一個樣本會與其他樣本結(jié)合在一起被傳入網(wǎng)絡(luò)中粱胜,網(wǎng)絡(luò)不再會為某個給定的訓(xùn)練樣例生成確定值柄驻。在實驗中,作者發(fā)現(xiàn)這種效應(yīng)有利于網(wǎng)絡(luò)的泛化焙压。引入 BN 后鸿脓,Dropout 可以被移除或減少作用。

8. 加速 BN 網(wǎng)絡(luò)的訓(xùn)練

僅僅在網(wǎng)絡(luò)中添加 BN 不能充分利用這種方法的優(yōu)越性冗恨,除此之外答憔,作者采用了以下策略:

  • 增大學(xué)習(xí)率
  • 移除 Dropout
  • 減小 L2 正則化權(quán)重
  • 加快學(xué)習(xí)率衰減
  • 移除局部響應(yīng)歸一化
  • 更徹底地打亂訓(xùn)練數(shù)據(jù)味赃,防止同樣的數(shù)據(jù)總出現(xiàn)在同一個批次中
  • 減少光度畸變

9. 實驗結(jié)果

可以看到掀抹,在 MNIST 數(shù)據(jù)集上,引入 BN 后網(wǎng)絡(luò)網(wǎng)絡(luò)收斂很快心俗,并且輸入的分布更加穩(wěn)定傲武。

在 ImageNet 數(shù)據(jù)集上,引入 BN 后很快就達(dá)到了原來 Inception 網(wǎng)絡(luò)取得的準(zhǔn)確率城榛。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末揪利,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子狠持,更是在濱河造成了極大的恐慌疟位,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,682評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件喘垂,死亡現(xiàn)場離奇詭異甜刻,居然都是意外死亡绍撞,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,277評論 3 395
  • 文/潘曉璐 我一進(jìn)店門得院,熙熙樓的掌柜王于貴愁眉苦臉地迎上來傻铣,“玉大人,你說我怎么就攤上這事祥绞》侵蓿” “怎么了?”我有些...
    開封第一講書人閱讀 165,083評論 0 355
  • 文/不壞的土叔 我叫張陵蜕径,是天一觀的道長两踏。 經(jīng)常有香客問我,道長丧荐,這世上最難降的妖魔是什么缆瓣? 我笑而不...
    開封第一講書人閱讀 58,763評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮虹统,結(jié)果婚禮上弓坞,老公的妹妹穿的比我還像新娘。我一直安慰自己车荔,他們只是感情好渡冻,可當(dāng)我...
    茶點故事閱讀 67,785評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著忧便,像睡著了一般族吻。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上珠增,一...
    開封第一講書人閱讀 51,624評論 1 305
  • 那天超歌,我揣著相機(jī)與錄音,去河邊找鬼蒂教。 笑死巍举,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的凝垛。 我是一名探鬼主播懊悯,決...
    沈念sama閱讀 40,358評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼梦皮!你這毒婦竟也來了炭分?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,261評論 0 276
  • 序言:老撾萬榮一對情侶失蹤剑肯,失蹤者是張志新(化名)和其女友劉穎捧毛,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,722評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡呀忧,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,900評論 3 336
  • 正文 我和宋清朗相戀三年型将,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片荐虐。...
    茶點故事閱讀 40,030評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡七兜,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出福扬,到底是詐尸還是另有隱情腕铸,我是刑警寧澤,帶...
    沈念sama閱讀 35,737評論 5 346
  • 正文 年R本政府宣布铛碑,位于F島的核電站狠裹,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏汽烦。R本人自食惡果不足惜涛菠,卻給世界環(huán)境...
    茶點故事閱讀 41,360評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望撇吞。 院中可真熱鬧俗冻,春花似錦、人聲如沸牍颈。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,941評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽煮岁。三九已至讥蔽,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間画机,已是汗流浹背冶伞。 一陣腳步聲響...
    開封第一講書人閱讀 33,057評論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留步氏,地道東北人响禽。 一個月前我還...
    沈念sama閱讀 48,237評論 3 371
  • 正文 我出身青樓,卻偏偏與公主長得像戳护,于是被迫代替她去往敵國和親金抡。 傳聞我的和親對象是個殘疾皇子瀑焦,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,976評論 2 355

推薦閱讀更多精彩內(nèi)容