【多模态】《Hierarchical Question-Image Co-Attention for Visual Question Answering》论文阅读笔记
一、概述
这篇文章做的是VQA
在之前介绍的一些文章中使用问题query对图像进行attention的方式有所不同,在其主要优势体现在其联合考虑了"看哪里"即视觉注意力以及"听什么词"即质疑注意力这两个方面。我们不仅认为建模"看哪里"或视觉注意力,并且认为建模"听什么词"即质疑注意力同样重要。为此,在处理过程中我们采用了基于深度的一维卷积神经网络,并提出了联合考虑这两种类型注意力的新方法——一种新型联合关注度量框架。此外,在处理过程中我们采用了基于深度的一维卷积神经网络,并提出了联合考虑这两种类型Attention的新方法——一种新型联合关注度量框架
多模态
在本文中,我们认为识别“听哪些词”或质疑注意力的问题同样重要。考虑“这张图片中有多少匹马?”的问题。和“你能在这张图片中看到多少匹马?”。它们具有相同的含义,基本上被前三个词捕捉到。一台处理前三个词的机器可以说对与含义无关的语言变化更加稳健,并且受此观察的启发,除了对视觉注意力进行推理外,我们还解决了问题注意力的问题。具体来说,我们提出了一种新颖的 VQA 多模态注意力模型,具有以下两个创新点:
- Co-Attention :我们提出了一种新的机制,可以共同推理视觉注意和问题注意,我们将其称为共同注意。与之前只关注视觉注意力的工作不同,我们的模型在图像和问题之间具有自然对称性,即图像表示用于引导问题注意力,问题表示用于引导图像注意力.
- 问题层次结构 :我们构建了一个层次结构,在三个层次上共同关注图像和问题:(a)单词层次,(b)短语层次和(c)问题层次。在单词级别,我们通过嵌入矩阵将单词嵌入到向量空间。在短语级别,使用一维卷积神经网络来捕获包含在 unigrams、bigrams 和 trigrams 中的信息。具体来说,我们将单词表示与不同支持的时间过滤器进行卷积,然后通过将各种 n-gram 响应合并为单个短语级别的表示来组合它们。在问题层面,我们使用循环神经网络对整个问题进行编码。对于这个层次结构中问题表示的每个级别,我们构建联合问题和图像共同注意图,然后递归组合以最终预测答案的分布。
二、模型

假设我们有一个由 T 个单词组成的查询问题Q = {q₁, q₂, ..., q_T}。其中每个单词的位置由下标t标识,并且对应的特征向量用q_t来表示。我们将其定义为在第t个位置上的词嵌入、短语嵌入以及问题嵌入分别对应于符号q_t^w、q_t^p和q_t^s。
图像特征由V ={v1,…,vN}表示,其中vn是空间位置n处的特征向量。
三、Question Hierarchy

考虑给定问题中的词序列Q = {q₁, ..., q_T}。通过端到端学习将每个单词映射至向量空间中得到Q_w = {q₁^w, ..., q_T^w}。通过一维卷积操作提取词嵌入向量的短语特征。具体而言,在每一个时间步长处,我们将不同长度的过滤器应用于当前窗口内的所有词向量并计算其点积结果;所采用的不同窗口大小分别为单个词(unigram)、连续两个词(bigram)以及连续三个词(trigram)。
为了保持卷积后的序列长度不受影响,在执行二元和三元卷积前,词级特征 Qw 被适当填充为零值。基于卷积结果,在每个单词位置上提取不同 n-gram 的最大值来生成短语级别的特征。

我们的池化方法不同于以往的方法,在每一个时间步能够根据当前输入自动选择相应的 gram 特征,并且同时保持输入序列的长度,并且维持其原有的顺序。
我们通过 LSTM 对经过最大池化处理后的序列 q_t^p 完成编码操作。 所对应的 q_t^s 为时间步 t 处的 LSTM 隐藏状态。
四、Co-Attention
本研究提出了一种并行共同注意力机制与一种交替共同注意力机制,在涉及图像感知与问题导向图生成的任务中表现出显著差异性特征。其中并行共同注意力机制能够同步完成图像感知与问题导向图的生成过程,并且展现出良好的计算效率优势。而交替共同注意力机制则通过迭代的方式,在图像感知与问题导向图生成之间实现了动态交互模式的变化

4.1 Parallel Co-Attention
我们基于计算多个图像位置与问题位置对的图像与问题特征间的关联程度来建立它们之间的关系。其中给定一个图像特征图V ∈ R^{d × N} 和一个问题表示Q ∈ R^{d × T} ,其中亲合矩阵C ∈ R^{T × N} 通过以下公式进行求解:

其中 W_b \in R^{d*d}。然后根据下式分别计算对q和v的attention并加权求和。

4.2 Alternating Co-Attention
在这种注意机制中,在生成图像与解答问题时交替进行。具体来说,包括以下三个步骤:1)将问题摘要化为单一向量 q;2)基于问题摘要q聚焦于图像识别;3)基于所识别的图像特征聚焦于问题解答。
在具体实施中, 我们定义了名为x̂的操作A. 该操作采用图像X和注意力引导g作为输入, 并输出参与生成的结果向量.

在交替co-attention的第一个步骤中(alternating co-attention's first step),输入查询向量Q被赋值为X(即Q=X),其系数g初始化为零向量(g=\mathbf{0})。在第二个步骤中(step two),输出结果向量X被设定为空间位置编码后的图像特征V(即X = f_spatial(V)),其中V表示提取自图像的空间位置编码(spatial position encoding)。这里的关键在于其系数g则由前一个步骤生成的问题相关空间编码s决定(即g=s)。最后,在第三个步骤中(step three)我们利用已经生成的空间位置编码v作为后续计算的基础(即v\prime),并将其用于更新当前查询状态以生成最终的结果表示(final query state)。这一过程与并行共同注意力机制相似,在模型架构的不同层级上依次执行(across different model layers)。
五、Encoding for Predicting Answers


