第 3 题:Layer Normalization 的作用及为何不用 Batch Normali

题目

解释 Layer Normalization 的作用,以及为什么 Transformer 使用它而不是 Batch Normalization。

一、Layer Normalization 在做什么?

Layer Normalization(LN)单个样本、同一层内的所有特征做标准化:先在这一层的 个神经元上算均值和方差,再对每个神经元减均值、除标准差,最后用可学习的 做缩放和平移。

设该层输出为

作用:稳定每层输出的分布,减轻“内部协变量偏移”,让深层网络更好训、可以用更大学习率。 让模型能学“要不要标准化、偏到哪”,避免丢失表达能力。

和 BN 的本质区别:LN 的均值和方差是在特征维 (同一样本、同一层)上算的;BN 是在 batch 维(同一特征、不同样本)上算的。所以 LN 不依赖 batch,单样本也能算;BN 依赖 batch,batch 小时不稳定。

二、Batch Normalization 简要回顾

Batch Normalization(BN):对每个特征维度,在当前 batch 的 个样本上算均值和方差,然后对该特征做标准化。

  • 训练时用当前 batch 的统计;推理时通常用训练阶段的移动平均(running mean/var),所以训练和推理不一致。
  • Batch 小时,batch 统计噪声大;序列长度不一或变长时,BN 在“batch×长度”上的统计也很难统一,推理时若长度和训练差很多,running 统计可能不适用。

三、Transformer 为什么用 LN 而不用 BN?

维度 LN BN
统计维度 同一样本、层内 维特征 同一特征、batch 内 个样本
序列长度 无关,任意长度一样算 长度不一/变长时统计难统一
Batch 大小 不依赖 bat

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

Ai Agent:面试300问 文章被收录于专栏

《AI Agent 300 问》专为备战 AI Agent 相关岗位的求职者打造,适配校招、社招全场景,覆盖算法研发、产品、解决方案等全岗位。专栏汇总 300 道大厂高频面试真题,全维度覆盖提示工程、智能体规划推理、记忆机制、工具调用、多智能体协作、框架落地、行业应用等核心领域,拆解考点底层逻辑,分享一线实战经验,助你一站式通关高薪面试。

全部评论

相关推荐

牛客63981766...:给龙虾一个固定任务,每天出去逛一圈收集消息,token就上来了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务