卷积神经网络(三):权值初始化方法之Xavier与MSRA
基础知识 首先介绍一下Xavier等初始化方法比直接用高斯分布进行初始化W的优势所在: 一般的神经网络在前向传播时神经元输出值的方差会不断增大,而使用Xavier等方法理论上可以保证每层神经元输入输出方差一致。 这里先介绍一个方差相乘的公式,以便理解Xavier: Xavier 现在我们先来分析一层卷积: 其中ni表示输入个数。 根据概率统计知识我们有下面的方差公式: 特别的,当我们假设输入和权重都是0均值时(目前有了BN之后,这一点也较容易满足),上式可以简化为: 进一步假设输入x和权重w独立同分布,则有: 于是,为了保证 输入与输出方差一致 ,则应该有: 为什么要保证输入和输出的方差一致:如果不一致,则会造成方差越来越大(vary(y)>var(x)),或是越来越小(var(y) 为了保证前向传播和反向传播时每一层的方差一致,应 但是,实际当中输入与输出的个数往往不相等,于是为了均衡考量, 最终我们的权重方差应满足 : ——————————————————————————————————————— ——————————————————————————————————————— 学过概率统计的都知道 [a,b] 间的均匀分布的方差为: 因此, Xavier 初始化的实现就是下面的均匀分布 ——————————————————————————————————————————