理解CNN中的Batch Normalization (补充 知乎博主)

理解CNN中的Batch Normalization - 知乎 (zhihu.com)

https://zhuanlan.zhihu.com/p/403073810

BN层常见有针对1d特征(全连接层后面的)

 举一个简单的例子吧 解释在全连接层(Fully Connected Layer, FC Layer)后加 BN 层时,如何计算均值和方差。

假设有一个全连接层的输出(一个 batch)如下:

X = \begin{bmatrix} x_1^{(1)} x_2^{(1)} x_3^{(1)} \\ x_1^{(2)} x_2^{(2)} x_3^{(2)} \\ x_1^{(3)} x_2^{(3)}x_3^{(3)} \\ x_1^{(4)} x_2^{(4)} x_3^{(4)} \end{bmatrix}X = \begin{bmatrix} x_1^{(1)} & x_2^{(1)} & x_3^{(1)} \\ x_1^{(2)} & x_2^{(2)} & x_3^{(2)} \\ x_1^{(3)} & x_2^{(3)} & x_3^{(3)} \\ x_1^{(4)} & x_2^{(4)} & x_3^{(4)} \end{bmatrix}

这里,有 4 个样本(batch size = 4),每个样本有 3 个特征(feature dim = 3)。

计算均值和方差

对于每一个特征维度(每一列),分别计算均值和方差:

计算均值

计算方差

最后,通过 γ和 β 进行重新缩放和平移。比如,如果 γ1=1 和 β1=0,那么最终的输出就是标准化后的值;如果 γ1 和 β1是其他值,那么输出会相应地进行缩放和平移。

为什么需要可学习参数 γ 和 β?

虽然标准化可以使得特征的分布更加稳定,但对于深层神经网络而言,仅仅依赖标准化可能会限制模型的表达能力。因此,通过引入γ 和 β,我们可以让模型在保持数值稳定的前提下,灵活地学习到特征的最佳尺度和偏移,从而提高整体性能。

通过反向传播算法,BN 层的参数γ 和 β可以逐步优化,使得神经网络在训练过程中不仅能标准化特征,还能通过调整特征的尺度和偏移来更好地拟合数据,从而提高模型的表现。

神经网络中的其他参数(如权重和偏置)一样。以下是具体的学习过程:

 

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Batch normalization是一种常用的神经网络正则化技术,它的主要思想是对每一层的输入进行归一化,使得网络每一层的输入分布都具有相似的统计特性。Batch normalization可以在训练过程减少内部协变量偏移(Internal Covariate Shift)现象的发生,有助于加速网络的训练,并提高网络的泛化能力。 内部协变量偏移是指在训练过程,每一层的输入分布会发生改变,导致网络每一层的参数都需要重新适应新的输入分布,从而影响了网络的收敛速度和泛化能力。Batch normalization通过对每一层的输入进行归一化,使得每一层的输入分布都具有相似的统计特性,从而减少了内部协变量偏移现象的发生。 具体来说,Batch normalization的计算公式如下: $$ \hat{x}=\frac{x-\mu}{\sqrt{\sigma^2+\epsilon}} \\ y=\gamma\hat{x}+\beta $$ 其,$x$是输入,$\mu$和$\sigma^2$是在batch内计算得到的均值和方差,$\epsilon$是一个很小的常数,用于避免分母为0的情况,$\hat{x}$是将输入$x$进行归一化后的结果,$\gamma$和$\beta$是可学习的缩放和偏移参数。 Batch normalization的作用是将每一层的输入归一化到均值为0,方差为1的分布上,从而使得每一层的输入分布具有相似的统计特性,加速了网络的训练,并提高了网络的泛化能力。 总之,Batch normalization通过对每一层的输入进行归一化,减少了内部协变量偏移现象的发生,提高了网络的训练速度和泛化能力,是一种非常实用的神经网络正则化技术。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值