2019年VQA论文整理

大致将VQA的方法分为如下

1、Attention

2、Modality interaction

3、Relation Reasoning

4、Module Network

5、Count

6、Robust

7.Sence Text

1、Attention

      目前大部分工作都存在使用Attention机制,使用Attention主要是找到图片中与答案的相关的图片区域。

      (1)Stacked Attention Networks for Image Question Answering

这篇文章创新点在于对于多次提取attention,多次提取后得到的attention与问题更加相关,首先是将问题和图片送入一个单层网络,然后通过softmax得到一个权重向量,其维度等于图片中区域的数量,然后权重向量与图片相乘再相加得到新的图片特征向量,其与问题向量相加得到新的问题特征向量,再进行新一轮的迭代。一般迭代两轮之后效果就不明显了。

          

(2)Where To Look: Focus Regions for Visual Question Answering

如下所示,这种attention方式也是比较简单,首先将图片和文字进行embedding之后,进行点乘然后通过softmax得到一个权重向量,这个权重向量与上文相同与区域的数量一致,然后坐着将图片特征与文本特征concat之后,输入至一个单层网络中,将权重与得到的特征相乘,再输入至最后的分类层。

       

(3)Visual7W: Grounded Question Answering in Images

这篇文章将注意力机制与LSTM相结合,将attention放在问题上的LSTM,每输入一个word就产生一个注意力图,然后就生成了一个新的视觉特征。在特征融合方面选择使用的了点乘。

(4)Bottom-Up and Top-Down Attention for Image Captioning and Visual Question Answering

该篇文章主要的贡献在于提供了更好的特征,即题目中所说的Bottom up的图片特征,该方法 基于Faster R-CNN框架内的ResNet CNN。通过使用Visual Genome数 据集为给定图像中的特定元素标注。由此产生的特征可以解释为以图像中前K个对象为中心的ResNet特征。也就是说,不是用整张图片作为视觉特征,而是选择前K个图片中的proposal作为视觉特征。

而其中的Top-down即问题特征为Top与各个proposal的特征concat之后,通过非线性层和线性层得到一个attention,然后attention与视觉特征相乘得到更好的特征。

对两种模态进行融合,作者采用了简单的元素级相乘(element-wise)

(4)Differential Attention for Visual Question Answering

已有的注意力研究都是通过关注某一个图像区域来回答问题,而本文认为已有研究的注意力机制关注的区域与人类会关注的图像区域并不相关。因此,本文提出通过一或多个支持和反对范例来取得一个微分注意力区域(differential attention region)。
与基于图像的注意力方法比起来,本文计算出的微分注意力更接近人类注意力,因此可以提高回答问题的准确率。
本文的前提是,语义最近的范例和远语义范例之间存在差异,这样的差异能够引导注意力关注于一个特定的图像区域。

原理流程:

  1. 根据输入图像和问题取得引用注意力嵌入(reference attention embedding);
  2. 根据该引用注意力嵌入,在数据库中找出样本,取近样本作为支持范例、远样本作为反对范例;
  3. 支持范例和反对范例用于计算微分注意力向量;
  4. 通过微分注意力网络(differential attention network, DAN)或微分上下文网络(differential context network)分别可以改进注意力或取得微分上下文特征,这两种方法可以提升注意力与人工注意力的相关性;

首先为微分注意力网络(differential attention network, DAN),重点为通过正反例注意力更新目标注意力,使之与人类的注意力更相似。

 然后就是微分上下文注意力(DCN),其主要应用映射的概念,缩小正例与目标注意力之间的距离,删除反例上下文与目标注意力之间的特征,从而达到更新注意力的目的。

2、Modality interaction

由于VQA的模型输入一般为两种模态的数据,即图像数据和文本数据,对于这两种模态的数据需要进行融合,一般的方法为

  1. ①将两中模态数据的特征矩阵相连(concat)
  2. ②将两种模态数据进行相乘
  3. 将两种模态数据进行元素级相乘(element-wise)

(1)Bilinear Attention Networks

首先需要指出之前的模型,将文本特征(即问题)提取为一个数组,而视觉数据提取为多矩阵,即多个数组,每个区域的特征的提取为一个数组。针对这种情况,有人提出了低秩双线性池化,具体方法如下,由于要将两种模态融合,将权重矩阵W分解为U,V。减少了参数,将其相乘得到后池化,即得到了注意力权重,然后与视觉特征相乘得到新的视觉特征(突出了局部特征)。

