摘要
学习适应视觉导航中的一系列不同目标是具有挑战性的。在这项工作中,我们提出了一个多目标视觉导航任务的模型嵌入式AC结构。为了提高多目标学习中的任务协作性,我们在强化学习方案中引入了两种新的设计:逆动力学模型(InvDM)和多目标协同学习(MgCl)。 具体来说,INVDM可以捕获状态和目标之间的导航相关关联,并提供额外的训练信号来缓解稀疏奖励问题。 MGCL的目标是提高采样的效率,并支持智能体从无意中的积极经验中学习。在交互式平台AI2-THOR上的大量结果表明,该方法收敛速度快于SOTA,同时产生更直接的路径来导航到目标。
介绍
视觉导航是一种智能能力,它可以根据图像或视频输入来确定当前位置,然后规划通往某个目标位置的路径[Gupta et al.,2017;Anderson et al.,2018]。 由于摄像机视角的限制,由于环境是部分可观察的,仅用视觉输入很难进行导航。 受最近深度强化学习在跟踪[Zhang et al.,2018]、Atari Games[Mnih et al.,2015]和计算机围棋[Silver et al.,2016]等多个领域的成功启发,早期努力训练一个智能体学习导航到特定目标的技能[Mirowski et al.,2016;Banino et al.,2018]。
与常规导航任务相比,目标相关导航任务更具挑战性,它要求Agent学会适应一系列不同的目标。 也就是说,经过训练后,期望Agent拥有从随机采样的位置和方向导航到一系列不同目标的能力,如图1所示。 因此,有了这种技术,就不需要为不同的目标重新训练模型。 在解决基于深度强化学习的目标依赖导航问题方面,已有一些开创性的工作。 具体来说,Zhu等人使用孪生AC架构,以成形的奖励来支持导航到不同的目标[Zhu et al.,2017]。 米罗夫斯基等人引入了一个辅助任务,并使用了一个课程训练方案来缓解目标依赖导航任务中奖励稀疏的问题[Mirowski et al.,2018]。 虽然这些方法取得了令人印象深刻的性能,但仍然存在一些问题需要解决的目标依赖导航从视觉输入。首先,由于Agent必须学习从一个随机状态导航到几个不同的目标,因此Agent需要学习状态与目标之间的关联,以及状态与动作之间的关联; 其次,智能体与环境交互,并为每个目标生成大量样本。然而,具体的样本只是用来训练其相应的目标,这是一种训练智能体的样本效率低下的方法。
为了解决上述问题,我们提出了一种新的模型,该模型嵌入了一个AC框架,该方案允许agent学习仅基于视觉观察的协同导航到多个目标的技能。首先,如图1所示,我们将一个逆动力学模型(InvDM)引入到AC体系结构中,该模型被训练为一个辅助任务,根据智能体上一个和当前的状态预测下一个动作。该模型的优点有3个:1) 动作可作为区分序列状态差异的合适标准;训练后,逆模型能较好地预测当前状态与目标的差异,例如:状态与目标之间的导航相关关联; 2) 由于预测下一个动作的辅助任务是通过自我监督学习来训练的,它可以作为一种引导来推动agent更有效地探索。因此,在没有外部奖励的情况下,智能体训练可以继续进行。即这种辅助任务可以提供额外的训练信号来缓解稀疏奖励问题,这是强化学习方法共有的一个局限性; 3) 由于目标只改变了马尔可夫决策过程(MDP)的奖励函数,而没有改变马尔可夫决策过程(MDP)的过渡结构,因此在训练agent以适应不同导航目标时,可以通过共享InvDM来协同训练动力学模型。
此外,为了提高样本效率,我们引入了一种名为多目标学习(Multi-goal Colearning, MgCl)的样本增强方法,该方法可以使agent在与环境交互时从无意的积极经验中学习。这个想法可以通过图1来解释,其中一个智能体有多个导航目标要学习。当智能体试图接近目标C时,它可能会无意中通过目标B。因此,生成的导航到目标C的轨迹对于学习实现目标B也是有价值的,即一个目标生成的样本可以用来训练agent完成另一个导航目标。因此,可以显著提高采样效率。实验结果表明,该体系结构能够提高目标相关导航任务的学习速度,且随着目标数量的增加,系统具有鲁棒性。此外,我们允许智能体在多个不同的环境中同时学习多个目标,只有二元奖励。
相关工作
方法
准备工作
目标依赖的强化学习旨在训练一个与环境互动的智能体,以最大化目标的预期未来回报。它是关于马尔可夫决策过程(MDP)中的策略优化问题,其形式为元组,其中表示有限状态集,表示可能目标集,表示动作集,表示状态-奖励函数,是一个折扣因子。奖励函数取决于当前的目标和状态。随机策略将每对状态和目标映射到一个动作,并定义了agent的行为。
在每一个离散时间步长时,智能体观察状态,并根据其策略选择一个动作。 一个时间步后,智能体收到一个数值奖励,并发现自己处于一个新的状态。 这个过程一直持续到智能体实现给定的目标。 回报是从时间步长累计的总回报。 智能体的目标是学习一个最优控制策略π,使其期望收益最大化,直到目标完成。 A3C可以通过n步返回更新策略函数和状态值函数。 策略和价值函数在每次动作后或完成给定目标后都会更新。 时间步长t的总累积回报定义为:
其中k的上限为。
在目标函数中加入策略π[Mnih et al.,2016]的熵H,以缓解对次优确定性策略的过早收敛。 full Object function的梯度可视为:
梯度更新规则为:
模型框架
如图2所示,我们为目标依赖的视觉导航任务设计了一个新的基于A3C的深度模型。该模型将目标作为输入的一部分,使Agent能够联合学习一系列不同的目标。同时,该模型的两条路径可以学习两种不同类型的特征表示:通用特征表示和特殊特征表示。 通用的特征表示(用绿色表示)只依赖于当前的观察,可以用来支持场景理解等认知过程。 特殊特征表示(用红色表示)依赖于当前的观察和目标,这有利于长期规划。
该模型采用两个输入,一个是当前状态的观察值,另一个是目标的观察值,给出了动作空间的概率分布和一个值函数。值函数可以表示任何状态s在实现给定目标g中的效用。我们通过引入辅助目标,通过端到端的深度强化学习来训练所提出的模型。训练的目的是同时利用AC方法最大化累积回报,并将由预测的动作和真实的动作定义的辅助损失最小化。
模型结构的细节描述如下。首先,特征提取器由两个卷积层和一个全连接层组成。 通过对状态图像和目标图像进行处理,分别生成视觉特征和。 第一个卷积层有一个大小为8x8的内核,步幅为4x4和16个特征映射。 第二层有一个大小为4x4的内核,步幅为2x2,和32个特征映射。 全连接层有256个隐藏单元。 整流线性单元(RELU)将各层分开。 其次,将状态的视觉特征与目标的视觉特征进行级联。 全连通隐藏层具有256个具有RELU的隐藏单元,输出隐藏激活。 动作预测模块是一个具有64个隐藏单元的全连接层,并可以用softmax层预测动作。 最后,LSTM有256个隐藏单元,输出LSTM隐藏激活。 隐藏激活连接到LSTM隐藏激活。 用Softmax层预测策略,值函数V是由全连接层产生的。
逆动力模型
对于视觉导航,如果能够捕捉到当前状态和目标之间的关联,则可以很好地解决规划和实时行动选择之间的相互作用。 因此,如图2所示,一个逆动力学模型(INVDM)被合并到AC体系结构中。 INVDM被训练为一个辅助任务,在给定Agent的上一个状态和当前状态的情况下,预测Agent的动作。 动作预测可以作为一个适当的评估来确定哪个是顺序状态之间的关键差异。 因此,训练后的INVDM可以预测当前状态与目标之间的导航相关差异,这对远程规划有一定的参考价值。
在实现过程中,辅助任务以自我监督的方式进行训练,并可能产生额外的连续梯度。因此,这种辅助任务可以提供额外的训练信号,从而缓解强化学习中的稀疏奖励问题。同时,如前文所述,一个目标只改变了奖励函数,而没有改变马尔可夫决策过程的结构。因此,提议的InvDM可以在所有目标之间进行共享和共同训练。通过共享InvDM,导航到一个目标的能力可能有利于学习导航到另一个目标。
INVDM的训练过程如图2的右侧部分所示。它将当前状态的观察和上一时刻状态的观察作为输入,(个人认为INVDM的图画错了,文章也表达错了,应该是对比当前状态和目标图像之间的差异,因此图片的内容是错的)并产生关于动作预测的概率分布。用交叉熵分类损失定义的额外优化目标函数预测动作,如下所示:
其中i为动作索引,和分别为真实动作和预测的动作。
多目标学习模型
对于依赖于目标的导航任务,智能体与环境交互,并为每个目标生成大量的样本。但是,如前文所述,在现有的方法中,生成的样本通常是用来训练一个特定的目标,这显然是一种样本效率低下的agent训练方法。在此,我们提出了一种样本增强策略——多目标协同学习(MgCl),以使agent在与环境交互时从无意但有用的经验中学习。也就是说,生成的导航到一个目标的示例可能有利于学习导航到其他目标。因此,智能体可以协同学习多个目标。假设agent有多个目标,每个目标对应一个状态,并且只提供目标实现奖励。当智能体试图实现时,它可能会偶然拥有的状态。的奖励是,因为状态不是的终端状态。而进入的MDP与进入的MDP相同,即与相同,但奖励函数不同。因此,生成的轨迹的一部分也可以作为生成的轨迹。特别是,由于在状态下,的奖励是,所以对于agent来说,学习实现是非常有用的。也就是说,为生成的样本可以用来训练智能体导航到。
然而,这并不意味着MGCL一定会产生额外的轨迹。 它在智能体进入另一个目标实现的状态时生效。 因此,当Agent变得更熟练时,它将以更直接的路线导航到目标,几乎不会落入其他无意的目标。 即建议中的数据增强方法在训练开始时的贡献较大,但随着训练的进行而逐渐减少。 同时,对于目标依赖的视觉导航,并不是每一个状态都可以看作是目标或终端状态,例如白墙,它是一种常见的内部结构,具有很少的识别特征。 所以,学习导航到它是没有意义的。 MGCL的更多细节可以在算法1中找到。
实验
实验设置
动作空间:前进、左转、右转
观察和目标:观察和目标都是在第一人称视角中拍摄的图像。实际输入到agent的是从原始尺寸300 × 300向下采样的84×84图像。给定一个目标图像,目标是导航到目标图像拍摄的位置和视点
奖励设计:环境只在任务完成时提供目标实现奖励(1.0)