视觉问答

简介

VQA是一个相对比较新的领域,传统计算机视觉的任务,比如给你一张图片可以做Image Classification,Object Detection,Segmentation等等,基本上都是给你一张图片,用算法输出单个或者多个标签。而纯自然语言处理领域的任务,则需要对自然语言进行相关的处理以及理解,常见的任务有机器翻译,语言生成等等。而这里很有意思的一点是,如果给一个三四岁小孩看一张照片,他/她会用一个简单的自然语言的句子去描述这张照片,也就是说我们人类天生会将视觉与语言系统组合起来使用。从研究的角度来讲,计算机视觉试图解决的任务也是越做越复杂, 基于这样的观察, 我们希望做一个系统或者算法,能够给一张图片生成一个或者几个自然语言句子的描述,这个就是所谓的image captioning,video captioning

再往前走一步,一个延伸的研究课题就是人机问答,或者是Visual Question Answering ,给出一张图片,提问跟这个图片相关的问题,我希望有一个算法或者系统能够正确回答这个问题,这就是Visual Question Answering。Vision和Language目前2个比较主流的课题,一个是Captioning,一个就是Visual Question Answering

VQA系统将图像和关于图像的任何形式的开放式的自然语言问题作为输入,并将自然语言答案作为输出。 这一目标驱动的任务适用于视障用户或情报分析员积极获取视觉信息时遇到的情况。 示例问题如下图所示。

开放式问题需要较高的AI能力才能回答,比如细粒度的识别(例如,“披萨上有什么样的奶酪?”),物体检测(例如,“有多少辆自行车?”),活动识别(例如,“这个男人在哭吗?”),知识库推理(例如,“这是一个素食比萨饼吗?”)和常识推理(例如,“这个人有20/20视力吗?”)。

VQA 也适用于自动定量评估,从而可以有效地跟踪此任务的进度。虽然许多问题的答案只是“是”或“否”,但确定正确答案的过程通常远非微不足道。此外,由于关于图像的问题往往倾向于寻求特定信息,因此对于许多问题,简单的一到三字答案就足够了。在这种情况下,我们可以通过正确回答的问题数量轻松评估建议的算法。

而要真正彻底解决VQA,一定要解决QA,在自然语言处理(NLP)里面,所有的研究问题,最终都可以转成QA的问题。如果把QA解决了, 其实也就是解决了自然语言处理,大家知道NLP远远没有解决,还有很多研究的问题。那么Question Answering问题,和其他传统的计算机视觉问题相比是一个非常大的挑战。 要正确回答这个问题,你可能要依赖很多的知识(knowledge), 这个知识不一定在图像里面。

VQA现有两大类主流的问题, 一是基于图片的视觉问答(ImageQuestion Answering),二是基于视频的视觉问答(Video Question Answering)。

[描述来源:让机器“答问如流”:从视觉到语言|VALSE2018之四|机器之心]

[描述来源:Agrawal, A. et al. (2015). VQA: Visual Question Answering. arXiv:1505.00468. ]

发展历史

随着自然语言处理技术的发展,许多研究逐渐转向了复杂、更智能化的问题。2015年,Aishwarya Agrawal和Devi Parikh等人发表文章提出了VQA,给定关于图像的图像和自然语言问题,任务是提供准确的自然语言答案。他们还提供了一个包含〜0.25M图像,~0.76M问题和~10M答案的数据集,以及许多VQA的基线和方法,并与人类表现进行了比较。

由于有些情况下问题的答案本身不在这个图像里,只理解这个图像是不能回答这个问题的,即我们需要External knowledge,需要一些常识。怎样找到相关的External knowledge来正确的回答这个问题,成为了需要解决的研究问题。在CVPR 2016,Qi Wu和Anton van den Hengel等人发表了文章讨论了怎么样把相关的知识找出来,主要使用的External knowledge是维基百科。基本思想是根据得到的图像相关的属性得到标签,然后再用SPARQL(SPARQL是一个数据库搜索的语言),去搜DBpedia,DBpedia是由一些组织联合起来做的基于维基百科的结构化数据库。得到之后,再去找到相关的维基百科里面的英文文章,得到相关的描述。最后要让文本参与计算,这里他们使用了Doc2vec,把它转换成一个向量,然后再输入给LSTM,然后再做神经网络的训练。用这样的方法把相关知识利用起来。这可能是当时第一个把External knowledge利用起来,应用在VQA领域的工作。

2017年,Peng Wang,,Chunhua Shen和Anton van den Hengel等人提出了VQA-machine。其中使用了Co-attention Model在给出一个问题的时候,去挑选那些相关的facts,把那些不相关的、错的或噪声扔掉。同年,他们又提出了一个新的思路,不再做question到answer的mapping,而是为了把knowledge base利用起来,做了从图片加问题,到一个knowledge base query的mapping。

同年,Damien Teney和Anton van den Hengel等人发表文章介绍了他们在2017年VQA挑战赛中获得第一名所使用的模型,该模型性能高,但相对简单。他们认为导致其成功的技巧和窍门有:sigmoid输出,软训练目标,自下而上关注的图像特征,门控tanh激活,使用GloVe和Google Images对输出嵌入进行初始化,大型小批量等。

