先看一下下面这篇论文对VQA任务语言偏差的介绍Greedy Gradient Ensemble for Robust Visual Question Answering
目录
3.1、Definition of Visual Context
3.2、VQA Model with Perfect Sight
3.4、SwapMix as a training strategy
4.1、Dataset and Experiment Setup
4.2、SwapMix Perturbation Results
摘要
虽然VQA发展迅速,但之前的工作对当前VQA模型的健壮性提出了担忧。在这项工作中,我们从一个新的角度研究了VQA模型的稳健性:视觉上下文。我们认为,这些模型过度依赖视觉的上下文部分,即图像中与正确的、应该注意到的对象所不相关的对象来进行预测(就是shortcut bias)。为了衡量模型对视觉上下文的依赖程度并衡量其鲁棒性,我们提出了一种简单而有效的扰动技术SwapMix,SwapMix通过将不相关的上下文对象的特征与数据集中其他对象的特征交换,来扰乱视觉上下文。使用SwapMix,我们发现经典VQA模型45%以上的问题预测的的答案都发生了改变,此外,我们还训练了具有完美视觉(下文细说)的模型,发现过度依赖的上下文在很大程度上取决于视觉表征的质量。SwapMix还可以在训练期间作为一种数据增强策略,以规范过度依赖的上下文,通过交换上下文对象特征,可以有效地抑制模型对上下文的依赖。使用SwapMix研究了两个具有代表性的VQA模型:MCAN和LXMERT。我们在GQA数据集上的实验表明,SwapMix在判断模型鲁棒性和规范过度依赖视觉上下文方面都是有效的。
一、Introduction
视觉问答(VQA)是一项具有挑战性的任务,需要一个模型来回答基于图像的开放式问题。近年来,VQA性能通过不同的技术得到了极大提升,包括基于Transformer的模型,大规模多模态预训练等。然而,之前的工作研究了VQA模型的稳健性,并表明该模型可以利用语言先验,统计偏差或数据集捷径偏差来回答问题。
虽然之前的工作从语言上下文的角度研究了VQA鲁棒性,但在这项工作中,我们从另一个角度研究了VQA模型的鲁棒性:视觉上下文。视觉上下文指的是图像中的背景或在推理过程中对回答问题没有贡献的无关的对象。如图1中,网球与“女装是什么颜色”的问题无关,所以我们说它是上下文对象。理想情况下,具有真实感知和推理能力的模型应该对不相关的上下文具有鲁棒性,然而,我们发现VQA模型容易受到上下文变化的影响,这表明模型过度依赖图像中不相关的上下文。
为了研究视觉上下文的作用,我们提出了一种简单的扰动策略SwapMix,它通过将上下文对象的特征与数据集中另一个对象的特征交换来扰动视觉上下文。我们首先识别得到图像中无关的对象相对应的视觉特征,然后将它们与数据集中另一个相似对象的特征向量随机交换。例如图1中,网球是给定问题的上下文对象,因此我们将网球特征向量与足球特征向量交换,这种互换会使模型误识衣服的颜色,因为模型利用了正确的衣服对象的上下文对象进行了预测,也就是通过足球做了预测。在交换过程中,我们小心地控制交换的对象,以确保新对象与场景兼容(例如,我们不想将球换成汽车)。
令人惊讶的是,通过扰乱不相关的上下文,超过45%的预测的正确答案都会被改变,这表明VQA模型高度依赖图像中的上下文,因此容易受到上下文干扰的影响。我们评估了两个具有代表性的VQA模型:MCAN,LXMERT,分别是基于Transformer和预训练的模型。实验表明,LXMERT对环境扰动更具鲁棒性,这表明大规模预训练可以提高模型的鲁棒性。
我们进一步发现,过度依赖上下文在很大程度上取决于视觉表征的质量:一个完美的视觉模型对上下文的依赖要小得多。我们通过使用groundtruth对象和属性编码替换视觉表征来实现这一点,该编码可以被视为黄金视觉表示,为模型提供完美的视觉效果。通过研究这个完美视觉模型,我们可以排除不完美视觉感知的影响,从而纯粹关注推理过程中对相关对象的依赖。我们的结果表明,通过为VQA模型提供完美的视觉编码,答案变化从45.0%大幅减少到16.4%(对于MCAN模型)。这表明,经过完美视觉表征训练的模型更为稳健,而上下文过度依赖在很大程度上源于视觉感知特征的不完善。
除了评估上下文过度依赖外,SwapMix还可以在训练期间用作数据增强技术。在训练中,我们随机地将一部分上下文特征与数据集中的其他对象特征交换,这迫使模型更多地关注图像中的相关对象,而不是不相关的上下文。我们的实证结果表明,通过在训练中应用SwapMix,GQA数据集上的模型稳健性提高了40%以上,有效精度提高了5%以上,本文的主要贡献有三个方面:
- 我们是第一个从视觉上下文的角度研究VQA稳健性的人,通过我们简单的上下文扰动策略SwapMix,我们对两个有代表性的VQA模型的健壮性进行了基准测试,并发现它们过度依赖视觉上下文。
- 我们发现一个完美的视觉模型对视觉上下文的依赖要小得多,我们为模型提供完美的视觉编码,并观察模型稳健性的改善。
- 我们定义了两个指标,上下文依赖性和有效准确性,并通过使用SwapMix作为数据增强技术显示了改进。
二、Related Works
Visual Question Answering. 介绍VQA经典的模型,包括基于Transformer和预训练的模型,不再赘述。
Biases and Robustness in VQA. 尽管VQA的发展迅速,但之前的多个研究表明VQA模型存在偏见(可以参考一开始列出的那篇论文)。许多研究表明,这些模型利用语言先验知识、统计偏差或数据集捷径来回答问题,也有许多方法可以减轻模型中的偏差,与这些工作不同,我们的工作是第一次通过生成新的示例来研究VQA模型对视觉上下文的依赖。
Context in computer vision. 上下文信息对计算机视觉很重要。对于对象识别,[43]的早期工作引入了基于上下文的模型,使用位置分类来简化对象识别,[35]研究了上下文如何影响对象识别,[52]的近期工作修改了全局上下文模型以提高性能。此外,[45]还证明,当对象被遮挡时,对象检测模型过于依赖上下文信息,并使用组合生成模型[24,25]来解决这一问题,该模型将对象和表示中的上下文分离开来。对于场景图,[38,46]引入了层次上下文模型来生成场景图,[29]使用上下文信息增强场景图的节点特征。对于分割,[17]提出了带有上下文模块的多尺度上下文表示,利用全局图像表示来估计子区域的局部亲和力,[28]引入了可切换上下文网络来提高RGB-D图像语义分割的性能。在VQA领域,[41]添加了一种基于视觉上下文的注意力,该注意力考虑了之前参与的视觉内容。
三、Method
VQA模型对小扰动不具有鲁棒性。在本节中,我们提供了一种简单的微扰技术,用于测量VQA模型对视觉上下文(即无关的对象)的依赖性。我们将图像中不相关的对象对应的特征与数据集中的其他对象特征交换。在理想情况下,更改图像中的上下文对象不应影响模型的预测,而在我们的实验中,我们发现VQA模型严重依赖于上下文,对小扰动不具有鲁棒性。
我们将我们的方法命名为SwapMix,它对视觉上下文进行扰动,以诊断模型的鲁棒性。SwapMix还可以在训练期间用作数据增强技术,以提高模型的鲁棒性和有效准确性。我们首先定义什么是视觉上下文,然后介绍具有完美视觉效果的VQA模型,这将导致有趣的评估结果,接下来描述我们如何执行SwapMix,最后讨论如何将SwapMix应用于训练阶段。
3.1、Definition of Visual Context
视觉上下文的定义:
V代表视觉表征,Q代表问题输入。一种广泛使用的视觉表征是由预训练对象检测器Faster RCNN提取的基于对象的特征。在这种情况下,是一组对象特征,其中
是图像中对象的数量,
是每个对象的特征向量的维数,通常情况下n=,d=2048。
在图像中的个对象中,有一些在问答推理过程中是不需要的无关的对象。对于一个完全健壮的模型,改变这些无关的对象,模型的预测并不会改变,如图1所示。我们把那些无关的对象称为视觉上下文,并用
来表示视觉上下文,
是
的子集,它包含对应于
个无关对象的特征向量,上下文
的每一行表示为
,是对应于不相关对象的特征向量。
我们使用问题推理步骤的过程来识别上下文对象。例如,为了回答“树前的雕像是什么颜色”的问题,我们需要先找到树,然后找到树前的雕像,最后查询其颜色。GQA数据集提供了每个问题的真值答案推理步骤,以及每个步骤后选择的对象。因此,我们使用这些推理步骤即可过滤出问题中所有相关和不相关的对象。
3.2、VQA Model with Perfect Sight
我们推测模型的稳健性与视觉感知的质量有关,当前的大多数VQA模型都使用上述对象特征作为模型的视觉输入。这些特征由预训练的现成的目标检测器提取的,该特征在VQA训练中不会更新,而这些预提取的特征可能包含大量噪声,可能会遗漏回答问题所需的重要信息。在这种情况下,模型可能被迫从不相关的上下文中学习不合理的数据相关性,以正确预测答案,这降低了模型的稳健性。
因此,为了研究视觉感知缺陷的影响,我们训练了一个具有完美视觉的模型,并将其与使用常用的检测器特征训练的模型进行比较。使用GQA数据集中的场景图标注对具有完美视觉效果的模型进行训练,我们将对象特征替换为真值答案相关的对象标注的编码,具体地说,对于每个对象,我们将其带注释的类别标签和属性一起编码为一个one-hot编码,然后使用Glove嵌入进行编码,最后使用FC层转换为维度,对象边界框坐标也会使用FC层转换为相同的尺寸。对象
的最终表示是三个部分的平均值:
分别是对象类标签、属性和边界框坐标的编码(解释一下完美模型:正常的VQA模型的视觉特征是包含所有对象特征的,即背景特征、与问题相关的、无关的特征都有。完美的VQA模型是指输入的视觉特征仅仅包含与问题直接相关的对象的特征,这样就不存在与问题无关的上下文对象,也就使得模型一定是依赖与问题相关的对象特征进行预测)。
3.3、SwapMix
SwapMix总体思路如图2所示,在得到第3.1节中描述的上下文对象后,我们将其特征与数据集中的其他对象特征交换。对于每个上下文对象,我们基于类标签和属性执行两种类型的上下文交换。在类标签中,我们将对象特征与来自不同类的对象特征交换,例如,我们把公共汽车换成汽车。在属性中,我们将对象特征与来自同一类但具有不同属性的对象的特征交换,例如,我们把一辆红色的公共汽车换成黄色的公共汽车。对于类标签和属性,我们对每个上下文对象执行个特征交换,因此每个上下文对象总共有
个交换,我们对图像中的每个不相关对象反复执行上下文交换,并测量答案变化的百分比。
我们控制交换过程,以确保新对象与图像兼容,例如,我们可能想把公共汽车换成汽车,但我们不想把它换成电脑,因为电脑停在路边是不自然的。交换的特征始终对应于数据集中的对象,交换的特征类似于真实对象,因此这种扰动相当于用图像中的另一个对象替换不相关的对象,接下来,我们将提供更多关于如何选择候选的可交换特征进行交换的详细信息。
为了更好地描述我们的特征交换策略,我们将每个上下文对象特征(上下文的每一行)表示为
,
是对象
的类标签,
是它的属性,每个对象都属于一个唯一的对象类,但它可以具有任意数量的属性,例如,在图2中,大红色公交车的特征可以写为
。
Swapping the context class. 我们将对象特征与来自不同类的对象特征交换。例如,在图2中,我们将公交车交换为汽车、摩托车等。这种类型的特征交换类似于将不同类别的对象替换为图像中不相关的上下文对象。上下文交换帮助我们理解VQA模型对视觉输入中不相关对象的依赖性。
为了确保交换的类与感兴趣的对象位于相似的域中,我们只将对象交换为相似的类。为了实现这一点,对于每个上下文对象,我们找到离其类名最近的个类。具体地说,我们计算类名的Glove嵌入之间的余弦相似性,并选择前
个类标签,此外,我们还设置了一个阈值(0.5)来过滤相似性较小的类。通过这种方式,我们获得了交换每个上下文对象的候选对象,并确保所选匹配类位于相似的域中。例如,对于汽车类,其前五名类似的类别是:卡车、摩托车、汽车、出租车、公共汽车。
对于每个上下文对象,我们选择与
类别最近的k个类标签进行交换,如上所述,对于每个k类,我们从属于该类的数据集中随机选择一个对象,这将得到k个候选特征用于交换:
其中j={1,2….k},然后,通过将
交换到每个
,我们得到每个无关上下文对象的
个扰动。
为了用真值对象类和属性作为扰动训练完美视觉模型,一种直接的方法是简单地修改类标签的one-hot编码,但是,这可能会导致对象名称与属性(例如粉色大象或绿色篮球)不兼容。因此,为了确保交换的上下文对应于真实的对象,我们从数据集中选择交换类的一个随机对象,并使用其属性为交换的对象属性生成one-hot编码。
Swapping the context attributes. 为了进一步研究上下文依赖性,我们改变了对象属性,同时保持了对象类不变,对象特征与来自同一类但具有不同属性的对象的特征交换。例如,在图2中,红色bus可以更改为橙色bus、黄色bus等,与对象类交换相比,属性交换可以被视为一种更可控的扰动,有助于更详细地揭示模型对上下文的依赖。
对于每个上下文对象,我们将其与具有相同类标签但不同属性的
个对象交换,为了获得
个交换候选对象,我们从数据集中随机选择属于同一类、具有不同属性的对象列表中的
个对象,这将得到
其中j={k+1,k+2,…,2k},对象
在所有上下文交换中保持不变。我们只需更改属性的one-hot编码,使用glove相似度选择与感兴趣的属性相似的前k个属性。例如,属性“黑色”可以替换为:蓝色、绿色、红色、紫色、黄色。
Algorithm. 让是第
个无关对象对应的上下文,目的是将
与上下文
交换,其中
属于数据集中的一个对象
。我们定义了一个交换矩阵
,其中S的每一行就等于
,我们通过以下操作执行特征交换,将
转换为
:
是扰动矩阵,且⊙ 是Hadamard product,除了对应于
的第
行之外,
的所有行都是1。
是
的互补矩阵,
,其中
是每个条目为1的矩阵,除第
行外,
的所有条目均为0,这样就将第
行的上下文从
更改为
,我们有效地将上下文
修改为
。
Summary. 对于每个上下文对象,我们为其类标签得到个交换,为属性得到另一个
个交换,因此,对每个不相关的对象执行
上下文交换。为了给一幅图像产生一个扰动,我们一次只扰动一个上下文对象,给定图像中的
个上下文对象,我们执行
扰动,这是对模型的详细测试,以检查它是否依赖于预测的上下文,这些研究的结果
扰动用于测量模型的鲁棒性。
3.4、SwapMix as a training strategy
我们可以进一步使用SwapMix来提高模型的鲁棒性,我们在训练期间使用SwapMix来增强训练图像,该模型在基于上下文交换的每个epoch都会看到图像的新版本,通过使用带训练的SwapMix,我们迫使模型较少关注上下文,并专注于图像中的相关对象来回答问题。
在训练期间,我们将属于上下文的特征向量与数据集中的其他特征向量交换,我们根据类别标签和属性识别上下文并执行上下文交换,方法与上述部分中解释的相同。我们在一些不相关的对象上执行上下文交换,对于每个不相关的对象,我们决定以p=0.5的概率交换一个特征,如果选择进行上下文交换,我们将决定是否必须基于类标签以p=0.5的概率执行上下文交换,否则,我们将基于属性执行上下文交换。
四、Experiment
4.1、Dataset and Experiment Setup
Dataset. GQA数据集。
Models. MCAN,LXMERT
Implementation Details. 略
Evaluation metrics. 我们引入了两个新的指标来评估模型的稳健性、上下文依赖性和有效准确性。如第3.3节所述,我们对每个问题应用扰动,其中
是图像中不相关对象的数量,
是每个不相关对象的特征交换数量。如果它的答案在
扰动下发生任何变化,那这个问题就称为依赖了上下文。根据这个定义,上下文依赖是指最初正确回答的上下文依赖问题的百分比。有效准确度是指在所有
SwapMix扰动下,始终正确预测并存活下来的问题的百分比。从数学上讲,它可以写成有效
,其中
是数据集中的问题总数,
定义为:
4.2、SwapMix Perturbation Results
我们使用预训练的Faster RCNN提取目标特征,对GQA训练集的MCAN模型和LXMERT模型进行了微调。经过微调后,MCAN在GQA验证集上的准确率达到70.55%,LXMERT达到83.78%。这些结果与原作者报告的结果具有可比性。
然后,我们执行SwapMix扰动来广泛测试模型对上下文的依赖性。MCAN模型和LXMERT模型的评估结果如表1所示。令人惊讶的是,45%的MCAN答案在扰动后发生变化,有效准确率从70.55%显著下降到38.77%。显著下降表明,MCAN模型严重依赖于上下文,对上下文交换不可靠。相反,LXMERT更健壮。我们推测这是因为LXMERT对来自五个视觉语言数据集的大量图像-文本对进行了预训练,大规模预训练使模型具有更好的鲁棒性。
接下来,我们以完美视觉研究VQA模型。我们使用真值对象类别和属性编码,以完美的视觉训练这两个模型。如表1所示,这两个模型都达到了90%以上的准确度。我们观察到,具有完美视觉的MCAN在鲁棒性方面有了显著改善:与Faster RCNN特征训练相比,其上下文依赖性下降了28.7%(从45.1%降至16.4%),有效准确率从38.77%提高到75.53%。同样值得注意的是,LXMERT的性能与MCAN的性能范围相似,这表明LXMERT并不比MCAN更健壮,而且在同一领域中看不到更多的预训练数据。
在表2中,我们分别提供了对象类和属性的更详细的扰动结果。有趣的是,我们观察到,具有完美视觉的模型对属性扰动具有高度鲁棒性:对于MCAN和LXMERT,只有3.7%和1.4%的正确答案因属性扰动而改变。这表明,在给定真值类别的情况下,该模型能够很好地区分相关对象和无关对象,从而对上下文对象属性的扰动具有鲁棒性。
4.3、SwapMix Training Results
使用SwapMix作为训练数据增强策略,可以在所有环境下持续提高这两种模型的鲁棒性。对于使用Faster RCNN和完美视觉编码进行训练的MCAN和LXMERT,SwapMix训练减少了模型对上下文的依赖,并提高了有效的准确性。
如表1所示(标记为+SwapMix),SwapMix训练显著降低了MCAN的上下文依赖性40%(从45%降至27%),并将其有效准确性提高了5.8%(第3行)。结果也与视觉良好的MCAN和LXMERT一致。表2进一步显示,SwapMix训练提高了上下文类依赖和属性依赖的稳健性。结果一致表明,SwapMix作为一种训练策略,减少了模型对上下文的依赖,增强了模型的稳健性,提高了有效的准确性。
有趣的是,我们注意到,在模型稳健性和整体准确性之间存在一种权衡。虽然我们看到模型稳健性显著提高,但值得注意的是,整体模型精度在一定程度上有所下降。例如,将SwapMix训练应用于具有完美视觉的MCAN模型时,其上下文依赖性降低4.7%,有效精度提高2.3%,而整体模型精度降低2.2%。该模型利用上下文中的偏差和相关性来实现高性能,因此,当通过SwapMix训练减少上下文依赖时,有效准确度提高,而总体准确度下降。因此,我们认为,有效的准确性是更好地描述模型在不依赖语境偏见的情况下理解任务的真实能力。
4.4、Ablations and Analysis
Ablating the swapping number k. 在表2中,我们还提供了超参数k的消融研究结果。表中显示了k=5或k=10的结果。我们对上下文对象的类别和属性进行k次扰动。结果表明,当我们将k的扰动数从5增加到10时,两个模型的答案变化相应增加。然而,值得注意的是,依赖性的增加并不显著,这表明大多数依赖于上下文的情况可以通过相对较少的干扰来揭示。默认情况下,我们使用k=10对VQA模型的上下文进行基准测试。
Random padding to k swaps. 在进行对象扰动时,对于兼容类的数量小于k的情况,我们从数据集中选择随机类,将扰动数精确填充到k。为了验证这种随机填充不会在结果中带来额外的噪声,我们比较了有无随机填充的结果。如表3所示,随机填充的影响可以忽略不计。
Examples for SwapMix Perturbation. 在图3中,我们展示了我们提出的SwapMix扰动的示例,这两种情况都导致了模型预测的变化。在示例(a)中,靴子与毛衣颜色的问题无关,而将靴子改为雪地靴会导致模型预测的变化。在例子(b)中,当我们把背景中的蓝色招牌换成绿色招牌时,对卖空者颜色的模型预测也变为绿色。实例直观地表明,VQA模型严重依赖于上下文,通过扰动图像中不相关的上下文,我们可以改变模型预测。
Attention visualization for SwapMix training. 使用SwapMix作为数据扩充的培训减少了模型对上下文的依赖。在图4中,我们展示了未使用SwapMix训练的模型和使用SwapMix作为数据增强训练的模型的注意力权重的可视化。可视化基于LXMERT模型,具有完美的视觉效果。对于给定的问题,“相机是银色的还是棕褐色的”,经过普通训练的模型更关注无关的背景对象,如汽车、树等,而经过SwapMix增强训练的模型高度关注相关对象、相机,很少关注其他对象。可视化定性地表明,当作为数据增强策略应用时,SwapMix有效地抑制了模型对视觉上下文的依赖,并迫使模型更加关注相关对象。
五、Conclusion
在这项工作中,我们研究了VQA模型对上下文的依赖,即图像中用于预测的无关对象。我们提出了一种简单而有效的扰动技术:SwapMix。SwapMix在评估模型对上下文依赖的鲁棒性和规范VQA模型的上下文依赖性方面都是有效的,从而使它们更加健壮。我们在GQA上对两个有代表性的模型进行的实验表明了SwapMix的有效性。有趣的是,我们发现VQA模型的鲁棒性在很大程度上取决于视觉感知的质量,而具有完美视觉的模型对上下文干扰更为鲁棒。大规模预训练也有助于提高模型的稳健性,我们希望我们对视觉语境依赖性的初步分析可以作为未来研究者研究VQA稳健性和可靠性的起点。
Negative impact and limitations. 我们的工作研究了VQA模型的鲁棒性,发现这些模型容易受到上下文干扰的影响,提出的SwapMix扰动策略可能被恶意用于攻击VQA模型。为了克服这种潜在的负面影响,我们建议使用SwapMix进行训练可以有效地调整对上下文的依赖,更好的视觉表现可能会提高模型的稳健性。我们工作的局限性在于,我们只研究了两个具有代表性的模型,在GQA数据集上使用了两种类型的视觉特征。