Multi-level Attention Networks for Visual Question Answering阅读笔记

Multi-level Attention Networks

这个模型可以同时提取高级语义信息和空间信息,模型框架如下所示:

Multi-level Attention Networks for Visual Question Answering阅读笔记_第1张图片

该模型分为三个部分,分别是Semantic Attention、Context-aware Visual Attention、Joint Attention Learning。

Semantic Attention

语义注意的工作是从图像中挖掘重要的概念来回答问题。虽然概念检测器已经从图像中检测到了一组对象和动作(例如,“组”、“站立”),但只有那些语义接近问题的概念(即“棒球”),才会通过语义注意来突出显示。

虽然一张图像可以表达多个语义,但是他们并不都是有助于回答特定问题的,所以这里提出对图像表达的语义添加注意力,步骤如下:

1、利用深层卷积神经网络训练概念检测器,,它可以为图像生成语义概念的概率。通过深度卷积神经网络训练概念检测器,表示在图像中出现的每个概念的概率。

这里写图片描述

2、我们训练一个注意网络来衡量词汇表中每个概念与问题之间的语义相关性。使用以下等式来表示对问题编码的模型:

这里写图片描述

我们表示概念时使用和表示问题相同的词汇表和嵌入矩阵,因此它们可以共享相同的语义表示。 具体而言,我们通过双层堆叠嵌入层用语义向量sc表示概念c。 第一层设计为与问题模型共享相同的词嵌入层,第二层使概念向量和问题向量维度相同。

这里写图片描述

接下来,将问题向量和概念向量通过点积操作进行融合,然后将融合结果放到sigmod激活层中去,得到概念与问题的相关性分数。最后将概念-问题的相关性权重和概念-图像的相关性权重相乘,得到概念c的语义注意力权重MC。

我们对所有概念表示加权求和来表示由问题q查询的图像的高级语义信息。

Context-aware Visual Attention

首先对图片进行卷积操作,取最后一个卷积层的输出作为图像的特征,然后将图像特征按区域输入到双向GRU中,将每一步的前向和后向输出组合起来,为每个区域形成一个新的特征向量。新的特征向量不仅包含了对应区域的视觉信息,而且还包含了来自周边区域的上下文信息。

Multi-level Attention Networks for Visual Question Answering阅读笔记_第2张图片

 

GRU操作的公式如下:

其次,我们给每个区域分配一个注意力分数来显示区域和问题之间的关系。我们把每个图像区域和问题进行乘法操作,然后把他们输入到非线性神经网络中,最后使用softmax函数产生图像的注意力权重。

这里写图片描述

对每个区域的权重加权求和,得到整个图像的视觉表示。

这里写图片描述

Joint Attention Learning

我们使用问题作为查询图像不同层次上的信息。在低级视觉特征中,我们通过视觉注意来关注与问题相关的区域,而在高级语义特征中,我们通过语义关注来关注与问题相关的概念。这里将两个不同层次上的注意力融合,我们首先将问题向量加入到从不同层次提取的图像特征中,然后,我们用一个乘法将这两种类型的注意组合在一起。最后,我们将联合特征输入到一个Softmax层中,以预测预定义的候选答案集A的概率。将概率最高的确定为最终答案。

这里写图片描述

你可能感兴趣的:(VQA,深度学习,视觉问答,深度学习,视觉问答)