zl程序教程

您现在的位置是:首页 >  IT要闻

当前栏目

【NLP论文速递&源码】序列到序列建模、异步多任务学习、NLP关系检测

2023-03-20 15:00:08 时间

引言

本次共有三篇Paper和大家分享,第一篇主要是序列对序列建模训练的问题,将复杂度由

降到

。第二篇文章是提出一种新的训练体系结构,它可以使得单一模型支持具有多种输入模式的任务以及异步的多任务学习(作者美其名曰:OmniNet)。第三篇文章自然语言关系检测相关的,为解决不可见关系缺失的问题,设计了一种表示适配器。

论文及源码下载链接在文章后面。

正文开始

1

第一篇

文章摘要

序列到序列处理的一个关键需求是对长期依赖关系的建模。为此,绝大多数最先进的模型都使用了

复杂度的注意机制,这导致长序列执行缓慢。针对这一问题,提出了一种新的Shuffle-Exchange神经网络模型。实验结果表明,该模型对常见算法基准(包括排序、加法和乘法)具有很强的推理能力。我们在具有挑战性的LAMBADA问答数据集上评估了我们的模型,并将其与使用注意力的最先进模型进行了比较。我们的模型达到了具有竞争力的精度,并且已经扩展到包含超过十万个元素的序列。

为什么要提出Shuffle-Exchange神经网络介绍

在算法任务中,每个输出符号通常依赖于每个输入符号,对远程信息的聚合甚至更为重要。算法综合的目标是从给定的输入-输出实例中得到一个算法,这些输入-输出实例通常是作为序列给出的。由于需要处理无限长度的序列,算法任务尤其具有挑战性。此外,泛化也起着重要的作用,因为训练通常是在短序列上进行,而在长序列上进行测试。目前最好的神经网络结构不能很好地适应序列长度。其中很大一部分使用了依赖于序列长度的二次复杂度的注意机制。这些模型可以很容易地在512左右的长度上进行训练,但在较长的序列上就会变得非常慢,而且内存不足。

在序列算法任务方面,在各种可学习任务和更长的序列泛化方面,最佳架构是改进的NeuralGPU(FreivaldsandLiepins,2018) NeuralGPU(Kaiser and Sutskever, 2015)。它有

个卷积层,每个层执行

个操作,其中n是输入长度。这种体系结构可以表示算法的运行时间

,但学习更快的算法,例如复杂的

,需要一个全新的方法,那....就是作者提出的牛逼方法喽~

什么是Shuffle-Exchange网络

将消息从多个源路由到多个目的地是计算机网络领域的一个研究热点,在计算机网络中,已经开发了几种用于连接两组设备的稀疏体系结构。作者受此启发,Shuffle-Exchange具有规则的分层结构,最适合作为神经网络的原型。Shuffle-Exchange由Shuffle和Exchange两个阶段的重复应用组成。下图则为该网络的架构图:

如上图,首先是Exchange阶段,元素被分成相邻的对,每对通过一个开关。该开关包含选择将哪个输入路由到哪个输出的逻辑。接下来是Shuffle阶段(如图中的箭头所示),其中根据完全Shuffle排列对消息进行排列。在这种排列中,目标地址是源地址的循环位移位(左或右)。2k消息路由网络包括k个交换阶段和k - 1个Shuffle阶段。但是,但是Shuffle-Exchange网络的吞吐量是有限的,可能不可能同时路由多个消息。更好的为多个消息路由设计是Beneš网络(见下图):

Beneš网络是由连接Shuffle-Exchange网络镜像copy2。镜像拷贝是通过反转目标地址计算中位偏移的方向得到的。Beneš网络2 k−1交换阶段和2 k−2洗牌阶段。这样的网络可以在任何输入到输出的排列中路由2k消息。

Shuffle-Exchange模型结构介绍

该网络模型结构由交替Switch层(这里的Switch层和上面说的Exchange层是一个意思)和Shuffle层组成。

在Switch层中,我们将单元划分为相邻的非重叠对,并将开关单元应用于每对3。开关单元类似于门控循环单元(GRU),但它有两个输入[s1,s2]和两个输出[s1,s2, o]。它包含两个重置门,每个输出对应一个重置门。复位门主要负责单位的权力,这是很重要的,每个输出使用一个单独的复位门为单位产生不相关的输出。从技术上讲,创建对的实现方法是将序列s重新构造为两个更短的序列,其中每个新单元将沿着特征维度连接两个相邻的单元[s1,s2]。开关单元的定义如下:

Shuffle层排列的细胞可根据bit旋转排列,即[x] = s (x, k)旋转,在旋转(x, k)执行循环移位x的一个位置,其中x是当作一个长度的二进制数k。左旋转中使用的第一部分Beneš网络,在第二个(不同之处是重要的如果我们应用旋转的另一种方式)。Shuffle层没有可学习的参数。