2018年他们把GAN用到VQA上。让这个算法生成更像人说的自然语言。在他们提出的框架里加了鉴别器,这个鉴别器的任务就是来区分这是人说的话还是机器产生的,然后得到这个分数之后,再来指导这个generator,让它生成更像人说的话。同年,东南大学的研究者提出一种反视觉问答的模型,即给定回答与图像期待机器能提出合理的问题(一般而言,视觉问答都是输入图像和问题,并期望机器能给出合理的回答)。他们将问题生成视为一个多模态动态推断过程,提出可以逐渐通过部分已生成问题和答案调整其注意力焦点的 iVQA 模型。

主要事件

年份事件相关论文/Reference
2015Aishwarya Agrawal和Devi Parikh等人发表文章提出了VQA,给定关于图像的图像和自然语言问题,任务是提供准确的自然语言答案Agrawal, A. et al. (2015). VQA: Visual Question Answering. arXiv:1505.00468.
2016Qi Wu和Anton van den Hengel等人发表了文章讨论了怎么样把相关的知识找出来,主要使用的External knowledge是维基百科Wu, Q.; Wang, P.; Shen, C.; Dick, Q.; van den HengelM Q. (2016). Ask Me Anything: Free-Form Visual Question Answering Based on Knowledge From External Sources. The IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2016, pp. 4622-4630.
2017Peng Wang,,Chunhua Shen和Anton van den Hengel等人提出了VQA-machineWang, P.; Wu, Q.; Shen, C.; van den Hengel, A. (2017). The VQA-Machine: Learning How to Use Existing Vision Algorithms to Answer New Questions. The IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2017, pp. 1173-1182.
2017Damien Teney和Anton van den Hengel等人发表文章介绍了他们在2017年VQA挑战赛中获得第一名所使用的模型,该模型性能高,但相对简单Teney, D.; Anderson, P.; He, X.; van den Hengel, A. (2017). Tips and Tricks for Visual Question Answering: Learnings from the 2017 Challenge. arXiv:1708.02711.
2018Peng Wang,,Chunhua Shen等人把GAN用到VQA上。让这个算法生成更像人说的自然语言Wu, Q.; Wang, P.; Shen, C.; Reid, I.; van den Hengel, A. (2018). Are You Talking to Me? Reasoned Visual Dialog Generation Through Adversarial Learning.  The IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2018, pp. 6106-6115.
2018东南大学的研究者提出一种反视觉问答的模型,即给定回答与图像期待机器能提出合理的问题Liu, F. et al. (2018). iVQA: Inverse Visual Question Answering. arXiv:1710.03370v2.

发展分析

瓶颈

许多用于VQA的模型往往只使用了CNN的特征,CNN的特征大部分情况下是直接用的ImageNet训练好的模型,但由于用户的问题是不确定的,要正确回答他提出的任意的问题,需要解决多个计算机的任务,使用的特征有时过于单一。

另外一个缺点是深度学习的共有问题,即缺乏可解释性,因为神经网络是一个黑箱模型,我们本质上是做了一个highly nonlinear的mapping。

未来发展方向

当前视觉问答的研究主要关注以下三个部分:

1. 延续自然语言处理中,对注意力机制(Attention Mechanism)和记忆网络(Memory Network)的研究,旨在通过改进二者提高模型对文本和图像信息的表达能力,通过更丰富的分布式表示来提升模型的精度。另一方面,也可以视作是对神经计算机(Neural Machine)其中键值模块(Key-value,对应注意力)和缓存模块(Cache,对应记忆网络)的改进。

2. 密集地研究可解释性(Interpretability)和视觉推理(Visual Reasoning)。对同领域多源异构数据,这类研究方向将问答视为一种检索或人机交互方式,希望模型能提供对交互结果(即答案)的解释。

3. 将文本或图像,以及在图像中抽取的一系列信息,如场景图谱(SceneGraph),图片标题(Image Caption)等视为是”知识来源”,在给定一个问题时,如何综合考虑所有的知识,并推断出最后的答案

[描述来源:知识图谱论文大合集,这份干货满满的笔记解读值得收藏|机器之心]


Contributor: Yuanyuan Li

相关人物
戴维·帕里克
戴维·帕里克
佐治亚理工学院交互计算学院助理教授,FAIR研究科学家。研究兴趣:人工智能、视觉与语言、计算机视觉、常识推理和人机协作。
沈春华
沈春华
沈春华博士现任澳大利亚阿德莱德大学(澳大利亚8所研究型大学之一)计算机科学学院终身正教授。曾在南京大学(强化部本科及电子系硕士),澳大利亚国立大学(硕士)学习,并在阿德莱德大学获得计算机视觉方向的博士学位。沈春华教授在阿德莱德大学的团队目前主要从事统计机器学习以及计算机视觉领域的研究工作。
Anton van den Hengel
Anton van den Hengel
简介
相关人物