0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Transformer的复杂度和高效设计及Transformer的应用

自然语言处理爱好者 来源:AI部落联盟 作者:多多 2021-09-01 09:27 次阅读

来自:AI部落联盟

前言

这次我们总结一下ACL2021中的Transformers,看看2021年了,NLPer在如何使用、应用、改进、分析Transformers,希望可以对大家产生idea有帮助。

本文涉及25篇Transformer相关的文章,对原文感兴趣的读者可以关注公众号回复: ACL2021Transformers,下载本文所涉及的所有文章~本文主要内容:

前言

ACL 2021中的25个Transformers模型

总结

ACL 2021中的25个Transformers模型

NLP中的层次结构Hi-Transformer: Hierarchical Interactive Transformer for Efficient and Effective Long Document Modeling

2e1671e6-fd9b-11eb-9bcf-12bb97331649.png

高效和长文本transformer模型设计,短文。如上图所示,这篇文章主要提出一种解决长文本任务的transformer模型:首先分别encoder sentence表示,然后再encod document表示,最后再重新encde sentence表示,总体上比较简单的local+global设计。

R2D2: Recursive Transformer based on Differentiable Tree for Interpretable Hierarchical Language Modeling

将Transformer和语言文字层次结构相结合的一篇文章。本文基于可差分CKY树,提出一种recursive Transformer模型,用于捕获语言中的层次结构(words, Phrases, sentences),与目前直接堆叠Transformer Layer的模型进行对比(例如BERT,Albert)除了可以学好表示,还能学到tree结构,与之前基于CKY的parser模型,Tree-LSTM模型比较相似。为了能让recursive Transformer进行快速、大规模训练,文章也相应提出了优化算法。Recursive Transformer语言模型实验是基于WikiText-2做的,效果还可以。为了凸显该模型的tree 结构性,文章进一步做了无监督Constituency Parse,显示了该模型结构在学习语言层次结构上的能力。

Transformer复杂度和高效设计IrEne: Interpretable Energy Prediction for Transformers

本文预测Transformer运行所消耗的能量,很有趣。首先,这篇文章将Transformer模型结构按照Tree进行拆解:整个模型是root节点(例如BERT),root节点下逐步拆分出子模块(比如BertSelf Attention),最终子模块由最基本的ML单元组成(例如全连接Dense网络),最终自底向上,先预测单个ML单元的能量消耗,再汇总计算出整体模型的能量消耗。为了验证该方法的有效性,该文还创建了一个数据集来评测Transformer-based模型的能量消耗。IrEne的代码在:https://github.com/StonyBrookNLP/irene

Optimizing Deeper Transformers on Small Datasets

小数据集+更深更大的模型,有点反常识的感觉,不过也很有趣。总体上,这篇文章通过合适的模型初始化方式和优化算法,在很小很难的Text-to-SQL任务上取得了不错的结果,这篇文章的核心是Data-dependent Transformer Fixed-update,那这个DT-Fixup怎么做的呢?比如使用的模型是roberta,在roberta上面再堆叠个几层随机Transformer:

对于模型中非预训练模型初始化的部分,使用Xavier initialization进行初始化。

对于模型中非预训练模型初始化的部分,将学习率的warm-up和所有的layer normalization去掉。

对所有的样本进行一遍前向传播获得输入的一个估计:,是roberta输出的表示。

根据得到的,在新叠加的每层Transformer上,对attention和权重矩阵进行设计好的缩放。

文章理论推导较多,建议感兴趣的同学下载文章后阅读原文进行学习。

READONCE Transformers: Reusable Representations of Text for Transformers

2e6714c0-fd9b-11eb-9bcf-12bb97331649.png

Transformer推理提速。文章的思路是:无论是问答任务,摘要生成任务还是其他任务里的不同样本可能会多次涉及到同一个wiki段落,这个时候不用每次都重新encode这个wiki段落,可以只encode这个段落一次然后re-use。文章思路和另一个SIGIR 2020的很像:DC-BERT: Decoupling Question and Document for Efficient Contextual Encoding

Parameter-efficient Multi-task Fine-tuning for Transformers via Shared Hypernetworks

2efb4988-fd9b-11eb-9bcf-12bb97331649.png

parameter-efficient相关的一篇文章,通过多任务学习和特定的模型参数共享来达到更好的迁移学习效果。总体上模型是make sense的。如上图所示,该论文基于adapter类似的结构设计来帮助下游任务finetune,但adapter处的设计与之前的研究不同的是:给予task id, adapter位置,layer id动态计算所有layer的adapter参数。代码开源在:https://github.com/rabeehk/hyperformer

