【Transformer 与注意力机制】25|Layer Normalization:为什么 Transformer 用 LN,不用 BN
💡
原文中文,约7200字,阅读约需18分钟。
📝
内容提要
Layer Normalization(LN)在Transformer中至关重要,确保每层输出的数值尺度稳定。与Batch Normalization(BN)不同,LN独立于batch大小和序列长度,适合变长序列和自回归推理。LN通过计算均值和方差进行标准化,保留可学习的参数,避免信息丢失。现代Transformer多采用Pre-LN结构,以提升训练稳定性。RMSNorm是LN的变体,简化了计算,适用于特定场景。LN的设计对深层网络的优化至关重要。
🎯
关键要点
- Layer Normalization(LN)在Transformer中确保每层输出的数值尺度稳定,避免训练过程中的敏感性问题。
- LN独立于batch大小和序列长度,适合变长序列和自回归推理,避免了Batch Normalization(BN)在这些场景下的局限性。
- LN通过计算均值和方差进行标准化,并保留可学习的参数,避免信息丢失。
- 现代Transformer多采用Pre-LN结构,以提升训练稳定性,Pre-LN通常更容易训练更深的模型。
- RMSNorm是LN的变体,简化了计算,适用于特定场景,尤其在decoder-only LLM中表现良好。
- LN的设计对深层网络的优化至关重要,能够控制attention分数和FFN激活的数值范围,保持可控性。
❓
延伸问答
Layer Normalization(LN)在Transformer中的作用是什么?
LN确保每层输出的数值尺度稳定,避免训练过程中的敏感性问题。
为什么Transformer选择使用Layer Normalization而不是Batch Normalization?
因为LN独立于batch大小和序列长度,适合变长序列和自回归推理,而BN在这些场景下存在局限性。
什么是Pre-LN结构,它有什么优势?
Pre-LN结构将LN放在每个子层输入之前,提升了训练稳定性,通常更容易训练更深的模型。
RMSNorm与Layer Normalization有什么区别?
RMSNorm去掉了中心化步骤,只保留按均方根缩放,计算更简化,适用于特定场景。
Layer Normalization如何影响Transformer中的attention机制?
LN控制Q/K的尺度,确保attention分数的统计特性更可控,避免数值不稳定。
在使用Layer Normalization时需要注意哪些常见误区?
常见误区包括认为LN会损失表达力,以及误解LN和BN的适用场景。
➡️