为什么Transformer用LayerNorm?

面试题简述

Transformer中用的是LayerNorm,而不是常见的BatchNorm,这是为什么?

面试官想听的

意识到不是BN不好,而是不适合Transformer的使用场景。

面试回答举例

Transformer中选择LayerNorm而不是BatchNorm,主要原因和序列建模方式以及训练场景有关。

详情请查看:http://xhslink.com/o/8yJohFzKSX6

由浅入深分析

1、BN 依赖 batch 统计量。

2、LN 只依赖特征维度。

3、Transformer 的 token 并行与 BN 设计目标维度不一致。

4、自回归推理场景下 BN 表现不稳定。

面试加分点

1、提出推理阶段 batch size = 1。

2、能从 NLP/序列建模特点解释,而不是泛讲归一化。

#校招##实习##面试##八股##大厂#
2025推荐算法 文章被收录于专栏

带你复盘2025年推荐算法高频面试题,拆解推荐算法面试到底在考啥!

全部评论

相关推荐

昨天 07:53
门头沟学院 C++
心愿便利贴:工作了以后回头再看待这个问题,从客观的视角来讲是因为每个人对自己的要求不同,学习好的人对自己的要求很高,所以觉得考不好就天塌了,认为自己学习好并且值得一份好工作的人也是一样,找不到符合自己预期的工作肯定也会觉得是侮辱,牛客上有很多名校大学生,肯定会存在这种好学生心态啊,“做题区”从来都不是贬义词,这是大部分普通人赖以生存的路径,这个有什么好嘲讽的,有“好学生心态”没有错,但是不要给自己太大的压力了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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