Length-Adaptive Transformer: Train Once with Length Drop, Use Anytime with Search

3052bf78-fd9b-11eb-9bcf-12bb97331649.png

高效Transformer设计。文章的主要亮点是:1. transformer中间层的长度自适应,可以减少参数量。2. 减少的参数所对应的token表示可以被restore,因此可以用来做抽取式QA任务。文章在文本分类和QA任务上进行了验证。

H-Transformer-1D: Fast One-Dimensional Hierarchical Attention for Sequences

高效transformer设计。文章借鉴数值分析领域的:Hierarchical Matrix和Multigrid method,提出了一种hierarchical attention结构,该结构是线性时间复杂度和空间复杂度,并进一步优化到只使用dense layer运算进行实现。

Transformer分析和可解释性Personalized Transformer for Explainable Recommendation

推荐、可解释性、NLP相结合的一篇文章。该论文提出了PETER模型(如上图所示),将user, item和item feature,item的explanation当作模型输入,对user,item进行表示学习,同时也学习item特征向量表示和explanation文字的表示,输出又3个任务,Rating prediction是推荐任务,context Prediction是用item的输出表示预测item的生成item的explanation(和doc2vec算法类似),Explanation Generation就是正常的生成任务。

总体上user、item着两个输入和对应的表示能让模型学到Personalized和recommendation的知识,Explanation预测就是正常的生成任务。该模型在Yelp、Amazon,TripAdvisor数据集上做了实验,有不错的效果。

Contributions of Transformer Attention Heads in Multi- and Cross-lingual Tasks

对Transformer不同Head重要性进行分析的一篇文章。这篇文章在multi-lingual,Cross-lingual任务上,对mBERT、XLM-R这两个Transformer模型进行了分析,实验结果显示:1. 对attention head进行剪裁之后依旧可以获得与原模型相匹配的效果,甚至可以获得更好的效果。2. 根据梯度来确定哪些head可以被剪裁。3. 文章在多语言的POS和NER数据集上验证了结论和方法的正确性质。

Are Pre-trained Convolutions Better than Pre-trained Transformers?

对比CNN和Transformer的效果。该文之前已经在公众号上分享过啦,相关链接: 预训练的卷积模型比Transformer更好?

Attention Calibration for Transformer in Neural Machine Translation

翻译的时候decoder需要attention到正确的词才能获得更好的效果,但是如果有其他不重要带来了严重的干扰,那么翻译效果将会下降,来自腾讯的这篇工作展示了如何修正翻译中的attention来帮助机器翻译。

总体结构如上图所示,通过一个mask perturbation 模型来学习如何对attention进行修正,基本思路是:如果mask到了重要的词,那么翻译效果下降,如果mask掉了干扰词(也就是修正了原来的attention分数),那么翻译效果上升。

What Context Features Can Transformer Language Models Use?

Transformer需要的重要feature分析。这篇文章对transformer模型在中长文本上的效果进行对比分析发现:

1. 对于长文本而言,增加最大token数量的限制(256到768)有帮助。

2. 对于当前的模型而言,长文本的信息主要来源于content words和局部occurrence统计信息:删除一些function words和局部window内随机shuffle对模型最终影响比较小。

3. 并不是context中所有feature重要性都相同。总体上文章对:word order,sentence order,order of sections,根据token属性对token进行控制变量的删减等一些列feature进行了控制变量分析。

Reservoir Transformers

Transformer分析文章。文章显示:固定预训练模型的部分参数或者增加一些随机初始化的模块(比如加入gru,cnn等模块)可以提升transformer模型最终效果。文章在语言模型和翻译任务上进行验证。

More Identifiable yet Equally Performant Transformers for Text Classification

对Transformer模型进行可解释性设计。文章的主要贡献是:1. attention不同权重可鉴别性的理论分析。2. 设计了一种transformer变体有助于attention权重的鉴别从而提升可解释性。3. 在文本分类任务上做了分析和验证,提升可鉴别性的同时不降低原有任务的效果。

长文本处理ERNIE-DOC: A Retrospective Long-Document Modeling Transformer

针对长文本处理的Transformer优化,来自百度NLP团队。入上图所示,整个长文章的被分成了多片,该文章认为之前的Transformer模型都无法利用整个文章的信息,而提出的ERNIE-DOC用到了所有文本信息。

为了让模型能看到长文本所有信息,该文章主要有以下几个贡献:

1. 一个长文本feed给模型2次。

