AI内参_10_009_如何将深度强化学习应用到视觉问答系统
你好,我是洪亮杰。
今天我和你分享的主题是如何将深度强化学习应用到视觉问答系统。
本周我们一起来剖析ICCV二零一七的论文,周一和周三分别讲了最佳研究论文和最佳学术论文。
今天我们来分享一篇完全不同的文章,题目是使用深度强化学习研究协作性视觉对话机器人讲的是如何通过深度加强学习来解决视觉问答系统。
我先来介绍一下作者群的信息。
第一作者,阿布谢克达斯是一名来自佐治亚理工大学的在读博士生,他于二零一七年和二零一八年在facebook人工智能研究的实习,已经获得了adobe的研究奖学金和snap chat的研究奖学金,可以说是一名非常卓越的博士生。
之前,在智能系统,特别是在利用强化学习研究智能机器人绘画系统的领域,已经发表了多篇论文共同第一。
作者,萨特维克库托尔来自卡内基梅隆大学博士,第四年研究领域为计算机,其视觉、自然语言和机器学习。
二零一六年暑假,他在snap chat的研究团队实习研究对话系统中的个性化问题。
二零一七年暑假,在facebook研究院实习研究视觉对话系统近两年,萨特维克已在多个国际顶级会议,如ICCV.二零一七ICML二零一七IJCAI二零一七CVPR二零一七NIPS二零一七以及EMNLP二零一七发表了多篇高质量研究论文,可以说是一颗冉冉升起的学术新星。
第三,作者,阿塞毛拉是萨特维克在卡内基梅隆大学的导师,何塞是美国工程院院士和IEEE的院士,长期从事信号处理以及大数据数据科学的研究工作。
他当选二零一八年IEEE总裁,负责IEEE下一个阶段的发展。
第四,作者,斯特凡里是来自乔治亚理工大学的研究科学家,之前在弗吉尼亚理工大学任职、长期从事计算机视觉、自然语言处理等多方面的研究斯特凡。
二零一六年,博士毕业于印第安纳大学计算机系。
第五作者,德鲁巴塔目前是facebook研究院的科学家,也是乔治亚理工大学的助理教授。
德鲁二零一零年博士毕业于卡内基梅隆大学,二零一零年到二零一二年,在位于芝加哥的丰田理工大学担任研究助理教授。
二零一三年到二零一六年,在弗吉尼亚大学任教德鲁长期从事人工智能,特别是视觉系统以及人机交互系统的研究工作。
文章的第四作者,斯特凡里斯莱萨长期的研究合作者,他们一起一起发表了包括本文在内的多篇高质量论文。
我们首先来看一下这篇文章的主要贡献。
理解这篇文章主要解决了什么场景下的问题。
这篇论文是建立在这么一个虚拟游戏的基础上。
首先我们有两个机器人,一个叫q机器人,一个叫a机器人。
这个游戏的规则是这样的,一开始a机器人得到一张图片,IQ机器人一开始得到i的一个文字描述c而并不知道图片本身。
然后q机器人开始问a机器人关于图片的各种问题。
A机器人听到问题之后进行作答,帮助q机器人更进一步理解图片。
A机器人最终的目的是能够把这个图片猜到,也就是说能够把图片从一个数据库中提取出来。
当然在实际的操作中,这一步可以是去衡量q机器人对于图像的理解,也就是描述图像的向量和真实图像的描述向量的差距差距越小,说明越成功。
那么你可以看到这其实是一个很难的问题。
Q机器人必须从a机器人提供的图像文字描述中寻找线索,并也能够提出有意义的问题。
而a机器人必须了解q机器人到目前为止究竟理解什么信息,才能帮助q机器人成功。
整个游戏或者叫任务,常常被称作是协作性的视觉对话系统。
这篇文章的主要贡献就是第一个利用深度加强学习,来对这样一个系统进行建模,并且与之前的非加强学习模型相比,提出的解决方案极大的提高了准确度。
下面我们来看论文的核心方法。
那么既然要把整个问题使用深度强化学习来建模,我们肯定就需要定义强化学习的一些构建。
第一,我们来看看模型的动作,两个机器人的动作空间就是自然语言的词汇表。
因为在这个游戏或者说在强化学习的每一轮中,两个机器人都是需要根据现在的状态来进行下一步的动作,也就是问问题的语句,这是一个离散的动作空间。
除此以外,q机器人还需要在每一轮之后对自己理解的图像向量进行更新。
那么这是一个连续的动作空间。
第二,我们来看看模型的状态。
对于q机器人来说,每一轮的状态是一个自然信息的集合,包括最初的a机器人提供的图像的描述,以及到目前为止所有轮问答的每一句话。
而a机器人的状态空间则包括最初的图像本身图像的描述,以及到目前为止所有轮的对话。
第三,我们来看看模型的策略,对a机器人和q机机器人来说,都是要根据现在的状态来评估下面的语句的可能性。
这里评估的机制其实分别用两个神经网络来学习a机器人和q机器人的策略。
同时q机器人还需要有一个神经网络来根据现有的a机器人的问答来更新对图像的一个认识。
第四,我们来看一看模型的环境和回馈。
在这个游戏里,两个机器人都会得到一样的回馈。
而这个回馈的根据是q机器人对图像的认识所表达的向量和图像的真实表达,向量的一些细离,或者更加准确的说是距离的变化量。
以上这就是整个模型的设置。
那么我们来看两个模型策略神经网络的一些细节。
首先对于q机器人来说有这么四个重要的部件。
第一,q机器人把当前轮自己问的问题和a给的回答当做一个组合,用LSTM进行编码,产生一个中间变量f第二,当前步骤的f和以前的所有f都结合起来,再经过一个LSTM,产生一个中先变量s然后第三步,我们根据这个s来产生下一步的语句,以及当前对图像的一个重新的认识。
也就是说,f其实就是一个对历史所有状态的描述,而s则是一个压缩了的当前描述信息。
并且我们使用s来作为下一步的一个跳板,a机器人的策略,神经网络的架构非常类似,这里就不赘述了。
区别在于不需要去产生图像的理解。
整个模型采用了目前深度强化学习流行的rain、 false算法来对模型的参数进行。
估计这篇文章其实有不少技术细节。
我们在今天的分享里,只能从比较高的维度帮助你进行总结。
如果有兴趣,一定要去阅读原文。
最后来看方法的实验效果。
作者们在一个叫v style的数据集上做了实验。
这个数据集有六万八千幅,图像是从我们之前提到过的,coco数据集里抽取出来的,并且提供了超过六十八万。
对于问答,可以说这个数据集还是比较大型的文章比较了利用普通的监督学习以及课程学习的方法,从效果来看,强化学习的效果还是很明显的。
最直接的效果是强化学习,能够产生和真实对话相近的对话效果。
而其他的办法,比如监督学习,则基本上只能产生死循环的对话,效果不理想。
不过,从图像提取的角度来讲,强化学习虽然比监督学习的效果好,但是差距并不是特别明显,基本上可以认为目前的差距依然是在误差范围内的。
今天我为你讲了ICCV二零一七的一篇有意思的文章。
这篇文章介绍了如何利用深度强化学习来搭建一个模型,去理解两个机器人的对话,以及能够理解图像信息。
一起来回顾一下要点。
第一,我们简要介绍了这篇文章的作者群信息。
第二,我们详细介绍了这篇文章要解决的问题以及贡献。
第三,我们重点介绍了文章提出的方法,核心内容,最后给你留一个思考题。
你认为把强化学习用在这样的对话场景中,难点是什么呢?欢迎你给我留言,和我一起讨论。