17-11-22 Deep Reinforcement Learning-based Image Captioning with Embedding Reward论文随笔

来源:互联网 发布:2018年国考报名数据 编辑:程序博客网 时间:2024/05/29 17:09

image captioning 之所以是一个很具有挑战性的课题,一是因为理解文章内容很难,而是因为自然语言的描述具有多样性。最近深度神经网络的进步基本提高了这项任务的表现,大多数方法遵循的是编解码的框架,用一系列循环预测模型生成描述。然而,在这篇论文中,我们介绍的是一种新的“决策框架”。我们利用了一个“策略网络(policy network)”和一个“价值网络(value network)”,来协同生成描述。政策网络通过提供基于当前状态预测下一个单词的自信度作为一个本地的向导。价值网络通过评估当前状态的所有可能的扩展来充当全局性和前瞻性的向导。实质上,它调整了预测正确的单词的目标,以生成接近ground truth的描述。我们用actor-ctitic强化学习模型训练了这两个网络,用了一种由视觉语义嵌入的新的reward,在coco数据集上的实验表明我们提出的框架比现在的方法好。

1.Introduction

image captioning是一项让计算机自动理解图片内容并用自然语言描述的任务,在计算机视觉中引起了越来越多的关注,这项课题很有趣,因为他的目标是使计算机拥有人类天赋之一——理解大量视觉信息并用自然语言描述出来。

目前比较流行的方法采取的是编解码框架来生成图片的描述,他们基本上是适用卷积神经网络来编码视觉信息并使用循环神经网络来解码信息。在训练和推理中,他们试图基于循环隐层状态中最大化下一个单词的可能性.

在本论文中,我们介绍一种新的决策框架。我们不是学习顺序循环模型来贪婪地寻找下一个正确的单词,而是利用“策略网络”和“价值网络”共同确定每个时间步骤的下一个最佳单词。我们的框架可以通过单独使用策略网络包含低概率的好词汇。图一是解释本模型的一个例子。


在当前时间步中,单词“holding”不在策略网络前几名的选择中。但是价值网络向前走了一步,假设“holding”已经生成了,并且评估这样的状态对于生成一个好的描述有没有帮助。两个网络这样互相补充,最终选择了单词“holding”。

为了学习策略和价值网络,我们使用了带嵌入奖励的深度强化学习。我们从用交叉熵损失的标准监督学习预训练一个策略网络,并用均方损失预训练一个价值网络开始,然后,我们通过深度强化学习提高策略网络和价值网络。强化学习在游戏和控制理论中被广泛使用。控制或游戏中的问题具有实质优化的具体目标,而定义合适的优化目标对于图像描述是不重要的。在本文中,我们建议用带视觉语义嵌入奖励的actor-critic模型训练。视觉语义嵌入,提供了图片和语句之间的相似度,可以衡量生成的描述的正确性,在强化学习中作为优化图片描述的全局目标。

3.Deep Reinforcement Learning-based Image Captioning

3.1 Problem formulation

我们把图像描述问题看成是一个做决策的过程。在做决策时,有一个“中间人”和“环境”互动,并作出一系列行为,来优化一个目标。在图像描述中,目标是,给定图片I,要生成一个句子S={w1,w2,...wT},这个句子正确地描述图片内容,wi是S中的一个单词,T是句子长度。我们的模型,包括决策网络pπ和价值网络vθ,可以被看成是“中间人”;环境是已给的图片I和目前为止已经预测的单词{w1,...,wt};行为是预测下一个单词wt+1。

3.1.1 State and action space

一个做决策的过程包含一系列行为。在每一个行为a之后,我们可以观察到一个状态s。在我们的问题中,时间步t的状态st包含图片I和此时预测到的所有单词{w1,...,wt}。行动空间是单词的来源字典Y。i.e.,at属于Y。


3.1.2 policy network

策略网络提供中间人在每个状态采取行动的概率pπ(at|st),其中当前状态st={I,w1,...,wt},行为at=wt+1。在本文中,我们使用了一个CNN和一个RNN来建立决策网络,表示为CNNp和RNNp。这类似于基本的用编解码框架的图像描述模型。如图2,首先我们用CNNp来编码图片I的视觉信息。然后视觉信息被输入RNNp的初始输入节点x0∈Rn。随着RNNP的隐藏状态ht∈Rm随时间步t进化,提供了每一步采取的行为at。时间步t生成的单词wt在下一个时间步会被反馈回RNNp,此时神经网络输入xt+1,使RNNp的状态从ht转换到ht+1。特别的,pπ的主要工作流程由以下等式来控制:


其中Wx,v是视觉信息的线性嵌入模型的权重,是RNNp的输入和输出模型。

3.1.3 Value network

在介绍价值网络vθ之前,我们首先定义决策p的价值方程vp。vp被定义为假设决策过程遵循策略P,从观察到的状态St对总奖励r(将在3.2节中定义)的预测。


我们用价值网络来近似价值方程。它作为状态st={I,w1,...,wt}的评估。如图3,我们的价值网络由一个CNN,一个RNN,和一个多层感知机组成,分别表示为CNNv,RNNv,和MLPv。我们的价值网络将原始图片和语句作为输入。CNNv被用来编码图片I的视觉信息。RNNvv被设计为编码部分生成的句子{w1,...,wt}的语义信息。所有组成部分被同时训练以回归st的标量奖励。

阅读全文
0 0