Two Causal Principles for Improving Visual Dialog
一句话总结
从因果图角度审视视觉对话任务,切断对话历史与答案的直接因果效应,添加混杂因子[用户偏好]构建描述真实世界的因果图。
导论
Motivation:
受益于最近一段时间VQA领域在Encoder-Decoder框架方面取得的成果,视觉对话任务中模型性能也得到了显著的提升。当前社区一直把VisDial当作VQA的姊妹任务,只是在VQA的基础上添加了对话历史(History)输入。
然而作者认为,VisDial本质上并非带有History的VQA。作者以因果推断的角度入手,引入两条因果原则,将所有的VisDial基线模型提升到了SOTA。
作者提到,近期的VQA、VisDial领域主流模型均采用Encoder-Decoder结构,以一个典型的VisDial模型为例:先是Encoder将<I,Q, H>编码为向量,然后利用Decoder解码得到A。
Contribution:
两条原则分别是:
- 删除链接H—>A
- 添加一个新的节点U(不可观测)和三条新的链接:U<—H, U—>Q, U—>A
两条因果原则
第一条原则P1:
作者实验发现,不应用第一个原则时基线模型的平均答案长度随着对话历史中平均答案长度变大而显著变大,说明模型在学习历史中答案的句式回答问题。
然而作者认为历史History不应该直接对答案Answer有因果效应,作者将其比作双盲审稿策略,”知名学者“到”论文接收“的因果路线上应该有”高质量论文“这一节点,而不是直接相连,History与Answer的因果路线上也应该有Question作为中介物。
所以作者将H与A的链接删除。
第二条原则P2:
考虑到数据生成过程中,能看到History的不只有提问者和回答者,还有答案标注者。
答案标注者在看到History之后的不同偏好,成为了因果图中的混杂因子。
比如,某一位标注者在看到对话历史中多次出现代词"he"的时候,便标注“Yes, he is.”的分数高于“Yes”,更偏向于让答案中也出现"he"。
作者通过一个例子向我们展示,即使Q与A之间没有直接的因果效应,混杂因子U的存在依旧会让Q与A之间存在表面相关性,这条因果路径的存在导致模型预测的答案很可能并非从问题推出。
作者认为引入混杂因子User Preference后才得到了真正的因果图。
通过引入两条原则确立了“符合现实世界”的真正因果图之后,接下来要做的是——去混杂。
以上图为例, d o ( Q = q ) do(Q = q) do(Q=q)可以理解为,切断指向Q的所有输入箭头,并使得Q与U独立。接着使用后门调整得: P ( A ∣ d o ( Q = q ) ) = ∑ u P ( A ∣ Q = q , u ) P ( u ) P(A|do(Q=q))=\sum_uP(A|Q=q,u)P(u) P(A∣do(Q=q))=∑uP(A∣Q=q,u)P(u),由于do算子使得Q与U独立,所以此处与贝叶斯公式不同。
完整因果图与上述同理,得到 P ( A ∣ d o ( Q = q , H = h , I = i ) ) = ∑ u P ( A ∣ Q , H , I , u ) P ( u ∣ H ) P(A|do(Q=q,H=h,I=i))=\sum_uP(A|Q,H,I,u)P(u|H) P(A∣do(Q=q,H=h,I=i))=∑uP(A∣Q,H,I,u)P(u∣H)便为视觉对话的客观答案模型。
由于U不可观测,无法对其采样,所以作者介绍了3种近似实现方法:
Question Type; Answer Score Sampling; Hidden Dictionary Learning;
实现方法参照原论文。
实验
以VisDial v1.0为数据集,NDCG为评价标准,LF、HCIAE、CoAtt、RvA为基线模型,分别进行了定量及定性实验。
定量实验:
对比P2不同实现方式的性能,结果表明所有实现方式都可以提升基线模型的性能,且Hidden Dictionary Learning方式实现的性能提升最大。
消融实验证明P1、P2的有效性。
在VisDial v1.0的test-std集上实验,并与近期的Visual Dialog Challenge 2019 Leaderboard进行比较。
定性实验:
作者挑选了几个实例证明模型消除了对话历史偏置(History Bias),且能让所有与Ground Truth答案意思相似的答案获得更高的排名以使得排名更加合理。
个人总结:
作者以因果推断的角度重新审视视觉对话任务,认为对话历史和答案之间不应有因果效应,且存在着答案标注者的用户偏好这一混杂因子,影响模型预测答案,因此作者利用do算子移除了混杂因子U所带来的表面相关性,使用干预 d o ( Q = q , H = h , I = i ) do(Q=q,H=h,I=i) do(Q=q,H=h,I=i)和后门调整得到了最后的整体模型—— P ( A ∣ d o ( Q = q , H = h , I = i ) ) P(A|do(Q=q,H=h,I=i)) P(A∣do(Q=q,H=h,I=i))
接着讨论了P2的三种近似实现方式并在所有的基线模型上进行实验,效果均得到了显著提升。
值得一提的是,作者在文中以因果图的角度阐述了Encoder-Decoder方法的流程,颇有启发性。
参考
原文请点这里