在此基础上,作者提出不是将文本特征提取为一个数组,而是矩阵,即每个单词提取为一个数组。但是这导致了模态融合时参数更加复杂,与上述做法相似,提出一个注意力图A,A中的每个元素都是经过低秩双线性池化得到

(2)Compact Trilinear Interaction for Visual Question Answering

本篇提出了网络模型 Compact Trilinear Interaction (CTI) 用于发掘三元组输入(Image, Question, Answer)间的线性关联,使用 PARALIND 分解 有效地参数化 trilinear interaction。

这么做的话会出现两个问题:(1) trilinear interaction 维度过高,会导致模型在运行时间,存储空间上带来巨量的开销,(2) VQA 问题分为开放式回答和多选问题,以三元组作为输入仅仅适用于多选问题。因此提出 knowledge distillation
可参考这篇文章链接 

 

对于多选问题,输入是三元组(Image,Question,Answer),使用 Glove 对 Question 和 Answer 做 embedding,在 ImageNet 预训练网络,通过 FPN(ResNet152) 对 Image 做 Object Detection 后得到特征向量。预测是一个二分类问题,即判断每一个 Answer 的正负性,Loss 函数使用 BCE

对于开放式问题,输入是(Image,Question),一般我们是将其看成多分类问题。但由于待选答案列表较长,一方面会增加 CIL 预测时的计算量,另一方面 CIL 输入的是三元组。

所以提出了 knowledge distillation 技术:整个模型分为两块,一个是 teacher model(这里使用 CIL),另一个是 student model( 现阶段 state-of-the-art 模型,比如 BAN),训练过程是二者一块进行,测试阶段仅仅使用 student model。
 

(4)Multi-modality Latent Interaction Network for Visual Question Answering

这篇文章考虑到在多种方式来进行模态融合,在Summarizations阶段,通过单层网络和softmax得到k组线性组合权重,然后与特征相乘,得到的Summarizations是在全局上对特征的总结。Interaction阶段就是简单的进行点积通过单层网络。

Propagation比较有意思,是在跨模态配对特征的不同方面,以对输入图像个问题之间的复杂关系进行建模。第一个操作着重于建模每个单独的视觉潜在对之间的关系,第二个操作则尝试在所有视觉问题对之间传播更高阶的信息,以对更复杂的关系进行建模。

Aggregation阶段是使用transformer从A中聚合信息以更新特征的信息。

再就是作者采用模块化,多个模块叠层,多次更新信息。

 

 

 

(5)Dynamic Fusion with Intra- and Inter-modality Attention Flow for Visual Question Answering(参考链接)

最大的亮点是同时考虑了intra-modality relation(模态内部关系)和inter-modality relation(跨模态关系)。之前没有人尝试过同时利用这两类关系来处理VQA问题。intra-modality relation是对inter-modality relation的补充:对视觉模态来说,每个图像区域不应该仅获得来自问题文本的信息,而且需要与其他图像区域产生关联,比如对于who is above the skateboard ?这样的问题,模型就应该把滑板对应的区域和滑板上方的区域关联起来;而对文字模态来说,使各个单词之间互相产生联系有助于提高模型对问题的理解,这方面BERT的Transformer是一个很好的例子。

给定图片视觉特征和问题文本特征,模型首先对两者进行跨模态的关系建模,然后分别在两个模态内部各自进行关系建模,这两个步骤可以重复多次,最后把输出的两个特征经过一个简单的分类器得出答案。

3、Relation Reasoning

(1)MUREL: Multimodal Relational Reasoning for Visual Question Answering(可参考链接)

直观上来说,在 VQA 领域,Attention 机制相当于在给定问题的前提下,对每个 Image region 打分后做信息加权。由于忽略了 Image region 间的 spatial 和 semantic 间的关联,所以不能做到有效地推理。

MUREL 单元用于发掘 Question 和 Image region 间的细粒度关联,最后输出每个 Image region 上下文感知的编码信息。 MUREL 单元主要由两部分构成:(1) Bilinear Fusion,(2) Pairwise Relational Modeling