2. 由于目前的recurrence Transformer所能看到的最长文本受到最大层数的限制,所以提出了一个enhanced recurrence mechanism进一步扩大Transformer所能看到的文本范围。

3. 还提出了一个segment-reordering任务,主要就是将文本中的分片打乱,然后预测是否是正确的顺序。论文在语言模型任务、document-level的长文本理解任务,以及一系列中英文下游任务上进行了验证。

G-Transformer for Document-level Machine Translation

Transformer虽然在单句翻译中有不错的效果了,但多句翻译/document-level的翻译还远不够好。这篇文章发现多句翻译训练的时候容易陷入局部最优,陷入局部最优的原因是因为翻译的时候需要attention 的source words太多了。

所以这个文章做了一个比较容易理解的事情:把document level的翻译依旧看作是多个单个句子翻译,通过句子序号来提醒模型翻译到哪里了,从而缩小target到source需要attention的范围。

Transformer有趣的应用Topic-Driven and Knowledge-Aware Transformer for Dialogue Emotion Detection

结合Transformer和knowledge base,对对话系统中的Topic和情感倾向进行识别。该文主要贡献如下:1. 首次基于topic来帮助对话情感识别。2. 使用pointer network和attention机制融入commonsense knowledge。3.在解决对话情感检测任务时,设计了一个基于Transformer encoder-decoder结构的模型,来取代之前通用的recurrent attention一类的网络。

Unsupervised Out-of-Domain Detection via Pre-trained Transformers

深度学习模型的效果越来越好,但如果遇到和训练样本分布不一致的输入会怎么样?这篇文章基于BERT模型中多层Transformer所提取的feature,在inference阶段对out-of-domian的样本检测,可以有效排除和训练样本分布不一致的测试样本,基于深度学习模型对深度学习模型的输入进行检查,也是很有趣的一个方向。

MECT: Multi-Metadata Embedding based Cross-Transformer for Chinese Named Entity Recognition

融入中文字形而设计的一种Transformer,该论文显示融入了中文字形之后,在多个中文任务上取得了更好的效果。

ChineseBERT: Chinese Pretraining Enhanced by Glyph and Pinyin Information

ARBERT & MARBERT: Deep Bidirectional Transformers for Arabic

扩展Transformer模型到多种语言。文章设计和实现了两个ARabic-specific Transformer并在大量的语料和多种datasets上进行了预训练,文章还提出了一个benchmark ARLUE进行专门的多语言评测。

Glancing Transformer for Non-Autoregressive Neural Machine Translation

Transformer在翻译上的应用,主要是非自回归翻译模型方法的提出,来自字节跳动。文章提出一种非自回归的翻译模型,可以并行快速decode。感兴趣的读者可以阅读中文讲解:https://www.aminer.cn/research_report/60f0188430e4d5752f50eafd

在预训练中用上字形和拼音信息,和上一个MECT同类型的研究。

总结

本文涉及的transformer相关研究主要分以下几个类别:

NLP中的层次结构

Transformer的复杂度和高效设计

长文本处理

基于Transformer的一些有趣的应用

今天的分享就到这里啦,大家觉得不错的话,帮点赞和分享一下吧,谢谢~~~

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ACL
    ACL
    +关注

    关注

    0

    文章

    61

    浏览量

    11955
  • Transformer
    +关注

    关注

    0

    文章

    138

    浏览量

    5966
  • nlp
    nlp
    +关注

    关注

    1

    文章

    483

    浏览量

    21984

原文标题:ACL2021中的25个Transformers模型

