【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的适用场景。

➡️

继续阅读