成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

【深度學(xué)習(xí)】批歸一化(BatchNorm)與層歸一化(LayerNorm):技術(shù)背景、原理及基于Pytorch的代碼詳解

發(fā)布于 2025-6-23 06:40
瀏覽
0收藏

批歸一化(Batch Normalization)和層歸一化(Layer Normalization)是深度學(xué)習(xí)中廣泛應(yīng)用的兩種數(shù)據(jù)歸一化方法,用于改善神經(jīng)網(wǎng)絡(luò)的訓(xùn)練性能。本文將從提出這兩種技術(shù)的原論文出發(fā),詳細(xì)闡述技術(shù)背景、原理及基于Pytorch的實現(xiàn)方式。

1.批歸一化(Batch Normalization)

批歸一化由谷歌的Sergey Ioffe和Christian Szegedy于2015年在論文“Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift”中提出。

(1)技術(shù)背景:深度神經(jīng)網(wǎng)絡(luò)的訓(xùn)練十分復(fù)雜,因為在訓(xùn)練過程中隨著前一層網(wǎng)絡(luò)參數(shù)的變化,下一層網(wǎng)絡(luò)的輸入分布也會發(fā)生變化。而更低的學(xué)習(xí)率和更精細(xì)的參數(shù)初始化又會減慢模型訓(xùn)練速度,特別是會讓具有飽和非線性的模型收斂變得十分困難,如使用Sigmoid激活函數(shù)時,容易陷入梯度消失之中。

Ps:飽和非線性是指激活函數(shù)在輸入值較大或較小時,其輸出趨于恒定,導(dǎo)數(shù)接近于零的現(xiàn)象,如Sigmoid和Tanh激活函數(shù)。

(2)技術(shù)原理:批歸一化則是通過標(biāo)準(zhǔn)化輸入來解決上述問題,將歸一化作為模型架構(gòu)的一部分,對每次訓(xùn)練中的小批量樣本執(zhí)行歸一化,使得我們可以使用更高的學(xué)習(xí)率且能降低對參數(shù)初始化的要求。同時,在某些情況下還能充當(dāng)正則化使用,可以替代Dropout技術(shù)。

(3)批歸一化詳細(xì)計算步驟:


【深度學(xué)習(xí)】批歸一化(BatchNorm)與層歸一化(LayerNorm):技術(shù)背景、原理及基于Pytorch的代碼詳解-AI.x社區(qū)

需要特別注意的是,批歸一化中模型在測試時使用的是訓(xùn)練中累積的全局均值和方差替代小批量樣本的統(tǒng)計值,有關(guān)全局均值和方差的計算可見下述詳細(xì)代碼的實現(xiàn),更加清晰明了。

(4)基于Pytorch的實現(xiàn)

Pytorch中提供了nn.BatchNorm1d、nn.BatchNorm2d 和 nn.BatchNorm3d,對應(yīng)不同輸入維度的批歸一化層,如下所示:

【深度學(xué)習(xí)】批歸一化(BatchNorm)與層歸一化(LayerNorm):技術(shù)背景、原理及基于Pytorch的代碼詳解-AI.x社區(qū)

【參數(shù)詳解】

【深度學(xué)習(xí)】批歸一化(BatchNorm)與層歸一化(LayerNorm):技術(shù)背景、原理及基于Pytorch的代碼詳解-AI.x社區(qū)

(5) 使用Python手動實現(xiàn)批歸一化

【深度學(xué)習(xí)】批歸一化(BatchNorm)與層歸一化(LayerNorm):技術(shù)背景、原理及基于Pytorch的代碼詳解-AI.x社區(qū)


2.層歸一化(Layer Normalization)

層歸一化由多倫多大學(xué)的Jimmy Lei Ba等人于2016年于論文“Layer Normalization”中提出。

(1)技術(shù)背景:批歸一化的效果取決于小批量的大小,且在循環(huán)神經(jīng)網(wǎng)絡(luò)中的應(yīng)用受到明顯的限制。同時,批歸一化也不能應(yīng)用于在線學(xué)習(xí)任務(wù)或小批量必須很小的極大分布式模型。

Ps:循環(huán)神經(jīng)網(wǎng)絡(luò)中循環(huán)神經(jīng)元的輸入總和通常隨序列長度的變化而變化,因此對其應(yīng)該針對不同時間步長進(jìn)行不同的統(tǒng)計。

(2)技術(shù)原理:層歸一化則是通過計算單個樣本中所有特征值的均值和方差來實現(xiàn)輸入數(shù)據(jù)的歸一化,可以直接應(yīng)用于循環(huán)神經(jīng)網(wǎng)絡(luò)。與批歸一化一樣的是在歸一化之后也提供了自適應(yīng)偏差和增益兩個可學(xué)習(xí)參數(shù)來增強模型的表達(dá)能力。與批歸一化不同的是,層歸一化在訓(xùn)練和測試的時候執(zhí)行完全相同的計算。

(3)層歸一化詳細(xì)計算步驟:

【深度學(xué)習(xí)】批歸一化(BatchNorm)與層歸一化(LayerNorm):技術(shù)背景、原理及基于Pytorch的代碼詳解-AI.x社區(qū)

(4)基于Pytorch的實現(xiàn)

Pytorch中提供了nn.LayerNorm實現(xiàn)層歸一化層,適合處理任何維度的輸入,如下所示:

【深度學(xué)習(xí)】批歸一化(BatchNorm)與層歸一化(LayerNorm):技術(shù)背景、原理及基于Pytorch的代碼詳解-AI.x社區(qū)

【參數(shù)詳解】

【深度學(xué)習(xí)】批歸一化(BatchNorm)與層歸一化(LayerNorm):技術(shù)背景、原理及基于Pytorch的代碼詳解-AI.x社區(qū)

(5)使用Python手動實現(xiàn)層歸一化

【深度學(xué)習(xí)】批歸一化(BatchNorm)與層歸一化(LayerNorm):技術(shù)背景、原理及基于Pytorch的代碼詳解-AI.x社區(qū)

本文轉(zhuǎn)載自???南夏的算法驛站???,作者:趙南夏

收藏
回復(fù)
舉報
回復(fù)
相關(guān)推薦
主站蜘蛛池模板: 99久久视频| 亚洲视频国产 | 成人免费一区二区三区视频网站 | 国产午夜精品一区二区三区嫩草 | 国产精品日本一区二区不卡视频 | 成人在线视频观看 | 波多野结衣在线观看一区二区三区 | 一二区成人影院电影网 | 欧美性网 | 日韩国产精品一区二区三区 | 99精品国产一区二区青青牛奶 | 在线精品亚洲欧美日韩国产 | 免费成人av网站 | 久久精品国产99国产精品亚洲 | 久久在线免费 | 四虎成人免费视频 | 成人在线影视 | 精品国产乱码久久久久久图片 | 成人一区二区三区视频 | 一级网站 | 欧美另类视频 | 狼人伊人影院 | 蜜桃精品噜噜噜成人av | 狠狠操电影 | 欧美三级视频在线观看 | 亚洲欧美一区二区三区国产精品 | 男人视频网站 | 99精品欧美一区二区三区综合在线 | 精品av| 天天爱综合 | 欧美精品日韩精品国产精品 | 久久99深爱久久99精品 | 狠狠亚洲 | 久久精品福利视频 | re久久 | 国产午夜视频 | 免费的黄色片子 | 成人精品鲁一区一区二区 | 福利色导航 | 欧美 日韩 在线播放 | 中文字幕在线第一页 |