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

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

3天内不再提示

关于一项改进Transformer的工作

深度学习自然语言处理 来源:复旦DISC 作者:复旦DISC 2021-04-22 10:46 次阅读

NAACL2021中,复旦大学大学数据智能与社会计算实验室(Fudan DISC)和微软亚洲研究院合作进行了一项改进Transformer的工作,论文的题目为:Mask Attention Networks: Rethinking and Strengthen Transformer,被收录为长文。

文章摘要

Transformer的每一层都由两部分构成,分别是自注意力网络(SAN)和前馈神经网络(FFN)。当前的大部分研究会拆开这两份部分来分别进行增强。在我们的研究当中,我们发现SAN和FFN本质上都属于一类更广泛的神经网络结构,遮罩注意力网络(MANs),并且其中的遮罩矩阵都是静态的。我们认为这样的静态遮罩方式限制了模型对于局部信息的建模的。因此,我们提出了一类新的网络,动态遮罩注意力网络(DMAN),通过自身的学习来调整对于局部信息的建模。为了更好地融合各个子网络(SAN,FFN,DMAN)的优势,我们提出了一种层叠机制来将三者融合起来。我们在机器翻译和文本摘要任务上验证了我们的模型的有效性。

研究背景

目前大家会从SAN或者FFN来对Transformer进行改进,但是这样的方案忽略了SAN和FFN的内在联系。

在我们的工作当中,我们使用Mask Attention Network作为分析框架来重新审视SAN和FFN。Mask Attention Networks使用一个遮罩矩阵来和键值对的权重矩阵进行对应位置的相乘操作来确定最终的注意力权重。在下图中,我们分别展示了SAN和FFN的遮罩矩阵。由于对于关系建模没有任何的限制,SAN更擅长长距离建模来从而可以更好地捕捉全局语意,而FFN因为遮罩矩阵的限制,无法获取到其他的token的信息,因而更关注自身的信息。

尽管SAN和FFN取得了相当好的效果,但是最近的一些研究结果表明,Transformer在捕捉局部信息的能力上有所欠缺。我们认为这种欠缺是因为是因为注意力矩阵的计算当中都是有静态遮罩矩阵的参与所导致的。我们发现两个不相关的token之间的权重可能因为中间词的关系而错误地产生了较大的注意力权重。例如“a black dog jumps to catch the frisbee”, 尽管“catch”和“black”关系不大,但是因为二者都共同的邻居“dog”的关系很大,进而产生了错误了联系,使得“catch”忽略了自己真正的邻居。

为了强化Transformer在局部建模的能力,我们提出了动态遮罩注意力网络(DMAN)。在DMAN当中, 在特定距离内的单词相比于一般的注意力机制会得到更多的注意力权重,进而得到更多的关注。另外,为了更好地融合SAN,FFN和DMAN三者的能力,我们提出使用DMAN-》SAN-》FFN这样的方式来搭建网络结构。

方法描述

回顾Transformer

SAN的注意力机制使用下面的公式来将键值对映射到新的输出。

其中是查询向量组成的有序矩阵,是键值对的组合,是的特征维度。

为了进一步增强transformer捕捉不同文本特征的的能力,对于一个文本特征的输入序列, SAN会使用多头注意力机制。

在FFN当中,每一个

的计算都是独立于其他的输入的。具体来说,它由两个全连接层组成。

定义一类新网络: Mask Attention Networks

我们在SAN的注意力函数的基础上定义带遮罩的注意力函数。

其中M是一个遮罩矩阵,它既可以是静态的,也可以是动态的。

在这个新的遮罩矩阵的基础上,我们定义一类新网络: Mask Attention Networks(MANs)

其中F是激活函数,M^i是第i个注意力上的遮罩矩阵。

接下来我们来说明SAN和FFN都是MANs当中的特例。

从MANs的视角来看,对于SAN,我们令

这个时候MANs可以写成下面的形式。这个结果告诉我们SAN是MANs当中固定遮罩矩阵为全1的特例

对于FFN,我们令

那么得到SAN是MANs当中固定遮罩矩阵为单位阵的特例。

SAN和FFN在局部建模上的问题

