深度学习——Xavier初始化方法

链接
http://blog.csdn.net/shuzfan/article/details/51338178

为了使得网络中信息更好的流动,每一层输出的方差应该尽量相等。

认为网络学习的是训练数据的空间分布,即训练收敛时,整个输出空间应该是输入空间分布的某种稳定投影。从层的角度来看,假如2层网络:A->B,B希望获得稳定输出,但由于每次学习更新导致A也在变化,所以B想稳定就比较难。怎么办,保证A和B的分布一样,这样学习就简单一点,即可以理解成信息流通更流畅

考虑线性激活函数的情况下, 在初始化的时候使各层神经元的方差保持不变, 即使各层有着相同的分布. 如果每层都用N(0, 0.01)随机初始化的话, 各层的数据分布不一致, 随着层度的增加, 神经元将集中在很大的值或很小的值, 不利于传递信息. 很多初始化策略都是为了保持每层的分布不变, 而BN是通过增加归一化层使得每层数据分布保持在N(0, 1)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章