『论文笔记』Introspective Distillation for Robust Question Answering

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两个场景下的表现
接着作者提到,目前有很多工作致力于缩小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 IDbias>OODbias时, I D − t e a c h e r < O O D − t e a c h e r ID{-}teacher< OOD{-}teacher IDteacher<OODteacher
    • 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 IDbias<OODbias时, I D − t e a c h e r > O O D − t e a c h e r ID{-}teacher > OOD{-}teacher IDteacher>OODteacher
    • 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 IDbiasOODbias时, I D − t e a c h e r ≈ O O D − t e a c h e r ID{-}teacher \approx OOD{-}teacher IDteacherOODteacher
    • 学习是公平的,学生应该平等地听两位老师的话。这种情况发生在两个老师的训练损失接近的情况下。
    • 图( b )所示,两个老师有着相似的预测,权重相当。

有一个问题在于,OOD分布在训练时是未知的,要如何训练OOD-teacher呢?作者引用了他去年的一篇工作CF-VQA,使用因果模型近似OOD-teacher,通过反事实推理想象OOD分布。

作者在VQA v2、VQA-CP v2、SQuAD上验证了方法的有效性,同时通过消融实验表明IntroD的成功确实来自于因果内省,而不是单纯的集成Ensemble。


内省蒸馏


本文提出了一个简单却有效的训练范式,Introspective Distillation(IntroD),在分布内(ID)和分布外(OOD)效果之间实现良好的平衡,以实现鲁棒的QA。

IntroD的三个部分
IntroD包含三个主要部分:

  1. 捕捉偏置的因果老师
  2. 混合两种偏置的内省
  3. 蒸馏一个鲁棒学生模型

因果老师

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=aAGTPID(a)  sOOD=aAGTPOOD(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} sIDsOOD

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=aAPGT(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=aAPGT(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} ws1,对权重进行归一化到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=1wID=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 sIDsOOD; 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=wIDPGT+wOODPOOD

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)=aAPT(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权重定义。

VQA上的实验结果
从实验结果中的HM指标可以看出,IntroD提升了模型的权衡(trade-off)能力。其次,通过对OOD验证的分析,可知IntroD展示了较强的偏置抑制能力,LMH以外的所有模型都在OOD场景下获得了一定的提升。最后,通过对ID验证的分析,可知LMH、CSS等原本在ID场景下有明显下降的模型也获得了明显的提升。


VQA-CP验证集上的实验结果
在VQA-CP v2的验证集上进行的ID场景实验也有着类似的结果。

这些结果证明了本文所提出的基于不同因果VQA模型的IntroD的有效性。

最后,作者又进行了一系列消融实验,验证IntroD不只是一个单纯的集成方法,其提升确实来自于内省蒸馏的设计。

由于实验些许繁杂,这里不多做介绍,详情可参考原文。


参考


Introspective Distillation for Robust Question Answering 论文笔记_乄洛尘-CSDN博客

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值