直观上来说,因为FFN的遮罩矩阵是一个单位阵,所以FFN只能获取自身的信息而无法获知邻居的信息。对于SAN,每一个token都可以获取到句子其它的所有token的信息。我们发现不在邻域当中的单词也有可能得到一个相当大的注意力得分。因此,SAN可能在语义建模的过程当中引入噪声,进而忽视了局部当中的有效信号

动态遮罩注意力网络

显然地我们可以通过静态的遮罩矩阵来使模型只考虑特定邻域内的单词,从而达到更好的局部建模的效果。但是这样的方式欠缺灵活性,考虑到邻域的大小应该随着query token来变化,所以我们构建了下面的策略来动态地调节邻域的大小。

其中是当前的层数,是当前的注意力head, 和分别是两个和的位置。都是可学习的变量。

组合Mask Attention Networks当中的各类网络结构

我们采用下图的方式来组合这三种网络结构。

8614737c-a295-11eb-aece-12bb97331649.png

实验

我们的实验主要分为两个部分,机器翻译和文本摘要。

机器翻译

我们在IWSLT14 De-En和WMT14 En-De上分别对我们的模型进行了验证。相比于Transformer,我们的模型在base和big的参数大小设定下,分别取得了1.8和2.0的BLEU的提升。

文本摘要

在文本摘要的任务上,我们分别在CNN/Daily Mail和Gigaword这两个数据集上分别进行了验证。相比于Transformer,我们的模型在R-avg上分别有1.5和0.7的效果提升。

对比不同的子网络堆叠方式

87275a4a-a295-11eb-aece-12bb97331649.png

我们对比了一些不同的子网络堆叠方式的结果。从这张表中我们可以发现:

C#5,C#4,C#3》C#1,C#2,这说明DMAN的参与可以提高模型的效果。

C#5,C#4》C#3,C#2,说明DMAN和SAN有各自的优点,它们分别更擅长全局建模和局部建模,所以可以更好地合作来增强彼此。

C#5》C#4,说明先建模局部再全局比相反的顺序要更好一些。

87364faa-a295-11eb-aece-12bb97331649.png

我们比较了两组不同的静态遮罩策略。

SMAN1:遮盖距离超过b的所有单词,,为句子长度。

SMAN2:b=4。

从结果来看,我们发现DMAN的效果远远好于上述两种静态遮罩方法,这说明给不同的单词确实在邻域的建模上确实存在差异。

结论

在这篇论文当中,我们介绍了遮罩注意力网络(MANs)来重新审视SAN和FFN,并指出它们是MANs的两种特殊情况。我们进而分析了两种网络在局部建模上的不足,并提出使用动态遮罩的方法来更好地进行局部建模。考虑到SAN,FFN和DMAN不同的优点,我们提出了一种DMAN-》SAN-》FFN的方式来进行建模。我们提出的模型在机器翻译和文本摘要上都比transformer取得了更好的效果。

原文标题:遮罩注意力网络:对Transformer的再思考与改进

文章出处:【微信公众号:深度学习自然语言处理】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

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

    关注

    14

    文章

    7505

    浏览量

    88594
  • Transforme
    +关注

    关注

    0

    文章

    12

    浏览量

    8779

原文标题:遮罩注意力网络:对Transformer的再思考与改进

