论文阅读:MACHINE COMPREHENSION USING MATCH-LSTM AND ANSWER POINTER

MACHINE COMPREHENSION USING MATCH-LSTM AND ANSWER POINTER
来源:ICLR 2017
下载链接:https://ink.library.smu.edu.sg/cgi/viewcontent.cgi?article=4656&context=sis_research
本文主要贡献:

(1)提出了两个用于机器理解的新端到端神经网络模型,它们结合了 match-LSTM 和 Ptr-Net 来处理 SQuAD 数据集的特殊属性。

(2) 在 SQuAD 测试数据集上实现了 71.3% 的精确匹配分数和 80.8% 的 F1 分数,这比特征工程解决方案要好得多。

(3) 对模型的进一步可视化揭示了对推理问题的注意力机制的一些有用见解。 还证明了边界模型可以克服序列模型中的提前停止预测的问题。此外,还在线提供了我们的代码。

Abstract

在 SQuAD 中,答案并非来自一小组候选答案,而且它们具有可变长度。 我们为该任务提出了一种端到端的神经架构。该架构基于 match-LSTM和 Pointer Net。将输出标记限制为来自输入序列。提出了两种使用 Pointer Net 来完成我们的任务的方法。

Introduction

数据集:SQuAD/MSMARCO
在这里插入图片描述
来自 Wikipedia 的一段文字和三个相关问题及其答案,取自 SQuAD 数据集。 段落中的粗体标记是我们的预测答案,而问题旁边的文本是正确答案。

我们使用match-LSTM作为我们模型的一层,在给定的段落上构建一个双向匹配 LSTM,并注意每个单词的问题,以便段落中的每个位置都有一个隐藏的表示,反映它与问题的关系。

然后我们进一步采用了 Vinyals 等人开发的 Pointer Net (Ptr-Net) 模型,根据match-LSTM构建的隐藏表示来选择这些位置的单词作为答案。

我们提出了两种将 Ptr-Net 模型应用于我们的任务的方法:一种是逐字选择答案的序列模型,另一种是只选择答案范围的起点和终点的边界模型。

Method

match-LSTM

在文本蕴涵中,给出了两个句子,其中一个是前提,另一个是假设。 为了预测前提是否包含假设,match-LSTM 模型依次遍历假设的标记。 在假设的每个位置,使用注意力机制来获得前提的加权向量表示。 然后将这个加权前提与假设的当前标记的向量表示相结合,并输入到 LSTM 中,称之为 match-LSTM。 match-LSTM 本质上是将注意力加权前提与假设的每个标记的匹配顺序聚合起来,并使用聚合后的匹配结果进行最终预测。

POINTER-NET

生成一个输出序列,其标记必须来自输入序列。Ptr-Net 不是从固定词汇表中选择输出标记,而是使用注意力机制作为指针从输入序列中选择一个位置作为输出符号。

OUR-METHOD

文本由矩阵 P ∈ Rd×P 表示,其中 P 是段落的长度(token数),d 是词嵌入的维度。类似地,问题由矩阵 Q ∈ Rd×Q 表示,其中 Q 是问题的长度。 我们的目标是从文章中找出一个子序列作为问题的答案。

模型架构

两个模型都由三层组成:(1)一个 LSTM 预处理层,它使用 LSTM 对段落和问题进行预处理。 (2) 一个 match-LSTM 层,尝试将段落与问题进行匹配。 (3) 答案指针 (Ans-Ptr) 层,它使用 Ptr-Net 从文章中选择一组标记作为答案。 两种模型的区别仅在于第三层。
在这里插入图片描述
LSTM Preprocessing Layer

LSTM 预处理层的目的是将上下文信息合并到段落和问题中每个标记的表示中。在这里插入图片描述
得到的矩阵 Hp ∈ Rl×P 和 Hq ∈ Rl×Q 是段落和问题的隐藏表示,其中 l 是隐藏向量的维数

