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

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

3天内不再提示

万用NLP模型Transformer的升级版

DPVg_AI_era 来源:lq 2019-02-11 09:37 次阅读

谷歌官方博客今天发文,详细解释了万用NLP模型Transformer的升级版——Transformer-XL,该模型利用两大技术,在5个数据集中都获得了强大的结果。

要正确理解一篇文章,有时需要参考出现在几千个单词后面的一个单词或一个句子。

这是一个长期依赖性(long-range dependence)的例子,这是序列数据中常见的现象,处理许多现实世界的任务都必须理解这种依赖。

虽然人类很自然地就会这样做,但是用神经网络建模长期依赖关系仍然很具挑战性。基于Gating的RNN和梯度裁剪(gradient clipping)技术提高了对长期依赖关性建模的能力,但仍不足以完全解决这个问题。

应对这个挑战的一种方法是使用Transformers,它允许数据单元之间直接连接,能够更好地捕获长期依赖关系。

Transformer 是谷歌在 17 年做机器翻译任务的 “Attention is all you need” 论文中提出的,引起了相当大的反响,业内有“每一位从事 NLP 研发的同仁都应该透彻搞明白 Transformer”的说法。

参考阅读:

Transformer一统江湖:自然语言处理三大特征抽取器比较

然而,在语言建模中,Transformers目前使用固定长度的上下文来实现,即将一个长的文本序列截断为几百个字符的固定长度片段,然后分别处理每个片段。

vanillaTransformer模型在训练时具有固定长度上下文

这造成了两个关键的限制:

算法无法建模超过固定长度的依赖关系。

被分割的片段通常不考虑句子边界,导致上下文碎片化,从而导致优化低效。即使是对于长期依赖性不显著的较短序列,这也是特别麻烦的。

为了解决这些限制,谷歌提出一个新的架构:Transformer-XL,它使自然语言的理解超出了固定长度的上下文。

Transformer-XL由两种技术组成:片段级递归机制(segment-level recurrence mechanism)和相对位置编码方案(relative positional encoding scheme)。

