【论文阅读】Interpretable Visual Reasoning via Probabilistic Formulation under Natural Supervision

目录

  • 【论文阅读】Interpretable Visual Reasoning via Probabilistic Formulation under Natural Supervision
  • 简介
  • 文章内容
    • abstract
    • introduction(简化版)
    • method
      • 模型的定义
      • 具体学习过程
      • 直观的解释
      • 参数和实现
    • 实验

简介

主要解决的问题:在视觉推理中不清晰的文本推理的处理过程
解决的方法:使用图片内容生成问题
背后的数学原理:贝叶斯模型
原文:https://www.ecva.net/papers/eccv_2020/papers_ECCV/papers/123540528.pdf
代码:https://github.com/GeraldHan/TRN

文章内容

abstract

对于视觉问答任务来说,视觉推理是非常重要的。然而,如果没有标注好的程序指令,在自然监督下隐式的推理还是非常具有挑战性的,并且之前的模型对于这一部分也难以解释。在这篇文章中,我们重新思考了视觉问答中的隐式推理,提出了一个新的模式可以最大似然估计出观察到的问题和预测的答案之间的联合分布。根据这个思路,我们设计了TRN网络把隐式的推理过程建模成潜在空间的序列预测。我们的模型在概率模型上的设计和在推理过程的可视化上面都是可解释的。我们用实验证明了TRN模型可以在各个数据集上都可以做到改进隐式推理过程。实验结果表明,我们的模型在已有的隐式推理模型上的结果是很有竞争性的,并且在复杂的推理任务上大幅度地超越了baseline而没有增加额外的算力。

introduction(简化版)

在视觉问答的任务中,视觉推理可以增强可解释性。
目前对于可解释的视觉推理有两类。第一种是在合成数据集例如CLEVR上完成的,使用了标注好的程序指令,引入了很多的额外知识。第二种是堆叠的注意力模型或者是在图上的推理。现有的方法都只是去最大化预测答案的可能性,而并没有去理解推理的过程。
众所周知,贝叶斯模型非常适用于可解释的机器学习,因为贝叶斯模型可以清楚地表示目标和特征之间的关系。我们为视觉问答任务从概率的角度再制定了一个新的贝叶斯可解释模型。
特别的是,我们重新调查了合成数据集中问题生成的过程,这表明了这些问题清晰地表达了推理的过程,反之亦然。而考虑到在自然界中,这种推理过程是不存在的,所以我们假设有一系列潜在的状态隐藏在问题的背后,这些状态可以分步指导图片每次关注的区域。这些潜在的状态就像生成的程序指令。

但是我们并不像之前的工作一样只是简单地最大化答案的可能性,我们重新制定了另一种概率解释公式,它最大化了观察到的问题和预测答案的联合分布的对数似然函数。这样答案的分布和指导推理过程的潜在状态可以同时优化。
在可解释的推理过程中有三个基础的模块:状态转变,状态推理和生成性的重建。对于普通的模型,TRN网络的加入可以看作一个正则化项(通过正则化项,可以保持参数值较小,使得拟合出来的曲线更加平滑,增强泛化性能),在测试的过程中可以被移除。这个过程是可以用数学证明的,并且可视化的结果也表明了我们的模型的有效性。主要的贡献有如下三条:
1 我们在自然监督下为真实世界的 VQA 任务中的视觉推理制定了一种新的概率解释。
2 遵循新的概率框架,我们提出了一个序列潜在状态模型 TRN,它在模型设计和答案预测上都可以解释。
3 TRN 可以很好地与现有模型协作。 它可以帮助像 UpDn 这样的浅层模型在 VQA v2、CLEVR 和 CLEVR-Human 数据集上获得与最先进的隐式推理方法相当的结果,并增强对现有黑盒推理模型(如 BAN)的解释。
代码可在 https://github.com/GeraldHan/TRN 获得。

method

模型的定义

对于VQA任务来说,通用的模型结构如下:


