Learning Conditioned Graph Structures for Interpretable Visual Question Answering论文解读


论文链接: https://arxiv.org/abs/1806.07243v1.

1. 背景

最近的计算机视觉工作一直在探索更高层次的图像表示,特别是使用对象检测器和基于图形的结构来更好地理解语义和空间图像理解。尽管如此,很少有人依赖于能够捕捉语义和空间关系的高级图像表示。在本文中,我们提出了一种新的基于图形的视觉问答方法。我们的方法结合了图形学习器模块,它学习输入图像的问题特定图形表示,以及最近的图形卷积概念,旨在学习捕获问题特定交互的图像表示。

2. 方法概述

本文所提出的方法如图 1 所示。作者开发了一种结合空间、图像和文本特征的深层神经网络来回答一个关于图像的问题。模型首先利用 Word embedding 和 RNN 来计算得到问题的表达,以及一组包含包围盒坐标和图像特征向量的物体描述。我们的图学习模块然后基于给定的问题,去学习一个邻接矩阵。这个邻接矩阵确保下一层 -空间图形卷积- 可以使其不但聚焦于对象,而且可以聚焦于问题相关的对象关系上。我们卷积图特征,随后经过 max-pooling,与 question embedding 组合在一起,利用一个简单的元素级相乘,从而可以预测一个答案。【预测与给定问题的答案有关的类。】
图1

2.1 computing model inputs

模型的第一步是计算输入图像和问题的嵌入。我们使用目标检测器将给定的图像转换成 K 个 视觉特征。物体检测模型是我们方法的必要步骤,因为每个边界框将构成我们正在学习的特定于问题的图形表示中的一个节点。对每个提议的边界框进行嵌入,即卷积特征图对应区域的均值。利用这种对象特征在其他工作中已经被证明可以提升 VQA 的效果,因为这使得模型可以聚焦于对象级特征,而不仅仅是 CNN特征。对于每个问题,我们使用预先训练好的词嵌入,将问题转换为一个可变长度的嵌入序列。然后,我们使用一个带有GRU cell的动态RNN将单词嵌入序列编码为单个问题嵌入q。

2.2 Graph learner

在这一部分,是全文最重要的贡献部分:图学习模块(the graph learner module)。该模块产生了一个基于问题的图像表示。它是通用的并且容易实现,学习了可解释且问题相关的特性之间的复杂关系。学习到的图结构通过定义的节点领域来驱动空间图卷积,它允许自然地学习一元和成对注意,因为邻接矩阵包含自循环。

我们想构建一个无向图 g = {V, E, A},其中 E 是待学习的边集合,A∈RN×N是相应的邻接矩阵。每一个顶点 v (v=N个)对应的是检测到的图像对象(边界框坐标和相关特征向量vn∈Rd)。我们想学习一个邻接矩阵 A,使得每条 (i, j, Ai,j)∈E 都以问题编码q为条件。直观的来讲,我们需要建模特征向量之间的相似性,及其他们与给定问题之间的相关性。这是通过将问题嵌入到N个视觉特征Vn中来实现的,我们将其写成[Vn][q],下面是我们计算的一个联合嵌入为:

在这里插入图片描述
其中,F 是非线性函数。通过将联合嵌入en连接到矩阵矩阵 E∈RN×de,这样就可以定义一个带自循环的无向图的邻接矩阵为A = EET,使得Ai,j = eiT ej。

这种定义不会在图的稀疏性上有额外的约束,所以,可以产生一个全连接的邻接矩阵。这种学习后的图形结构将是后续图形卷积层的主干,其目标是获得对象特征的表示,该表示取决于最相关的、问题特定的邻域。这就需要一个稀疏的图结构来关注图像中最相关的方面。为了学习每个节点的稀疏邻域系统,我们采用了如下的排名策略:

在这里插入图片描述
其中,topm 返回的是:输入向量中前 m 个最大值的索引,ai 表示的是邻接矩阵的第 i 行。换句话说,给定节点的邻接系统将会对应与该节点有最强链接的 nodes。

2.3 Spatial Graph Convolutions