Match-LSTM Layer

在文章的位置 i,它首先使用标准的逐词注意力机制得到注意力权重向量 α i ∈ R1×Q 如下:
在这里插入图片描述
其中 Wq,Wp,Wr ∈ Rl×l, bp, w ∈ Rl×1 和 b ∈ R 是要学习的参数,Gi ∈ Rl×Q 是中间结果,h ri- 1 ∈ Rl×1 是 位置 i-1 处的单向匹配 LSTM的隐藏向量,外积 (·⊗eQ) 通过在左侧重复向量或标量 Q 次来生成矩阵或行向量。

本质上,上面得到的注意力权重α i,j 表示文章中第 i 个标记与问题中第 j 个标记之间的匹配程度。

接下来使用注意力权重向量α i 获得问题的加权版本,并将其与段落的当前标记组合形成向量 z i在这里插入图片描述
这个向量 z i 被输入一个标准的单向 LSTM 以形成match-LSTM:在这里插入图片描述进一步在相反的方向上构建了一个类似的 match-LSTM。 目的是获得一个表示,该表示从两个方向为段落中的每个标记编码上下文。
令 →Hr ∈ Rl×P 表示隐藏状态 [ →h r1, →h r2 , . . . , →h rP ] 和 ← Hr ∈ Rl×P 表示 [ ←h r1, ←h r2 , . . . , ←h rP ],match-LSTM 在反向方向上的隐藏状态。 我们将 Hr ∈ R2l×P 定义为两者的串联:
在这里插入图片描述
Answer pointer layer

该层使用序列 Hr 作为输入。 我们有两个不同的模型: 序列模型产生一系列答案标记,但这些标记在原始段落中可能不是连续的。 边界模型只产生答案的开始记号和结束记号,然后原文章中这两者之间的所有记号都被认为是答案。

The Sequence Model

Ans-Ptr 层以顺序方式对这些整数的生成进行建模。 因为答案的长度是不固定的,为了在某个点停止生成答案标记,我们允许每个 ak 取一个介于 1 和 P + 1 之间的整数值,其中 P + 1 是一个特殊值,表示结束答案。

为了生成由 ak 表示的第 k 个答案标记,首先再次使用注意力机制,得到一个注意力权重向量 βk ∈ R1×(P +1),其中 βk,j (1 ≤ j ≤ P + 1) 是从文章中选择第 j 个标记作为答案中的第 k 个标记的概率,βk,(P +1) 是在位置 k 处停止生成答案的概率。 βk 建模如下:在这里插入图片描述
其中 Hr ∈ R2l×(P +1) 是 Hr 与零向量的连接,定义为 Hr = [Hr; 0], V ∈ Rl×2l,Wa ∈ Rl×l, ba, v ∈ Rl×1 和 c ∈ R 是要学习的参数,Fk ∈ Rl×(P +1) 是中间结果, (· ⊗ e (P +1)) 遵循与之前相同的定义,hak 1 ∈ Rl×1 是答案 LSTM 的位置 k 1 处的隐藏向量,定义如下:在这里插入图片描述
然后我们可以将生成答案序列的概率建模为
在这里插入图片描述The Boundary Model

我们只需要预测两个指标as和ae。 所以在边界模型中我们不需要将零填充添加到 Hr 中,生成答案的概率简单地建模为
在这里插入图片描述
Experimences

Conclusions

在本文中,我们为斯坦福问答 (SQuAD) 和人类生成的机器阅读理解 (MSMARCO) 数据集中定义的机器理解问题开发了两个模型,均使用 match-LSTM 和指针网络。 在 SQuAD 和 MSMARCO 数据集上的实验表明,我们的第二个模型,边界模型,可以在 SQuAD 数据集上实现接近最先进的性能,并在 MSMARCO 数据集上实现最先进的性能 . 我们还展示了边界模型可以克服序列模型的提前停止预测问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值