【文献阅读】能兼顾图像理解和推理能力的VQA模型(CVPR,2019)

一、文章概况

文章题目:《Answer Them All! Toward Universal Visual Question Answering Models》

文章下载地址:http://openaccess.thecvf.com/content_CVPR_2019/papers/Shrestha_Answer_Them_All_Toward_Universal_Visual_Question_Answering_Models_CVPR_2019_paper.pdf

二、文献导读

摘要部分:

Visual Question Answering (VQA) research is split into two camps: the first focuses on VQA datasets that require natural image understanding and the second focuses on synthetic datasets that test reasoning. A good VQA algorithm should be capable of both, but only a few VQA algorithms are tested in this manner. We compare five state-ofthe-art VQA algorithms across eight VQA datasets covering both domains. To make the comparison fair, all of the models are standardized as much as possible, e.g., they use the same visual features, answer vocabularies, etc. We find that methods do not generalize across the two domains. To address this problem, we propose a new VQA algorithm that rivals or exceeds the state-of-the-art for both domains.

 VQA的研究分为两个阵营:一个是研究自然图像理解的VQA数据集,一个是研究合成图像推理的VQA数据集。一个好的算法应该同时具备这两种能力,很少有VQA算法进行这种测试。本文利用这两个领域的8个数据集将5个顶尖的VQA算法进行了比较。实验发现这些算法不能同时在在两个领域中运行。为了解决这个问题,作者提出了一种新的VQA算法,在这个算法在两个领域中的性能超越了那些顶尖的算法。

三、文章详细介绍

对图像提出的一些开放性问题,VQA需要一个能够理解和推理这些视觉-语言的模型。然而,大多数VQA模型的顶尖算法仅仅使用偏见(biase)和表面关联(superficial correlations),没有真正的理解图像视觉内容。后来为了减少这些问题,将每个问题与互补的图像和不同的答案联系起来。列如,VQAv2减少偏见,TDIUC将多种问题的答案和罕见问题进行分析归纳,CVQA进行概念的综合性测试,VQACPv2用不同的训练和测试分布测试其性能。

虽然后面的自然图像数据集已经减少了偏见,但这些数据集中的绝大部的分问题并没有测试推理技能,为了弥补这些缺陷,创建了一些新的合成数据集。为了评估算法的鲁棒性,这些数据集的创建者认为应该将这个算法在两个领域进行测试。

然而,最近的论文基本都是研究这两个领域中的一个,几乎没有在这两个领域同时测试的。最佳算法CLEVA没有在自然图像VQA数据集上进行测试,反之亦然。这里作者在8个数据集上测试了5个顶尖的VQA算法,发现大多数算法不能同时在两个领域内表现很好。作者提出的模型能够在两个领域表现很好。

【文献阅读】能兼顾图像理解和推理能力的VQA模型(CVPR,2019)_第1张图片

文章的主要贡献包括:

1.We perform a rigorous comparison of five state-of-theart algorithms across eight VQA datasets, and we find that many do not generalize across domains.(在8个数据集上对5种先进的算法进行严格比较,发现许多算法不能同时在两个领域有很好的泛化性。)

2.Often VQA algorithms use different visual features and answer vocabularies, making it difficult to assess performance gains. We endeavor to standardize the components used across models, e.g., all of the algorithms we compare use identical visual features, which required elevating the methods for synthetic scenes to use region proposals.(由于VQA算法的不同的视觉特征和答案词汇表,使得评估性能增益变得很困难。我们设计标准化的不同模型评价方法。列如,将比较的所有算法都使用相同的视觉特征。)

3.We find that most VQA algorithms are not capable of understanding real-word images and performing compositional reasoning. All of them fare poorly on generalization tests, indicating that these methods are still exploiting dataset biases.(发现大多数VQA算法不能理解真实图像并进行组合推理,说明这些算法泛化能力差。)

4.We describe a new VQA algorithm that rivals stateof-the-art methods on all datasets and performs best overall.(我们提出的新的VQA算法,表现性能很好。)

1.相关工作(Related Work)

(1)VQA数据集(VQA Datasets)

这里简单的列出一些实验中用到的数据集,数据集统计表如下所示:

【文献阅读】能兼顾图像理解和推理能力的VQA模型(CVPR,2019)_第2张图片

 VQAv1/VQAv2:最早的人工标记的开放式VQA数据集,VQAv1有很多类语言偏见,VQAv2尽量减少这种偏见(为每个问题补充来图片),但仍然存在一些其他偏见。目前的自然图像VQA数据集仍然以VQAv2为基准。

TDIUC:将问题划分为12种明显不同的类别,解决来人工标记数据集中的问题偏见。

CVQA:是对VQAv1的重新分割,测试训练过程中没有出现的词语。比如,训练集询问“红灯”,测试集可能询问“绿灯”。

CVQACPv2: 是VQAv2数据集的重新组合。

CLEVR:是一个综合生成的数据集,是一些具有简单几何形状视觉场景组成的数据集,主要用来测试合成语言和基本视觉推理(compositional language and elementary visual reasoning)。数据集中的问题涉及到复杂的推理,问题类别包括:属性查询(querying attribute),比较属性(comparing attributes),存在性(existence),计数(counting),整数比较(integer comparison)。所有问题都是通过编程生成,相应的数据集CLEVR-Humans人类生成的问题。

CLEVR-CoGenT:用来测试未知名词和老旧单词记忆力的数据集。由CoGenT-ACoGenT-B组成,在这些数据集中的问题往往比CVQA数据集中的问题复杂。

