【论文解读】结合概率图模型和神经网络做图片问答

点击上方,选择星标置顶,每天给你送干货

阅读大概需要7分钟

跟随小博主,每天进步一丢丢

每日英文

I know what I want, and I know how to get it, and doing it now.that's all.

我知道我想要什么,也知道我该怎么去得到,而且正在做。这样就够了。

Recommender:云不见

作者:刘子仪

方向:自然语言处理

编辑:王萌-深度学习自然语言处理公众号

什么是Visual Question Answering

在介绍这篇论文之前先看一下什么是visual question answering(VQA)。VQA,其实就是关于图片的问答,以本文用到的CLEVR数据集为例,如下图所示,根据图片信息提出问题并回答。CLEVR数据集的问题大多是“是否存在…”,”有多少…”,“…什么颜色“之类较简单的问题,答案也较单一。

背景

本文的neural-symbolic指的是神经网络和符号操作的结合。神经网络参数的灵活性可以使其更灵活的探索latent space,但是神经网络模型的缺点是缺乏可解释性和一些系统的概括能力。符号操作(symbol manipulation)欠缺灵活性,却提供了可解释性。因此目前有一些工作聚焦于neural-symbolic,通过结合表征学习和符号推理来提升机器的理解能力。

任务介绍

本文结合Neural和Program,对于VQA的image i 和question x, 生成一个program z, 以program制定推理过程,使用神经网络进行具体运算。如下图所示,蓝色框内是program,也就是对应论文中的symbolic,这个program规定了推理的过程,例如问题是方块的数量是否大于黄色物体的数量,它首先从场景中过滤出yellow和cube两个关键词,再对两者分别进行计数,最后对比两者的count。在构建program的过程中,将会动态产生一组参数θ,每一个参数代表一个模块。

概率图模型

接下来是如何用概率图模型联合建模,它分为两个步骤: Generative Model和Inference Network。

a) Generative model

Generative model构建的是一个given i 关于问题,答案,program的一个模型,它的整个过程是从 z 的先验分布中采样一个Program z,然后由这个 z 生成一个问题 x ,再结合image i,z, 生成问题的答案,从下图概率图中的实线可以看出,z同时生成 x 和参数组 θ ,θ和image i 结合产生答案。注意在训练过程中,问题 x 不参与生成答案。下式是Generative Model的联合概率模型,都被参数化成LSTM网络,其中先验概率p(z)是通过极大似然来预训练,在之后的训练中这个概率分布是固定的。参数组θ会参数化小的CNN,这些CNN选择性地将图像中的注意力图作为输入。

b) Inference Network

Inference Network的过程是通过问题生成Program z,然后结合image i,z,生成问题的答案,图中的虚线表示由问题推出program,接下来的步骤和generative model 一样。

在这个过程中学习的概率模型是 ,同样也是被参数化成LSTM网络。

参数学习

 

本文使用的是stage-wise optimization,一共分为三步,分别是:

  1. Question Coding        优化参数{σ,Φ} 来学习如何根据程序来表示question

  2. Module Training        优化参数????z使用神经网络????z执行程序

  3. Joint Training           前两步的联合训练

之所以要分三步训练,而不是直接进行第三步联合训练的原因有以下两点:

  • 如果不单独训练question coding,学习参数组θ将变得困难,尤其是当program的数量远小于问答对的数量时,因为 p(a|i.z) 在训练时是通过神经网络来实施的。它关于program choices的优化是离散的,在不确定的情况下会对优化产生负面影响。

  • 直接联合训练而不先进行module training也是可行的,但会更棘手,因为从一个没有训练过的神经网络中直接传递梯度给inference network会增加噪声。

实验与结果

实验使用的数据包括CLEVR和SHAPES。实验设置的一个亮点是semi-supervised training,以CLEVR数据集为例,这个数据集的训练集每一个问题都对应了一个program,这些都是已经标注好的,但是在本文中,它在question coding阶段只使用了1000对program和对应的问题,占整个训练集的0.14%。SHAPES数据集设置成几组不同程度的半监督,分别是5%,10%,15%,20%的program占比。实验最后和之前的2017年发布的NMN baseline进行了对比。实验结果如下

值得一提的是在结果分析中,他们提出该模型具有coherence和sensitivity。(这个结果是sampling z~p(z|a,i) 得到的,和上述的训练过程没有关系)如下图所示,在图中coherence部分,给定了图片和答案“yes“,模型可以给出多个不同的program指向这个答案,显示了reasoning的一种系统性。此外,在sensitivity部分,当答案变化时,可以发现reasoning patterns发生了明显的变化来匹配新的答案。

Vedantam R, Desai K, Lee S, et al.Probabilistic neural-symbolic models for interpretable visual question answering[J].arXiv preprint arXiv:1902.07864, 2019.

 

说个正事哈

由于微信平台算法改版,公号内容将不再以时间排序展示,如果大家想第一时间看到我们的推送,强烈建议星标我们和给我们多点点【在看】。星标具体步骤为:

(1)点击页面最上方深度学习自然语言处理”,进入公众号主页。

(2)点击右上角的小点点,在弹出页面点击“设为星标”,就可以啦。

感谢支持,比心

投稿或交流学习,备注:昵称-学校(公司)-方向,进入DL&NLP交流群。

方向有很多:机器学习、深度学习,python,情感分析、意见挖掘、句法分析、机器翻译、人机对话、知识图谱、语音识别等。

记得备注呦

推荐两个专辑给大家:

专辑 | 李宏毅人类语言处理2020笔记

专辑 | NLP论文解读


评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值