神经网络参数初始化-He初始化

Glorot和Bengio提出了Xavier方法来初始化网络参数。该方法基于激活是线性的假设。但该假设对ReLU不适用。何凯明(He kaiming)在论文《Delving Deep into Rectifiers: Surpassing Human-Level Performance on ImageNet Classification》中提出了针对 ReLU激活网络的初始化方法。

He初始化

与Xavier方法一样,He初始化方法也希望初始化使得正向传播时,状态值的方差保持不变;反向传播时,关于激活值的梯度的方差保持不变。

其初始化方法为:

神经网络参数初始化-He初始化_第1张图片

其中,为第 l 层神经元个数。

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

论文作者推导过程针对的是CNN网络的前向传播和反向传播过程。我们讨论全连接网络结构。

正向传播

正向传播为:

其中,为权重矩阵,为上一层的输出,为本层输入。

由于中的元素独立同分布,同时,我们假设中的元素也是独立同分布,相互独立。则:

              (1)

其中,分别是中元素的随机变量。令的均值为0。

根据方差公式:

神经网络参数初始化-He初始化_第2张图片

得到:

由于均值为0,则=0,于是上式可以写成:

神经网络参数初始化-He初始化_第3张图片             (1)

假设为以0为中心的对称分布,=0,则也是以0为中心的对称分布。则:

神经网络参数初始化-He初始化_第4张图片             (2)

把公式(2)代入公式(1),可得:

                (3)

把所有层方差放到一起:

神经网络参数初始化-He初始化_第5张图片              (4)

一个合适的初始化方法应该避免输入信号的指数效应,因此基于式(4),我们要保证:

神经网络参数初始化-He初始化_第6张图片

即:

神经网络参数初始化-He初始化_第7张图片               (5)

综上所述,应将各层权重初始化为期望为0,标准差为的高斯分布,并且将b初始化为0。

 

反向传播

神经网络参数初始化-He初始化_第8张图片

所以:

神经网络参数初始化-He初始化_第9张图片               (6)

而:

                     (7)

                                      (8)

 

把公式(7)、公式(8)代入公式(6),可得:

神经网络参数初始化-He初始化_第10张图片

各层放到一起:

神经网络参数初始化-He初始化_第11张图片

为了避免梯度的指数效应:

神经网络参数初始化-He初始化_第12张图片

即:

应将各层权重初始化为期望为0,标准差为的高斯分布。

 

你可能感兴趣的:(深度学习)