为什么Transformer模型使用Layer Normalization而不是Batch Normalization
我觉得最重要的有两点:
- 处理变长序列的稳定性:BN是在不同样本的同一维度做归一化,因为在seq2seq的场景中,样本数量不是固定的/输入序列是变长的,使用BN会导致不稳定。LN是在同一样本的不同维度做归一化,这样会更稳定。
- 小批量下的鲁棒性:Batch Norm的性能受批量大小影响显著,小批量可能导致统计量估计不准确。Layer Norm的统计量仅依赖单个样本,不受批量大小限制,尤其适合资源受限的训练环境。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 百万级群聊的设计实践
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期