知识中等
Batch Normalization、Layer Normalization 和 RMSNorm 的原理与区别?
BN 沿 batch 维统计每个特征的均值方差,LN 对单样本的特征维归一化,RMSNorm 在 LN 基础上减掉均值中心化只保留 RMS 缩放。
标准答案
BatchNorm 对每个特征在 batch 维度上计算均值/方差做归一化,训练时维护滑动平均,推理依赖全局统计量。LayerNorm 对每个样本自身在特征维上归一化,不依赖 batch,成为 Transformer 的标准配置(现代模型多用 pre-LN 稳定训练)。RMSNorm 只用均方根做缩放、不减均值,计算更少、效果与 LN 相当,被 LLaMA、Qwen 等主流大模型采用。
深入理解
高频追问包括:为什么 NLP/Transformer 不用 BN——序列长度可变、小 batch 与分布式统计同步困难,且逐 token 的统计不稳定;pre-LN 与 post-LN 的训练稳定性差异;RMSNorm 省掉了均值项为何几乎不掉点(方向信息主要由相对幅度承载)。机器人策略网络中的归一化也遵循同样的权衡。