RMSNorm

LayerNorm 的简化变体,仅使用均方根(RMS)统计量做归一化,去除了均值中心化步骤,计算更快且效果相当,已成为大模型的事实标准。

是什么

RMSNorm 将输入向量的每个元素除以该向量的均方根(RMS),然后乘以可学习的缩放参数

与 LayerNorm 的关键区别:不做均值中心化(不减去 mean),仅做缩放。去除了 (x - μ) 步骤,减少一次归约计算。

为什么重要

  1. 计算效率:比 LayerNorm 少一次归约操作(不用算均值),在大模型中累积节省显著
  2. 效果不降:实验表明 RMSNorm 效果与 LayerNorm 相当甚至略优
  3. 事实标准:LLaMA 系列率先采用,之后几乎所有的开源大模型(DeepSeek、Qwen、Mixtral 等)都使用 RMSNorm
  4. 训练稳定性:控制激活向量的整体尺度;但它不保证均值为 0,也不把方差严格标准化为 1。实践中与 Pre-Norm 残差结构搭配仍可稳定训练。

工作原理

LayerNorm vs RMSNorm 对比:

历史与演进

方法提出年份归一化方式状态
BatchNorm2015批次维度CV 主流,NLP 不适用
LayerNorm2016特征维度,NLP 经典方案
RMSNorm2019特征维度,仅 RMSLLM 事实标准
QK-Norm / KV-Norm2020Attention 内部 Q/K/V部分模型采用
DeepNorm2022残差后归一化极深模型(1000层)

归一化位置演进

位置说明采用情况
Post-Norm残差连接之后原始 Transformer
Pre-Norm残差连接之前LLM 主流,训练更稳定
Sandwich NormPre + Post 混用部分模型探索

常见误解

  • “RMSNorm 是 LayerNorm 的简化版所以效果差” — 效果相当,且计算更快
  • “RMSNorm 不中心化会导致训练不稳定” — 实践证明 Pre-Norm + RMSNorm 组合训练非常稳定

相关