深度学习中的四种归一化方法

一、批量归一化(Batch Normlization,BN)

假设某批次数据样本N*C*H*W

批量归一化的操作是沿着批次N方向,对整个批次的所有样本的同一通道,进行归一化处理。

批量归一化通过规范通道,在减少计算量的同时,使得每个独立样本的整体分布趋于一致,缓解内部协变量偏移,以加快模型收敛。适用于CNN卷积神经网络。

但当批次较小时,其效果可能会急剧下降。

二、层归一化(Layer Normlization,LN)

假设某批次数据样本N*C*H*W

层归一化的操作是对单个样本的全部通道,进行归一化处理。

层归一化强调样本的独立性,适用于序列模型如RNN,LSTM和transformer。

序列模型以token为样本,而每个toekn具备C个特征通道(卷积模型中以图像为样本),token与token之间的语义大不相同,若跨样本进行归一化则易混淆语义,故适用层归一化。

三、实例归一化(Instance Normlization,IN)

假设某批次数据样本N*C*H*W

实例归一化是在层归一化的基础上进一步缩小归一化范围,即对单个样本的单个通道进行归一化处理。

IN 对每个样本的每个通道单独进行归一化,强制每个通道的均值为 0、方差为 1,从而移除了原始图像的风格信息(即通道的全局统计量,如亮度和对比度),同时保留了空间结构(内容)。

在风格迁移中,IN 常与自适应仿射变换结合(如 AdaIN),将风格图的统计量注入内容特征,实现风格转换。

对于生成对抗网络(GANs),IN 有助于稳定训练,防止生成器过度关注图像的全局外观,而是专注于局部纹理。

四、组归一化(Group Normlization,GN)

假设某批次数据样本N*C*H*W

组归一化介于层归一化和实例归一化之间。

如果把所有通道分成1组 ,GN就变成了层归一化(LN)

如果把每个通道单独作为1组 (即每组通道数=1),GN就变成了实例归一化(IN)

GN是这两个极端之间的一个平滑插值,主要解决BN在小Batch Size下性能崩塌的问题。

相关推荐
装不满的克莱因瓶11 分钟前
PyTorch 与它的自动微分工具:Autograd
人工智能·pytorch·python·深度学习·神经网络·机器学习·ai
EQUINOX137 分钟前
【ch03】Coding-attention-mechanisms
人工智能·深度学习·机器学习
老饼讲解-BP神经网络1 小时前
具体说说-RBF神经网络-newrbe函数和newrb函数的区别
人工智能·深度学习·神经网络
机器学习之心1 小时前
198种组合算法+优化CNN-LSTM+SHAP分析+新数据预测+多输出!深度学习可解释分析,强烈安利,粉丝必备
深度学习·算法·cnn-lstm·shap分析·198种组合算法
小糖学代码1 小时前
机器学习:5.深度学习
人工智能·深度学习·机器学习
yuegu7772 小时前
HarmonyOS应用<节气通>开发第24篇:响应式布局设计
深度学习·harmonyos
m沐沐2 小时前
【深度学习】PyTorch CNN 手写数字识别(卷积神经网络)
人工智能·pytorch·python·深度学习·机器学习·pycharm·cnn
San813_LDD2 小时前
[深度学习]Promot标题预测实战:来自DeepSeek的心路历程分析
人工智能·深度学习
王莎莎-MinerU3 小时前
从 OCR 到 Context Engineering:用 MinerU 搭一个可复现文档解析评测
人工智能·深度学习·机器学习·pdf·ocr·个人开发
叫我:松哥3 小时前
基于卷积神经网络的静态手势语识别算法,在测试集上的识别准确率达到97.5%
人工智能·python·深度学习·神经网络·算法·cnn