整个网络以Beneš网络模式连接Switch、Shuffle这两层。更深层次的体系结构可以按照Beneš网络的形式叠加多个block。在这种情况下,将省略后续块的第一个开关层,并立即从一个Shuffle层开始。

2

第二篇

文章摘要

Transformer是一种广泛使用的神经网络结构,特别是用于语言理解。本文会介绍一个扩展的、统一的体系结构,它可以用于涉及各种模式的任务,如图像、文本、视频等。提出了一种时空缓存机制,除了对应于时间输入序列的隐藏状态外,还可以学习输入的空间维度。该体系结构使得单一模型支持具有多种输入模式的任务以及异步的多任务学习,因此我们将其称为OmniNet。

OmniNet介绍

我们提出了一个统一的体系结构,即OmniNet,以支持学习具有多个输入域的多模式任务,并支持针对任何一组任务的通用多任务。OmniNet体系结构由多个子网络(称为外围网络)组成,这些子网络连接到一个称为中枢神经处理器(CNP)的公共中枢神经网络,如下图所示:

每个外围网络用于将特定域的输入编码到特征表示中。在这项工作中,我们描述了图像、文本和视频外设。根据任务的不同,可以添加更多,比如语音外设。外围网络的输出表示总是一个时空张量

,其中t和s分别为输入的时空维数,

输入到中枢神经处理器的模型维数。

中央神经处理器(CNP)对每个输入域对应的外围网络生成的时空表示进行处理。CNP使用完全基于注意力的编解码器[23,24,25]模型进行序列转换,类似于转换器架构,这是最先进的多语言建模任务。在编码阶段,CNP实现了一个通用的

函数首先处理和存储输入的时空表达,其中

是外围网络产生时空的张量,其中

是域id以及

是CNP支持的最大数量。

函数被多次调用,每次调用对应的外围设备的多模式输入。在解码阶段,

函数用于解码softmax概率预测,其中

是目标输出右移一个时间步,N是输出序列的长度;

任务id,

支持的任务总数。解码步骤类似于[paper:Attention is all you need],经过修改,在空间和时间缓存上包含了两步注意机制。

实验结果

3

第三篇

文章摘要

关系检测是包括知识库问答在内的许多自然语言过程应用的核心步骤。目前得到较高的准确度,是因为关系已在训练数据中。当应对不可见的关系的时候,表现将迅速下降。造成这一问题的主要原因是不可见关系的表示形式缺失。为此本文提出了一种简单的映射方法——表示适配器(representation adapter),该方法基于先前学习的关系嵌入来学习可见和不可见关系的表示映射。利用对偶目标和重构目标来提高映射性能。我们重新组织了流行的简单问题数据集来揭示和评估检测不可见关系的问题。实验表明,本文方法要优于当前比较的一些方法。

本文主要看点

1、我们不是仅仅从训练数据中学习关系表示,而是采用了从覆盖范围更广的整个知识图中学习表示的方法。

2、提出了一种映射机制,称为表示适配器,或者简单地称为适配器,以将学习到的表示合并到关系检测模型中。我们从适配器的非平凡训练的简单均方误差损失入手,提出将对抗性和重构目标结合起来以改进训练过程。

3、将简单的问题集重新组织为简单的问题平衡,分别对可见和不可见关系的性能进行评估。

4、实验表明,我们提出的方法在检测未知关系方面取得了很大的进步,同时与现有的检测方法保持了一定的可比性。

Representation Adapter介绍

Representation Adapter架构图如下:

其中,左边是基本适配器;中间是对抗性适配器;右边是带重构损耗的适配器。

Representation Adapter相关性检测应用

我们将适配器集成到最先进的关系检测框架中(Yu et al., 2017, hierarchy Residual BiLSTM (HR-BiLSTM))。

该框架使用问题网络将问题句编码为矢量

,使用关系网络将关系编码为矢量

。这两个网络都是基于Bi-LSTM和最大池操作。然后引入余弦相似度来计算

之间的距离,从而确定检测结果。我们的适配器是关系网络中用来增强该框架的一个附加模块。如下图所示:

其中使用适配器的KBQA基线。共享的Bi-LSTM用相同的颜色标记。适配器映射依赖于特定任务的关系,而特定任务又依赖于相应的网络。

实验结果

1、关系检测在SQB数据集上的微观平均精度和宏观平均精度。

2、采用不同的关系检测模型对整个KBQA系统的微平均精度进行了测试。

3、在测试不可见集中,我们计算了该预测率的宏观平均值。

4

Paper && Code

第一篇:

Paper: https://arxiv.org/pdf/1907.07897v2.pdf

Code: https://github.com/LUMII-Syslab/shuffle-exchange

第二篇:

Paper: https://arxiv.org/pdf/1907.07804v1.pdf

Code: https://github.com/subho406/OmniNet

第三篇:

Paper: https://arxiv.org/pdf/1907.07328v1.pdf

Code: https://github.com/wudapeng268/KBQA-Adapter