pytorch BatchNorm LayerNorm InstanceNorm GroupNorm 通俗易懂理解

认识批量数据

先来理解归一化层的输入数据的格式,输入格式包括4个符号:N、C、H、W
N:batch–我们通常将一个批量数据输入模型进行训练。
C:通道数,可以理解为特征的个数。
H*W:表示一个通道内数据的维度,这里是二维,若是NCABC,则数据维度是三维,依此类推,NCABCD…。
以输入格式为NCHW为例N:样本轴,代表一个批量(batchsize);
C:通道轴,代表特征个数;
F:每个通道中特征的维度,以输入格式为NCHW为例,F=H*W,所以每个通道中特征为二维,依此类推。

上图中,左图为LayerNorm,右图为BatchNorm,原因如下:
LayerNorm :同一样本在不同通道上做归一化。
BatchNorm:不同样本在同一特征上做归一化。

上图的另一种理解方法:
下图:横轴:N,样本轴;纵轴:C,通道轴;F:每个通道中特征的维度,一维。图中:N=3,C=5,F=1,此批量数据格式为(3,5,1);
Alt
F:每个通道中特征的维度,两维。图中:N=3,C=3,F=2*2,此批量数据格式为(3,3,2,2);
Alt
F:每个通道中特征的维度,三维。图中:N=3,C=3,F=3*2*2,此批量数据格式为(3,3,3,2,2);
Alt

四种归一化的异同点

相同点 异同点
均是通过 x ^ i = x i − μ β σ β 2 + ϵ 、 y i = γ x ^ i + β \hat x_i = \frac{x_i - \mu_\beta}{\sqrt {\sigma^2_\beta+\epsilon}} 、y_i = \gamma \hat x_i + \beta x^i=σβ2+ϵ xi
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值