文章出处:【微信号:zenRRan,微信公众号:深度学习自然语言处理】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    谷歌云宣布一项重要人事任命

    近日,谷歌云(Google Cloud)正式宣布了一项重要人事任命,尹世明将加入谷歌云,担任大中华区总裁职。这任命无疑将为谷歌云在大中华区的业务发展和市场拓展注入新的活力和动力。 尹世明在业
    的头像 发表于 11-18 15:07 137次阅读

    苹果新获一项投影仪专利

     10月17日资讯,科技博客Patently Apple于10月15日发布报道,指出苹果公司新获一项投影仪专利,此专利允许用户无需佩戴头显设备,即可在桌子、墙壁等平面上展示混合增强现实(AR)和虚拟现实(VR)内容。
    的头像 发表于 10-17 16:01 465次阅读

    PCB生产,在钻咀和成品孔径之间,你会优先满足哪一项

    PCB生产既要满足钻咀尺寸又要满足成品孔径,当这两个要求有冲突时,如果你只能满足其中一项时,你会优先保证哪一项,请走进今天的案例,看看你选对了吗……
    的头像 发表于 09-24 10:10 187次阅读
    PCB生产,在钻咀和成品孔径之间,你会优先满足哪<b class='flag-5'>一项</b>呢

    在THS3201的datasheet中,有一项指标noise figure,其值为11dB,这个指标怎么解释?

    请问专家,在THS3201的datasheet中,有一项指标noise figure,其值为11dB(G=10V/V,RG=28欧姆,RF=255欧姆),这个指标怎么解释?
    发表于 09-12 06:25

    苹果获得一项突破性智能戒指技术的专利

    8月23日传来新动态,美国商标与专利局最新披露的清单中,苹果公司赫然获得了一项突破性智能戒指技术的专利。这款创新之作,深度融合了尖端传感器技术,旨在为用户提供前所未有的健康监测体验。
    的头像 发表于 08-23 15:59 301次阅读

    Transformer能代替图神经网络吗

    Transformer作为种在处理序列数据方面表现出色的深度学习模型,自其提出以来,已经在自然语言处理(NLP)、时间序列分析等领域取得了显著的成果。然而,关于Transformer
    的头像 发表于 07-12 14:07 368次阅读

    森林火灾监控是一项关系到社会安定,快速发展息息相关的重要工作

    随着国内全国各地林木业的高速发展,森林面积也是逐年不断增加,森林资源保护范围也在逐步扩大,防火工作已经成为当今各地林业有关部门不可耽误的大事。森林火灾是种突发、随机、短期的灾害。森林防火是一项
    的头像 发表于 07-12 11:16 202次阅读
    森林火灾监控是<b class='flag-5'>一项</b>关系到社会安定,快速发展息息相关的重要<b class='flag-5'>工作</b>

    使用Tasking编译器为同一项目手动创建个makefile,在创建make文件时报错的原因?

    我们可以使用 Aurix IDE 编译项目。 我们想使用 Tasking 编译器为同一项目手动创建个 makefile。 在创建 make 文件时,我们遇到了以下错误。
    发表于 05-20 07:03

    用ST Visual Program烧写程序,可是打开软件之后好像少了一项DATA MEMORY这是怎么回事?

    想要用ST Visual Program烧写程序,可是打开软件之后出现的是这种界面:好像少了一项DATAMEMORY这是怎么回事,并且OPTION BYTE里面少了些内容,不解,求指点!
    发表于 05-14 08:02

    NVIDIA和谷歌云宣布开展一项新的合作,加速AI开发

    NVIDIA 和谷歌云宣布开展一项新的合作,以帮助全球初创企业加速创建生成式 AI 应用和服务。
    的头像 发表于 04-11 14:03 458次阅读

    NVIDIA即将推出一项新的生成式AI专业认证

    NVIDIA 即将推出一项新的生成式 AI 专业认证,助力开发者在这重要领域证明自身技术实力。
    的头像 发表于 03-14 09:43 512次阅读

    华为技术近日公开了一项“超声波指纹”专利

    国家知识产权局显示,华为技术有限公司近日公开了一项“超声波指纹”专利,该专利编号为 CN117058725A,申请日为 2023 年 7 月 4 日。
    的头像 发表于 03-12 10:50 895次阅读
    华为技术近日公开了<b class='flag-5'>一项</b>“超声波指纹”专利

    机器视觉缺陷检测是工业自动化领域的一项关键技术

    机器视觉缺陷检测是工业自动化领域的一项关键技术,
    的头像 发表于 02-22 13:59 487次阅读
    机器视觉缺陷检测是工业自动化领域的<b class='flag-5'>一项</b>关键技术

    ADE7880读取电压电流有效值某一项偶尔会直为0的原因?

    在读取ADE7880电压或者电流有效值数据时,有时候上电某一项数据直为0,或者不稳定。 原理图:
    发表于 12-26 06:00

    为什么汽车雨量和光传感器是一项安全功能?

    为什么汽车雨量和光传感器是一项安全功能?
    的头像 发表于 12-06 16:17 535次阅读
    为什么汽车雨量和光传感器是<b class='flag-5'>一项</b>安全功能?