为什么Transformer模型使用Layer Normalization而不是Batch Normalization

我觉得最重要的有两点:

  • 处理变长序列的稳定性:BN是在不同样本的同一维度做归一化,因为在seq2seq的场景中,样本数量不是固定的/输入序列是变长的,使用BN会导致不稳定。LN是在同一样本的不同维度做归一化,这样会更稳定。
  • 小批量下的鲁棒性:Batch Norm的性能受批量大小影响显著,小批量可能导致统计量估计不准确。Layer Norm的统计量仅依赖单个样本,不受批量大小限制,尤其适合资源受限的训练环境。
posted @ 2025-01-30 13:10    阅读(340)  评论(0)    收藏  举报