深度学习-常见的几种Normalization算法

  • Batch Normalization (BN)
  • Layer Normalization (LN)
  • Instance Normalization (IN)
  • Group Normalization (GN)

一、Batch Normalization (BN)
一个feature map为:N * C * W * H,BN在N、W、H维度上求均值和方差,保留C的维度。 比如在第一个样本的第一个通道,第二个样本的第一个通道…,第N个样本的第一个通道,求均值和方差,作为第一个通道的均值和方差。接下来的通道方法类似,就得到了所有通道的均值和方差。
BN在batch size较大的时候表现比较好,较小的时候求得的均值和方差与整个样本的均值和方差有偏差。目前在CV方面取得的效果较好,但是在文字语音方面不太好用,因为训练数据的长度不一致,接下来引出LN。

二、Layer Normalization (LN)
一个feature map为:N * C * W * H,LN在C、W、H维度上求均值和方差,保留N的维度。比如在第一个样本的第一个通道,第一个样本的第二个通道…,第一个样本的第C个通道,求均值和方差,作为第一个样本的均值和方差。其他样本方法类似,就得到了所有通道的均值和方差。

三、Instance Normalization (IN)
一个feature map为:N * C * W * H,IN在W、H维度上求均值和方差,保留N,C的维度。
IN最初用在图像的风格迁移,在单个样本内部操作,不依赖batch。

四、Group Normalization (GN)
GN介于BN和IN之间。把channel分为几个group来求均值和方差。
GN适用于占用显存比较大的任务,batch size比较小,使用BN效果不好,例如图像分割等。

Normalization算法实现:代码传送门

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值