
什么是BN (Batch Normalization 批标准化层)
BN层的全称是Batch Normalization层,中文可以翻译为批标准化层。
BN层是2015年提出的一种新的层类型,它通过对每一层神经网络的输入信号进行标准化处理,来解决深层神经网络在训练过程中内部协变量变化导致的问题,从而大幅提升深层网络的训练效率和性能。
一、BN层对输入信号进行以下操作:
-
计算批次中的每个输入特征的
均值和方差。 -
使用均值和方差对输入信号
进行标准化,使其均值为0、方差为1。 -
学习缩放
参数γ和偏移参数β对标准化后的信号进行缩放和偏移。 -
输出经过缩放和偏移后的标准化信号。
二、BN 层有什么作用?
-
减小内部协变量变化对网络训练的影响。BN层可以标准化每一层的输入,消除输入数据的协变量变化,有利于网络训练。 -
加速网络训练。BN层可以让每个层看到的输入分布近似正态分布,这对网络训练收敛速度有很大帮助。 -
起到正则化效果。BN层可以防止内部特征过拟合,起到一定的正则化作用。 -
提高模型性能。通过BN层的标准化处理,网络可以使用更高的学习率进行训练,从而更快地找到更优的最小值,提高模型性能。 -
残差连接的补充。残差网络本身就可以很好地传播梯度,BN层进一步改善梯度流动,有利于深层网络的训练。 <

BatchNormalization层通过标准化输入信号,减少内部协变影响,加速网络训练,正则化并提升模型性能。它在深层神经网络中发挥着关键作用,优化了梯度流动和残差网络的效果。
的作用是什么?&spm=1001.2101.3001.5002&articleId=135044917&d=1&t=3&u=917f40cbc46b4e41b926a458fd365ffa)
1万+

被折叠的 条评论
为什么被折叠?



