【導(dǎo)語】繼 BN、GN 方法提出后,大家還在不斷提出能加速神經(jīng)網(wǎng)絡(luò)訓(xùn)練與收斂的方法,而約翰霍普金斯大學(xué)幾位研究者在論文《Weight Standardization》中提出一種 WS 新方法,那它可以超越 GN、BN 嗎?且看本文對(duì)研究的初解讀,希望能給大家一點(diǎn)新思考!
批歸一化(Batch Normalization)是深度學(xué)習(xí)發(fā)展中的一項(xiàng)里程碑技術(shù),它讓各種網(wǎng)絡(luò)都能夠進(jìn)行訓(xùn)練。然而,沿著批次維度的歸一化也帶來了新問題:當(dāng)統(tǒng)計(jì)不準(zhǔn)確導(dǎo)致批次的大小越來越小時(shí),BN 的錯(cuò)誤會(huì)急劇增加。在訓(xùn)練更大的網(wǎng)絡(luò),以及執(zhí)行將特征遷移至包括探測(cè)、分割、視頻在內(nèi)的計(jì)算機(jī)視覺任務(wù)時(shí),BN 的使用就受到了限制,因?yàn)樗鼈兪芟抻趦?nèi)存消耗而只能使用小批次。
一年前,F(xiàn)AIR 團(tuán)隊(duì)的吳育昕和何愷明提出了組歸一化(Group Normalization,簡稱 GN)的方法,GN 將信號(hào)通道分成一個(gè)個(gè)組別,并在每個(gè)組別內(nèi)計(jì)算歸一化的均值和方差,以進(jìn)行歸一化處理。GN 的計(jì)算與批量大小無關(guān),而且在批次大小大幅變化時(shí),精度依然穩(wěn)定。
而今天 AI科技大本營要與大家探討的是近日上傳到 arXiv 上的一篇論文《Weight Standardization》,由來自約翰霍普金斯大學(xué)的幾位研究者發(fā)表。作者在文中提出了一種權(quán)重標(biāo)準(zhǔn)化(Weight Standardization, WS)的方法,它可以用于加速深度網(wǎng)絡(luò)的訓(xùn)練,并稱穩(wěn)定優(yōu)于其它的歸一化方法,而這也引起了大家的好奇與討論,這個(gè) WS 的方法是否真的可以超越 GN 與 BN?
接下來,AI科技大本營通過對(duì) WS 方法的介紹、主要貢獻(xiàn)與實(shí)驗(yàn)結(jié)果的展示為大家介紹這個(gè)在歸一化方法之上的權(quán)重標(biāo)準(zhǔn)化的工作。希望能引發(fā)關(guān)注此研究方向的小伙伴們一些思考與看法!
通常來說,在使用 Batch Normalization(以下將簡稱 BN)時(shí),采用小批次很難訓(xùn)練一個(gè)網(wǎng)絡(luò),而對(duì)于不使用批次的優(yōu)化方法來說,效果很難媲美采用大批次BN時(shí)的訓(xùn)練結(jié)果。當(dāng)使用 Group Normalization(以下將簡稱 GN),且 batch size 大小為 1 時(shí),僅需要多寫兩行代碼加入權(quán)重標(biāo)準(zhǔn)化方法,就能比肩甚至超越大批次BN時(shí)的訓(xùn)練效果。在微批次(micro-batch)的訓(xùn)練中,WS 的方法能穩(wěn)定優(yōu)于其它的歸一化方法。與其他關(guān)注于激活值的歸一化方法不同,WS 關(guān)注于權(quán)重的平滑效果。該方法的實(shí)現(xiàn)就是標(biāo)準(zhǔn)化卷積層的權(quán)重值,論文通過實(shí)驗(yàn)展示了這樣的操作能夠減少損失值和梯度值的 Lipschitz 常數(shù)。并且在多個(gè)計(jì)算機(jī)視覺任務(wù),如目標(biāo)檢測(cè)、圖像分類、實(shí)例分割等,驗(yàn)證了該方法的有效性。
在許多的視覺任務(wù)中,大部分深度網(wǎng)絡(luò)通常都會(huì)使用 BN 層去加速訓(xùn)練和幫助模型更好收斂。雖然 BN 層非常實(shí)用,但從研究者的角度看,依然有一些非常顯眼的缺點(diǎn)。比如(1)我們非常缺乏對(duì)于 BN 層成功原因的理解;(2)BN 層僅在 batch size 足夠大時(shí)才有明顯的效果,因此不能用在微批次的訓(xùn)練中。雖然現(xiàn)在已經(jīng)有專門針對(duì)微批次訓(xùn)練設(shè)計(jì)的歸一化方法(GN),但圖 1 所示,它很難在大批次訓(xùn)練時(shí)媲美 BN 的效果。
圖1:在Imagenet和Coco上,GN,BN,GN+WS三種方法的實(shí)驗(yàn)結(jié)果對(duì)比
現(xiàn)在關(guān)于 BN 有效的一種解釋是它能緩解內(nèi)部協(xié)變量轉(zhuǎn)移(Internal Covariate Shift, ICS)的問題。但是有關(guān)研究[參考文獻(xiàn) 1]也指出 BN 與 ICS 減少的問題無關(guān),相反,BN 層使得相應(yīng)優(yōu)化問題的曲線更平衡。因此,根據(jù)[參考文獻(xiàn) 1]的結(jié)論,旨在提出一種歸一化技術(shù)可以進(jìn)一步平滑該曲線。
與其他關(guān)注于激活值的歸一化方法不同,WS 關(guān)注于權(quán)重的平滑效果。本文一共有三個(gè)貢獻(xiàn):
理論上,我們證明 WS 方法可以減少損失和梯度的 Lipsschitz 常數(shù)。因此,它能平滑損失曲線并提升訓(xùn)練效果。
圖1 的實(shí)驗(yàn)結(jié)果顯示,對(duì)于能夠使用大批次的任務(wù)(如 Imagenet 分類),在使用 batch size為 1 的 GN+WS 時(shí),其效果能夠比肩甚至超過大批次下的 BN 效果。
圖1 的實(shí)驗(yàn)結(jié)果顯示,對(duì)于僅能使用微批次訓(xùn)練的任務(wù)(如Coco),GN+WS 可以大幅度的提升效果。
WS方法
圖2:歸一化和WS方法的比較
給定一個(gè)沒有偏置項(xiàng)的卷積層表達(dá)式如下圖所示:
其中 W^ 卷積層的權(quán)重,* 是卷積運(yùn)算。將圖2 所示作為一個(gè)例子,WS方法不會(huì)直接在原始權(quán)重上進(jìn)行優(yōu)化,而是采用另一個(gè)函數(shù) W^=WS(W)來表示原始權(quán)重 W^。然后使用 SGD 算法來更新 W。
與 BN 類似,WS 方法在卷積層中分別控制輸出權(quán)重的第一和第二階段,許多權(quán)重初始化方法也是這樣做的。不過不同的是,WS 是以可微的方式在反向傳播過程中來標(biāo)準(zhǔn)化梯度。但是 WS 方法沒有對(duì) W^ 進(jìn)行仿射轉(zhuǎn)化,因?yàn)樽髡哒J(rèn)為 BN 或者 GN 還會(huì)對(duì)卷積層進(jìn)行再一次的歸一化。
WS規(guī)范化梯度
下圖是在網(wǎng)絡(luò)前饋和反饋時(shí),進(jìn)行權(quán)重梯度標(biāo)準(zhǔn)化的計(jì)算表達(dá)式。
此時(shí),在 feed-forwarding 過程中,計(jì)算方法變?yōu)椋?/p>
banck-propagation 中計(jì)算方法為:
當(dāng)然,論文的第二部分還通過公式推導(dǎo)了 WS 可以讓損失曲線更加平滑,從而加速訓(xùn)練,提升效果的原因。而為了說明 WS 的有效性,作者在多個(gè)任務(wù)上進(jìn)行了多個(gè)對(duì)比實(shí)驗(yàn)。
第一個(gè)實(shí)驗(yàn):在Imagenet上的圖像分類
上面表格展示了基于 ResNet50 和 ResNet101 網(wǎng)絡(luò)結(jié)構(gòu)的圖像分類錯(cuò)誤率。除了帶 BN 層的網(wǎng)絡(luò)使用大的 batch size,其它的歸一化方法均設(shè)置 batch size 為 1??梢钥闯鍪褂?WS 方法能夠在 batch size 為 1 的情況下,略好于大批次 BN 的網(wǎng)絡(luò)結(jié)果。在論文中,作者還做了更多與現(xiàn)有歸一化方法對(duì)比的實(shí)驗(yàn),來證明WS的效果。
第二個(gè)實(shí)驗(yàn):在Coco上的目標(biāo)檢測(cè)和分割
上述表格給出了檢測(cè)框回歸和實(shí)例分割的結(jié)果。在用的是 Mask R-CNN 框架,RXnet 的 backbone,與圖像分類有相似的結(jié)果。值得注意的是,當(dāng)網(wǎng)絡(luò)變得更復(fù)雜時(shí),僅使用 GN 很難提升性能,而加上 WS 后,就可以訓(xùn)練出更好的結(jié)果。這說明 WS 的歸一化技術(shù)可以幫助更輕松的訓(xùn)練深層次網(wǎng)絡(luò),而不用擔(dān)心內(nèi)存和 batch size 的問題。
第三個(gè)實(shí)驗(yàn):在 Something-Something 上的視頻動(dòng)作識(shí)別
在這項(xiàng)任務(wù)中,采用 TSM 作為框架,ResNet50 作為 backbone,從表格中可以發(fā)現(xiàn),不管是 BN 是 GN,加上了 WS 方法后,效果均有了提升。
第四個(gè)實(shí)驗(yàn):在 PASCAL VOC 上的語義分割
在 PASCAL VOC2012 數(shù)據(jù)集上的實(shí)驗(yàn),采用 DeepLabv3 作為基準(zhǔn)模型,Resnet101 為 backbone。實(shí)驗(yàn)結(jié)果證明,WS 方法針對(duì)密集圖像預(yù)測(cè)任務(wù),也能有穩(wěn)定提升性能的表現(xiàn)。
第五個(gè)實(shí)驗(yàn):在ModelNet40上的點(diǎn)云分類
采用 DGCNN 作為基準(zhǔn)模型,實(shí)驗(yàn)結(jié)果也顯示了 WS 方法能夠有效的提升模型性能。
以上五個(gè)實(shí)驗(yàn),每個(gè)實(shí)驗(yàn)的設(shè)置參數(shù)在論文中均有詳細(xì)的介紹。從實(shí)驗(yàn)方面證明了 WS 方法可以顯著的提高性能。尤其是在某些情況下, GN 和 BN 可能無法達(dá)到很好的效果,通過結(jié)合 WS 的方法可以取得加速模型的訓(xùn)練與收斂;此外,WS 的歸一化技術(shù)還可以幫助更輕松的訓(xùn)練深層次網(wǎng)絡(luò),而不用擔(dān)心內(nèi)存和 batch size 的問題。
關(guān)于研究介紹到這里后,對(duì)權(quán)重標(biāo)準(zhǔn)化這個(gè)方法,你是怎么看的?是否可以超越 GN、BN 呢?歡迎大家發(fā)表自己的看法!
-
算法
+關(guān)注
關(guān)注
23文章
4587瀏覽量
92503 -
梯度
+關(guān)注
關(guān)注
0文章
30瀏覽量
10302 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5463瀏覽量
120891
原文標(biāo)題:何愷明的GN之后,權(quán)重標(biāo)準(zhǔn)化新方法能超越GN、BN嗎? | 技術(shù)頭條
文章出處:【微信號(hào):rgznai100,微信公眾號(hào):rgznai100】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論