前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >微软提出DeepNet:把Transformer提升到了1000层,目标检测领域新的希望(附源代码)

微软提出DeepNet:把Transformer提升到了1000层,目标检测领域新的希望(附源代码)

作者头像
计算机视觉研究院
发布2022-03-30 11:40:31
6190
发布2022-03-30 11:40:31
举报
文章被收录于专栏:计算机视觉战队

关注并星标

从此不迷路

计算机视觉研究院

公众号IDComputerVisionGzq

学习群扫码在主页获取加入方式

论文地址:https://arxiv.org/pdf/2203.00555.pdf

源代码:https://github.com/microsoft/unilm

计算机视觉研究院专栏

作者:Edison_G

提出了一种简单而有效的方法来稳定(训练和解码)极深的Transformer。具体来说,引入了一个新的归一化函数(DEEPNORM),修改Transformer中的残差连接,并伴随着理论上的初始化。

01

前言

在今天分享中,研究者提出了一种简单而有效的方法来稳定极深的Transformer。具体来说,引入了一个新的归一化函数(DEEPNORM)来修改Transformer中的残差连接,并伴随着理论上的初始化。 

深入的理论分析表明,模型更新可以以一种稳定的方式有界。所提出的方法结合了两个优点,即Post-LN的良好性能和Pre-LN的稳定训练,使DEEPNORM成为首选的替代方案。 研究者成功地将Transformer扩展到1,000 层(即2,500个注意力和前馈网络子层),这比之前的深度Transformer深一个数量级。值得注意的是,在具有7,482个翻译方向的多语言基准测试中,具有3.2B参数的200层模型显着优于具有12B参数的48层最先进模型5个BLEU点,这表明了有希望的缩放方向。

02

背景

近年来,出现了向大型Transformer模型发展的趋势。容量已从数百万个参数大幅增加到数十亿个,甚至数万亿。大规模模型在广泛的任务上产生了最先进的性能,并在少样本和零样本学习方面表现出令人印象深刻的能力。尽管有大量参数,但它们的深度(如上图所示)受到Transformer训练不稳定性的限制。

Nguyen和Salazar发现,pre-norm残差连接(Pre-LN)提高了基于post-norm连接(Post-LN)的Transformer的稳定性。然而,底层的Pre-LN的梯度往往大于顶层,与Post-LN相比导致性能下降。 

为了缓解上述问题,已经努力通过更好的初始化或更好的架构来改进深度Transformer的优化。这些方法可以稳定多达数百层的Transformer模型。然而,以前的方法都没有成功地扩展到1000 层。

研究者的目标是提高Transformers的训练稳定性,并将模型深度按数量级缩放。为此,研究了优化过程的不稳定的原因,发现exploding model update是造成不稳定的原因。受上述观察的启发,研究者在残差连接处引入了一个新的归一化函数(DEEPNORM),它具有将模型更新限制为常数(bounding the model update by a constant)的理论依据。所提出的方法简单而有效,只需更改几行代码。该方法提高了Transformer的稳定性,因此能够将模型深度扩展到1,000层以上

03

新框架

(左)Pseudocode for DEEPNORM. We take Xavier initialization (Glorot and Bengio, 2010) as an example, and it can be replaced with other standard initialization. Notice that α is a constant. (右)Parameters of DEEPNORM for different architectures (N-layer encoder, M-layer decoder).

如上图所示,新方法很容易实现基于Transformers(Post-LN)的方法。与Post-LN相比,DEEPNORM在执行层归一化之前对残差连接进行了放大。此外,在初始化期间缩小了参数。值得注意的是,研究者只缩放前馈网络(FFN层)的权重,以及注意力层的值投影和输出投影。此外,残差连接和初始化的规模取决于架构。

Instability of Deep Transformer

研究者研究了Deep Transformer不稳定的原因。分析从观察开始:更好的初始化方法可以稳定Transformer的训练。这也得到了验证。因此,研究了有或没有适当初始化的Post-LN的训练过程。通过更好的初始化,在执行Xavier初始化后将第l层的权重缩小kl = N - l + 1, l ∈ [1, N]。

