NLP任务一定要Transformer?谷歌研究发现,预训练的卷积模型往往效果更好,在机器翻译等领域也得到了实际应用。但之前很少有研究人员思考过:预训练是否也能提高卷积在NLP任务上的效果?最近,资源丰富的谷歌研究院的一项大规模实证研究填补了这一空白。事实证明,预训练的卷积模型在许多NLP任务上并不比预训练的Transformer模型差。本文将重点介绍本研究的实验结果及相关讨论,具体实验设置请见论文。论文地址:https://arxiv.org/pdf/2105.03322.pdf在这个预训练已经成为普遍方法的现代,Transformer架构和预训练语言模型之间似乎有着密不可分的联系。BERT、RoBERTa、T5等模型的底层架构都是Transformer。事实上,最近很少有不基于Transformer的预训练语言模型。尽管基于上下文的表示学习有着悠久的历史,但现代预训练语言建模始于基于循环架构的模型,例如ELMo和CoVE。尽管它们取得了巨大的成功,但使用这些架构的研究已经减少了很多,因为Transformers已经偷走了NLP社区的心,并且NLP社区已经将它(也许更含蓄地)视为比以前的架构更上一层楼。毫无疑问的进步。最近的研究表明了完全卷积模型的潜力,并质疑了对Transformer等自注意力架构的需求。比如康奈尔大学博士提出的卷积seq2seq模型。菲利克斯吴等。2019年在机器翻译、语言建模等一系列规范基准测试任务上取得了优于Transformer的性能。基于这些发现,我们自然会有疑问:我们是否应该考虑Transformer以外的预训练模型?尽管卷积模型在早期取得了一些成功,但卷积在预训练语言模型时代是否仍然相关仍是一个悬而未决的问题。据研究人员称,之前没有工作严格评估预训练-微调范式下的卷积架构。这是本研究的主要目的。具体来说,本文的目标是通过经验验证预训练的卷积模型在一系列任务上与预训练的Transformer具有可比性。预训练方案和模型架构之间的交互主题仍未得到充分研究。只有Transformer能从预训练中受益很多吗?如果我们使用不同架构的归纳偏差,预训练是否也会带来显着的收益?预训练的卷积模型能否在某些情况下表现更好?本文研究了这些问题。基于卷积的模型有一些明显的优势。首先,卷积没有自注意力的二次内存复杂度——这是一个主要问题,甚至足以催生一类全新的“高效”Transformer架构;其次,卷积是在本地执行的,不依赖于位置编码作为模型的命令信号。话虽如此,卷积也有很多缺点。例如,卷积无法捕获全局信息,这意味着此类模型无法跨多个序列执行某种形式的交叉注意力。本文介绍了一个预训练的序列到序列模型Seq2Seq。卷积模型使用基于跨度的序列到序列去噪目标进行训练,类似于T5模型使用的目标。研究人员在原始(无预训练)和预训练-微调范式下评估了几种卷积变体,例如dilated、lightweight和dynamic。这些评估的目的是了解卷积架构在预训练时代的真正竞争力。实验结果表明,预训练卷积在一系列NLP任务上与预训练Transformer相当,包括毒性检测、情感分类、新闻分类、查询理解和语义解析/综合摘要。此外,研究人员发现,在某些情况下,预训练的卷积模型可以在模型质量和训练速度方面超越目前最好的预训练Transformer。并且为了平衡考虑,研究人员还描述了预训练卷积不是更好或者可能不适用的情况。本文的主要贡献包括:预训练-微调范式下卷积Seq2Seq模型的综合实证评估。研究人员表示,预训练卷积模型的竞争力和重要性仍然是一个悬而未决的问题。研究人员还做出了几个重要的观察。具体来说:(1)预训练可以给卷积模型和Transformer带来同等的收益;(2)在某些情况下,预训练的卷积在模型质量和训练速度方面与预训练的Transformer相当。研究人员使用8个数据集对多个领域的许多任务进行了广泛的实验。他们发现预训练的卷积模型在8个任务中的7个上优于最先进的Transformer模型(无论是否有预训练版本)。研究人员比较了卷积和Transformer的速度和运算次数(FLOPS),发现卷积不仅速度更快,而且对于更长的序列也具有更好的扩展性。研究问题与讨论研究人员主要关注以下研究问题(RQ):RQ1:预训练能否同样有益于卷积和Transformer?RQ2:卷积模型(有或没有预训练)能否与Transformer模型相媲美?他们什么时候表现更好?RQ3:与使用Transformer模型相比,使用预训练的卷积模型有什么优势,优势是什么?卷积模型是否比基于自注意力的Transformer更快?RQ4:预训练卷积不适合什么情况?哪些情况需要警惕?是什么原因?RQ5:卷积模型的某些变体是否优于其他变体?实验结果下表2是预训练卷积和预训练Transformer在毒性检测、情感分类、问题分类和新闻分类上的性能对比。所有模型均为12层seq2seq架构,参数约2.3亿。可以看出,预训练也有助于卷积,并且在有和没有预训练的情况下始终优于Transformer模型。ResultsSummary实验发现,在多个领域的7个任务上,(1)与没有预训练的Transformer相比,没有预训练的卷积更有竞争力,而且往往更好;(2)预训练TrainingConvolutions在7项任务中的6项上优于预训练的Transformers。这是问题RQ2的答案。实验还发现,预训练可以以类似于它有利于基于自我注意的模型的方式使卷积受益。因此,预训练的优势并不是Transformer模型独有的。这是问题RQ1的答案。研究人员还发现,在这些预训练的卷积模型中,扩张卷积和动态卷积通常优于轻量级卷积,这回答了问题RQ5。最后,研究人员观察到模型的相对性能(即排名)在使用预训练后发生了变化。这说明使用预训练来搭建架构肯定是有一定效果的。这种影响的直接含义是,在没有预训练的情况下表现良好(相对而言)的模型不一定在预训练下表现最好。因此,除了将架构与预训练解决方案相结合外,我们还需要意识到不同的架构在使用预训练后可能会有不同的行为。讨论和分析对结果的扩展讨论随后是详细的分析和讨论。它将讨论预训练卷积的优点和缺点以及预训练对性能的影响,并将为更广泛的社区提供一些建议。1、预训练卷积在什么情况下不起作用?根据实验结果,我们可以观察到卷积模型相对于成熟的预训练Transformer的潜在优势,并且在某些情况下还可以获得质量改进。但是,这可能有助于进一步了解卷积的陷阱。预训练卷积的一个明显缺点是它们缺乏跨注意力的归纳偏差,这种能力是使用Transformer编码器中的自注意力自然获得的。因此,对于需要对两个或多个序列之间的关系进行建模的任务,使用预训练卷积是不合适的。为了测试这一点,研究人员在SQuAD和MultiNLI上进行了实验,发现预训练卷积的表现远不如Transformers,正是因为缺乏归纳偏差。我们在检查和评估模型时应该能够清楚地区分这一点,就像早期的SNLI排行榜清楚地区分有和没有交叉注意力的模型一样。之前对SQuAD/MNLI等基准的评估表明,预训练的卷积模型确实乏善可陈。比如在MultiNLI上,卷积只能达到75%左右的准确率,而Transformer可以轻松达到84%左右。同样,卷积在SQuAd上达到70%左右,在Transformer上达到90%左右。这完全是意料之中的,因为前提/问题不能与假设/背景相互作用(RQ4)。然而,研究人员通过实验发现,造成这种现象的原因很简单,就是缺乏这种交叉注意力的特性。当在编码器中使用单层交叉注意增强卷积时,发现预训练卷积可以在MultiNLI等数据集上达到与预训练Transformer非常相似的水平,达到~83%的准确率。话虽如此,交叉注意归纳偏差是否真的重要需要从业者进一步论证。研究人员强调,在放大时不一定需要连接句子对的模式,因为这需要对句子对的每个排列进行推理。出于这个原因,在实践中,使用双编码器设置来执行快速嵌入空间查找更为实用和可行。鉴于卷积在一系列编码任务上的强大性能,可以预期预训练的卷积在双编码器设置中表现良好。2、与预训练Transformer相比,预训练卷积有哪些优势?根据实验结果可以看出,与使用Transformer相比,使用卷积可以实现一些质量提升。下面讨论其他优点。在处理长序列时,卷积速度更快,扩展性更好。图1:序列长度对seq2seq掩码语言建模任务处理速度的影响。结果以使用16个TPUv3芯片的C4预训练为基准。结果以对数标度表示。上图1显示了卷积(LightConvs)和Transformer在序列到序列任务上的训练速度。输入长度的值为{64,128,256,512,1024,2048,4096}。事实证明,不仅卷积总是更快(对于较短的序列也更快),而且它的扩展性也更好。卷积线性扩展到更长的序列,而变形金刚则不能。卷积的FLOPs更有效。研究人员测量了序列长度增加时卷积和Transformer的FLOPs数量。下面的图2显示了不同序列长度的结果。总的来说,在所有序列长度的浮点运算数量上,卷积比Transformer更有效。图2:序列长度对seq2seq掩码语言建模任务中FLOP(爱因斯坦求和的操作数)数量的影响。结果以使用16个TPUv3芯片的C4预训练为基准。结果以对数标度表示。总的来说,卷积在时钟和FLOPs方面都更快,这回答了问题RQ3。此外,研究人员还发现,卷积的FLOPs效率在不同的序列长度上缩放得更好。3、是否推荐完全用卷积代替Transformer?尽管Transformers主导了NLP研究界,但本文认为卷积的一些优势被忽视了,例如模型质量、速度、FLOP和可扩展性。还有,我们之前并不知道预训练是否可以帮助卷积。这篇论文表明,在某些任务上,预训练可以为卷积模型带来与Transformer模型相似的收益。不过,研究人员也强调,卷积难以应对需要交叉注意力的任务,难以对同一序列中有多个句子或文档的情况进行建模。研究人员认为,这是一个值得从业者探索的研究方向,有望发现Transformer以外的新架构。4.不要将预训练与架构改进混为一谈。这篇论文还表明,轻量级、动态和扩张的卷积都可以从预训练中获益,与Transformers一样受益。在当前的研究领域,预训练总是与Transformer架构密切相关。因此,人们总是把BERT、Transformer和大规模语言模型的成功混为一谈。虽然到目前为止确实只有Transformer会使用大规模预训练,但相信其他架构可能具有类似的潜力。基于实验结果,研究人员认为,架构和预训练的综合效果还有进一步研究的空间。这项研究本身有望提高卷积模型在NLP领域的竞争力。他们表示,在探索解决NLP任务时,不要总是局限于目前最好的Transformer,还要积极探索其他替代框架。