给出一个问题特定的图结构,然后利用图卷积的方法来学习新的对象表示,这些信息是由一个专门为回答给定问题而设计的邻域系统提供的。图顶点 V (即边界框及其对应特征)可以通过他们的在图像中的位置进行刻画,可以在空间上对他们的联系进行建模。此外,许多VQA问题要求模型能够感知图像中特征的方向和相对位置,但是许多之前的方法都忽略了这一点。

我们使用一种 graph CNN 方法,直接在图形域上依赖于空间关系直接进行操作。他们的方法通过使用成对的伪坐标函数u(i, j)来获取空间信息,对于每一个顶点 i,以 i 为坐标系统,u(i, j)是该系统中顶点 j 的坐标。我们的伪坐标函数u(i, j)返回了一个极坐标向量(ρ,θ),表述了顶点 i 和 j 的 相关的边界框中心的空间相对位置。我们认为这样效果好,这是因为极坐标分为:方向(θ)和距离(ρ),提供了两个角度来表示空间关系。

一个特别的步骤和挑战是:描述每个相邻节点对非规则邻域结构影响的patch算子的定义,提出使用 K个 可学习均值和协方差的高斯核,其中均值可以解释为伪坐标中的方向和距离。对每一个 k,我们得到一个核权值wk(u),节点i在核 k 处定义patch算子为:
在这里插入图片描述
其中,fn(i)∈Rdv, N (i)表示式2中顶点i的邻域。我们将每一个 patch算子的输出看做是:近邻特征的加权求和(a weighted sum of the neighbouring features), 高斯核的集合描述了每一个近邻在卷积操作输出时的影响。

我们调整 patch 算子使其包含一个附加的加权因子,该加权因子以生成的图形边缘为条件:
在这里插入图片描述
αij=s(ai)j,s(.)j 是缩放函数的第 j 个元素 (定义为所选邻接矩阵元素的softmax)。这种形式意味着在顶点之间传递的消息的强度除了空间方向外,还可以通过信息进行加权。在本文的模型中,这可以解释为网络在回答一个问题时应该注意两个节点之间的关系。因此,网络学会了以成对的方式关注问题的视觉特征。
最后,我们将顶点 i 处卷积运算的输出定义为K个核的连接:
在这里插入图片描述
其中,每一个 Gk 是一个可学习权重矩阵(即:卷积核),由此得到卷积图表示H∈RN×dh

2.4 Prediction layers

通过上述步骤,我们可以得到考虑结构化建模的特征输出,然后就可以进行答案的预测了。本文的做法是通过 max-pooling layer 得到图形hmax 的全局向量表示。图的这种向量表示可以被认为是图的高度非线性压缩,其中的表示已经被优化以回答手头的问题。然后我们通过一个元素级相乘进行融合合并问题q和图像hmax编码。最后,我们通过具有ReLU激活的2层MLP计算分类得分。

3. 实验

在这里插入图片描述下图是学习到的图结构示例,这些示例导致成功的分类。我们在每张图片上报告多个问题的结果,并强调学习图形是如何根据手头的问题进行裁剪的。
在这里插入图片描述

4. 总结

在本文中,我们提出了一种新的基于图形的可视化问题回答方法。我们的模型根据当前的问题学习输入图像的图形表示。然后利用图卷积这一新颖而强大的概念,利用所学习的图结构学习最相关邻域的图像特征。在VQA v2数据集上的实验产生了有希望的结果,并证明了所学习的图结构的相关性和可解释性。可以考虑几个扩展和改进,我们的主要目标是展示学习图形结构的潜力和可解释性。我们发现,在一个相当简单的架构下,学习图的结构是非常有效的;进一步的工作可能需要考虑更复杂的体系结构来进一步细化所学习的图。我们的方法的一个重要限制是使用对象检测器作为预处理步骤。模型的性能高度依赖于检测器的质量,它可能产生重复或遗漏的对象。

发布了14 篇原创文章 · 获赞 9 · 访问量 1017

猜你喜欢

转载自blog.csdn.net/weixin_42305378/article/details/104585391