v是图片的特征,x是由长度为L的单词组成的问题,a为预测出的答案,Pr表示训练好的分类模型。但是这种方法没有明确地模拟推理过程。我们假设有一系列的状态变量 z={zt}t=1Tz=\{ {z_t}\}_{t=1}^Tz={zt​}t=1T​ 表示了问题背后的推理程序。时间依赖的zt{z_t}zt​是由当前的问题和图片特征决定的。图二(a)给了推理过程的图标是一个很细节的解释。根据图模型,我们把图片特征vvv作为全局条件,问题单词xxx作为序列的信息并假设完全贝叶斯状态空间模型的一般形式。这个模型的概率公式是求联合概率分布为p(a,x,z∣v)p(a,x,z|v)p(a,x,z∣v),我们的目标是通过后验概率p(z∣x,v)p(z|x,v)p(z∣x,v)找到模型中的evidence的近似值 p(a,x∣v)p(a,x|v)p(a,x∣v)。对数边缘evidence概率可以分解为(最简单的贝叶斯公式推一下就ok):

所以模型可以被分成两个单独的部分。后面一部分和传统的视觉问答模型一样。前一部分对通过观察问题 xxx的最大数据似然优化的时间推理过程进行建模,其中潜在状态zzz可以通过变分推理优化为潜在变量。使用这种全概率公式对推理过程进行显式建模并将其注入现有方法是这项工作的主要贡献。

具体学习过程

补充知识:变分推断
变分推断的目标函数:p(z→∣x→)=p(z→,x→)p(x→)p(\overrightarrow{z}|\overrightarrow{x})=\frac{p(\overrightarrow{z},\overrightarrow{x})}{p(\overrightarrow{x})}p(z∣x)=p(x)p(z,x)​
其中p(x→)=∫p(z→,x→)d(z→)p(\overrightarrow{x})=\int p(\overrightarrow{z},\overrightarrow{x})d(\overrightarrow{z})p(x)=∫p(z,x)d(z)为evidence
在变分推断中,我们求和p(z→∣x→)p(\overrightarrow{z}|\overrightarrow{x})p(z∣x)KL距离最小的优化问题,通过找到q(z)q(z)q(z)来计算后验分布

KL散度的公式为:DKL(p∣∣q)=H(p,q)−H(p)D_{KL}(p||q)=H(p,q)-H(p)DKL​(p∣∣q)=H(p,q)−H(p)
所以KL(q(z→)∣∣p(z→∣x→))=E(log⁡q(z→))−E(log⁡p(z→∣x→))=E(log⁡q(z→))−E(log⁡p(z→,x→))+log⁡p(x→)KL(q(\overrightarrow{z})||p(\overrightarrow{z}|\overrightarrow{x}))=E(\log q(\overrightarrow{z}))- E(\log p(\overrightarrow{z}|\overrightarrow{x}))\\ =E(\log q(\overrightarrow{z}))- E(\log p(\overrightarrow{z},\overrightarrow{x}))+\log p(\overrightarrow{x})KL(q(z)∣∣p(z∣x))=E(logq(z))−E(logp(z∣x))=E(logq(z))−E(logp(z,x))+logp(x)
其中期望都是在q(z→)q(\overrightarrow{z})q(z)上的分布
但是边缘分布log⁡p(x→)\log p(\overrightarrow{x})logp(x)不好求,所以去掉这一项,优化另外两项:
ELBO(q)=E(log⁡p(z→,x→))−E(log⁡q(z→))=E(log⁡p(z→))+E(log⁡p(x→∣z→))−E(log⁡q(z→))=E(log⁡p(x→∣z→))−KL(q(z→)∣∣p(z→))ELBO(q) = E(\log p(\overrightarrow{z},\overrightarrow{x}))-E(\log q(\overrightarrow{z}))\\ =E(\log p(\overrightarrow{z}))+ E(\log p(\overrightarrow{x}|\overrightarrow{z}))-E(\log q(\overrightarrow{z}))\\ =E(\log p(\overrightarrow{x}|\overrightarrow{z}))-KL(q(\overrightarrow{z})||p(\overrightarrow{z}))ELBO(q)=E(logp(z,x))−E(logq(z))=E(logp(z))+E(logp(x∣z))−E(logq(z))=E(logp(x∣z))−KL(q(z)∣∣p(z))
变成一个期望+变分分布和先验分布的KL距离。

