NeurIPS 2019中的Transformers

点击上方“AI公园”,关注公众号,选择加“星标“或“置顶”


作者:Pavel Gladkov

编译:ronghuaiyang

导读

NeurIPS 2019上和Transformer有关的论文的主要内容解读。

在我之前关于 BERT 在 EMNLP 2019 的报道之后,如果不在 NeurIPS 2019 年大会上简要回顾一下关于 transformers 的论文,那将是一种犯罪。神经信息处理系统研讨会于 12 月 8 日至 14 日在温哥华举行。像往常一样,有很多令人惊叹的想法和先进的研究。以下是其中的一些。

ViLBERT:视觉和语言任务的预训练任务的视觉语言表示

http://arxiv.org/abs/1908.02265

提出了一种新的方法来学习与任务无关的图像内容和自然语言的联合表示。

ViLBERT(Vision-and-Language BERT)由两个并行的 BERT 风格的模型组成,它们在图像区域和文本段上运行。每个流是一系列 transformer 块和新的 co-attentional transformer 层,它们被引入以实现模式之间的信息交换。每个图像通过从一个预训练的目标检测网络(Faster R-CNN)中提取边界框及其视觉特征作为一组区域的特征表示。

ViLBERT模型由两个并行的视觉(绿色)和语言(紫色)处理流组成,它们通过新的共注意transformer层相互作用。

预训练有两项任务:masked 多模态建模和多模态对齐预测。masked 多模态建模任务遵循标准 BERT 中的 masked 语言建模任务 —— 掩蔽大约 15%的单词和图像区域作为输入,并在给定剩余输入的情况下对模式进行重构。在多模态对齐任务中,模型提出了一个图像 — 文本对,必须预测图像和文本是否对齐,即文本是否描述图像。

在许多已建立的视觉和语言任务中,ViLBERT 模型表现优于最先进的模型:视觉问题回答、视觉常识推理、引用表达式和基于标题的图像检索。

将我们的ViLBERT模型的任务结果与现有的最先进和合理的结构进行消融比较。

Ouroboros: 基于 Transformer 的语言模型的加速训练

http://arxiv.org/abs/1909.06695

毫无疑问,Transformers 在很多任务上都取得了巨大的成就,但是训练它们可能是一个漫长而昂贵的过程。解决这个问题的一种可能的方法是并行化。

当模型太大而不能在单个设备中进行训练时,模型的并行化仍然是一个有待解决的问题。当一个模型变得太大而不能适用于单个计算设备时,最简单的解决方案是将模型层分布到多个设备上。

文章提出了一种新的模型并行算法来并行化基于 Transformers 的语言模型的训练。这种算法可以在不损失精度的情况下产生显著的加速效果。

每个batch的计算时间的加速(在K个gpu上)

可视化和 BERT 几何形状的测量

http://arxiv.org/abs/1906.02715

本文试图证明 transformer 具有一组语义和句法信息的中间表示。为了寻找句法信息,他们在注意力向量的顶部训练了线性模型。该模型必须预测两个词之间依赖关系的存在和类型。二分类预测的准确度为 85.8%,多分类预测的准确度为 71.9%。这个简单线性预测的成功表明,句法信息被编码在注意力向量中。

一个有序token对的模型范围内的注意力向量包含该token对在所有注意力头和层中的标量注意力值。

第二部分是语义信息。很自然地,我们可以推测 transformer 捕捉了一个词在一个特定句子中的特殊含义。

对于一个具有 n 种含义的给定单词,他们制作一个最近邻分类器,其中每个邻居都是训练集中给定单词含义的基于 BERT 的嵌入的质心。为了对一个新单词进行分类,他们会找到这些质心中最近的一个,如果这个单词在训练数据中没有出现,则默认为最常用的词义。简单最近邻分类器的 F1 得分为 71.1,高于目前的技术水平,其准确率在层间单调递增。这是一个强烈的信号,即上下文嵌入表示了词意信息。

词义消歧任务的F1得分

新的位置编码,使能树型结构的 transformers

https://openreview.net/pdf?id=SJerEhR5Km

transformer 可以很好地完成顺序建模任务。但是在某些情况下,使用纯面向序列的方法可能会导致丢失有价值的结构信息,例如,当我们想要表示层次结构时。这项工作为树结构数据引入了新的位置编码。这可能会将 transformer 从自然语言解析树扩展到到程序抽象语法树中。

这种方法有两种评估方法:合成翻译任务和生成的 CoffeeScript 和 JavaScript 代码之间的翻译。实验表明,在面向树的任务中,采用这种编码的模型的性能优于序列转换器。

与tree2tree LSTMs比较,合成任务的整个程序错误率。

用于CoffeeScript-JavaScript翻译任务的整个程序错误率数据

用于语言建模的张量化 Transformer

http://arxiv.org/abs/1906.09777

我认为这是最有趣的工作。也许不是通过结果,而是通过使用张量分解来降低模型的复杂度。

正如你所知道的,考虑如何减少内存和计算 Transformer 的需求量是非常重要的。现有的模型压缩方法主要分为参数剪枝和共享、低秩近似、知识转移、转移卷积滤波器和张量分解方法。

在本文中,作者基于参数共享的思想,重点研究了 Transformer 多头注意力的压缩问题。同时,还结合了低秩近似方法来降低参数和计算复杂度。提出了一种新的自我注意力方法——多线性注意力机制。

(左)单块注意力使用Tucker分解。 (右)基于块项张量分解的多线性注意。 在所有的实验中,新架构在参数较少的情况下取得了与SoTA相当的结果。

结果(PPL)和模型参数在One-Billion的最新结果。

在PTB和WikiText-103上得到了最先进的结果和压缩性能。

在WMT-16的英德翻译上使用Transformer与压缩的结果。

—END—

英文原文:https://towardsdatascience.com/transformers-at-neurips-2019-3c8e76e3ab42

请长按或扫描二维码关注本公众号

喜欢的话,请给我个好看吧

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值