来源:AINLPer微信公众号(点击了解一下吧)
编辑: ShuYini
校稿: ShuYini
时间: 2019-12-23
TILE: Linguistic Knowledge as Memory for Recurrent Neural Networks
Contributor : Bhuwan Dhingra ,Zhilin Yang等(卡内基梅隆大学)
Paper: https://arxiv.org/pdf/1703.02620v1.pdf
Code: None
文章摘要
训练递归神经网络来建立长期依赖关系是很困难的。本文将使用外部语言知识作为一个明确的信号来告知模型应该使用哪些记忆。即利用外部知识在任意距离的元素之间增加具有类型化边缘的序列,并将结果图分解为有向无环子图。我们提出了一个在递归神经网络中以显式存储器形式编码这些图的模型,并用它来对文本中的共指关系进行建模。我们将模型应用于多个文本理解任务,并在所有考虑的基准(包括CNN、bAbi和LAMBADA)上获得最新的结果。在bAbi QA任务中,我们的模型解决了20个任务中的15个,每个任务只有1000个训练示例。对学习到的表示的分析证明了我们的模型在文档中编码细粒度实体信息的能力。
本文方法简介
利用未增广序列中固有的顺序将图分解为多个有向无环图(DAGs),并采用拓扑排序。我们将内存引入非循环图编码RNN (MAGERNN)框架,在只接触每个节点一次的情况下计算这些图的表示。MAGERNN学习沿着每个边缘类型传播的单独表示,这在经验上导致了优越的性能。在一个节点上最多有一个特定类型的单一输入边的情况下,它减少为一个内存扩充的常规RNN,其内存访问由一个符号信号决定。
使用MAGE-RNN为文本理解任务建模共引用关系,其中查询的答案必须从上下文文档中提取。如果文档中的标记引用相同的底层实体,则它们通过一个共同引用关系连接。识别这种关系对于发展对文档的理解是很重要的,因此,我们通过对相关提及的显式记忆来增强文本理解的RNN架构。
具体方法介绍
从序列到多个有向无环图(Sequences to DAGs)
一种edge可能连接同一实体的多次提及(共同引用),而另一种edge可能连接通用术语到它们的特定实例(下义和上义)。 图1显示了一个简单的示例。任何文本片段都可以通过运行标准的预处理工具(如共引用标记器和实体链接器)来以这种方式扩充。对于每一个DAG,其节点在一个序列中都存在一个拓扑排序,使得图中的所有边都从前一个节点指向序列中的下一个节点。对于一个序列,那么它的反向序列为。这种顺序的存在使DAGs特别适合使用RNNs建模,下面我们将讨论这样做的架构。
MAGE-GRUs
在共同引用的情况下,或者在任何节点上最多有一个特定类型的传入边的任何关系中,DAG可以分解为一个独立链的集合。然后,可以将for e in range(2)的更新简单地组合成一个常规的GRU更新,如图2所示。
多序列情况
在某些应用程序中,我们有多个序列,它们的元素通过已知的关系相互作用。如图3,显示了一个示例,其中第一个序列是上下文段落,第二个序列是针对该段落提出的问题。利用共参考和半互序关系进一步扩充序列,得到无向循环图。 将此图分解为dag集合,并使用上面提供的MAGE-GRU来学习序列中元素的表示。同时,我们希望在分解后的DAGs中保留原序列的顺序。假设我们有S个序列。一种方法是这样的:对于序列集合的每个排列,将其分解为前向和后向的子图,然而,这样会产生2S! DAGs,这样的计算量代价是很大的。相反,我们在这里建议对序列进行随机排列,并将其分解为正向和反向子图。以这种方式,图中的每条边仍然要遍历两次(两个方向都要遍历一次),与单独处理序列相比,不会产生任何额外的成本。此外,MAGE-GRU的多层扩展可以允许信息通过图中的任意路径流动。
实验结果
上图4展示我们提出的模型和几个基线模型。对比发现我们的模型取得了最先进的结果,超过了强大的基线,如QRNs。此外,我们还观察到,该方案可以显著地改善 bi-GRUs 和 GAs的性能。添加与one-hot特性相同的信息并不能提高性能,这表明我们在MAGE上使用的归纳偏差是有用的。 上图5显示QRNs和 MAGEs的表现。MAGE的两个改进都比目前 bAb i数据集上最先进的QRNs要好得多。
本文使用Stanford CoreNLP tools4为数据集中的每个段落提取了共参考链,并将基线模型的性能与我们提出的MAGE-GRU进行了比较,如下图6所示。
Attention
更多自然语言处理相关知识,还请关注**AINLPer**公众号,极品干货即刻送达。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:「自然语言处理(NLP)」卡内基梅隆(基于语言知识的循环神经网络(RNN优化)) - Python技术站