残差网络中的BN (Batch Normalization 批标准化层)的作用是什么?

残差网络中的BN (Batch Normalization 批标准化层)的作用是什么?_第1张图片

文章目录

  • 什么是BN (Batch Normalization 批标准化层)
  • 一、BN层对输入信号进行以下操作:
  • 二、BN 层有什么作用?


什么是BN (Batch Normalization 批标准化层)

BN层的全称是Batch Normalization层,中文可以翻译为批标准化层

BN层是2015年提出的一种新的层类型,它通过对每一层神经网络的输入信号进行标准化处理,来解决深层神经网络在训练过程中内部协变量变化导致的问题,从而大幅提升深层网络的训练效率和性能。

一、BN层对输入信号进行以下操作:

  1. 计算批次中的每个输入特征的均值和方差

  2. 使用均值和方差对输入信号进行标准化,使其均值为0、方差为1。

  3. 学习缩放参数γ和偏移参数β对标准化后的信号进行缩放和偏移。

  4. 输出经过缩放和偏移后的标准化信号。

二、BN 层有什么作用?

  1. 减小内部协变量变化对网络训练的影响。BN层可以标准化每一层的输入,消除输入数据的协变量变化,有利于网络训练。

  2. 加速网络训练。BN层可以让每个层看到的输入分布近似正态分布,这对网络训练收敛速度有很大帮助。

  3. 起到正则化效果。BN层可以防止内部特征过拟合,起到一定的正则化作用。

  4. 提高模型性能。通过BN层的标准化处理,网络可以使用更高的学习率进行训练,从而更快地找到更优的最小值,提高模型性能。

  5. 残差连接的补充。残差网络本身就可以很好地传播梯度,BN层进一步改善梯度流动,有利于深层网络的训练。

你可能感兴趣的:(人工智能,机器学习算法,batch,开发语言)