4、Module Network

(1)Deep Compositional Question Answering with Neural Module Networks

本文也是针对 Visual question answering 这个问题的,还是用 CNN网络,这里使用一个语义解析器(natural language parser)来动态的决定一个CNN网络,CNN网络有几个模块过程,通过语义解析器,我们动态的通过组合模块构成一个 CNN网络来解决 图像问答问题。

 (2)Interpretable Visual Question Answering by Reasoning on Dependency Trees

 

5、Count

(1)LEARNING TO COUNT OBJECTS IN NATURAL IMAGES FOR VISUAL QUESTION ANSWERING(链接)

目前很多模型都在记数问题上表现很差,所以需要单独解决这个问题。

Problems with Soft Attention
在 VQA 领域中,造成计数类问题表现不佳的原因主要有:(1) Soft-Attention 的广泛运用,(2) 区别于标准的计数问题,对于 VQA 来说,没有明确的标签标定需要计数对象的位置,(3) VQA 系统的复杂性,表现在不仅要处理计数类问题,同时还要兼顾其他复杂的问题,(4) 真实场景中,对某个对象区域可能存在多次重叠采样。

截至目前,即使是 Hard Attention 和 structured Attention 表现也并不乐观(所列举的论文采用限制 Attention 每次作用域单个 Bounding box),直观的解释比如一张图片有两只猫,各自分得了 0.5 的权重,在做信息加权时候,则又退化到一只猫的情况。另外文章还表示 sigmoid 函数作为激活函数,在处理计数问题时,效果并不好。
3. Counting Component
本文的关键思想在于将相关 object proposal 描述成点 V, 其间的内部与外部关系描述成边 E,形成图 G=(V,E)G = (V, E)G=(V,E),全文设计策略,通过在极端情况分析,设计算法,而实际的激活函数学习到的参数可适用于真实场景。

6、Robust

现在的VQA模型有各种各样的鲁棒性问题,针对模型的某一个问题,加以改进就可以提高模型的准确率。