文章出处:【微信号:NLP_lover,微信公众号:自然语言处理爱好者】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    业务复杂度治理方法论--十年系统设计经验总结

    一、复杂度综述 1、什么是复杂度 软件设计的核心在于降低复杂性。 --《软件设计的哲学》 业界对于复杂度并没有统一的定义, 斯坦福教授John Ousterhout从认知负担和工作量方
    的头像 发表于 09-05 14:11 901次阅读
    业务<b class='flag-5'>复杂度</b>治理方法论--十年系统设计经验总结

    Transformer能代替图神经网络吗

    Transformer作为一种在处理序列数据方面表现出色的深度学习模型,自其提出以来,已经在自然语言处理(NLP)、时间序列分析等领域取得了显著的成果。然而,关于Transformer是否能完全代替图神经网络(GNN)的问题,需要从多个维度进行深入探讨。
    的头像 发表于 07-12 14:07 343次阅读

    Transformer语言模型简介与实现过程

    在自然语言处理(NLP)领域,Transformer模型以其卓越的性能和广泛的应用前景,成为了近年来最引人注目的技术之一。Transformer模型由谷歌在2017年提出,并首次应用于神经机器翻译
    的头像 发表于 07-10 11:48 1044次阅读

    使用PyTorch搭建Transformer模型

    Transformer模型自其问世以来,在自然语言处理(NLP)领域取得了巨大的成功,并成为了许多先进模型(如BERT、GPT等)的基础。本文将深入解读如何使用PyTorch框架搭建Transformer模型,包括模型的结构、训练过程、关键组件以及实现细节。
    的头像 发表于 07-02 11:41 1357次阅读

    PCB与PCBA工艺复杂度的量化评估与应用初探!

    , 不知道如何区分普通和复杂的PCB和 PCBA的设计,并采用什么样的方式来处理。 基于上述考虑, 我们参考了业 界已有的作法, 设计了一个PCB 和 PCBA的工艺复杂度计算公式以解决这 方面
    发表于 06-14 11:15

    基于Transformer模型的压缩方法

    基于Transformer架构的大型模型在人工智能领域中发挥着日益重要的作用,特别是在自然语言处理(NLP)和计算机视觉(CV)领域。
    的头像 发表于 02-22 16:27 578次阅读
    基于<b class='flag-5'>Transformer</b>模型的压缩方法

    Transformer压缩部署的前沿技术:RPTQ与PB-LLM

    随着人工智能技术的迅速发展,Transformer在自然语言处理、机器翻译、问答系统等领域取得了显著的性能提升。
    的头像 发表于 01-24 14:05 1082次阅读
    <b class='flag-5'>Transformer</b>压缩部署的前沿技术:RPTQ与PB-LLM

    基于Transformer的多模态BEV融合方案

    由于大量的相机和激光雷达特征以及注意力的二次性质,将 Transformer 架构简单地应用于相机-激光雷达融合问题是很困难的。
    发表于 01-23 11:39 679次阅读
    基于<b class='flag-5'>Transformer</b>的多模态BEV融合方案

    语言模型的弱监督视频异常检测方法

    LGT Adapter由局部关系Transformer和全局关系图卷积串联组成。考虑到常规的Transformer在长时视频时序关系建模时冗余信息较多、计算复杂度较高,我们改进
    的头像 发表于 01-02 15:20 713次阅读
    语言模型的弱监督视频异常检测方法

    更深层的理解视觉Transformer, 对视觉Transformer的剖析

    最后是在ADE20K val上的LeaderBoard,通过榜单也可以看出,在榜单的前几名中,Transformer结构依旧占据是当前的主力军。
    的头像 发表于 12-07 09:39 701次阅读
    更深层的理解视觉<b class='flag-5'>Transformer</b>, 对视觉<b class='flag-5'>Transformer</b>的剖析

    探索Transformer Block精简的方式

    作者对Transformer Block移除了各种参数,减少了15%参数量,提高了15%的训练速度,各个环节都有做充分的实验,但一些经验性得到的结论也并没有直接回答一些问题(如LN为什么影响收敛速度)。
    发表于 12-06 09:58 516次阅读
    探索<b class='flag-5'>Transformer</b> Block精简的方式

    降低Transformer复杂度O(N^2)的方法汇总

    首先来详细说明为什么Transformer的计算复杂度是 。将Transformer中标准的Attention称为Softmax Attention。令 为长度为 的序列, 其维度为 , 。 可看作Softmax Attenti
    的头像 发表于 12-04 15:31 1019次阅读
    降低<b class='flag-5'>Transformer</b><b class='flag-5'>复杂度</b>O(N^2)的方法汇总

    如何降低SigmaDSP音频系统复杂度的情形

    电子发烧友网站提供《如何降低SigmaDSP音频系统复杂度的情形.pdf》资料免费下载
    发表于 11-29 11:13 0次下载
    如何降低SigmaDSP音频系统<b class='flag-5'>复杂度</b>的情形

    关于深度学习模型Transformer模型的具体实现方案

    Transformer 本质上是一个 Encoder-Decoder 架构。因此中间部分的 Transformer 可以分为两个部分:编码组件和解码组件。
    发表于 11-17 10:34 485次阅读
    关于深度学习模型<b class='flag-5'>Transformer</b>模型的具体实现方案

    求助,AD8132谐波测试电路中的transformer有没有推荐型号?

    AD8132谐波测试电路中的transformer有没有推荐型号?
    发表于 11-16 06:15