Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift

批量归一化(BN)通过减少神经网络内部的协变量漂移来加速训练过程。BN在训练时利用小批量统计进行归一化,同时引入缩放和平移参数以保持表达能力。这有助于缓解梯度消失问题,允许使用更大学习率,甚至在某些情况下可以去除dropout和减少L2正则化。实验表明,加入BN后的网络训练稳定性提高,输出激活分布更稳定。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Background

Covariance shift
——when the input distribution to a learning system changes, it is said to experience covariance shift.

当这种现象发生在多层神经网络之间时,即前面层参数的改变,使得后面层的输入分布发生改变时,就叫Internal covariance shift


这里写图片描述

前面层的参数变化会影响当前层的输入分布,缺点有二:
1.大大减慢当前层的参数学习速度(当前层也是一个learning system,一旦其输入的分布改变,就要调整参数来适应这种分布);
2.若使用sigmoid激活函数,当前层的输入可能会处于sigmoid函数的非线性饱和区域,进而导致梯度消失现象。在BN出现以前,通常采用ReLU(x)=max(0,x)激活函数或使用较小的learning rate来解决这个问题。

因此我们想到,如果前面层的输出activation(即当前层的输入input)的分布是一定的呢?那样就会减少下一层输入陷入sigmoid饱和非线性区域的可能,梯度不再容易消失,从而加快训练速度。

Whitening

对某一层的输出activations进行白化操作(零均值、单位方差、去相关),可以使得这些activations的分布保持恒定,从而减小internal covarian

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值