时序推理
时序推理是对问题的最大似然估计log⁡p(x∣v)\log p(x|v)logp(x∣v)的优化。根据贝叶斯原理,它可以自动地回归分解为log⁡p(x∣v)=∑tlog⁡p(xt∣x1:t−1,v)\log p(x|v)=\sum_t\log p({x_t}|x_{1:t-1},v)logp(x∣v)=∑t​logp(xt​∣x1:t−1​,v)。对于给定的时间ttt,我们把对数边缘概率函数分解到变分先验函数q(zt,zt−1∣xt,v,x1:t−1)q({z_t},z_{t-1}|{x_t},v,x_{1:t-1})q(zt​,zt−1​∣xt​,v,x1:t−1​):

其中q(zt,zt−1)q(z_t,z_{t-1})q(zt​,zt−1​)是q(zt,zt−1∣v,x1:t)q(z_t,z_{t-1}|v,x_{1:t})q(zt​,zt−1​∣v,x1:t​)的简短形式,是潜在状态ztz_tzt​的后验分布。p(zt,zt−1)p(z_t,z_{t-1})p(zt​,zt−1​)是p(zt,zt−1∣v,x1:t)p(z_t,z_{t-1}|v,x_{1:t})p(zt​,zt−1​∣v,x1:t​)的缩略形式,是相应的生成先验分布。LtL_tLt​是evidence lower bound(ELBO):

考虑到图二(a)在图模型背后的马尔可夫假设,我们可以简化p(xt∣zt,zt−1,x1:t−1,v)=p(xt∣zt,v)p(x_t|z_t,z_{t-1},x_{1:t-1},v)=p(x_t|z_t,v)p(xt​∣zt​,zt−1​,x1:t−1​,v)=p(xt​∣zt​,v)。此外,遵循贝叶斯准则,我们可以分解如下:

第一个公式是先生成隐藏状态zt−1z_{t-1}zt−1​,再通过zt−1z_{t-1}zt−1​和vvv推出t时刻的隐藏状态。第二个公式是先生成了ztz_tzt​,再根据生成的ztz_tzt​生成zt−1z_{t-1}zt−1​。p(x1:t)p(x_{1:t})p(x1:t​)可以使用RNN网络来提取特征:

hth_tht​是所有可以观察到的历史变量的特征。所以LtL_tLt​可以简化为:
其中q(zt)q(z_t)q(zt​)和q(zt−1)q(z_{t-1})q(zt−1​)分别是q(zt∣ht,v)q(z_t|h_t,v)q(zt​∣ht​,v)和q(zt−1∣zt,ht,v)q(z_{t-1}|z_t,h_t,v)q(zt−1​∣zt​,ht​,v)

答案分类
这部分和已有的方法差不多。在TRN后面,最后的状态bTb_TbT​输入到MLP层,所以,答案的可能性可以通过确定性分类器来近似:

训练目标是最大化联合数据似然的下界:

模型设计是可以用数学公式来解释的。

直观的解释

生成重建 log⁡p(xt∣zt,v)\log p(x_t|z_t,v)logp(xt​∣zt​,v) 暗示已经观察到的单词xtx_txt​可以从相应的潜在状态ztz_tzt​和全局条件 vvv 中重建。我们通过输入xtx_txt​和重建的 xt~\tilde{x_t}xt​~​之间的二元交叉熵 (BCE) 对其进行测量。这一项通过输入问题执行外部监督。
状态转变log⁡p(zt∣zt−1,v)\log p(z_t|z_{t-1},v)logp(zt​∣zt−1​,v)表示了ztz_tzt​在前一个状态zt−1z_{t-1}zt−1​下的先验分布。在马尔可夫假设下,它可以看作是潜在空间中的前向转移。 它可以保证推理过程的时间依赖性。
状态推理log⁡q(zt∣ht,v)\log q(z_t|h_t,v)logq(zt​∣ht​,v)表示潜在状态分布的后验q(zt)q(z_t)q(zt​)是建立在历史观察状态hth_tht​和图片特征vvv。因此p(zt−1∣ht−1,v)p(z_{t-1}|h_{t-1},v)p(zt−1​∣ht−1​,v)与前一个时间的后验概率q(zt−1∣ht−1,v)q(z_{t-1}|h_{t-1},v)q(zt−1​∣ht−1​,v)有一致性依赖,所以如果没有信息的损失,p(zt−1∣ht−1,v)=qϕ(zt−1∣ht−1,v)p(z_{t-1}|h_{t-1},v)=q_\phi(z_{t-1}|h_{t-1},v)p(zt−1​∣ht−1​,v)=qϕ​(zt−1​∣ht−1​,v)
反向传递log⁡q(zt−1∣zt,ht,v)\log q(z_{t-1}|z_t,h_t,v)logq(zt−1​∣zt​,ht​,v)表示前一个状态可以从现有的状态和观察中重新推断出来。这一项和状态推理相似,但是对于模型来说更加困难,所以我们在简化模型的时候忽略了这一项。
与最近提出的 VQA 方法相比,这种概率公式可以帮助解释隐式推理的最新发展。 注意力机制可以看作是潜在空间中的一种状态推断。 从单阶段注意力/融合模型 到堆叠注意力方法,由于引入了多步状态推理,性能得到了很大的提高。 最近提出的基于关系的方法进一步加强了堆叠模块之间的依赖关系,可以与我们公式中的状态转换功能协作。 此外,更强的融合策略可以帮助建立更多信息的潜在空间。 从这个角度来看,隐式推理确实由问题和答案依次监督,但之前没有明确建模。

