《Stacked Attention Networks for Image Question Answering》论文阅读

《Stacked Attention Networks for Image Question Answering》论文阅读

摘要

本文介绍了堆叠注意力网络(SANs),它学习从图像中回答自然语言问题,San使用问题的语义表示作为查询来搜索图像中与答案相关的区域,通过多次查询一个映像,在四个图像质量保证数据集上进行的实验表明,该方法明显优于以往的先进方法。

一、介绍

《Stacked Attention Networks for Image Question Answering》论文阅读

图像中有几个物体:自行车、窗户、街道、篮子和问题:自行车上的篮子里放着什么?

堆叠注意力网络首先关注第一关注层中所有被提及的概念,例如自行车、篮子和篮子中的物体(狗),然后进一步缩小第二层中的焦点,并找到答案狗。

主要贡献在三个方面。
首先,提出一个用于图像质量保证任务的堆叠注意力网络。
其次,对四个映像质量保证基准进行综合评估。
第三,我们执行详细的分析,其中把存储区域网络的不同注意层的输出可视化。

二、模型

整个模型分为三个模块:Image Model,Question Model,Stacked Attention Networks

2.1 Image Model
利用VGGNet提取图像特征,图像在输入VGG网络之前首先我们要把它重新调整成448x448的大小,然后从最后一层汇集层获取特征,得到其尺寸为512×14×14,如图所示。14×14是图像中的区域数,512是每个区域的特征向量的维数。因此,图像中的每个特征向量对应于输入图像的32× 32像素区域。
《Stacked Attention Networks for Image Question Answering》论文阅读

2.2 Question Model

问题模型包括基于(1)LSTM的问题模型和(2)基于CNN的问题模型

(1)基于LSTM的问题模型

《Stacked Attention Networks for Image Question Answering》论文阅读
如图3所示。LSTM单元的基本结构是一个存储单元,它保留序列的状态。在每一步中,LSTM单元获取一个输入向量(在我们的例子中是字向量)XT并更新存储单元ct,然后输出隐藏状态ht。更新过程使用门机制。遗忘门ft控制着过去状态CT-1的多少信息被保留。输入门控制当前输入XT更新存储单元的量。输出门ot控制有多少存储器信息作为隐藏状态提供给输出。如下:
《Stacked Attention Networks for Image Question Answering》论文阅读
其中I、f、o、c分别是输入门、忘记门、输出门和存储单元。权重矩阵和偏差是LSTM的参数,是在训练数据上学习的。
问题“自行车上的篮子里装的是什么”被输入LSTM。然后最后的隐藏层作为问题的表示向量。

(2)基于CNN的问题模型

《Stacked Attention Networks for Image Question Answering》论文阅读

这项研究,我们使用CNN进行问题表征。类似于基于LSTM-based的问题模型,我们首先将单词嵌入向量xt=Wq,然后通过连接单词向量来获得问题向量.
然后对单词嵌入向量进行卷积运算。我们使用了三个卷积滤波器,它们的大小分别是1(一元)、2(二元)和3(三元)。
hc,t = tanh(Wcxt:t+c−1 + bc).
对于不同大小 c=1,2,3 的卷积特征映射,我们将它们串联起来,形成整个问题句的特征表示向量
h = [h˜1, h˜2, h˜3],

2.3 Stacked Attention Networks

通过多次迭代实现图像区域的Attention。首先根据图像特征和文本特征生成一个特征注意分布,根据这个分布得到图像每个区域权重和Vi,根据u=Vi+Vq得到一个refine query向量。将这个过程多次迭代最终注意到问题相关区域。

给定图像特征矩阵vI和问题向量vQ,首先通过单层神经网络,然后使用softmax函数生成图像区域的注意力分布

《Stacked Attention Networks for Image Question Answering》论文阅读
其中vI∈Rd×m,d是图像维度,m是图像区域数,vQ∈Rd是d维向量。 假设WI,A,WQ,A∈Rk×d、WP∈R1×k,则pI∈Rm是一个m维向量,对应于给定vQ的每个图像区域的关注概率。 注意,我们用⊕表示矩阵和向量的加法。 由于WI,AvI∈Rk×m并且WQ,AvQ,bA∈Rk都是向量,因此通过将向量的矩阵的各列相加来执行矩阵与向量之间的加法。
与简单地将问题向量和全局图像向量相结合的模型相比,注意力模型构造了一个信息量更大的u,因为对与问题更相关的视觉区域赋予了更高的权重。

在每一层中,使用合并的问题和图像向量uk-1作为图像查询。 选取图像区域后,将新查询向量更新为uk =˜vkI + uk-1。 重复此操作K次,然后使用最终的uK推断答案:
《Stacked Attention Networks for Image Question Answering》论文阅读

1b举例说明推理过程。在第一个关注层,模型大致确定了与篮筐、自行车和坐具相关的区域。在第二个注意层,模型更加清晰地聚焦于与答案“狗”相对应的区域。

三、实验结果

在四个Image QA数据集上评估存储区域网络。
实验结果如下表:
《Stacked Attention Networks for Image Question Answering》论文阅读

《Stacked Attention Networks for Image Question Answering》论文阅读
本文中,提出了一种新的用于图像质量保证的堆叠注意力网络。存储区域网络使用多层注意力机制,多次查询图像以定位相关的视觉区域并逐步推断答案。实验结果表明,所提出的存储区域网络在所有四幅图像上都显著优于现有技术方法。

参考:
VGG网络介绍:添加链接描述
文章代码:添加链接描述
博客参考:添加链接描述
添加链接描述