国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

深度學(xué)習(xí)基礎(chǔ)入門篇[七]:常用歸一化算法、層次歸一化算法、歸一化和標(biāo)準(zhǔn)化區(qū)別于聯(lián)系、應(yīng)用案例場景分析。

這篇具有很好參考價值的文章主要介紹了深度學(xué)習(xí)基礎(chǔ)入門篇[七]:常用歸一化算法、層次歸一化算法、歸一化和標(biāo)準(zhǔn)化區(qū)別于聯(lián)系、應(yīng)用案例場景分析。。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

深度學(xué)習(xí)基礎(chǔ)入門篇[七]:常用歸一化算法、層次歸一化算法、歸一化和標(biāo)準(zhǔn)化區(qū)別于聯(lián)系、應(yīng)用案例場景分析。,# 深度學(xué)習(xí)入門到進(jìn)階,深度學(xué)習(xí)(基礎(chǔ)進(jìn)階應(yīng)用實戰(zhàn)合集),深度學(xué)習(xí),人工智能,歸一化,標(biāo)準(zhǔn)化,層歸一化,原力計劃
【深度學(xué)習(xí)入門到進(jìn)階】必看系列,含激活函數(shù)、優(yōu)化策略、損失函數(shù)、模型調(diào)優(yōu)、歸一化算法、卷積模型、序列模型、預(yù)訓(xùn)練模型、對抗神經(jīng)網(wǎng)絡(luò)等

深度學(xué)習(xí)基礎(chǔ)入門篇[七]:常用歸一化算法、層次歸一化算法、歸一化和標(biāo)準(zhǔn)化區(qū)別于聯(lián)系、應(yīng)用案例場景分析。,# 深度學(xué)習(xí)入門到進(jìn)階,深度學(xué)習(xí)(基礎(chǔ)進(jìn)階應(yīng)用實戰(zhàn)合集),深度學(xué)習(xí),人工智能,歸一化,標(biāo)準(zhǔn)化,層歸一化,原力計劃
專欄詳細(xì)介紹:【深度學(xué)習(xí)入門到進(jìn)階】必看系列,含激活函數(shù)、優(yōu)化策略、損失函數(shù)、模型調(diào)優(yōu)、歸一化算法、卷積模型、序列模型、預(yù)訓(xùn)練模型、對抗神經(jīng)網(wǎng)絡(luò)等

本專欄主要方便入門同學(xué)快速掌握相關(guān)知識。聲明:部分項目為網(wǎng)絡(luò)經(jīng)典項目方便大家快速學(xué)習(xí),后續(xù)會不斷增添實戰(zhàn)環(huán)節(jié)(比賽、論文、現(xiàn)實應(yīng)用等)

專欄訂閱:深度學(xué)習(xí)入門到進(jìn)階專欄

1.歸一化基礎(chǔ)知識點(diǎn)

1.1 歸一化作用

歸一化是一種數(shù)據(jù)處理方式,能將數(shù)據(jù)經(jīng)過處理后限制在某個固定范圍內(nèi)。

歸一化存在兩種形式,

  • 一種是在通常情況下,將數(shù)處理為 [0, 1] 之間的小數(shù),其目的是為了在隨后的數(shù)據(jù)處理過程中更便捷。例如,在圖像處理中,就會將圖像從 [0, 255] 歸一化到 [0, 1]之間,這樣既不會改變圖像本身的信息儲存,又可加速后續(xù)的網(wǎng)絡(luò)處理。
  • 其他情況下,也可將數(shù)據(jù)處理到 [-1, 1] 之間,或其他的固定范圍內(nèi)。另一種是通過歸一化將有量綱表達(dá)式變成無量綱表達(dá)式。

