【论文笔记12】Iterative Alternating Neural Attention for Machine Reading

(1)论文创新点

  • 这个模型的文章和问题在真正使用时,都是根据前一时刻的隐层状态,动态的表示成一个向量;
  • 在更新状态时,使用了gated机制(虽然看起来有点复杂)。

(2)论文模型

模型的整体结构图如下所示:
模型结构图
接下来将对该模型上的组成部分做简单的介绍。
bidirectional encoddings
对于问题和文章的基本表示,主要是使用BiGRU来对文本序列进行编码。具体来说,对文章,不对文章的语义信息进行整体表示,而是对文章中的每个单词序列逐一表示(即文章表示法的模型1),每个单词的表示由双向GRU的前后隐层状态拼接后得到:

对于问题来说做同样的操作,对序列中每个单词进行表示:

在对推理状态进行更新的时候,每次都会从问题和文章中抓取相关信息,于是构造了下面几个组成部分。

query attention

这个我们可以把它形容成获取在当前时刻$t$问题的重点,这个重点是通过一个注意力机制得到的,通过公式:

得到该时刻每个单词的权重(其中$\widehat{q_i^T}$是问题表示),于是这个时刻问题的重点由下面的公式表示:

document attention
首先计算文章中每个单词的权重,结合问题的重点,然后得到文章这个时刻的重点:

search gates
这个部分是由FFNN+sigmold来组成的,具体的计算公式如下:

更新推理状态
通过上述几个公式,得到问题和文章该时刻的重点,然后通过gates对这些重点进行过滤,结合前一时刻的推理状态来得到当前时刻的推理状态:

(3)小结

这个模型动态的构建问题,文章,以及推理状态之间的相关性,也就是动态的注意力机制。一个可以扩展的点就是动态的决定推理步骤,此外,gate的计算方式或许也可以优化下。