pytorch神经网络中数据标准化

一、 标准化优点

在这里插入图片描述

二、 标准化目的

使得网络的输入层、隐藏层、输入层的数据直方图都在一个指定的范围内,有利于模型的收敛,有时候为了方便输出结果更好的逼近真实结果,还会对 标签数据进行相应的标准化处理

三、 标准化方法
1、batch norm
  • 通道进行标准化,即通道归一化
  • 解释:
    • 1、bn的计算就是把每个通道的NHW单独拿出来归一化处理
    • 2、针对每一个channel我们都有一组γ、β,所以可学习的参数为2C
    • 3、当batchsize越小,BN的表现效果也越不好,因为计算中所得到的均值和方差不能代表全局
      在这里插入图片描述
2、layer norm
  • 批次进行归一
  • 解释
    • 1、LN的计算就是把每个CHW单独按出来归一化处理,不受batchsize的影响
    • 2、常用在RNN网络,但如果输入的特征区别很大,那么就不建议使用它做归一化处理
      在这里插入图片描述
      在这里插入图片描述
3、instance norm
  • 单张图片进行归一化
  • 解释:
    • 1、IN的计算就是把每个HW单独拿出来归一化处理,不受通道和batchsize的影响
    • 2、常用在风格化迁移,但如果特征图可以用到通道之间的相关性,那么就不建议使用它做归一化处理
      -在这里插入图片描述
4、group norm
  • 通道分组,对每个组进行归一化
  • 解释:
    • 1、GN的计算就是先把通道分成g组,然后把每个gHW单独拿出来归一化处理,最后把g组归一化之后的数据合并成CHW
    • 2、GN介于LN IN之间,当然可以说是LN IN就是GN的特例,比如g的大小为1或者为C
      在这里插入图片描述
5、switchable norm
  • 目前使用频率很低
  • 解释:
    • 1、将BN LN IN 结合,赋予权重,让网络自己去学习归一化层应该使用什么方法
    • 2、集万千宠爱于一身,但训练复杂
      在这里插入图片描述
6、标准化的数学公式
  • 两步骤:
    • 1、标准化
      • 使分布更加均匀,便于训练
    • 2、反标准化
      • 获得非线性表达能力
        在这里插入图片描述

反标准化:使得具有非线性能力

7、标准化流程

在这里插入图片描述
过程:非线性数据→transform→线性数据→w*x+b→非线性数据→BN:去同存异/统一量纲→线性(学习不同点/收敛较快)→反BN:还原数据→非线性(让较大的特征跟大/表达能力较好)→激活(提供更多的非线性/拉开差距)
在这里插入图片描述

四、 权重标准化方法

y=wx

还未仔细研究,等后续补充

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值