Bilateral Multi-Perspective Matching for Natural Language Sentences
以前的方法要么是从单一方向匹配句子,要么只应用单一的粒度(逐字或逐句)匹配。在这项工作中,我们提出了一个双边多视角匹配(BiMPM)模型。给定两个句子P和Q,我们的模型首先用BiLSTM编码器对它们进行编码。接下来,我们在两个方向上对这两个编码的句子进行匹配,即P对Q,Q对P。在每个匹配方向上,一个句子的每个时间步骤与另一个句子的所有时间步骤从多个角度进行匹配。然后,利用另一个BiLSTM层将匹配结果汇总成一个固定长度的匹配向量。
Introduction
这部分有彩蛋:提到了使用两个独立额encoder编码两个句子的情况下,会导致两个句子之间的交互弱的现象。
这篇文章提出的问题是:首先,一些方法只探索了逐字匹配[Rocktaschel ¨ et al., 2015],但忽略了其他粒度的匹配(例如,逐句匹配);其次,匹配只在单一方向进行(例如,P与Q的匹配)[Wang and Jiang, 2015],但忽略了反方向(例如,Q与P的匹配)
。
模型结构
- Word represention layer:Word ebedding和character embedding context
- representation layer:两个bilstm得到上下文表示
- match layer:match each time-step of P against all time-steps of Q,and match each time-step of Q against all time-steps of P.
- Aggregation layer:合并表示:通过连接BiLSTM模型的最后一个时间步的(四个绿色)向量来构建固定长度的匹配向量
- prediction layer:一个两层前馈神经网络,消耗固定长度的匹配向量,并在输出层应用sof tmax函数
在匹配层中,提出了四种策略
:
**(1) 完全匹配。**图2(a)是这种匹配策略的示意图。在这个策略中,每个前向(或后向)语境嵌入-→h p i(或←- h p i)与另一个句子的前向(或后向)表示的最后时间步骤-→h q N(或←- h q 1)进行比较。
(2) Maxpooling-Matching。图2(b)给出了这种匹配策略的图示。在这个策略中,每个前向(或后向)语境嵌入-→h p i(或←- h p i)与另一个句子的每个前向(或后向)语境嵌入-→h q j(或←- h q j)进行比较,对于j∈(1…N),只保留每个维度的最大值。
(3) 专注-匹配。图2(c)显示了这种匹配策略的图示。我们首先计算每个前向(或后向)语境嵌入-→h p i(或←- h p i)与其他句子的每个前向(或后向)语境嵌入-→h q j(或←- h q j)之间的余弦相似度。
(4) 最大注意力匹配。图2(d)是这种匹配策略的图示。这个策略与关注度匹配策略类似。然而,我们不是将所有上下文嵌入的加权和作为关注向量,而是选择具有最高余弦相似度的上下文嵌入作为关注向量。然后,我们将句子P的每个上下文嵌入与它的新关注向量相匹配。