单独使用VQAv1和VQAv2数据集不能够测试算法的推理能力以及其鲁棒性。而CVQA 和 VQACPv2数据集克服了这些困难以最大程度减小偏见,却不能实现图像数据的复杂性和多样性。这两类数据集互补,作者认为,在做VQA算法时,必须同时考虑这两类数据。

(2)VQA 算法(VQA Algorithms)

自然图像VQA的算法有很多,包括贝叶斯方法(Bayesian approaches)、空间注意力法(methods using spatial attention)、合成法(compositional approaches)、双线行池化法(bilinear pooling)以及其他。空间注意力机制是自然语言VQA中应用最广泛的方法之一。作者还与UpDn、QCG 、 BAN等算法做了比较。另外,还有一些方法主要用于处理合成VQA数据集。与自然图像的算法相比,这些算法的强调更有助于VQA关系推理的理解。常见的方法包括模块化网络、隐式组合规则、关系网络RNs(relational networks)、早期融合、条件转换信息(conditional feature transformations)。

目前的大多数VQA算法,都只是针对某一种数据集进行评价,而没有对两种数据集同时评价。因此作者提出了一种针对两种数据集的评价方法。

2.The RAMEN VQA Model

作者提出额VQA模型全程为Recurrent Aggregation of Multimodal Embeddings Network (RAMEN) model,该模型能够对现实图像进行问答,而且也具有一定组合推理能力。模型结构如下所示:

【文献阅读】能兼顾图像理解和推理能力的VQA模型(CVPR,2019)_第3张图片

该模型一共由三个部分组成:

1.Early fusion of vision and language features. Early fusion between visual and language features and/or early modulation of visual features using language has been shown to help with compositional reasoning . Inspired by these approaches, we propose early fusion through concatenation of spatially localized visual features with question features.(早期视觉和语言特征的融合)

2.Learning bimodal embeddings via shared projections. The concatenated visual+question features are passed through a shared network, producing spatially localized bimodal embeddings. This phase helps the network learn the inter-relationships between the visual and textual features.(通过共享投影学习双重模型嵌入)

3.Recurrent aggregation of the learned bimodal embeddings. We aggregate the bimodal embeddings across the scene using a bi-directional gated recurrent unit (bi-GRU) to capture interactions among the bimodal embeddings. The final forward and backward states essentially need to retain all of the information required to answer the question.(双重模型嵌入的循环整合)

(1)Formal Model Definition(模型的主要部分定义)

输入需要一个问题嵌入q和N个搜索框的集合Ri,这个集合Ri中包含了每个视觉外观特征和空间位置,RAMEN首先连接了每个问题嵌入和搜索框:

然后将生成的结果传入到一个双模型嵌入(bimodal embedding),得到Bi,该网络是由残差网络连接的多层感知机(multi-layer perceptron (MLP))。之后我们再做一个后期融合(late-fusion),对输入原始问题嵌入和双模型嵌入做融合,再将所有的结果整合到一个集合中:

【文献阅读】能兼顾图像理解和推理能力的VQA模型(CVPR,2019)_第4张图片

这里将a作为RAMEN嵌入,最后再输入到一个分类层中去,来预测正确答案。RAMEN比目前的大部分VQA模型都要简单,却能够取得非常好的效果。

(2)Implementation Details(模型细节)

①Input Representation(输入表示):输入的问题表示为了300维的嵌入,然后再用GRU获得了1024维的问题嵌入;CNN提取的图像特征为2048维度,采用的模型是基于Faster R-CNN的自底向顶的结构(bottom-up architecture),空间信息的编码是将搜索框分成16*16的网格,然后再拉伸成(flattened)512维的向量。

②Model Configuration(模型配置):projector F由4个多层感知器(4-layer MLP)组成,每个感知层有1024个单元,每个单元都有非线性激活函数。第2,3,4层还有残差连接。整合算子A(aggregator A)是一个单层bi-GRU(single-layer bi-GRU),其中包含1024个隐含节点,所以前向和后向连接会产生2048维的嵌入。然后这个嵌入会通过2048维的全连接层进行投影,最后再有一个分类层进行答案的预测。

③Training Details(训练细节):训练用的是Adamax,采用渐进学习率,前4个epoch为2.5 ∗ epoch ∗ 10^-4,接下来6个epoch为5 ∗ 10^-4,最后以0.25衰减率,每两个epoch衰减一次。mini-batch size设置为64。

3.模型评估

与RAMEN对比的模型主要包括以下几个:

Bottom-Up-Attention and Top-Down (UpDn)

Question-Conditioned Graph (QCG)

Bilinear Attention Network (BAN)

Relation Network (RN)

Memory, Attention and Composition (MAC)

为了使得交叉比较更有意义,在所有算法不同的数据集中,作者都使用一套相同的视觉特征。作者给RAMEN的实验效果例子:

【文献阅读】能兼顾图像理解和推理能力的VQA模型(CVPR,2019)_第5张图片

之后作者首先进行了不同数据集上不同模型的综合表现:

【文献阅读】能兼顾图像理解和推理能力的VQA模型(CVPR,2019)_第6张图片

作者又选择了3种常用的评价指标,在数据集TDIUC上进行实验效果的评价:

【文献阅读】能兼顾图像理解和推理能力的VQA模型(CVPR,2019)_第7张图片

最后作者还做了不同类型数据的算法比较,包括是否存在,计数,属性比较,属性查询等:

【文献阅读】能兼顾图像理解和推理能力的VQA模型(CVPR,2019)_第8张图片

四、结论

作者为VQA算法设定一个新的标准:在自然场景和具有挑战性的合成基准中都有良好的性能。作者希望他们的工作能带来未来VQA的进步。

你可能感兴趣的:(视觉问答(VQA))