参数和实现

按照概率公式的说明,我们将时间推理过程实现为基于 VAE 的潜在序列模型,称为时间推理网络(TRN)。 需要强调的是,TRN不是固定网络。 我们将其作为基于图模型的现有基线模型的补充模块来实现。
潜在状态分布
为了揭示在问题背后的推流过程并且和在attention基础上的baseline公正的相比,我们假设了潜在状态遵循 Concrete distribution:

其中πt∈Rk\pi_t\in\mathbb{R}^kπt​∈Rk表示了在t时刻的decision evidence,π\piπ是超参数。在实践中,我们使用Exponential Concrete分布来计算更加稳定的对数概率。我们使用 Gumbel Softmax 技巧 从 q(zt)q(z_t)q(zt​) 中采样 z→\overrightarrow{z}z进行梯度反向传播。
特征参数化
为了更好地实现推理过程,我们将图像表示重新表示为图,有边的特征和结点的特征。 此外,将每个疑问词都视为一种状态是耗时且难以对应到图片的特征中。所以使用spaCy将句子中的实体提取出来,把问题中的短语提取出来可以获得更多的语义信息节约计算资源,然后使用Bi-GRU:

实施细节
我们将 TRN加入到UpDn模型和BAN模型中。 单个TR单元分为两个单元,即entity单元和trans单元。 如图 2(b) 所示,Entity 单元对状态推理log⁡q(zt∣ht,v)\log q(z_t|h_t,v)logq(zt​∣ht​,v)和生成重建项log⁡p(xt∣zt,v)\log p(x_t|z_t,v)logp(xt​∣zt​,v)进行建模。 Trans 单元推断下一个时间块的状态转移项 log⁡p(zt∣zt−1,v)\log p(z_t|z_{t-1},v)logp(zt​∣zt−1​,v),这被建模为图上的一步马尔可夫转移。
可以看出,每个推理块之间的唯一联系就是p(zt∣zt−1,v)p(z_t|z_{t-1},v)p(zt​∣zt−1​,v)和log⁡q(zt∣ht,v)\log q(z_t|h_t,v)logq(zt​∣ht​,v)的 K-L距离。 为了与baseline进行公平比较,TRN 中不再使用额外的融合策略。 因此,整个TRN在训练阶段可以看作是一个正则化项,在测试阶段可以去除,与原始方法相比不会带来额外的计算成本。

实验

实验数据集
VQA 2.0
CLEVR
CLEVR Human
在VQA 2.0上的结果


在CLEVR和CLEVR Human上