那么什么是量綱,又為什么需要將有量綱轉(zhuǎn)化為無量綱呢?具體舉一個例子。當(dāng)我們在做對房價的預(yù)測時,收集到的數(shù)據(jù)中,如房屋的面積、房間的數(shù)量、到地鐵站的距離、住宅附近的空氣質(zhì)量等,都是量綱,而他們對應(yīng)的量綱單位分別為平方米、個數(shù)、米、AQI等。這些量綱單位的不同,導(dǎo)致數(shù)據(jù)之間不具有可比性。同時,對于不同的量綱,數(shù)據(jù)的數(shù)量級大小也是不同的,比如房屋到地鐵站的距離可以是上千米,而房屋的房間數(shù)量一般只有幾個。經(jīng)過歸一化處理后,不僅可以消除量綱的影響,也可將各數(shù)據(jù)歸一化至同一量級,從而解決數(shù)據(jù)間的可比性問題。

  • 歸一化可以將有量綱轉(zhuǎn)化為無量綱,同時將數(shù)據(jù)歸一化至同一量級,解決數(shù)據(jù)間的可比性問題。在回歸模型中,自變量的量綱不一致會導(dǎo)致回歸系數(shù)無法解讀或錯誤解讀。在KNN、Kmeans等需要進(jìn)行距離計算的算法中,量綱的量級不同可能會導(dǎo)致?lián)碛休^大量級的特征在進(jìn)行距離計算時占主導(dǎo)地位,從而影響學(xué)習(xí)結(jié)果。

  • 數(shù)據(jù)歸一化后,尋求最優(yōu)解的過程會變得平緩,可以更快速的收斂到最優(yōu)解。詳解請參見3.為什么歸一化能提高求解最優(yōu)解的速度。

1.2 歸一化提高求解最優(yōu)解的速度

我們提到一個對房價進(jìn)行預(yù)測的例子,假設(shè)自變量只有房子到地鐵站的距離x1和房子內(nèi)房間的個數(shù)x2,因變量為房價,預(yù)測公式和損失函數(shù)分別為

y = θ 1 x 1 + θ 2 x 2 J = ( θ 1 x 1 + θ 2 x 2 ? y l a b e l ) 2 \begin{array}{l}y=\theta_1x_1+\theta_2x_2\\ J=(\theta_1x_1+\theta_2x_2-y_{label})^2\end{array} y=θ1?x1?+θ2?x2?J=(θ1?x1?+θ2?x2??ylabel?)2?

在未歸一化時,房子到地鐵站的距離的取值在0~5000之間,而房間個數(shù)的取值范圍僅為0~10。假設(shè)x1=1000,x2=3, 那么損失函數(shù)的公式可以寫為:

J = ( 1000 θ 1 + 3 θ 2 ? y l a b e l ) 2 J=\left(1000\theta_1+3\theta_2-y_{label}\right)^2 J=(1000θ1?+3θ2??ylabel?)2

可將該損失函數(shù)尋求最優(yōu)解過程可視化為下圖:圖1: 損失函數(shù)的等高線,圖1(左)為未歸一化時,圖1(右)為歸一化

深度學(xué)習(xí)基礎(chǔ)入門篇[七]:常用歸一化算法、層次歸一化算法、歸一化和標(biāo)準(zhǔn)化區(qū)別于聯(lián)系、應(yīng)用案例場景分析。,# 深度學(xué)習(xí)入門到進(jìn)階,深度學(xué)習(xí)(基礎(chǔ)進(jìn)階應(yīng)用實戰(zhàn)合集),深度學(xué)習(xí),人工智能,歸一化,標(biāo)準(zhǔn)化,層歸一化,原力計劃

在圖1中,左圖的紅色橢圓代表歸一化前的損失函數(shù)等高線,藍(lán)色線段代表梯度的更新,箭頭的方向代表梯度更新的方向。尋求最優(yōu)解的過程就是梯度更新的過程,其更新方向與登高線垂直。由于x1和 x2的量級相差過大,損失函數(shù)的等高線呈現(xiàn)為一個瘦窄的橢圓。因此如圖1(左)所示,瘦窄的橢圓形會使得梯度下降過程呈之字形呈現(xiàn),導(dǎo)致梯度下降速度緩慢。

當(dāng)數(shù)據(jù)經(jīng)過歸一化后, x 1 ′ = 1000 ? 0 5000 ? 0 = 0.2 , x 2 ′ = 3 ? 0 10 ? 0 = 0.3 , x_1^{'}=\frac{1000-0}{5000-0}=0.2,x_2^{'}=\frac{3-0}{10-0}=0.3, x1?=5000?01000?0?=0.2,x2?=10?03?0?=0.3,,那么損失函數(shù)的公式可以寫為:

J ( x ) = ( 0.2 θ 1 + 0.3 θ 2 ? y l a b e l ) 2 J(x)=\left(0.2\theta_1+0.3\theta_2-y_{label}\right)^2 J(x)=(0.2θ1?+0.3θ2??ylabel?)2

