论文解读:Semantic Neural Machine Translation using AMR
机器翻译主要得益于语义表征能力,为了缓解数据的稀疏性,作者提出一种神经机器翻译方法,利用AMR(Abstract Meaning Representation)作为语义增强,结合LSTM进行端到端的学习。此模型较为简单,因此做简单介绍。
一、简要信息
序号 | 属性 | 值 |
---|---|---|
1 | 模型名称 | semantic-nmt |
2 | 所属领域 | 自然语言处理 |
3 | 研究内容 | 神经机器翻译 |
4 | 核心内容 | Att-BiLSTM, AMR,GRN |
5 | GitHub源码 | https://github.com/freesunshine0316/semantic-nmt |
6 | 论文PDF | https://arxiv.org/abs/1902.07282) |
二、相关背景
绝大多数的机器翻译工作中,通常使用RNN或CNN用于捕捉句子的语义表征,通常其获取的信息量较为发散(让神经网络自己去挖掘句子中词与词之间的序列关系),往往机器翻译的数据非常稀疏,少量的数据容易让神经网络产生过拟合的学习,因此绝大多数的神经机器翻译模型会添加额外的信息用于增强,例如带有图像的多模态机器翻译,结合知识图谱的机器翻译等。本文则是利用句子的语法结构来增强机器翻译。
通常语法结构有依存关系树,如下图中(a)所示,其可以分析出主语谓语宾语,构成简单的事实,比如图中的事实为John gave wife present。
另外就是AMR,其是基于依存关系树生成的图,其由Banarescu[1]提出。根结点为(a)中的起始点gave单词,依次对应相关的名词,每个叶子结点则表示最终对应的人名、事物或其修饰词。因为名词之间可能会存在语义关系,因此AMR是一个有向图结构。AMR具体详细可见参考文献[1],AMR可以通过一系列的工具包自动生成,例如JAMR。
三、提出的方法
如图所示:
作者提出的模型主要分为三个部分,编码器包含两个部分分别为基于注意力的长短期记忆神经网络(Att-BiLSTM)和基于图递归网络GRN的AMR编码器;解析器则为自回归模型。
1、Att-BiLSTM
这一部分想必大家都已经很熟悉了,代码层面上则是一层带有LSTM记忆单元的RNN网络的输出层通过加权求和形式,输出为一个向量(对于一个句子),本文记做 。
2、GRN based AMR Encoder
GRN是一种利用时间序列的图神经网络,其输入为一个拓扑结构 ,包括结点 和边 。拓扑结构则为每个句子的AMR图,每个结点 用向量 表示,初始化时为0向量。记 表示所有结点向量的集合,或表示为一个矩阵。
在训练GNN时,有两种方法学习每个结点的表示,一种是基于图卷积网络GCN,一种是基于图递归网络GRN,它们分别借鉴了CNN和RNN的思想。本文使用的是GRN网络,简单做一个介绍:
第
轮迭代就相当于RNN中的第
个时间序列,每轮迭代主要包括上一轮迭代的隐状态和当前的外来数据,其中外来数据即为AMR图中每个结点的对应的词向量。
(1)外来数据:为了保证输入数据符合拓扑结构,作者定义数据格式:
其中 表示三元组 的向量表示, , 和 分别表示当前的结点 存在(不存在)三元组 中。需要注明的是,上述两个公式是对结点 的表示,循环所有三元组,只要三元组存在 的累和到 中,否则累和到 中。
(2)上一状态的隐状态:
其中
表示上一时刻
的表示,
递归公示如图所示,其本质上是LSTM。
3、Decoder
模型图可见,当预测某一个句子中的一个单词时,根据上一个已预测的单词的隐状态,有权重的选择整个原始句子中重要的部份来预测下一个单词,同时也有权重的选择最后一个时刻
的AMR图中重要的结点作为增强,作者在AMR图输出部分和LSTM一样堆叠了一个Attention,公式如下:
预测部分则为: ,其中 。
参考文献:
【1】Banarescu, Laura & Bonial, Claire & Cai, Shu & Georgescu, Madalina & Griffitt, Kira & Hermjakob, Ulf & Knight, Kevin & Koehn, Philipp & Palmer, Martha & Schneider, Nathan. (2013). Abstract Meaning Representation for Sembanking. 178-186.
【2】利用AMR进行摘要式文本综述