论文:Transformer-XL: Attentive Language Models Beyond a Fixed-Length Context(https://arxiv.org/abs/1901.02860)

论文详细解读:谷歌、CMU重磅论文:Transformer升级版,评估速度提升超1800倍!

Segment-level的递归机制

在训练期间,为前一个segment计算的representation被修复并缓存,以便在模型处理下一个新的segment时作为扩展上下文重新利用。

这个额外的连接将最大可能依赖关系长度增加了N倍,其中N表示网络的深度,因为上下文信息现在可以跨片段边界流动。

此外,这种递归机制还解决了上下文碎片问题,为新段前面的token提供了必要的上下文。

在训练期间具有segment-level recurrence的Transformer-XL

相对位置编码

然而,天真地应用 segment-level recurrence是行不通的,因为当我们重用前面的段时,位置编码是不一致的。

例如,考虑一个具有上下文位置[0,1,2,3]的旧段。当处理一个新的段时,我们将两个段合并,得到位置[0,1,2,3,0,1,2,3],其中每个位置id的语义在整个序列中是不连贯的。

为此,我们提出了一种新的相对位置编码方案,使递归机制成为可能。

此外,与其他相对位置编码方案不同,我们的公式使用具有learnable transformations的固定嵌入,而不是earnable embeddings,因此在测试时更适用于较长的序列。

当这两种方法结合使用时,在评估时, Transformer-XL比vanilla Transformer模型具有更长的有效上下文。

在计算时具有固定长度上下文的vanilla Transformer

在评估期间具有segment-level 递归的Transformer-XL

此外,Transformer-XL能够在不需要重新计算的情况下处理新段中的所有元素,从而显著提高了速度(将在下面讨论)。

结果

Transformer-XL在各种主要的语言建模(LM)基准测试中获得新的最优(SoTA)结果,包括长序列和短序列上的字符级和单词级任务。实验证明, Transformer-XL 有三个优势:

Transformer-XL学习的依赖关系比RNN长约80%,比vanilla Transformers模型长450%,尽管后者在性能上比RNN好,但由于固定长度上下文的限制,对于建模长期依赖关系并不是最好的。

由于不需要重复计算,Transformer-XL在语言建模任务的评估期间比vanilla Transformer快1800+倍。

由于建模长期依赖关系的能力,Transformer-XL在长序列上具有更好的困惑度(Perplexity, 预测样本方面更准确),并且通过解决上下文碎片化问题,在短序列上也具有更好的性能。

Transformer-XL在5个数据集上的结果

Transformer-XL在5个数据集上都获得了强大的结果:在enwiki8上将bpc/perplexity的最新 state-of-the-art(SoTA)结果从1.06提高到0.99,在text8上从1.13提高到1.08,在WikiText-103上从20.5提高到18.3,在One Billion Word上从23.7提高到21.8,在Penn Treebank上从55.3提高到54.5。

研究人员展望了Transformer-XL的许多令人兴奋的潜在应用,包括但不限于改进语言模型预训练方法(例如BERT),生成逼真的、长篇的文章,以及在图像和语音领域的应用。

论文中使用的代码、预训练模型和超参数都已全部开源:

https://github.com/kimiyoung/transformer-xl

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

    关注

    0

    文章

    139

    浏览量

    14873
  • 数据集
    +关注

    关注

    4

    文章

    1205

    浏览量

    24644
  • nlp
    nlp
    +关注

    关注

    1

    文章

    487

    浏览量

    22012

原文标题:谷歌升级版Transformer官方解读:更大、更强,解决长文本问题(开源)

文章出处:【微信号:AI_era,微信公众号:新智元】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    万用表的工作原理 万用表校准的方法

    万用表的工作原理 电压测量 : 万用表通过内部电路将被测电压与标准电压(例如1.5V或9V电池)进行比较,从而测量电压值。 对于交流电压,万用表使用整流电路将交流转换为直流,然后进行测量。 电流测量
    的头像 发表于 11-01 10:31 320次阅读

    万用表维修与保养技巧

    万用表是电子工程师和技术人员不可或缺的工具之一。它不仅能够测量电压、电流和电阻,还能检测电路中的故障。然而,不正确的使用和保养会导致万用表的损坏,影响测量结果的准确性。 一、万用表的正确使用 选择
    的头像 发表于 11-01 10:29 245次阅读

    数字万用表与模拟万用表的区别

    在电子工程和维修领域,万用表是一种不可或缺的工具。它能够测量电压、电流、电阻等多种电气参数。根据显示方式的不同,万用表可以分为数字万用表和模拟万用表。 一、显示方式 数字
    的头像 发表于 11-01 10:20 276次阅读

    万用表使用方法 如何选择万用

    万用表(multimeter)是一种多功能的测量仪器,可以测量电压、电流、电阻等多种电气参数。正确使用和选择万用表对于电气维修和测试工作至关重要。 万用表的使用方法 1. 了解万用表的
    的头像 发表于 11-01 10:19 183次阅读

    胜利万用表的各个型号

    胜利万用表是一款非常受欢迎的电子测量工具,广泛应用于电子、电气、通信、自动化等领域。在选择胜利万用表时,我们需要考虑多个因素,如测量范围、精度、功能、价格等。 胜利万用表的分类 胜利万用
    的头像 发表于 07-14 14:27 2385次阅读

    胜利万用表和优利德万用表哪个好

    优利德万用表和胜利万用表各有优缺点,具体哪个更好要根据实际的应用场景和需求来决定,以下是胜利万用表和优利德万用表的比较: 品牌知名度:优利德(UNI-T)是一家国际知名的电子测量仪器制
    的头像 发表于 07-14 14:21 6669次阅读

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

    在自然语言处理(NLP)领域,Transformer模型以其卓越的性能和广泛的应用前景,成为了近年来最引人注目的技术之一。Transformer模型
    的头像 发表于 07-10 11:48 1357次阅读

    使用PyTorch搭建Transformer模型

    Transformer模型自其问世以来,在自然语言处理(NLP)领域取得了巨大的成功,并成为了许多先进模型(如BERT、GPT等)的基础。本文将深入解读如何使用PyTorch框架搭建
    的头像 发表于 07-02 11:41 1478次阅读

    指针万用表和数字万用表有什么区别?

    指针万用表和数字万用表都是用于测量电压、电流、电阻等电气参数的仪器,它们在电气维修、检测和电子制作等领域有着广泛的应用。
    的头像 发表于 05-13 17:43 2942次阅读

    模拟万用表与数字万用表的区别

    万用表,作为电子工程师和技术人员日常工作中不可或缺的工具,用于测量电压、电流、电阻等电学参数。随着电子技术的不断发展,万用表也经历了从模拟到数字的演进。模拟万用表和数字万用表在多个方面
    的头像 发表于 05-13 17:14 1250次阅读

    指针式万用表与数字式万用表的区别

    万用表作为电子测量领域的基础工具,其重要性不言而喻。在万用表的两大类别中,指针式万用表和数字式万用表各有其独特之处。本文将对这两种万用表进行
    的头像 发表于 05-10 16:20 3881次阅读

    万用表怎么测漏电

    在使用万用表之前,应先进行“机械调零”,即在没有被测电量时,使万用表指针指在零电压或零电流的位置上。
    的头像 发表于 05-08 17:23 2741次阅读

    基于Transformer模型的压缩方法

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

    万用表怎么 万用表怎么测漏电和短路

    万用表是一种常见的电工仪器,用于检测电路中的电压、电流、电阻等基本参数。通过正确使用万用表,可以准确地检测漏电和短路这两个常见的电路故障。下面将详细介绍万用表的使用方法和测量漏电和短路的步骤。 一
    的头像 发表于 02-18 13:57 4064次阅读

    万用表的使用方法步骤 万用表的hFE功能怎么

    万用表是电子工程中常用的测量仪器,广泛应用于电路测试、电阻测量、电流测量等方面。下面将详细介绍万用表的使用方法步骤以及万用表的hFE功能使用方法。 万用表使用方法步骤: 准备工作:首先
    的头像 发表于 01-31 13:37 4216次阅读