Regularizing Attention Networks for Anomaly Detection in Visual Question Answering 论文笔记
- 一、Abstract
- 二、Introduction
- 三、The Framework of VQA Models
- 四、Definition of Anomalies in VQA
- 五、实验
- 5.1 Experimental Setup
- 5.2 Compared Methods for Anomaly Detection
- 5.3 Evaluation of VQA Accuracy
- 5.4 Out-of-Distribution Detection (Task 1-3)
- 5.5 Attention-based Anomaly Detection
- 5.6 The Effect of Regularization of Attention Networks
- 5.7 Irrelevant Question Detection (Task 4)
- 5.8 Undefined Answer Detection (Task 5)
- 5.9 Ablation Study
- 六、相关工作
- 七、Conclusions
写在前面
这是一篇关于VQA模型鲁棒性的文章,笔者也是第二次接触这类文章,(打个小广告,上一次的文章已经写出来了,关注一下即可获取最新关于VQA论文解读),文章读起来还是有那么一点拗口的,主旨是提出了对于VQA模型的5种反常场景,判断模型能不能够识别出来 and 作者提出的注意力方法来识别这五种场景。
- 论文地址:gularizing Attention Networks for Anomaly Detection in Visual Question Answering
- 代码地址:Github,开源了但是没全开,估计得等一段时间
- 收录于 AAAI 2021
一、Abstract
目前仅有少量研究关注于VQA模型可能会遇到反常/异常场景的问题,本文评估了VQA模型对5种反常场景下的鲁棒性。之前单模态方法不能从VQA模型的输出的最大置信度答案中检测出输入是否不正常,一些后训练VQA模型输出的方法,例如离群值曝光,也不行。
因此,本文提出一种基于注意力的方法,在输入的图像和问题之间进行置信度推理。此外,本文表明了一种最大正则化的注意力网络能够显著提升基于注意力的VQA模型对于异常场景的检测精度。另外,本文提出的方法可以应用到不同的跨模态注意力VQA模型中,进一步增强了对反常输入的鲁棒性。
二、Introduction
先讲一下视觉问答的意义,接下来提出问题:对于VQA模型的鲁棒性评估还停留在早期的研究上。
接下来对单模态如何处理进行举例,例如maximum softmax probability (MSP) 或者 后训练的方法,那么问题来了,这些方法只能关注图像 or 文本方面单模态的异常检测,而对于多模态的输入,例如VQA之前还没有这么干(研究)过。本文根据两种标准:1、是否图像 and/or 问题来自同一分布或者不同分布;2、同一分布内的图像和问题能否被模型回答,将VQA中的反常场景分成五类。对于这五类分布,所划分的类别是不连续的,并且全都是并行的,其中包括有最糟糕的场景;最频繁的场景;当前VQA模型受限制的场景。
之后,作者提出一种简单的基于注意力的方法来校正VQA模型预测出的置信度并且需要探测出VQA模型的反常输入。作者的发现:使用率最高的MSP方法仅仅能够探测出答案在候选样本集合中的样本,对于那些最糟糕的场景 or 最频繁的场景——那些非同一 图像/问题 分布以及无关的图像问题对 都不能检测出来。因此本文采用一种跨模态注意力VQA模型来关联输入图文对中最相关的视觉目标和问题词。然而对于异常的输入,VQA模型,跨模态注意力同样不能关联到所给的图像和问题,但是这种反常输入可以根据maximum attention probability (MAP) 对那些低置信度的值进行简单的检测。
为了增强VQA模型对于反常输入的鲁棒性,本文提出一种跨模态注意力分布的最大交叉熵正则化方法用于不同的VQA模型。与后训练离群值的方法相比,将本文提出的方法应用于后训练中,能够显著增强MAP的异常检测能力,同时保持VQA模型的精度。另外作者也对用于后训练的反常场景的选择进行了讨论,因为这些样本需要增强VQA模型的鲁棒性。
本文的主要贡献如下:
- 第一个研究了VQA模型本文所定义的五种反常情景下的表现及鲁棒性,表明了单模态中管用的反常检测方法不能简单地泛化到例如VQA这样的多模态任务中;
- 提出的基于注意力的反常检测方法是模型无关的,简单且有力,能够用于不同的注意力模型;提出的最大化交叉熵正则化能够增强VQA模型鲁棒性并保持VQA模型的精度。
- 本文提出的跨模态注意力模型对于检测多模态输入中的反常情况来说是最关键的。
三、The Framework of VQA Models
这一块就直接过了,正常的VQA模型流程,总结起来就一个公式:
θ
∗
=
argmax
θ
E
p
D
[
log
p
θ
(
a
∣
v
,
q
)
]
\theta^{*}=\underset{\theta}{\operatorname{argmax}} \mathbb{E}_{p_{\mathcal{D}}}\left[\log p_{\theta}(\mathbf{a} \mid \mathbf{v}, \mathbf{q})\right]
θ∗=θargmaxEpD[logpθ(a∣v,q)]
四、Definition of Anomalies in VQA
考虑3种情况:1、最糟糕的场景;2、最频繁的场景;3、当前VQA模型的限制。根据这三点,将反常情形大致定义为 分布外的图像/问题以及无法回答出的图像问题对(包含无关的问题和尚未定义的答案),因此有这5种反常情形来评估VQA模型的鲁棒性:
这五种类型并不相交且为平行关系,下面是具体案例:
4.1 Out-of-distribution Image & Question
典型的反常场景,例如VQA-CPv2数据集,即反常样本的来源与训练数据来源不同。
4.1.1 Task 1: Image from Out-of-Distribution
第一种类型,只有图片来源于外部数据,表示为
p
(
V
o
u
t
)
p(V_{out})
p(Vout),这种情况下的问题仍然是能够回答的,但是回答出的答案不能保证,只能选择置信度最大的答案进行输出。这种情况下的模型总是不可靠的或者出现过拟合训练集的答案,如VQA-CPV2数据集,举例:
4.1.2 Question from Out-of-distribution
第二种反常类型,问题来源于外部分布,即输入的问题是之前没见过的类型,表示为: p ( q o u t ) p(q_{out}) p(qout),那么没见过的只有没有疑问词的陈述句了。而对于这类问题,VQA模型的输出只能是拒绝回答,因为没有正确答案可供选择。本文评估模型是否能够区分出这种陈述句的问题。
4.1.3 Image/Question from Out-of-Distribution
这种就是上面两种的组合了,图像和问题均来源于外部分布,表示为 p ( V o u t ) & p ( q o u t ) ) p(V_{out})~ \& ~p(q_{out})) p(Vout) & p(qout))。尽管现实中很难见到这种分布,但是为了使分布完整,所以就包含了这种类型。
4.2 Unanswerable Pair of Image & Question
由于问题无关导致或者模型能力受限,导致正确答案不存在,所以使得问题回答不出来,而这也是最频繁的反常场景,因为每个图像-问题对 对于训练样本来说都是类似的?(如何理解?)
4.2.1 Task 4: Irrelevant Question
第四种任务,每一个样本都有一个和图像不相关的问题。与4.1不包含疑问词的问题不同,这里的问题指的是问题与所给输入图像无关,分布外的问题同样也包含在这个任务内,当然也包含一些分部内的问题对,表示为 p o u t ( q i n ∣ v i n ) p_{out}(q_{in}|v_{in}) pout(qin∣vin)。对于任务4来说,如果图像-问题对之间彼此无关联,那么正确答案要么需要外部知识或者答案并不存在。
4.2.2 Undefined Answer
第五种反常类型,每一个样本都有一种未定义的答案,该答案不存在于预定义的答案候选集合 p ( a o u t ∣ v i n , q i n ) p({\text a}_{out}\mid{v_{in}},q_{in}) p(aout∣vin,qin)。而未定义的问题不能被回答,原因不在于任何输出对的反常,而是受到预定义的答案集合的限制。主要原因可能是:混乱的问题,匿名以及颗粒度的答案?需要阅读数量或者文本足够多?
4.3 Anomaly Detection in VQA
这一部分就是对反常检测的引入了,前提假设不涉及外部数据或者模型结构的修改。具体来说:首先,介绍一种基于置信度的反常检测器及其限制;之后提出最大注意力得分作为推理置信度来校准预测的得分。坑的地方在这里,作者所说进一步分类这种检测到的问题留待将来的工作,也就是说本文只提出问题,不解决?
4.3.1 Confidence-based Anomaly Detector
给出一个反常检测器:
g
(
v
,
q
)
=
{
1
if
S
(
v
,
q
)
≤
δ
0
else
g(\mathbf{v}, \mathbf{q})=\left\{\begin{array}{cc} 1 & \text { if } S(\mathbf{v}, \mathbf{q}) \leq \delta \\ 0 & \text { else } \end{array}\right.
g(v,q)={10 if S(v,q)≤δ else
得分为
S
S
S,当
S
≤
δ
S\leq \delta
S≤δ时,即为反常场景,这里最重要的就是阈值
δ
\delta
δ的选择了,一般采用额外的验证集用于查明该值。接下来是
S
S
S值的计算,采用softmax的方式加载MSP上,即:
S
(
v
,
q
;
T
)
=
max
i
p
θ
(
a
i
∣
v
,
q
;
T
)
=
max
i
exp
(
f
i
(
v
,
q
)
/
T
)
∑
j
=
1
N
exp
(
f
j
(
v
,
q
)
/
T
)
,
\begin{aligned} S(\mathrm{v}, \mathrm{q} ; T) &=\max _{i} p_{\theta}\left(\mathrm{a}_{i} \mid \mathrm{v}, \mathrm{q} ; T\right) \\ &=\max _{i} \frac{\exp \left(f_{i}(\mathrm{v}, \mathrm{q}) / T\right)}{\sum_{j=1}^{N} \exp \left(f_{j}(\mathrm{v}, \mathrm{q}) / T\right)}, \end{aligned}
S(v,q;T)=imaxpθ(ai∣v,q;T)=imax∑j=1Nexp(fj(v,q)/T)exp(fi(v,q)/T),其中
f
j
f_{j}
fj为最后一层类别分类器的输出,
N
N
N为答案候选集合的数量,
T
T
T为温度超参数,从
T
=
1
T=1
T=1增加意味着提升数据外分布的校准置信度。这里给出为什么要采用温度尺度的原因:能够检测到OOD的样本,采用BCE训练,原因是有多种正确的答案。
但是MSP仍然不行,原因:
- MSP对于检测指标来说还不具有极高说服力,无论输入是否来源于反常分布。因为图像和问题的分布不同,MSP都不能直接衡量 p ( v i n , q i n ) p(v_{in},q_{in}) p(vin,qin),而是衡量答案的概率分布 p ( a i n ∣ v i n , q i n ) p(a_{in}\mid v_{in},q_{in}) p(ain∣vin,qin),即 p ( a o u t ∣ v i n , q i n ) p(a_{out}\mid v_{in},q_{in}) p(aout∣vin,qin)。但是有个问题,MSP总是对反常的 p ( v , q ) p(v,q) p(v,q),包括 p ( v o u t ) p(v_{out}) p(vout), p ( q o u t ) p(q_{out}) p(qout),即任务1-4检测失败;
- 在多模态特征融合后,反常的模态源消失了,因为融合后的特征很难用于区分反常的输入。
4.3.2 Attention-based Anomaly Detection
本文提出一种基于注意力的反常检测来探测不同的反常场景,用公式可表示为:
A
(
v
,
q
;
T
)
=
max
i
,
j
A
i
j
(
v
,
q
;
T
)
=
max
i
,
j
exp
(
a
(
v
i
,
q
j
)
/
T
)
∑
k
=
1
K
∑
m
=
1
M
exp
(
a
(
v
k
,
q
m
)
/
T
)
\begin{aligned} A(\mathbf{v}, \mathbf{q} ; T) &=\max _{i, j} A_{i j}(\mathbf{v}, \mathbf{q} ; T) \\ &=\max _{i, j} \frac{\exp \left(a\left(\mathbf{v}_{i}, \mathbf{q}_{j}\right) / T\right)}{\sum_{k=1}^{K} \sum_{m=1}^{M} \exp \left(a\left(\mathbf{v}_{k}, \mathbf{q}_{m}\right) / T\right)} \end{aligned}
A(v,q;T)=i,jmaxAij(v,q;T)=i,jmax∑k=1K∑m=1Mexp(a(vk,qm)/T)exp(a(vi,qj)/T) 其中
a
a
a为VQA模型中的跨模态注意力层,
A
i
j
A_{ij}
Aij为第
i
i
i个视觉区域和地
j
j
j个词的注意力得分,
K
,
M
K,M
K,M分别是视觉区域的个数、问题词的个数。温度参数
T
T
T仅仅在推理时使用,因为增大
T
T
T会影响预测结果。
假设MAP并不能直接估计出
p
(
v
,
q
)
p(v,q)
p(v,q),但是可以从
p
(
v
o
u
t
,
q
o
u
t
)
,
p
o
u
t
(
q
i
n
∣
v
i
n
)
p(v_{out},q_{out}),p_{out}(q_{in}\mid v_{in})
p(vout,qout),pout(qin∣vin)中探测出反常输入。因为反常则MAP低,正常则MAP高。MAP模型无关所以能够应用到不同的注意力机制上面。如果注意力层并不会使用所有的问题词,而是使用问题词的上下文向量,那么就令
M
=
1
M=1
M=1。当采用多头注意力时,对每个头的最大注意力得分取平均。
4.3.3 Regularization of Attention Networks for Anomaly Detection
当直接应用离群值曝光(OE),VQA模型中的反常检测并不会提升太多。本文引入了一种正则化注意力网络来增强VQA模型的反常检测能力:
E
(
v
,
q
)
∼
P
in
[
log
p
θ
(
a
∣
v
,
q
)
]
+
λ
E
(
v
′
,
q
′
)
∼
P
anomaly
[
∑
i
=
1
K
∑
j
=
1
M
log
(
1
−
A
i
j
(
v
′
,
q
′
)
)
]
\begin{array}{c} \mathbb{E}_{(\mathbf{v}, \mathbf{q}) \sim P_{\text {in }}}\left[\log p_{\theta}(\mathbf{a} \mid \mathbf{v}, \mathbf{q})\right] \\ +\lambda \mathbb{E}_{\left(\mathbf{v}^{\prime}, \mathbf{q}^{\prime}\right) \sim P_{\text {anomaly }}}\left[\sum_{i=1}^{K} \sum_{j=1}^{M} \log \left(1-A_{i j}\left(\mathbf{v}^{\prime}, \mathbf{q}^{\prime}\right)\right)\right] \end{array}
E(v,q)∼Pin [logpθ(a∣v,q)]+λE(v′,q′)∼Panomaly [∑i=1K∑j=1Mlog(1−Aij(v′,q′))]其中
(
v
′
,
q
′
)
(v',q')
(v′,q′)是从反常数据集中选择的样本,
P
anomaly
P_{\text{anomaly}}
Panomaly,
λ
{\lambda}
λ为超参数。对于上式来说,在同一个分布内的图像问题对能够获得到最大归一化最优解:
∑
i
=
1
K
∑
j
=
1
M
A
i
j
=
1
\sum_{i=1}^{K} \sum_{j=1}^{M} A_{i j}=1
∑i=1K∑j=1MAij=1,
A
i
j
∈
[
0
,
1
]
A_{ij}\in[0,1]
Aij∈[0,1],最大化注意力分布的交叉熵会使得MAP对于反常场景的得分接近0,所以VQA模型能够很容易从MAP的分数中区分出反常场景。
五、实验
5.1 Experimental Setup
5.1.1 VQA Models
BUTD、MHB+ATT、BAN、MCAN
5.1.2 Datasets
训练集:VQA v2
分布外测试集:MINST、SVHN、FashionMNIST;CIFAR-10,Ting-ImageNet
分布外的问题数据集:20 Newsgroup、Reuter 52、and IMDB movie review
不相关的问题数据集:Visual vs. Non-visual Question (VNQ),Question Relevance Prediction and Explanation(QRPE)
答案集合:在VQA数据集中预定义的超过9次出现的答案。另外VQA数据集中有4303个样本没有定义的答案,这意味着在训练集出现的次数少于9次。
5.1.3 Traing Setup
36个目标采用BUTD类似的特征,2048维度,ResNet-152,问题词14个单词,Glover预训练,批量大小256;
归一化网络所用的数据集:TinyImage,VNQ,QRPE;
采用微调的训练VQA模型,第15个epoch时的权重,
λ
=
0.00001
\lambda=0.00001
λ=0.00001,为了平衡原始损失和归一化损失。采用warm-up策略。
5.1.4 Evaulation
首先将正常和反常样本混合,然后评估模型能否从正常样本中区分出反常样本(数据外分布和无定义的答案检测),采用一种无阈值的指标,即处于感知操作特征曲线(?)下的区域——(AU-ROC)。注意,单就检测器来说,有50%的AUROC。
5.2 Compared Methods for Anomaly Detection
两种基线模型:MSP和MAP(本文提出的),然后用AUROCs来评估三种MSP和MAP的变体(
T
T
T,离群值曝光(OE),正则化注意力网络(RA)),结果RA-MAP > RA-MSP, MAP > OE-MAP
5.3 Evaluation of VQA Accuracy
离群值曝光相比于本文提出的方法降低了更多的精度。OE离群值曝光影响VQA模型的所有训练参数,很容易使得模型不稳定,但是本文提出的归一化/正则化方法只影响了与注意力网络相关的权重。
5.4 Out-of-Distribution Detection (Task 1-3)
MAP,RA-MAP > MSP, OE-MSP
5.5 Attention-based Anomaly Detection
MSP效果不行,统计的 p ( a ∣ v , q ) p(a\mid v,q) p(a∣v,q),而非 p ( v , q ) p(v,q) p(v,q)
5.6 The Effect of Regularization of Attention Networks
同表3。
5.7 Irrelevant Question Detection (Task 4)
5.8 Undefined Answer Detection (Task 5)
5.9 Ablation Study
5.9.1 Selection of Anomaly Datasets for Regularization
5.9.2 Scope of Post-Training for Outlier Exposure
表2。
六、相关工作
本文是第一个在多模态任务VQA上进行的外部数据监测,表明了MSP未能检测室外部数据或者不相关的问题。本文归一化/正则化了注意力网络来提升VQA模型对于多种异常的鲁棒性。
七、Conclusions
本文根据外部数据以及能否回答将反常输入划分为5种情形,在单模态中使用的MSP和OE对于检测异常不起作用。本文提出一种基于注意力的方法和归一化注意力网络来显著提升VQA模型对于反常检测能力。此外,包含多种注意力头的VQA模型的精度在后训练中很容易衰减。
写在后面
老实说,不建议读这篇论文,写的比较乱,主要是MAP和MSP这两种方法绕来绕去,读者对其不熟悉,另外,本文提出的5种场景对应的评估指标似乎也没仔细说明白?咋说呢,这篇文章也是属于鸡肋的文章吧,说具有创新性吧,也有,也算可以,就是读起来不咋地~~
没注意到作者新开源的第二版文章已经进行了大量的补充,应该还可以看懂一些~