神经网络基础知识之参数初始化

文章目录

  • 参数初始化
    • 1、预训练初始化
    • 2、随机初始化
    • 3、固定值初始化
    • 4、对比
    • 5、常见的参数随机初始化方法

参数初始化

在不同的神经网络中均存在参数需要在训练前进行初始化,例如径向基神经网络(RBFNN)隐含层的中心点、宽度向量,输出层的权值、阈值。初始化的参数好坏将直接影响网络收敛的速度及效果,常用的神经网络的参数初始化方法大致可以分为三种,它们分别为预训练初始化、随机初始化以及固定值初始化。

1、预训练初始化

预训练初始化是指对于在同一个数据集上已经完成训练后的神经网络模型可以获得一个较好的参数值,以此作为参数初始值来进行新的网络训练。

2、随机初始化

随机初始化是指按照某种公式或规则确定神经网络参数的范围,然后在这个范围内随机生成初始化参数。

3、固定值初始化

固定值初始化相对前两种方法使用较少,这一方法采用固定值作为神经网络的参数初始值,例如当使用ReLU作为激活函数时,将偏置的初始值设为0.01可以使训练初期更容易激活。

4、对比

上面三种初始化方法中,预训练初始化是基于已训练好的模型来生成初始参数,当使用此方法初始参数时,训练初期会取得较好的收敛效果,但后期的收敛效果则无法得到保证,相对来说不够灵活,而部分三层神经网络一般不考虑进行偏置的设定,此时使用固定值初始化方法无法达到设定偏置的效果,因此这一方法的可适用面相对另外两种方法来说更小。综上所述,研究者们更多的使用随机参数初始化方法。

5、常见的参数随机初始化方法

(1)随机初始化(Random Initialization),主要包括高斯分布初始化以及均匀分布初始化两种。高斯分布初始化是指使用高斯分布N(0,σ^2)对每个参数进行随机初始化;均匀分布初始化是指在一个给定区间[-r,r]内采用均匀分布来初始化参数。
(2)标准初始化(Standard Initialization),主要包括正态分布初始化以及均匀分布初始化两种,这一初始化方法更适用于Sigmod激活函数,假设神经网络的输入特征维度为n,则正态分布初始化指的是随机初始化生成的每个参数满足正态分布N,均匀分布初始化指的是随机初始化生成的每个参数满足均匀分布U。
在这里插入图片描述
在这里插入图片描述

(3)Xavier初始化(Xavier Initialization),这一初始化方法也分为正态分布初始化以及均匀分布初始化两种,且适用于Losgistic和Sigmod激活函数,假设神经网络的输入特征维度为n,输出特征维度为m,则正态分布初始化指的是随机初始化生成的每个参数满足正态分布N,均匀分布初始化指的是随机初始化生成的每个参数满足均匀分布U。
在这里插入图片描述
在这里插入图片描述

(4)He初始化(He Initialization),同标准初始化与Xavier初始化相同,此方法分为正态分布初始化以及均匀分布初始化,更适用于ReLU激活函数, 假设神经网络的输入特征维度为n,则正态分布初始化指的是随机初始化生成的每个参数满足正态分布N,均匀分布初始化指的是随机初始化生成的每个参数满足均匀分布U。
在这里插入图片描述
在这里插入图片描述

通常来说,在对神经网络参数初始化的方式进行选择时需要考虑到神经网络中使用的激活函数,按照具体的激活函数选择更为适用的参数初始化方式有利于网络获得更好的训练结果。

拓展内容:
神经网络基础知识之激活函数

你可能感兴趣的:(机器学习(Python),神经网络,深度学习,人工智能)