VQA2021年之后的方向启蒙:Human-Adversarial Visual Question Answering 论文笔记
写在前面
这是一篇关于VQA数据集的拓展数据集文章,即提出了一种新的数据集Adversarial VQA(AdVQA),也就是对抗性的VQA数据集,该数据集专门收集了SOTA模型不能正确回答的问题,并得出现有VQA模型的能力仍然不足的结论,推荐2021年之后还在研究VQA方向的同学可以深挖。
- 论文地址:Human-Adversarial Visual Question Answering
- 数据集地址:AdVQA
一、Abstract
目前在VQA2.0数据集的模型性能已接近饱和,但是对于VQA来说,还有很多问题亟待解决。本文提出了一种新的数据集AdVQA来对模型进行加压测试,通过人工收集模型所不能回答的问题来指导下一步的研究方向。
二、引言
在过去的一些年里,VQA模型的性能开始在VQA2.0数据集上陷入饱和状态。于是作者提出问题:现在VQA模型的发展到了什么程度?那么如何回答呢?作者提出动态数据收集的方法可以调查这些问题,即采用人工手段找到那些可以欺骗模型的问题。
之前VQA2.0数据集问题的收集是采用询问场景相关的问题,而智能机器人无法回答。现在AdVQA数据集的构想是采用人为对抗性的收集那些智能模型无法正确回答的问题。
本文贡献:第一个提出应用对抗人类的方法去解决图像和语言多模态问题的数据集,其中包含46807个样本,而这些样本都是VQA2020年的冠军模型所不能正确回答的。因此,对于VQA模型来说,还有很大的发展空间。
三、相关工作
3.1 VQA模型加压测试
介绍了VQA2.0数据集的由来以及VQA-CP数据集。还有一些互补性的数据集用来测试模型在对抗某种条件时的鲁棒性。还有一些其他数据集的介绍,这里不多展开,感兴趣的查看原文便知。需要注意的数据集是Hateful Memes数据集,该数据集尽量使得任务涉及到真正的推理,也就是与其他只为获得正确标签的单模态数据集相反。本文提出的数据集旨在推动当前VQA模型的性能。
3.2 之前达到饱和的模型
如图一所示。但是这些模型在AdVQA数据集上还远远未达到饱和状态。
3.3 对抗性的数据集
这些对抗性的数据集加一点微小的噪声就能显著地改变模型的预测结果,因此能够提高模型的鲁棒性。但本文提出的数据集显著不同于那些基于统计数据的干扰对抗样本,是第一个探索图像和语言多模态对抗的数据集。
四、AdVQA
AdVQA的目的旨在通过对抗性的数据来调查SOTA模型的性能,核心是标注人员找出模型不能正确回答的有效问题。收集数据集的工具为Dynabench,收集的数据主要是基于val2017 和test-dev2015 COCO数据集,之后将这些数据随机划分为val2017(10000个样本)和test-dev2015(36807个样本)子集。而数据的收集又分为三个步骤:
- 问题收集:亚马逊云的工作人员与SOTA模型互动并记录模型不能正确回答的问题;
- 问题验证:新一批工作人员验证VQA模型给出的答案确实是不正确的;
- 答案收集:对第二个阶段中收集的问题给出10组GT答案。
4.1 Human-Adversarial Annotation Statistics
五、模型评估
5.1 Baselines and Methods
- Unimodal baselines
ResNet-152预训练在ImageNet上;BERT分别使用视觉或文本模态进行微调。结论:其他unimodal 文本模型表现的比umimodal图像模型好,无论在VQA和AdVQA上。 - Multimodal methods
分为两种,统一的的预训练和多模态的预训练,MMBT、MoViE+MCAN、UniT,这些模型都经过了对应的预训练 VisualBERT、VILBERT、VILT、UNITER、VILLA,这些模型同样也是经过了预训练。
结论:多模态模型表现得一般比统一预训练的模型好。 - Multimodal OCR methods
TextVQA、M4C
5.2 讨论
- 基础的比较
一些多模态的模型未能超过一些单模态的性能,但是在Other问题类型的上表现倒转过来了。 - 模型的排行
M4C模型表现最佳,但是在VQA2.0数据集上的得分小于一些更复杂的模型。UniT是最佳的unimodal预训练模型,原因可能是更少的依赖bias。对抗性的训练方法VILLA性能相当拉胯,尽管对于统计上的鲁棒性高,但是对于人为的对抗样本鲁棒性并不高。所有的模型与人类相比,在AdVQA上的性能都不咋地,但是在VQA2.0上的性能已经达到接近于人类的水平。 - 人类的表现
在AdVQA数据集上的一致性高于VQA2.0数据集 - Model-in-the-loop’s performance
MoViE+MCAN模型的表现与其他模型相似,这说明某种程度上,标注员过度拟合了模型的实例。 - 训练细节
V100GPU,8块,最长2天
六、数据集的分析
AdVQA包含1W验证集+36807测试集
需要注意的地方:采用OCR token就能回答出11.1%的问题,这表明对于AdVQA来说,模型具有阅读文本的能力是很重要的。
七、结论、限制、展望
- 结论
引入了AdVQA数据集,表明现存的问题还远远未能解决:1、无法阅读文本;2、无法计数;3、bias;4、需要外部知识;5、可能会遇到未曾见过的概念;6、弱的多模态理解能力。差距不太可能来源于:1、答案词汇量有限;2、语言表示的性能;3、没有预训练;4、缺乏对抗训练。 - 广泛的影响
本文通过采用一种动态的人为对抗的方法来构建AdVQA数据集,旨在让VQA模型更鲁棒。然后讲一下VQA的应用,最后点题:VQA模型离真正应用还有很长的路要走。
补充材料
A 训练细节
除UNITER、VILLA外,所有的模型采用MMF训练,AdamW优化器,
l
r
=
5
e
−
5
lr=5e-5
lr=5e−5,2K epoch
B、现成的模型
还评估了OSCAR、VinVL模型
C、标注细节
D、随机样本实例
写在后面
这是笔者第一次写这种数据集的博客。阅读这类文章,需要注意作者提出数据集的目的,以及数据集的分布构成即可。如果有打算自己搞数据集的可以参考下。总之,这篇文章还是很有启发意义的,对于接下来VQA模型的方向也有个明确的目标。