【论文阅读】Interpretable Visual Reasoning via Probabilistic Formulation under Natural Supervision相关推荐

  1. 论文阅读:Visual Semantic Localization based on HD Map for AutonomousVehicles in Urban Scenarios

    题目:Visual Semantic Localization based on HD Map for Autonomous Vehicles in Urban Scenarios 中文:基于高清地图 ...

  2. 论文阅读:Visual Relationship Detection with Language Priors

    Visual Relationship Detection with Language Priors(ECCV2016) 文章   尽管大多数的relationship并不常见,但是它们的object ...

  3. 论文阅读《Visual Measurement Integrity Monitoring for UAV Localization》

    目录 1 摘要 2 介绍 3 相关的工作 3.1 接收机自主完好性监测 3.2 基于视觉的定位 3.3 视觉测量的外点剔除 4 完好性监测框架 4.1 问题表述 4.2 故障检测与排除 4.3 计算保 ...

  4. 【论文阅读笔记】A Multi-Task Learning Formulation for Predicting Disease Progression

    Jiayu Zhou, Lei Yuan, Jun Liu, Jieping Ye   KDD2011 本文提出一种预测Alzheimer'sDisease (AD)老年痴呆症的cognitive s ...

  5. 【论文阅读笔记】BART: Denoising Sequence-to-Sequence Pre-training for Natural Language Generation, Translati

    BART:去噪序列到序列的预训练自然语言生成.翻译和理解 动力 自监督方法在广泛的NLP任务中取得了显著的成功.最成功的方法是masked language model的变体去噪的自编码器.训练去噪的 ...

  6. 【论文阅读】Object affordance based multimodal fusion for natural Human-Robot interaction (视音信息融合)

    论文来源 摘要 利用语义识别控制.视觉上基于CNN二者的模态融合控制实现人机交互,研究可识别物体的功能可供性(affordance),并进行了分类抓取的实验. 1.介绍 语音控制自然直接,是人机交互重 ...

  7. 论文阅读——《Online Photometric Calibration of Auto Exposure Video for Realtime Visual Odometry and SLAM》

    论文阅读--<Online Photometric Calibration of Auto Exposure Video for Realtime Visual Odometry and SLA ...

  8. 论文阅读—Relation-Aware Graph Attention Network for Visual Question Answering

    论文阅读-Relation-Aware Graph Attention Network for Visual Question Answering 一.标题 用于视觉问答的关系感知图注意力网络 二.引 ...

  9. 【论文阅读】RoadMap: A Light-Weight Semantic Map for Visual Localization towards Autonomous Driving

    文章:RoadMap: A Light-Weight Semantic Map for Visual Localization towards Autonomous Driving 作者:Tong Q ...

最新文章

  1. 2021年大数据Hadoop(二十六):YARN三大组件介绍
  2. .net中连接SYBASE的种种问题
  3. 《白话法律42讲》读后感
  4. PyTorch基础入门五:PyTorch搭建多层全连接神经网络实现MNIST手写数字识别分类
  5. 想快速入门NLP?我们测评了15门最火课程,帮你找到最适合的
  6. 张岩 重庆大学 计算机学院,扬帆起,乘东风,气芳华——记重庆大学计算机学院新老生交流会...
  7. C 中命名空间的五大常见用法
  8. svn服务器搭建之备份3
  9. 卸载java_Java面试必备——类的加载过程
  10. 重庆科技学院计算机专业好吗,重庆科技学院什么专业好
  11. 个人收集的资源(0th) IDM绿化版(免费免积分)
  12. 【CSDN软考VIP资料群】让软考通过更容易,软考资料大全支持你软考!
  13. 七种常用数据分析方法
  14. IDEA查看历史记录
  15. SCAU 菱形打印全集
  16. python切换环境_python如何变换环境
  17. 计数排序CountingSort
  18. 离散数学 | 数理逻辑
  19. 2018年4月5日腾讯考试感想
  20. 联想Y471A加装固态硬盘及解决启动黑屏问题

热门文章

  1. 【原】2009.NET年技术大会总结,有图片,说说我理解的技术大会 【下】
  2. c语言程序设计精髓daan,2020MOOCC语言程序设计精髓标准答案
  3. 互联网直播平台架构案例一
  4. XSS Challenges
  5. stream对象集合按照时间进行排序
  6. Pyspark Python worker exited unexpectedly (crashed) java.io.EOFException
  7. 一劳永逸去除Word文档修订和批注帮助(转)
  8. 普希金:假如生活欺骗了你
  9. 工程管理系统源码-专注项目数字化管理
  10. flutter报错: [!] Automatically assigning platform `iOS` with version `8.0` on target `Runner` becaus