InceptionV2----Batch Normalization层
生活随笔
收集整理的這篇文章主要介紹了
InceptionV2----Batch Normalization层
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?一、BN層的操作
1.BN層的操作位置:在非線性映射之前,目的是為了減少梯度消失和梯度爆炸。
1.對輸入的x做歸一化
2.增加2個參數,提高模型表達能力
3.理想情況下E和Var應該是針對整個數據集的,但顯然這是不現實的。因此,作者做了簡化,用一個Batch的均值和方差作為對整個數據集均值和方差的估計。
?
二、作用
1.因為反向傳播的時候,梯度的連乘表達式中包含激活函數的導數,BN使得激活函數的輸入正規化,從而導數落在比較好的位置,減少梯度消失和梯度爆炸。
2.但是,BN也引入了2次乘除法運算,在求導時也會貢獻乘除法運算,也可能會導致梯度消失和爆炸。
3.由于參數初始化時,一般是均值為0的。因此樣本在均值為0時,模型會訓練得更快速。
?
?如圖,剛開始的參數模型,y=Wx+b,因為W和b是0均值初始化的,就類似2條綠線,樣本是紅色的點,要經過多次訓練,模型參數才能變成紫色的線。若對數據點進行歸一化,則模型訓練會加快。
轉載于:https://www.cnblogs.com/mimandehuanxue/p/8993968.html
總結
以上是生活随笔為你收集整理的InceptionV2----Batch Normalization层的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 孕妇梦到前夫和孩子怎么回事
- 下一篇: 判断一个js对象,是否具有某个属性