Introspective Distillation for Robust Question Answering
一句话总结
作者希望模型可以同时在ID和OOD场景下获得良好的表现,通过对专门捕捉ID和OOD偏置的两位老师模型进行知识融合(内省)并蒸馏出一个学生模型来完成这种平衡。
导论
Motivation:
作者先是点出QA领域普遍存在利用spurious correlation的现象(即Bias现象),比如VQA利用问题与答案之间的linguistic correlation,extractive QA利用spurious positional cues定位答案。
这些现象会导致那些在ID(in-distribution)场景下表现良好的模型,不可避免地在OOD(out-of-distribution)场景下表现得很差。——受限于数据集,难以泛化到更复杂场景,甚至真实世界。
接着作者提到,目前有很多工作致力于缩小ID和OOD场景下表现的差距。如上图所示,以VQA的偏置抑制工作为例,VQA-CP v2数据集中训练集和测试集的分布很不一致甚至完全相反,所以很多工作很可能在不觉间利用了这一点。从结果上来说,这些工作虽然在VQA-CP v2即OOD场景下表现有所提升,但却在VQA v2即ID场景下出现了明显的表现下滑。
所以作者提出了本文核心的Motivation:can we make the best of both worlds?
这里的worlds指的便是ID和OOD。
Contribution:
作者认为,如果模型过度利用了一个世界的偏置,那么在另一个世界的表现将显著下降。因此,“best of both”模型在两个世界的偏置应该是相当(fair)的。
💡 需要注意的是,作者在此处使用的是归纳偏置(inductive bias)一词,并在后文多次使用。但这个归纳偏置似乎与 我所理解的 以及 其他文章所出现的归纳偏置在概念上并不一致,所以这里我更倾向于仅为偏置,即Bias。
基于此,作者提出了一个简单却有效的训练范式——Introspective Distillation(IntroD),来相当(fair)地协调(blend)两个世界的偏置。
IntroD的思想为,假设拥有一个ID-teacher和OOD-teacher,用他们分别捕捉ID和OOD偏置,并代表相应的世界,再蒸馏(distill)出一个内省学生(introspective student)从两位老师那里学习。内省的过程表现为两位老师的知识融合,如下所述。
- 当
I
D
−
b
i
a
s
>
O
O
D
−
b
i
a
s
ID{-}bias > OOD{-}bias
ID−bias>OOD−bias时,
I
D
−
t
e
a
c
h
e
r
<
O
O
D
−
t
e
a
c
h
e
r
ID{-}teacher< OOD{-}teacher
ID−teacher<OOD−teacher
- ID偏置主导学习,学生应该更多听OOD老师的话。这种情况发生在ID-teacher的训练损失低而OOD-teacher的训练损失高的情况下。
- 图( a )所示,ID受偏置影响过于自信,应增大OOD的权重。
- 当
I
D
−
b
i
a
s
<
O
O
D
−
b
i
a
s
ID{-}bias < OOD{-}bias
ID−bias<OOD−bias时,
I
D
−
t
e
a
c
h
e
r
>
O
O
D
−
t
e
a
c
h
e
r
ID{-}teacher > OOD{-}teacher
ID−teacher>OOD−teacher
- OOD偏置主导学习,学生应该更多听ID老师的话。这种情况发生在ID-teacher的训练损失高而OOD-teacher的训练损失低的情况下。
- 图( c )所示,OOD削弱了出现频率最高的白色的概率,但实际上白色也可以是正确答案,应增大ID的权重。
- 当
I
D
−
b
i
a
s
≈
O
O
D
−
b
i
a
s
ID{-}bias \approx OOD{-}bias
ID−bias≈OOD−bias时,
I
D
−
t
e
a
c
h
e
r
≈
O
O
D
−
t
e
a
c
h
e
r
ID{-}teacher \approx OOD{-}teacher
ID−teacher≈OOD−teacher
- 学习是公平的,学生应该平等地听两位老师的话。这种情况发生在两个老师的训练损失接近的情况下。
- 图( b )所示,两个老师有着相似的预测,权重相当。
有一个问题在于,OOD分布在训练时是未知的,要如何训练OOD-teacher呢?作者引用了他去年的一篇工作CF-VQA,使用因果模型近似OOD-teacher,通过反事实推理想象OOD分布。
作者在VQA v2、VQA-CP v2、SQuAD上验证了方法的有效性,同时通过消融实验表明IntroD的成功确实来自于因果内省,而不是单纯的集成Ensemble。
内省蒸馏
本文提出了一个简单却有效的训练范式,Introspective Distillation(IntroD),在分布内(ID)和分布外(OOD)效果之间实现良好的平衡,以实现鲁棒的QA。
IntroD包含三个主要部分:
- 捕捉偏置的因果老师
- 混合两种偏置的内省
- 蒸馏一个鲁棒学生模型
因果老师
OOD-teacher使用因果模型CF-VQA通过反事实推理进行近似,ID-teacher同样使用CF-VQA通过事实推理进行近似。
事实推理中,因果QA模型预测的答案为 P I D P^{ID} PID,将ID偏差纳入总因果效应(TE)。
反事实推理中,因果QA模型显式地估计直接因果效应(DE)以排除偏差,并生成反事实预测 p O D D p^{ODD} pODD,即对应着反映OOD世界的总间接效应(total indirect effect)或者自然间接效应(natural indirect effect)。
老师模型是在ID数据上用标准交叉熵训练的,不分开训练ID和OOD老师,直接使用同一个CF-VQA模型建模不同部分的因果效应。
内省偏置
如果一个世界的偏置主导了学习,那么我们期望学生模型可以更多从另一个世界学习以抑制偏置。
这里便涉及到了两个问题,如何定义“主导dominate”和“更多more”?换句话说,如何“内省introspect”和“权衡weight”两种偏置?
内省偏置
通过比较两位老师的预测来内省偏置的影响。
s I D = ∑ a ∈ A G T P I D ( a ) s O O D = ∑ a ∈ A G T P O O D ( a ) s^{ID} = \sum_{a\in A^{GT}}{P^{ID}(a)} \ \ s^{OOD} = \sum_{a\in A^{GT}}{P^{OOD}(a)} sID=∑a∈AGTPID(a) sOOD=∑a∈AGTPOOD(a)
这些分数反映了训练样本与偏置的匹配程度,若 s I D > s O O D s^{ID} > s^{OOD} sID>sOOD则表示样本的学习受到ID偏置主导。
由于交叉熵与置信度成反比,所以也可以使用标准交叉熵损失函数来表示匹配分数 s I D 、 s O O D s^{ID}、s^{OOD} sID、sOOD
s I D = 1 X E ( P G T , P I D ) = 1 ∑ a ∈ A − P G T ( a ) log P I D ( a ) s^{ID} = \frac{1}{XE(P^{GT}, P^{ID})} = \frac{1}{\sum_{a\in A}{-P^{GT}(a)}\log{P^{ID}(a)}} sID=XE(PGT,PID)1=∑a∈A−PGT(a)logPID(a)1
s O O D = 1 X E ( P G T , P O O D ) = 1 ∑ a ∈ A − P G T ( a ) log P O O D ( a ) s^{OOD} = \frac{1}{XE(P^{GT}, P^{OOD})} = \frac{1}{\sum_{a\in A}{-P^{GT}(a)}\log{P^{OOD}(a)}} sOOD=XE(PGT,POOD)1=∑a∈A−PGT(a)logPOOD(a)1
其中 P G T P^{GT} PGT表示ground-truth标签。
经验表明,比起置信度,交叉熵损失的实现方式有着更加稳定的提升。
权衡偏置
通过对ID和OOD知识的加权和混合它们的知识。
当 s I D > s O O D s^{ID} > s^{OOD} sID>sOOD,ID老师由于对训练分布过度利用,导致对自己的预测过度自信。此时模型应更多地向OOD老师学习,应提高OOD知识的权重,降低ID知识的权重,使得 w I D < w O O D w^{ID} < w^{OOD} wID<wOOD。
设置权重与匹配分数成反比, w ∝ s − 1 w ∝ s^{-1} w∝s−1,对权重进行归一化到0与1之间。
w I D = ( s I D ) − 1 ( s I D ) − 1 + ( s O O D ) − 1 = s O O D s I D + s O O D w^{ID} = \frac{(s^{ID})^{-1}}{(s^{ID})^{-1}+(s^{OOD})^{-1}} = \frac{s^{OOD}}{s^{ID} + s^{OOD}} wID=(sID)−1+(sOOD)−1(sID)−1=sID+sOODsOOD
w O O D = 1 − w I D = s I D s I D + s O O D w^{OOD} = 1-w^{ID} = \frac{s^{ID}}{s^{ID} + s^{OOD}} wOOD=1−wID=sID+sOODsID
上面是一种较为soft的权重定义,同时还定义一种hard的权重:
w I D = 1 , i f s I D ≤ s O O D ; 0 , o t h e r w i s e . w^{ID} = 1, if\ s^{ID}\leq s^{OOD};\ 0, otherwise. wID=1,if sID≤sOOD; 0,otherwise.
经验上当OOD老师较强时,选择soft定义;当OOD老师较弱时,选择hard定义。
通过下式混合两种知识:
P T = w I D ∗ P G T + w O O D ∗ P O O D P^{T} = w^{ID}*P^{GT} + w^{OOD}*P^{OOD} PT=wID∗PGT+wOOD∗POOD
ID知识方面直接使用准确的Ground-Truth标签,OOD知识方面使用OOD预测近似OOD知识。
知识蒸馏
从因果老师得到混合后的知识后,作者采用知识蒸馏的方式训练了一个学生模型。
L = K L ( P T , P S ) = ∑ a ∈ A P T ( a ) log P T ( a ) P S ( a ) L = KL(P^T, P^S) = \sum_{a\in A}{P^T(a)\log{\frac{P^T(a)}{P^S(a)}}} L=KL(PT,PS)=∑a∈APT(a)logPS(a)PT(a)
学生模型与老师模型的区别在于:
学生模型只是简单的Baseline,比如UpDn。
老师模型会集成一个单独的分支来建模shortcut偏置,即Q→A。
因此,学生模型在参数、推理速度上都要更有效率。蒸馏期间,只更新学生模型。
实验
作者分别在VQA的VQA v2、VQA-CP v2数据集以及extractive QA的SQuAD数据集上进行实验,以验证IntroD的有效性。
在VQA v2的验证集上报告ID场景下的结果,在VQA-CP v2的测试集上报告OOD场景下的结果。另一方面,作者像 On the Value of Out-of-Distribution Testing: An Example of Goodhart’s Law 中所说,从VQA-CP训练集中选出8000个样本作为验证集评估ID下表现。
由于存在ID和OOD两个场景下的准确率,所以作者使用了 Harmonic Mean调和平均数 作为最终的评价指标,以权衡两个场景下的综合表现。
实验所用的OOD老师为RUBi、LMH、CSS、CF-VQA,其中RUBi-CF代表用TIE(total indirect effect)代替NIE(natural indirect effect)。网络主干依旧使用UpDn及S-MRL。对于RUBi采用hard权重定义,LMH、CSS、RUBi-CF、CF-VQA采用soft权重定义。
从实验结果中的HM指标可以看出,IntroD提升了模型的权衡(trade-off)能力。其次,通过对OOD验证的分析,可知IntroD展示了较强的偏置抑制能力,LMH以外的所有模型都在OOD场景下获得了一定的提升。最后,通过对ID验证的分析,可知LMH、CSS等原本在ID场景下有明显下降的模型也获得了明显的提升。
在VQA-CP v2的验证集上进行的ID场景实验也有着类似的结果。
这些结果证明了本文所提出的基于不同因果VQA模型的IntroD的有效性。
最后,作者又进行了一系列消融实验,验证IntroD不只是一个单纯的集成方法,其提升确实来自于内省蒸馏的设计。
由于实验些许繁杂,这里不多做介绍,详情可参考原文。
参考
Introspective Distillation for Robust Question Answering 论文笔记_乄洛尘-CSDN博客
更多推荐
『论文笔记』Introspective Distillation for Robust Question Answering
发布评论