(1)Cycle-Consistency for Robust Visual Question Answering(可参考链接

该篇文章针对的是当某一个问题有其他语法形式表达,两者的意思是完全一样的,但是会出现答案不一致的鲁棒性问题。

本文给出:

  1. 新评价协议;
  2. 相应的新数据集VQA-Rephrasings。本文的研究表明目前的VQA模型在问题语句的语言变化时难以保持稳定。 

VQA-Rephrasing数据集从VQA v2.0发展而来,包含4万个图像,对应的4万个问题通过人工改写成了3个表述方式不同的问题语句。 

如果我们用Q表示问题,I 表示图像,A 表示答案,那么一个VQA问题(上图中的a)可以表示为:F:(Q, I) → A′,一个VQG问题(上图中的b)可以表示为:G:(A, I) → Q′。如果给定一个(I,Q,A)元组,我们首先可以根据原始问题Q在VQA模型中获得一个预测答案A',然后用预测答案A'和图像 I 可以在VQG模型中生成一个原问题的改述问题Q′,最后我们可以根据Q'再生成A'',作者认为一个具有鲁棒性的VQA模型,改述问题Q'在语法和语义上正确,且跟原问题Q表述一致,对于问题Q和改述问题Q',回答的答案应该相同,下面进行详细分析该框架。

引入了生成对抗网络中CycleGAN提出的循环一致性(cycle-consistency)原理:

  • (a) 重新生成的问题和答案应与ground-truth保持一致
  • (b) 视觉问题生成模块的架构细节

(2)Self-Critical Reasoning for Robust Visual Question Answering

本篇论文的出发点是当前的VQA模型会由于数据分布的原因,由于语言先验强,深度学习系统倾向于在训练数据中捕获表面的统计相关性,而不能推广到具有显著不同的问题回答(QA)分布的测试数据。回答问题不考虑图片的内容,所以针对这个情况作者采用增强对正确答案对图片中region的敏感度,

 (3)RUBi: Reducing Unimodal Biases in Visual Question Answering

这篇文章针对目前的模型存在依赖于问题和答案之间的统计规律,比如问题是香蕉是什么颜色,因为训练数据中大部分香蕉是黄色,在测试数据中图片中即使是有绿色的香蕉也无法正确回答。所以模型即使不考虑图片的因素也能回答问题,所以针对这类问题作者采用了增加一个只有问题的分支来增强模型的鲁棒性。

如上图所示,在右侧模型中增加了一个只有问题的分支,在训练期间,分支充当代理,防止VQA模型出现学习偏差。在训练结束时,我们只需删除分支并使用来自基本VQA模型的预测。 

 

本文主要是使用单独问题分支的输出与VQA模型的输出进行点积,降低VQA模型的bias,比如上图中如果是黄色香蕉,与问题分支的mask进行点积后得到的输出loss减小,相当于减小了这个例子的重要性,对于参数的改变也就小了。如果是绿色香蕉,点积之后Loss增大,增大了这个例子的作用,对模型的参数修改更大。

最后训练过程中整个模型的Loss包括两部分,第二部分中的loss只修改问题分支中的分类和神经网络nn的参数,对问题的embedding的参数由第一个Loss修改,两个分支共享对问题的embedding的参数。

(4)Answer Them All! Toward Universal Visual Question Answering Models(可以参考链接

VQA的研究分为两个营地:一个是注重VQA数据集需要自然图像的理解,二是注重合成数据集的推理。一个好的VQA模型能够兼顾这两个方面,所以作者比较了5个VQA算法在这两个方面的表现,并用了8个VQA数据集。作者的实验表明这些方法同时在这两个领域不具有泛化能力,因此作者提出了一个新的VQA模型以解决这个问题。

 

7.Sence Text

这个分类下强调VQA问题下一部分是对图片中的文本进行提问,回答问题需要找到文本,然后对文本进行分析得到最终的结果。

(1)Scene Text Visual Question Answering

本篇文章主要是提出一个数据集,数据集中的问题需要通过分析图片中的文本进行回答。

(2)Towards VQA Models That Can Read 

首先,作者引入一个新的TextVQA数据集来促进在这个重要问题上的进展。现有的数据集要么有一小部分关于文本的问题(例如,VQA数据集),要么太小(例如,VizWiz数据集)。TextVQA包含45,336个问题,涉及28,408张图像,需要对文本进行推理才能回答。其次,作者引入一个新的模型架构,图像中读取文本,原因在图像的背景和问题,并预测答案可能基于文本和图像的扣除或由字符串中发现的形象。因此,称方法为Look、Read、Reason & Answer(LoRRA) .我们在TextVQA数据集中展示了LoRRA优于现有的最先进的VQA模型。我们发现,在TextVQA上,人类性能和机器性能之间的差距明显大于VQA 2.0,这表明TextVQA非常适合沿着与VQA 2.0互补的方向对进展进行基准测试。

作者提出的方法是查看图像,读取它的文本,关于图像和文本内容的原因,然后回答,或者从固定的答案词汇表中选择一个答案a,或者选择OCR字符串s中的一个。虚线表示没有经过联合训练的组件。右边的方块颜色越深,注意力越重。OCR令牌20在示例中具有最高的注意权重。

VQA 组件: 红色、蓝色部分和通用的VQA模型基本相同,问题的句子先对自身做self-attetion,然后再对faster-rcnn提取的图像region 特征做spatial-attetion。选择了用GloVe来编码词向量。

Read 组件:对图片中包含文字的区域做OCR。OCR模型可以从图像中读取并返回一串单词。假设获取了M个单词,就可以用预先训练好的FastText进行词嵌入的编码。后面的contextual attetion和前面VQA的类似。在加权注意过程中,由于特征与权重相乘,然后取平均值,排序信息就会丢失。所以将注意力权重与最终的权重平均特性连接起来。这允许Answer模块按顺序知道每个令牌的原始注意权重。

Answer 组件:在固定的回答空间中,当前的VQA模型只能预测固定的标记。由于图像中的文本经常包含训练时没有看到的单词,因此很难仅根据预定义的答案空间来回答基于文本的问题。所以本文选择对词表进行扩展,即将N个tokens也添加到答案空间里。根据Read组件里的权重,权重最大的即为预测的答案。如果模型预测的索引大于N(即,在答案空间的最后M个令牌中),直接“复制”相应的OCR令牌作为预测答案。 

 

  • 14
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值