深度学习之参数初始化——Kaiming初始化

Posted Vic时代

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了深度学习之参数初始化——Kaiming初始化相关的知识,希望对你有一定的参考价值。

Delving Deep into Rectifiers: Surpassing Human-Level Performance on ImageNet Classification

Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun.
ICCV 2016.

在介绍Xavier初始化方法的这篇博客的最后,我们提到Xavier初始化方法适用的激活函数有限:关于0对称;线性。而ReLU激活函数并不满足这些条件,实验也可以验证Xavier初始化确实不适用于ReLU激活函数。

Kaiming初始化

残差网络的作者在这篇论文中提出了ReLU网络的初始化方法:Kaming初始化。作者的推导过程针对的其实是卷积网络的前向和反向过程(惊奇地发现自己好像没有推导过卷积网络的梯度表达式)。而为了和Xavier初始化方法保持一致,这里我们还是讨论全连接网络结构。
关于期望、方差的性质,我们已经在Xavier初始化一节介绍过了,这里不再重复。

在Xavier论文中,作者给出的Glorot条件是:正向传播时,激活值的方差保持不变;反向传播时,关于状态值的梯度的方差保持不变。这在本文中稍作变换:正向传播时,状态值的方差保持不变;反向传播时,关于激活值的梯度的方差保持不变。
网络的表达式:

zi=Wihi1,(1)

hi=f(zi).(2)


前向过程

由公式(1)可知:

Var(zi)===ni1Var(Wihi1)ni1[E(Wihi1)2(E(Wihi1))2]ni1[E(Wi)2E(hi1)2(E(Wi))2(E(hi1))2]
假设 E(Wi)=0(3)

又激活函数是ReLU,所以激活值的期望 E(hi1) 不为0。于是上式可以写成

Var(zi)==ni1E(Wi)2E(hi1)2ni1Var(Wi)E(hi1)2.(4)


E(hi1)2=======E(f(zi1))2一文搞懂深度网络初始化(Xavier and Kaiming initialization)

第三节1:深度学习必备组件之数据集处理和参数初始化

第三节1:深度学习必备组件之数据集处理和参数初始化

深度学习之构造模型,访问模型参数——2020.3.11

深度学习之二:神经网络的实践与优化

深度学习之梯度下降法