点击蓝字
关注我们
AI TIME欢迎每一位AI爱好者的加入!
在自然语言处理(NLP)领域,基于生成词向量的BERT算法由于其优秀的性能被关注。其中BERT算法最重要的部分便是Transformer。加速Transformer可以使得许多自然语言处理算法更高效地完成任务。使得Transformer运行效率低下的一个很重要的原因就是Transformer解码端的高计算复杂度。
面对Transformer解码端的高计算复杂度,压缩注意网络通过压缩Transformer解码端的子层来简化体系结构,以实现更高的并行度。通过本期AI TIME PhD直播间,我们很荣幸地邀请到论文的共同一作,东北大学自然语言处理实验室林野博士为大家分享他们的研究成果!
林野:东北大学自然语言处理实验室博士二年级学生,导师是朱靖波教授和肖桐教授。研究方向主要包括神经机器翻译、模型压缩。
一、Transformer模型
基于自注意机制的Transformer模型被提出时是为了提高机器翻译的准确率,如今Transformer模型已经被广泛应用于NLP各个领域,许多NLP模型都是基于Transformer模型的。如果能够加速Transformer模型的计算,那么就能提高NLP领域中许多模型的计算速度。经过统计发现在Transformer模型中解码端占用了整个模型计算时间的80%以上。由于Transformer模型解码端的计算复杂度非常高,因此模型解码效率十分低下。
二、Transformer模型解码端效率分析
从Transformer模型的示意图(图1)中可以看出解码端层数较深,并且由多层组成,其中每层又包括三个子层。
图1:Transformer模型
另外attention的计算过程中会计算任意两个输入单词之间的关联度,所以attention的计算复杂度非常高并且非常耗时。但是由于解码时的自回归特性,因此编码端的attention耗时比解码端少。从以上分析可以看出我们可以从两个方面来提高解码端的效率:一是我们会减少实验中基线模型的解码端层数 ;二是我们提升子层间的并行度来获得更多的解码阶段的加速。
三、减少基线模型的解码端层数
我们采取两种方法来提升模型解码效率。首先,模型使用深编码端-浅解码端结构(Kasai et al. 2020)。如果应用