- 归一化就是要把你需要处理的数据经过处理后限制在一定范围内,使得每一层神经网络的分布保持相同分布(0-1分布)。首先归一化是为了后面数据处理的方便,其次是保证模型运行时收敛加快。归一化处理把数据限制在[0,1]之间,而标准化处理则没有限制数据范围。
批归一化(batch 归一化、batchNorm):不仅对输入x进行归一化,同时还可以对各个隐藏层的z进行归一化。对各个隐藏层进行归一化时,可以通过设置γ和β参数来构造不同的均值和方差,使得各层的隐藏单元并不总是服从0-1分布,而是隐藏单元(同一层)之间具有不同分布。γ、β也是需要学习的参数,同样可以使用动量、RMS、Adam来优化。https://blog.csdn.net/weixin_42535423/article/details/103882613这篇文章讲得很清楚。
归一化和标准化的x均值方差都是对mini-batch中的某一维度。
- 归一化和标准化:
本质上都是对数据的线性变换。
但是,很多讲解BN的操作文章做的都是如下流程(原作者论文中提出的):