(a) 18L-18L 模型顶层的梯度范数对比。(b) 模型最后一层的梯度范数对比,深度从 6L-6L 到 24L-24L。(c) 18L-18L 模型的验证损失曲线对比。

模型更新,LNs的平均输入,以及18L-18L模型的训练早期的可视化

证实Post-LN的不稳定性来自一系列问题,包括梯度消失以及太大的模型更新。

DEEPNET: Extremely Deep Transformers

接下来介绍了名为DEEPNET的极深Transformer。它可以通过减轻爆炸模型更新问题来稳定优化。首先提供了对DEEPNET模型更新的预期幅度的估计。然后提供理论分析以表明它的更新可以由提出的DEEPNORM的常数限制。

Architecture

DEEPNET基于Transformer架构。与普通Transformer相比,它对每个子层使用新的DEEPNORM,而不是Post-LN。DEEPNORM 的公式可以写成:

其中alpha是一个常数,Gl(xl,θl)是第l个Transformer子层(即注意力或前馈网络)的函数,参数为θl。此外,DEEPNET将残差分支内的权重θl缩放β.值得注意的是α和β都是仅取决于架构的常量。

Expected Magnitude of Model Update

Attention 是 Transformer 的重要组成部分。

Without loss of generality, we study the 1-head case. Let Q, K, V ∈ Rn×d denote the query, key, value, respectively. WQ, W K, WV ∈ Rd×dk are the input projection matrices, and WO ∈ Rdk×d is the output projection matrix. Then, the attention module can be formulated as:

换句话说,注意力输出的大小只取决于值和输出投影:

这表明模型倾向于累积每个子层的更新,从而导致模型更新量呈爆炸式增长,从而使早期优化变得不稳定。

它表明类似的累积效应导致模型深度的(数量级)幅度快速增长(见下图)。此外,交叉注意力(cross-attention)将(数量级)幅度从编码器传播到解码器,这解释了为什么解码器比编码器更不稳定。

‍Derivation for DEEPNORM and the Initialization

研究表明,DEEPNET的expected model updates),在参数α和β取值适当的时候,以常数为界。分析基于SGD更新,通过“实验”验证DeepNorm在Adam优化器下,工作效果很好。

提供了对”编码器-解码器架构“的分析,它可以以相同的方式自然地扩展到”仅编码器“(bert) 和仅解码器(gpt)模型。

04

实验结果分析

100层比6层就提高了0.8 BLEU,估计是这个任务En-De的数据量有点小。DeepNet发挥空间有限。

以10层的间隔将模型的深度从10L-10L变化到100L-100L。DEEPNET从浅到深都是稳定的。它收敛速度很快,仅在8,000步内就实现了30多个BLEU,而大多数基线都没有。此外,随着模型的深入,性能不断提高。

进一步将DEEPNET分别扩展到更大的学习率、批量大小和隐藏维度。对于每个实验,只改变一个超参数,其他的都是固定的。

文章部分摘自于——https://zhuanlan.zhihu.com/p/476571784

© THE END 

转载请联系本公众号获得授权

计算机视觉研究院学习群等你加入!

计算机视觉研究院主要涉及深度学习领域,主要致力于人脸检测、人脸识别,多目标检测、目标跟踪、图像分割等研究方向。研究院接下来会不断分享最新的论文算法新框架,我们这次改革不同点就是,我们要着重”研究“。之后我们会针对相应领域分享实践过程,让大家真正体会摆脱理论的真实场景,培养爱动手编程爱动脑思考的习惯!

扫码关注

计算机视觉研究院

公众号ID|ComputerVisionGzq

学习群|扫码在主页获取加入方式

 往期推荐 

🔗

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-03-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 计算机视觉战队 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Architecture
相关产品与服务
图像识别
腾讯云图像识别基于深度学习等人工智能技术,提供车辆,物体及场景等检测和识别服务, 已上线产品子功能包含车辆识别,商品识别,宠物识别,文件封识别等,更多功能接口敬请期待。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档