Transformer如何解决梯度爆炸和消失问题?

面试题简述

训练大模型经常会遇到梯度爆炸和消失,你知道有哪些改善方法吗?softmax会不会导致梯度爆炸或消失?transformer的设计里有哪些方法用于解决这个问题?

面试官想听的

1、L2 clipping、梯度缩放、初始化模块;

2、softmax为什么会导致梯度爆炸;

3、了解 DeepNet init、RMSNorm 等提升稳定性的方法。

面试回答举例

梯度爆炸一般用梯度剪裁解决,梯度消失可以通过残差连接 + 合理初始化 + LayerNorm 减轻。

softmax 本质上确实会带来梯度集中到一个token上,从而导致梯度消失,尤其是 logits 非常大时。

详细内容可跳转该链接查看详情:http://xhslink.com/o/7UZDFwez5tJ

由浅入深分析

1、梯度爆炸的来源

(1)残差过大

(2)softmax logits 打得太狠

(3)残差未缩放

解决办法:

(1)grad clipping

(2)初始化调优

(3)attention scaling

2、梯度消失的来源

(1)sigmoid、softmax 激活压缩

(2)深度网络梯度逐层减弱

解决办法:

(1)residual connection

(2)LayerNorm/RMSNorm

(3)更合理的初始化

3、Transformer的处理方式

(1)残差(最关键)

(2)LayerNorm 稳定激活

(3)Attention缩放

(4)正交初始化、DeepNet init

面试加分点

1、softmax 引起的梯度饱和是关键点

2、提到 DeepNet init或uP

3、提到Transformer本质上是为了解决梯度传递问题而设计的。

#春招##面经##面试##实习#
技术必备题库 文章被收录于专栏

带你复盘大厂后端和算法面试,拆解面试官到底想听啥

全部评论
hi,小伙伴们~ 3月15日(本周日)20:00–21:00,我们会在小红书做一场直播,聊一聊: 1、大模型方向目前的就业机会 2、互联网大厂今年的 HC 情况 3、结合阿里大模型春招面试面经做一次详细拆解 想了解大模型求职和面试准备的小伙伴可以来直播间一起交流~ 小红书账号:Offer面试官 感兴趣的小伙伴不要错过哦~
点赞 回复 分享
发布于 03-11 10:18 上海

相关推荐

03-28 18:37
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

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