鏈接
http://blog.csdn.net/shuzfan/article/details/51338178
爲了使得網絡中信息更好的流動,每一層輸出的方差應該儘量相等。
認爲網絡學習的是訓練數據的空間分佈,即訓練收斂時,整個輸出空間應該是輸入空間分佈的某種穩定投影。從層的角度來看,假如2層網絡:A->B,B希望獲得穩定輸出,但由於每次學習更新導致A也在變化,所以B想穩定就比較難。怎麼辦,保證A和B的分佈一樣,這樣學習就簡單一點,即可以理解成信息流通更流暢
考慮線性激活函數的情況下, 在初始化的時候使各層神經元的方差保持不變, 即使各層有着相同的分佈. 如果每層都用N(0, 0.01)隨機初始化的話, 各層的數據分佈不一致, 隨着層度的增加, 神經元將集中在很大的值或很小的值, 不利於傳遞信息. 很多初始化策略都是爲了保持每層的分佈不變, 而BN是通過增加歸一化層使得每層數據分佈保持在N(0, 1)