我們可以看到,經(jīng)過歸一化后的數(shù)據(jù)屬于同一量級,損失函數(shù)的等高線呈現(xiàn)為一個矮胖的橢圓形(如圖1(右)所示),求解最優(yōu)解過程變得更加迅速且平緩,因此可以在通過梯度下降進(jìn)行求解時獲得更快的收斂。

1.3 歸一化類型

1.3.1 Min-max normalization (Rescaling):

x ′ = x ? m i n ( x ) m a x ( x ) ? m i n ( x ) x^{'}=\dfrac{x-min(x)}{max(x)-min(x)}\quad\quad x=max(x)?min(x)x?min(x)?

歸一化后的數(shù)據(jù)范圍為 [0, 1],其中 min(x)、max(x)分別求樣本數(shù)據(jù)的最小值和最大值。

1.3.2 Mean normalization:

x ′ = x ? m e a n ( x ) m a x ( x ) ? m i n ( x ) x^{'}=\dfrac{x-mean(x)}{max(x)-min(x)}\quad\text{} x=max(x)?min(x)x?mean(x)?

1.3.3 Z-score normalization (Standardization):標(biāo)準(zhǔn)化

x ′ = x ? μ σ x^{'}=\dfrac{x-\mu}{\sigma} x=σx?μ?

歸一化后的數(shù)據(jù)范圍為實數(shù)集,其中 μ、σ分別為樣本數(shù)據(jù)的均值和標(biāo)準(zhǔn)差。

1.3.4 非線性歸一化:

  • 對數(shù)歸一化:
    x ′ = lg ? x lg ? m a x ( x ) x^{'}=\dfrac{\lg x}{\lg max(x)} x=lgmax(x)lgx?

  • 反正切函數(shù)歸一化:

x ′ = arctan ? ( x ) ? 2 π x^{'}=\arctan(x)*\dfrac{2}{\pi}\quad x=arctan(x)?π2?

歸一化后的數(shù)據(jù)范圍為 [-1, 1]

  • 小數(shù)定標(biāo)標(biāo)準(zhǔn)化(Demical Point Normalization):

x ′ = x 1 0 j x^{'}=\dfrac{x}{10^{j}} x=10jx?

歸一化后的數(shù)據(jù)范圍為 [-1, 1],j為使 m a x ( ∣ x ′ ∣ ) < 1 max(|x'|)<1 max(x)<1的最小整數(shù)。

1.4 不同歸一化的使用條件

  1. Min-max歸一化和mean歸一化適合在最大最小值明確不變的情況下使用,比如圖像處理時,灰度值限定在 [0, 255] 的范圍內(nèi),就可以用min-max歸一化將其處理到[0, 1]之間。在最大最小值不明確時,每當(dāng)有新數(shù)據(jù)加入,都可能會改變最大或最小值,導(dǎo)致歸一化結(jié)果不穩(wěn)定,后續(xù)使用效果也不穩(wěn)定。同時,數(shù)據(jù)需要相對穩(wěn)定,如果有過大或過小的異常值存在,min-max歸一化和mean歸一化的效果也不會很好。如果對處理后的數(shù)據(jù)范圍有嚴(yán)格要求,也應(yīng)使用min-max歸一化或mean歸一化。

  2. Z-score歸一化也可稱為標(biāo)準(zhǔn)化,經(jīng)過處理的數(shù)據(jù)呈均值為0,標(biāo)準(zhǔn)差為1的分布。在數(shù)據(jù)存在異常值、最大最小值不固定的情況下,可以使用標(biāo)準(zhǔn)化。標(biāo)準(zhǔn)化會改變數(shù)據(jù)的狀態(tài)分布,但不會改變分布的種類。特別地,神經(jīng)網(wǎng)絡(luò)中經(jīng)常會使用到z-score歸一化,針對這一點(diǎn),我們將在后續(xù)的文章中進(jìn)行詳細(xì)的介紹。

  3. 非線性歸一化通常被用在數(shù)據(jù)分化程度較大的場景,有時需要通過一些數(shù)學(xué)函數(shù)對原始值進(jìn)行映射,如對數(shù)、反正切等。

在查找資料的時候,我看到很多文章都提出了:“在分類、聚類算法中,需要使用距離來度量相似性的時候,z-score歸一化也就是標(biāo)準(zhǔn)化的效果比歸一化要好,但是對于這個觀點(diǎn)并沒有給出足夠的技術(shù)支持。因此,我選取了KNN分類網(wǎng)絡(luò)搜索了相關(guān)論文,在論文Comparative Analysis of KNN Algorithm using Various Normalization Techniques [1] 中,在K值不同的情況下,對于相同的數(shù)據(jù)分別進(jìn)行min-max歸一化和z-score歸一化,得到的結(jié)果如下圖所示:圖2: 對于不同的K值,相同數(shù)據(jù)集不同歸一化方式下的預(yù)測精確度

深度學(xué)習(xí)基礎(chǔ)入門篇[七]:常用歸一化算法、層次歸一化算法、歸一化和標(biāo)準(zhǔn)化區(qū)別于聯(lián)系、應(yīng)用案例場景分析。,# 深度學(xué)習(xí)入門到進(jìn)階,深度學(xué)習(xí)(基礎(chǔ)進(jìn)階應(yīng)用實戰(zhàn)合集),深度學(xué)習(xí),人工智能,歸一化,標(biāo)準(zhǔn)化,層歸一化,原力計劃

由此可以看到,至少對于KNN分類問題,z-score歸一化和min-max歸一化的選擇會受到數(shù)據(jù)集、K值的影響,對于其他的分類和聚類算法,哪一種歸一化的方法更好仍有待驗證。最好的選擇方法就是進(jìn)行實驗,選擇在當(dāng)前實驗條件下,能夠使模型精度更高的一種。

1.5 歸一化和標(biāo)準(zhǔn)化的聯(lián)系與區(qū)別

談到歸一化和標(biāo)準(zhǔn)化可能會存在一些概念的混淆,我們都知道歸一化是指normalization,標(biāo)準(zhǔn)化是指standardization,但根據(jù)wiki上對feature scaling方法的定義,standardization其實就是z-score normalization,也就是說標(biāo)準(zhǔn)化其實是歸一化的一種,而一般情況下,我們會把z-score歸一化稱為標(biāo)準(zhǔn)化,把min-max歸一化簡稱為歸一化。在下文中,我們也是用標(biāo)準(zhǔn)化指代z-score歸一化,并使用歸一化指代min-max歸一化。

其實,歸一化和標(biāo)準(zhǔn)化在本質(zhì)上都是一種線性變換。在4.歸一化類型中,我們提到了歸一化和標(biāo)準(zhǔn)化的公式,對于歸一化的公式,在數(shù)據(jù)給定的情況下,可以令a=max(x)?min(x)、b=min(x),則歸一化的公式可變形為:

x ′ = x ? b a = x a ? b a = x a ? c x^{'}=\dfrac{x-b}{a}=\dfrac{x}{a}-\dfrac{a}=\dfrac{x}{a}-c x=ax?b?=ax??ab?=ax??c

標(biāo)準(zhǔn)化的公式與變形后的歸一化類似,其中的μ和σ在數(shù)據(jù)給定的情況下,可以看作常數(shù)。因此,標(biāo)準(zhǔn)化的變形與歸一化的類似,都可看作對x按比例a進(jìn)行縮放,再進(jìn)行c個單位的平移。由此可見,歸一化和標(biāo)準(zhǔn)化的本質(zhì)都是一種線性變換,他們都不會因為對數(shù)據(jù)的處理而改變數(shù)據(jù)的原始數(shù)值排序。

那么歸一化和標(biāo)準(zhǔn)化又有什么區(qū)別呢?

  • 歸一化不會改變數(shù)據(jù)的狀態(tài)分布,但標(biāo)準(zhǔn)化會改變數(shù)據(jù)的狀態(tài)分布;

  • 歸一化會將數(shù)據(jù)限定在一個具體的范圍內(nèi),如 [0, 1],但標(biāo)準(zhǔn)化不會,標(biāo)準(zhǔn)化只會將數(shù)據(jù)處理為均值為0,標(biāo)準(zhǔn)差為1。

References:【1】Comparative Analysis of KNN Algorithm using Various Normalization Techniques;Amit Pandey,Achin Jain.

2. 層歸一化

神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)過程本質(zhì)上是在學(xué)習(xí)數(shù)據(jù)的分布,如果沒有進(jìn)行歸一化的處理,那么每一批次的訓(xùn)練數(shù)據(jù)的分布是不一樣的,

  • 從大的方向上來看,神經(jīng)網(wǎng)絡(luò)則需要在這多個分布當(dāng)中找到平衡點(diǎn),
  • 從小的方向上來看 ,由于每層的網(wǎng)絡(luò)輸入數(shù)據(jù)分布在不斷地變化 ,那么會導(dǎo)致每層網(wǎng)絡(luò)都在找平衡點(diǎn),顯然網(wǎng)絡(luò)就變得難以收斂 。
    當(dāng)然我們可以對輸入數(shù)據(jù)進(jìn)行歸一化處理(例如對輸入圖像除以255),但這也僅能保證輸入層的數(shù)據(jù)分布是一樣的,并不能保證每層網(wǎng)絡(luò)輸入數(shù)據(jù)分布是一樣的,所以在網(wǎng)絡(luò)的中間我們也是需要加入歸一化的處理。

歸一化定義:數(shù)據(jù)標(biāo)準(zhǔn)化(Normalization),也稱為歸一化,歸一化就是將需要處理的數(shù)據(jù)在通過某種算法經(jīng)過處理后,將其限定在需要的一定的范圍內(nèi)

2.1 層歸一化產(chǎn)生原因

  • 一般的批歸一化(Batch Normalization,BN)算法對mini-batch數(shù)據(jù)集過分依賴,無法應(yīng)用到在線學(xué)習(xí)任務(wù)中(此時mini-batch數(shù)據(jù)集包含的樣例個數(shù)為1),在遞歸神經(jīng)網(wǎng)絡(luò)(Recurrent neural network,RNN)中BN的效果也不明顯 ;
  • RNN多用于自然語言處理任務(wù),網(wǎng)絡(luò)在不同訓(xùn)練周期內(nèi)輸入的句子,句子長度往往不同,在RNN中應(yīng)用BN時,在不同時間周期使用mini-batch數(shù)據(jù)集的大小都需要不同,計算復(fù)雜,而且如果一個測試句子比訓(xùn)練集中的任何一個句子都長,在測試階段RNN神經(jīng)網(wǎng)絡(luò)預(yù)測性能會出現(xiàn)嚴(yán)重偏差。如果更改為使用層歸一化,就可以有效的避免這個問題。

層歸一化:通過計算在一個訓(xùn)練樣本上某一層所有的神經(jīng)元的均值和方差來對神經(jīng)元進(jìn)行歸一化。

μ ← 1 H ∑ i = 1 H x i σ ← 1 H ∑ i = 1 H ( x i ? μ D ) 2 + ? ? y = f ( g σ ( x ? μ ) + b ) \mu\leftarrow\dfrac{1}{H}\sum_{i=1}^{H}x_i\\ \sigma\leftarrow\sqrt{\dfrac{1}{H}\sum_{i=1}^{H}(x_i-\mu_D)^2+\epsilon}\\ \vdots\\ y=f(\dfrac{g}{\sigma}(x-\mu)+b) μH1?i=1H?xi?σH1?i=1H?(xi??μD?)2+? ??y=f(σg?(x?μ)+b)

相關(guān)參數(shù)含義:

  • x : 該層神經(jīng)元的向量表示

  • H : 層中隱藏神經(jīng)元個數(shù)

  • ? : 添加較小的值到方差中以防止除零

  • g: 再縮放參數(shù)(可訓(xùn)練),新數(shù)據(jù)以g2為方差

  • b: 再平移參數(shù)(可訓(xùn)練),新數(shù)據(jù)以b為偏差

  • f:激活函數(shù)

算法作用

  1. 加快網(wǎng)絡(luò)的訓(xùn)練收斂速度 在深度神經(jīng)網(wǎng)絡(luò)中,如果每層的數(shù)據(jù)分布都不一樣,將會導(dǎo)致網(wǎng)絡(luò)非常難以收斂和訓(xùn)練(如綜述所說難以在多種數(shù)據(jù)分布中找到平衡點(diǎn)),而每層數(shù)據(jù)的分布都相同的情況,訓(xùn)練時的收斂速度將會大幅度提升。

控制梯度爆炸和防止梯度消失 我們常用的梯度傳遞的方式是由深層神經(jīng)元往淺層傳播,如果用f′i和O′i分別表示第i層對應(yīng)的激活層導(dǎo)數(shù)和輸出導(dǎo)數(shù),那么對于H層的神經(jīng)網(wǎng)絡(luò),第一層的導(dǎo)數(shù) F 1 ′ = ∏ i = 1 H f i ′ ? O i ′ F_1'=\prod_{i=1}^{H}f_i'*O_i' F1?=i=1H?fi??Oi?,那么對于 f i ′ ? O i ′ f_i'*O_i' fi??Oi?恒大于1的情況,如 f i ′ ? O i ′ = 2 f_i'*O_i'=2 fi??Oi?=2的情況,使得結(jié)果指數(shù)上升,發(fā)生梯度爆炸,對于 f i ′ ? O i ′ f_i'*O_i' fi??Oi?恒小于1,如 f i ′ ? O i ′ = 0.25 f_i'*O_i'=0.25 fi??Oi?=0.25導(dǎo)致結(jié)果指數(shù)下降,發(fā)生梯度消失的現(xiàn)象,底層神經(jīng)元梯度幾乎為0。采用歸一化算法后,可以使得f_i’*O_i’ f i ′ ? O i ′ f_i'*O_i' fi??Oi?的結(jié)果不會太大也不會太小,有利于控制梯度的傳播。

在飛槳框架案例如下:

paddle.nn.LayerNorm(normalized_shape, epsilon=1e-05, weight_attr=None, bias_attr=None, name=None);

該接口用于構(gòu)建 LayerNorm 類的一個可調(diào)用對象

核心參數(shù)的含義:

  • normalized_shape (int|list|tuple) - 期望對哪些維度進(jìn)行變換。如果是一個整數(shù),會將最后一個維度進(jìn)行規(guī)范化。

  • epsilon (float, 可選) - 對應(yīng)?-為了數(shù)值穩(wěn)定加在分母上的值。默認(rèn)值:1e-05

2.2 應(yīng)用案例

import paddle
import numpy as np

np.random.seed(123)
x_data = np.random.random(size=(2, 2, 2, 3)).astype('float32')
x = paddle.to_tensor(x_data)
layer_norm = paddle.nn.LayerNorm(x_data.shape[1:])
layer_norm_out = layer_norm(x)

print(layer_norm_out)

# input
# Tensor(shape=[2, 2, 2, 3], dtype=float32, place=CPUPlace, stop_gradient=True,
#        [[[[0.69646919, 0.28613934, 0.22685145],
#           [0.55131477, 0.71946895, 0.42310646]],

#          [[0.98076421, 0.68482971, 0.48093191],
#           [0.39211753, 0.34317800, 0.72904968]]],


#         [[[0.43857226, 0.05967790, 0.39804426],
#           [0.73799539, 0.18249173, 0.17545176]],

#          [[0.53155136, 0.53182757, 0.63440096],
#           [0.84943181, 0.72445530, 0.61102349]]]])

# output:
# Tensor(shape=[2, 2, 2, 3], dtype=float32, place=CPUPlace, stop_gradient=True,
#        [[[[ 0.71878898, -1.20117974, -1.47859287],
#           [ 0.03959895,  0.82640684, -0.56029880]],

#          [[ 2.04902983,  0.66432685, -0.28972855],
#           [-0.70529866, -0.93429095,  0.87123591]]],


#         [[[-0.21512909, -1.81323946, -0.38606915],
#           [ 1.04778552, -1.29523218, -1.32492554]],

#          [[ 0.17704056,  0.17820556,  0.61084229],
#           [ 1.51780486,  0.99067575,  0.51224011]]]])

對于一般的圖片訓(xùn)練集格式為 ( N , C , H , W ) (N,C,H,W) (N,C,H,W)的數(shù)據(jù),在LN變換中,我們對后三個維度進(jìn)行歸一化。因此實例的輸入shape就是后三維x_data.shape[1:]。也就是我們固定了以每張圖片為單位,對每張圖片的所有通道的像素值統(tǒng)一進(jìn)行了Z-score歸一化。

2.3應(yīng)用場景

層歸一化在遞歸神經(jīng)網(wǎng)絡(luò)RNN中的效果是受益最大的,它的表現(xiàn)優(yōu)于批歸一化,特別是在動態(tài)長序列和小批量的任務(wù)當(dāng)中 。例如在論文Layer Normalization所提到的以下任務(wù)當(dāng)中:

  1. 圖像與語言的順序嵌入(Order embedding of images and language)

  2. 教機(jī)器閱讀和理解(Teaching machines to read and comprehend)

  3. Skip-thought向量(Skip-thought vectors)

  4. 使用DRAW對二值化的MNIST進(jìn)行建模(Modeling binarized MNIST using DRAW)

  5. 手寫序列生成(Handwriting sequence generation)

  6. 排列不變MNIST(Permutation invariant MNIST)

但是,研究表明,由于在卷積神經(jīng)網(wǎng)絡(luò)中,LN會破壞卷積所學(xué)習(xí)到的特征,致使模型無法收斂,而對于BN算法,基于不同數(shù)據(jù)的情況,同一特征歸一化得到的數(shù)據(jù)更不容易損失信息,所以在LN和BN都可以應(yīng)用的場景,BN的表現(xiàn)通常要更好。

文獻(xiàn):Ba J L , Kiros J R , Hinton G E . Layer Normalization[J]. 2016.文章來源地址http://www.zghlxwxcb.cn/news/detail-539080.html

到了這里,關(guān)于深度學(xué)習(xí)基礎(chǔ)入門篇[七]:常用歸一化算法、層次歸一化算法、歸一化和標(biāo)準(zhǔn)化區(qū)別于聯(lián)系、應(yīng)用案例場景分析。的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【Pytorch基礎(chǔ)知識】數(shù)據(jù)的歸一化和反歸一化

    【Pytorch基礎(chǔ)知識】數(shù)據(jù)的歸一化和反歸一化

    一張正常的圖,或者說是人眼習(xí)慣的圖是這樣的: 但是,為了 神經(jīng)網(wǎng)絡(luò)更快收斂 ,我們在深度學(xué)習(xí)網(wǎng)絡(luò)過程中 通常需要將讀取的圖片轉(zhuǎn)為tensor并歸一化 (此處的歸一化指 transforms .Normalize()操作)輸入到網(wǎng)絡(luò)中進(jìn)行系列操作。 如果將轉(zhuǎn)成的tensor再直接轉(zhuǎn)為圖片,就會變成下

    2023年04月09日
    瀏覽(20)
  • 數(shù)據(jù)歸一化常見算法

    數(shù)據(jù)歸一化常見算法

    數(shù)據(jù)歸一化的幾種方法 Min-Max歸一化是一種線性的歸一化方法。該方法將數(shù)據(jù)進(jìn)行一次線性變換,將數(shù)據(jù)映射到[0,1]區(qū)間。Min-Max歸一化不改變數(shù)據(jù)的分布。其缺點(diǎn)為,過度依賴最大最小數(shù),且容易受到離群點(diǎn)、異常數(shù)據(jù)的影響。其公式為: x ′ = x ? M i n M a x ? M i n x^prime

    2024年02月12日
    瀏覽(23)
  • 關(guān)于歸一化算法的簡單實踐

    關(guān)于歸一化算法的簡單實踐

    前段時間有個需求要對矩陣數(shù)據(jù)做歸一化處理,之后在對數(shù)據(jù)做一致性校驗,并獲取數(shù)據(jù)對應(yīng)的權(quán)重。 1、了解歸一化算法 2、通過數(shù)據(jù)構(gòu)建矩陣信息 3、數(shù)據(jù)處理 4、獲取權(quán)重 1、簡單說一下概念: 歸一化是一種數(shù)據(jù)處理方式,能將數(shù)據(jù)經(jīng)過處理后限制在某個固定范圍內(nèi)。當(dāng)

    2024年02月06日
    瀏覽(12)
  • 計算機(jī)視覺中各種歸一化算法

    計算機(jī)視覺中各種歸一化算法

    歸一化算法是對激活函數(shù)的輸入進(jìn)行歸一化 將feature map shape設(shè)為[N,C,H,W],其中N表示batch size,C表示通道數(shù),H、W分別表示特征圖的高度、寬度 在batch上,對N、H、W做歸一化,保留通道C的維度。對較小的batch size效果不好,BN適用于固定深度的前向神經(jīng)網(wǎng)絡(luò),如CNN,不適用于RNN;

    2024年04月16日
    瀏覽(18)
  • 學(xué)習(xí)pytorch中歸一化transforms.Normalize

    包含 torchvison.transforms(常用的圖像預(yù)處理方法); torchvision.datasets(常用數(shù)據(jù)集的dataset實現(xiàn),MNIST,CIFAR-10,ImageNet等); torchvison.model(常用的模型預(yù)訓(xùn)練,AlexNet,VGG,ResNet,GoogleNet等)。 常用的數(shù)據(jù)預(yù)處理方法,提升泛化能力。包括:數(shù)據(jù)中心化、數(shù)據(jù)標(biāo)準(zhǔn)化、縮放、裁剪、旋轉(zhuǎn)、填充

    2024年02月04日
    瀏覽(23)
  • 【機(jī)器學(xué)習(xí)】一文搞懂標(biāo)準(zhǔn)化,歸一化,正則化

    【機(jī)器學(xué)習(xí)】一文搞懂標(biāo)準(zhǔn)化,歸一化,正則化

    對于機(jī)器學(xué)習(xí)中的標(biāo)準(zhǔn)化,歸一化和正則化的理解,一直都比較模糊,而且在許多技術(shù)書籍中,對于它們的使用基本都是一筆帶過,不理解概念的話,就不知具體對數(shù)據(jù)做了哪些操作。因此,在這里專門對這幾個概念做學(xué)習(xí)與總結(jié)。 學(xué)習(xí)之前,先拋出幾個問題: 這幾個概念

    2024年02月03日
    瀏覽(22)
  • 【機(jī)器學(xué)習(xí)】數(shù)據(jù)預(yù)處理 - 歸一化和標(biāo)準(zhǔn)化

    【機(jī)器學(xué)習(xí)】數(shù)據(jù)預(yù)處理 - 歸一化和標(biāo)準(zhǔn)化

    「作者主頁」: 士別三日wyx 「作者簡介」: CSDN top100、阿里云博客專家、華為云享專家、網(wǎng)絡(luò)安全領(lǐng)域優(yōu)質(zhì)創(chuàng)作者 「推薦專欄」: 對網(wǎng)絡(luò)安全感興趣的小伙伴可以關(guān)注專欄《網(wǎng)絡(luò)安全入門到精通》 處理數(shù)據(jù)之前,通常會使用一些轉(zhuǎn)換函數(shù)將 「特征數(shù)據(jù)」 轉(zhuǎn)換成更適合 「

    2024年02月15日
    瀏覽(33)
  • 【機(jī)器學(xué)習(xí)300問】12、為什么要進(jìn)行特征歸一化?

    【機(jī)器學(xué)習(xí)300問】12、為什么要進(jìn)行特征歸一化?

    ? ? ? ? 當(dāng)線性回歸模型的特征量變多之后,會出現(xiàn)不同的特征量,然而對于那些同是數(shù)值型的特征量為什么要做歸一化處理呢? ????????使得不同指標(biāo)之間具有可比性。例如,分析一個人的身高和體重對健康的影響,如果使用米(m)和于克(kg)作為單位,那么身高特征會在

    2024年01月22日
    瀏覽(30)
  • 使用阿里云試用Elasticsearch學(xué)習(xí):3.3 處理人類語言——?dú)w一化詞元

    把文本切割成詞元(token)只是這項工作的一半。為了讓這些詞元(token)更容易搜索, 這些詞元(token)需要被 歸一化(normalization)–這個過程會去除同一個詞元(token)的無意義差別,例如大寫和小寫的差別。可能我們還需要去掉有意義的差別, 讓 esta、ésta 和 está 都能用同一個詞元(to

    2024年04月14日
    瀏覽(16)
  • 深入理解機(jī)器學(xué)習(xí)——數(shù)據(jù)預(yù)處理:歸一化 (Normalization)與標(biāo)準(zhǔn)化 (Standardization)

    分類目錄:《深入理解機(jī)器學(xué)習(xí)》總目錄 歸一化 (Normalization)和標(biāo)準(zhǔn)化 (Standardization)都是特征縮放的方法。特征縮放是機(jī)器學(xué)習(xí)預(yù)處理數(shù)據(jù)中最重要的步驟之一,可以加快梯度下降,也可以消除不同量綱之間的差異并提升模型精度。 歸一化(Normalization)是將一組數(shù)據(jù)變

    2024年02月08日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包