【论文翻译】Target Driven Visual Navigation with Hybrid Asynchronous Universal Successor Representations

  •  Abstract

    • 能够在最少的监督和先验知识的情况下导航到目标,这对于创建"类人agent"至关重要。以前基于地图和无地图方法的工作具有有限的泛化能力。在本文中,我们提出了一种新的方法,混合异步通用后继表示(HAUSR),它通过将最近的HAUSR与A3C相结合,克服了对新目标泛化的问题。我们的agent能够成功地达到新的目标,并且我们能够快速调整网络以适应新的场景。这打开了一个新的应用场景,agent可以学习和适应范围广泛的环境,并只需要很少的人工输入。
  •  1 Introduction

    •  视觉导航是机器人和机器视觉领域的核心问题。之前的研究使用了基于地图、构建地图或无地图的方法[Bonin-Font et al., 2008, Oriolo et al., 1995, Borenstein and Koren, 1991]。前两种方法在过去是受欢迎的,然而,它们依赖于对环境精确映射和谨慎的人为引导训练阶段,这限制了它的泛化性能[Filliat和Meyer, 2003]。
    • 随着深度强化学习的最新进展[Mnih et al., 2015, Silver et al., 2016, 2017],无地图导航[Zhu et al., 2017, Zhang et al., 2017]取得了重大进展。强化学习(RL)系统是由一个通过试错学习的agent组成的。agent可以从过去的每种情况中学习最有效的方法,并在遇到其他类似情况时应用这些知识。理想情况下,我们希望agent将其学习到的知识转移到环境中不同目的地。然而,经典的RL算法很难推广到不断变化的任务目标上,因为奖励和价值函数通常是根据一个目标来定义的[Sutton and Barto, 2011]。例如,导航到微波炉的机器人的值函数将与导航到沙发的机器人的值函数非常不同。之前基于RL进行目标驱动导航的成功尝试,在适应新目标时,性能显著下降,尽管它们使用的模型鼓励可泛化[Zhu et al., 2017, Zhang et al., 2017]。
    •  为了克服通用性和性能方面的挑战,本文提出了一种使用混合异步通用后继表示(HAUSR)的新方法。这是基于通用后继表示(USR)的概念,它能够学习环境动力学的表示,并且支持在不同的目标之间迁移。
    • 我们展示了HAUSR如何适应AI2THOR内部复杂的真实感光环境,并成功解决目标驱动视觉导航问题[Kolve et al., 2017]。通过对《AI2THOR》中HAUSR的评价,我们证明了agent能够成功地达到不同的目标。
  •  2 Related Work

    • 2.1 General Value Functions

      • RL的一个核心问题是如何学习一个好的特征表示,并在任务之间支持重用和泛化。设计一个能够适应不同任务的值函数,将大大有助于泛化。这一系列的研究建立在一个叫做通用价值函数(GVF)的概念上[Sutton et al., 2011]。GVFs概括了值函数的概念,不仅捕获任务的面向目标的语义,而且还试图捕获关于世界的更一般的知识形式。Schaul等人[2015]提出了对这一概念的扩展,称为通用值函数拟合器(Universal Value Function ators, UVFAs)。UVFAs的主要思想是通过单个的函数拟合器来表示大量最优的值函数,该函数拟合器对状态和目标都进行了泛化。虽然理论上听起来不错,但是学习一个好的UVFA是一项具有挑战性的任务[Ma et al., 2018]。
    •  2.2 Successor Representations

      •  后继者表征(SR) [Dayan, 1993]起源于认知科学领域,以“大脑如何能够创建可重用的预测地图”为模型。Kulkarni等[2016]将SR与深度学习相结合,创建了深度后继强化学习(深度继承强化学习,DSR),将奖励与环境动态解耦。基于Deep Q-Network (DQN)的基本原理,他们能够学习任务特定的特征,这些特征只需要微调“奖励预测特征向量”就能快速适应奖励的远端变化。Barreto等[2017]也对RL中的转移进行了多个类似任务的评估,他们引入了后继特性(SF)。他们使SR适应于连续域,并能够展示如何将经典的策略改进扩展到多个策略。将Barreto等[2017]扩展到深度学习,Barreto等[2018]展示了如何以稳定的方式训练这些模型。对于视觉导航问题,Zhang等[2017]采用了类似Kulkarni等[2016]的基于sr的DRL架构。与我们的方法不同,他们使用DQN作为baseline在简单的迷宫环境中展示他们的解决方案,而我们在逼真的模拟环境中使用actor-critic方法。基于dqn的技术在应用于大规模导航等复杂问题时,往往会遇到稳定性问题[Barreto et al., 2018]。
      •  通用后继表示(USR) [Ma et al., 2018]是对SR的最新扩展。与之前基于DQN的方法不同,USR直接通过使用actor- critical方法对策略建模来学习策略。与SR类似,USR使用继承特性修改策略。基于dqn的方法间接地学习最优的行动价值函数。USR试图获得一个通用的值函数,该函数可直接用于获得最优策略。它可以看作是前面讨论的SF和UVFA方法的组合。与基于DQN的方法不同,USR能够直接优化一个agent,同时学习多个任务。然而,USR还没有经过高维复杂问题的测试。本文介绍了USR在逼真环境下如何适应目标驱动的视觉导航问题。
    •  2.3 Target-Driven Navigation

      • 用DRL解决视觉导航的尝试有很多。与我们的方法最相关的是使用了一个深度drl-agent,该agent可以跨多个目标共享参数[Zhu et al., 2017]。他们使用异步优势参与者批评家(A3C) [Mnih et al., 2016]算法,能够通过同时输入状态和目标特征来学习多个目标,从而同时训练多个目标。虽然他们的方法直观上类似于通用值函数近似,但是他们的结果显示,当导航到未曾训练过的目标时,性能显著下降。与我们的方法不同,它们没有使用任何形式的后继表示来进行架构中的泛化。许多RL算法都是在模拟环境中训练的,这些环境通常是现实的简化低维版本[Beattie et al., 2016]。因此,agent不使用丰富的视觉信息来做出决策。然而,随着像AI2THOR [Kolve et al., 2017]这样的真实感模拟环境的发展,最近的工作已经能够利用丰富的视觉信息,成功地将知识从模拟环境转移到现实世界[Zhu et al., 2017]。
  • 3 Background

    •  3.1 Reinforcement Learning

      • 将“目标驱动的导航任务”建模为马尔可夫决策过程(MDP)。转移概率 p(st+1 |s, a) 定义了到达下一个状态st+1的概率。我们定义一个 伪奖励函数 rg(st,at,st+1)∈R 和 伪折扣函数 γg(s)∈[0,1]。任何策略π(at|st),通用价值函数(Sutton et al ., 2011)可以被定义为:
      •                         
      • 我们假设对于任何目标g,对于特定于这个目标的最优策略,都存在一个最优的 价值函数 
      • 学习的目标是找到一个策略 π∗ ,跟随这个策略就能够最大化未来折扣后的奖励之和。
      • 为了泛化到多个目标G,agent需要学习多个最优策略和最优值函数,从而导航到每个目标。每个goal对于agent来说都是新任务,所以agent需要快速适应新策略,并学习
    •  3.2 Asynchronous Advantage Actor Critic (A3C)

      • A3C是Mnih等[2016]基于AC方法(Witten, 1977, Barto等,1983)提出的一种policy-based的策略搜索方法。A3C快速、鲁棒、可伸缩,在电子游戏领域已经取得了最先进的成果[Mnih等,2016]。
        A3C维护一个策略网络和值函数网络。agent使用值函数(critic)来更新它的策略(actor),方法是并行地训练多个线程并异步地更新一组共享的模型参数。已经证明,并行线程能够彼此稳定。在实际应用中,我们可以在一个“具有多个头的神经网络”中学习策略函数和值函数。
      • 通过计算∇θπ log π(at|st)A(st, at) 来更新网络,其中A是优势项。优势项可以被认为是量化一个行为比预期的好多少。对于一个状态,优势可以通过“一个事件的折扣奖励也就是q函数”和该状态的v函数之间的差异来估计。因此,完整的更新可以写成:
      • H是一个熵项,通过参数beta来鼓励agent进行环境探索。
    •  3.3 Universal Successor Representations (USR)

      • 应用SR的一个关键点就是——架构能够把“奖励函数”表示为“ 状态表征 φ(st,at,st+1) ”和“ 奖励权重向量ω(g) ”的线性组合:
      •                      
      • 其中θφ是θω分别代表两个神经网络的参数,需要学习。 于是,等式(1)可以写成:
      • 其中 ψπ(st,gt) 定义为状态st的USR通用状态表示,直观来说,ψπ(st,gt) 可以看成是状态st的未来预期。USR使我们更容易在目标之间转移知识。如果任何目标都可以计算 ω(gt;θω) ,我们就可以为任何目标计算策略和值函数。学习USR,然后我们就可以使用贝尔曼方程,按照更新value-function的方法更新下式:
      •                      
  •  4 Problem Formulation

    • 目标驱动导航agent的目的是学习一个随机策略π(st, gt),其中st是当前状态的表示,gt是目标状态的表示。策略的输出π:是动作的概率分布。在我们的公式中,agent有四个离散的动作:1)向前移动0.5m, 2)向后移动0.5m, 3)左转,4)右转。我们在逼真的3D AI2THOR [Kolve et al., 2017]环境中,使用包含180个独特状态的,“bathroom 02”地图来训练我们的策略,并测试所学策略向其他新目标的泛化能力。
    • 每个场景被划分为0.5m×0.5m的网格,类似于一个网格世界环境。来自AI2THOR环境的状态表示是300×400-RGB图像。我们将其缩小到一个110×110灰度图像,并串联四个连续的帧来创建状态向量st。
    • 当达到目标状态时,agent将获得+1的奖励,而每一时间步的奖励为- 0.01。我们的agent的目标是通过最少的步骤导航到目标位置。经过训练,agent应该能够推广到新目标位置,而这些目标没有参与过训练。
    •                                                                     
    •  4.1 Challenges in merging USR with A3C

      •  USR和actor-critics方法以前只应用于类似迷宫的简单环境。我们发现,在A3C-baseline下直接应用USR来解决复杂的视觉导航问题,由于以下几个原因,是不稳定的。
      • 首先,使用自动编码器来学习一个好的state-embedding,在复杂环境中,是不稳定的。agent想要理解环境,状态表征是非常重要的;同样,如果状态表征学习的不好,会导致agent的性能下降。
      • 我们发现,奖励预测向量ω(gt)是很难准确预测的。这个向量和状态表征反过来在等式4中使用,并帮助我们近似优势函数和标量奖励。Unlike ad-hoc rewards, the predicted scalar rewards using Equation 5 have wide variations. 当同时训练多个目标时,尤其如此。在下一节中,我们将描述如何处理这些挑战。
      • 下一节我们将会讨论我们的HAUSR架构。据我们所知,这是USR首次与A3C结合,并用于目标驱动的视觉导航。
  •  5 Hybrid Asynchronous Universal Successor Representations (HAUSR)

    •  5.1 Network Architecture

      •  与以往将“DQN结合SR”作为baseline的方法,来提高泛化能力和迁移学习能力的方法不同,我们采用了一种deep-AC架构,并将USR扩展到A3C。由于A3C的可扩展性,使得我们的算法可以在真实的场景中使用[Mnih et al., 2016]。我们的架构也比Ma等人[2018]提出的USR架构更加稳定和可扩展。我们架构的三个主要网络如图1所示。在训练强化学习网络(图1b)之前,对状态表示和奖励预测网络(图1a)进行训练。
      •             
      •  5.1.1 State Representation Network

        •  state representation network的目的是生成这么一个φ ,编码state当中有用的动态信息,这些信息接下来会被用来近似successor feature representations。我们不再适用自动编码器loss训练φ,而是使用一种带有辅助loss的更加鲁棒的架构。除了自动编码器loss以外,我们还添加了前向动力学损失和逆前向动力学损失(如图1a所示)。自编码loss和前向动力学loss使用MSE,逆前向动力学loss使用交叉熵loss。在训练初期,agent先随机探索环境,并根据采集到的state-action-next state 数据来训练编码器。
      •  5.1.2 Reward Prediction Network

        •  reward prediction network 的目的是训练reward prediction vector—ωg。这个向量能够把一个 状态表征 转化为一个标量奖励:
        • 我们用一个三层的卷积网络把图像转变为ω ,预测的reward,如果agent不能到达目标就是-0.01,如果能到达目标就是+1。用这么一个简单的网络生成 ω可以帮助我们,应对不同的目标时,迅速获得reward prediction vector。我们先用随机探索时收集到的数据预训练这个网络,同时在A3C-agent探索环境的时候继续同步训练这个网络。
      •  5.1.3 Reinforcement Learning Network

        • 图1b是我们的A3C-agent-network——把a3c和successor features相结合。我们创建了一个新的优势函数,增加训练稳定性。优势函数通常是策略提升的驱动力,它基于特定的奖励(比如每一步的小惩罚和达到目标的+1)。优势的计算方法是折现奖励与状态价值之差。特定奖励对复杂环境中的agent的学习是非常有用的,尤其是A3C这样的并行架构。与DQN不同,A3C是相对稳定的,通常需要较少的超参数调优。
        • 在我们的工作中,我们通过计算两个优势函数,将A3C架构与USR结合起来。其中一个优势函数是使用特定标量奖励计算的(就像传统的A3C),而另一个优势函数是使用奖励预测网络预测出的reward计算的。
        • 我们使用USR,修改了传统的优势函数和回报函数,得到了下式:
        •                               
        • 我们把两个优势函数,使用超参数λ加权求和,这个超参数决定了successor feature rewards所做的贡献。因此,网络不仅能够使用特定奖励信号更新网络参数,也能够把状态和环境的动力学考虑进去。我们相信这是——学习好的特征表示的关键,这个特征表示能够在目标之间泛化。
        • 在RL网络中,我们通过一个共享的三层孪生CNN来给目标图像和当前图像提取特征。然后,我们将两个输出特征串联起来,并通过全连接层。输出的是一个值函数V,策略函数pi,和一个USR拟合器 ψ。训练方法见算法2。通过在网络的卷积层之后创建分支,可以方便地将模型扩展到多个环境。
    •  5.2 Training Protocol

      •  构建稳定的训练架构对于将深度强化学习应用于视觉导航等高维问题具有重要意义。
      • 回报和优势函数都取决于奖励预测向量wg和状态表示向量φ。传统的A3C-agent依赖于稳定的奖励机制。由于现实世界的噪声和复杂性,获得完美的状态表示和奖励预测向量是不可能的。训练期间,在一开始,我们把λ设置的很低,为了学习一个较为稳定的值函数。大约32个agent经过5000轮迭代后,我们把λ调到0.001。当增加λ以后,值函数的loss也变大了,证明SR loss对训练是有作用的。总的损失函数由policy loss, value function loss, successor feature approximation loss 和 entropy loss 组成。
      •                                              
      • 在我们看来,这是第一次把传统的value loss和successor features相结合。辅助损失有助于训练,[Jaderberg et al., 2016]的工作已经说明了这一点,我们相信这一概念,将是未来,在现实世界中,创造成功RL-agent的关键。
  •  6 Evaluation

    • 图4展示了传统值函数和Successor Feature approximator的n-step差分误差。我们可以看到,随着时间越来越稳定。从图中可以明显看出,SR loss并没有达到零,但这足以使我们的agent具有泛化能力。这也就是为什么,我们使用了混合训练,并仍然保留了传统value-loss的原因。我们没有将我们的模型与A3C-baseline模型进行比较,因为我们更关心的是创建一个稳定的训练架构,以便在高维复杂问题中将A3C与USR结合起来。                                           
    •                                                             
    •  我们通过两个实验验证了该模型的迁移学习和泛化能力。一个是测试agent的泛化能力,另一个是测试我们能多快的调整agent以完成新的目标。在这两个实验中,我们都训练我们的模型,直到在AI2THOR的浴室环境中收敛,有五个目标位置。
    •  6.1 Generalization to novel goals

      • 我们在没有进行微调的情况下检查了agent对新任务的通用性。当推广到新的目标时,考虑的最重要的因素是agent是否成功地实现了新的目标。因此,我们追随了[Zhu et al., 2017]的做法,我们用达到目标的成功率作为衡量标准。对于每个新的目标,我们运行100个episode,每个episode都从一个随机的初始状态开始。如果agent在500步内达到目标,我们认为这是一个成功的episode。我们测试了agent在相同环境中导航到50个目标状态的能力。图6显示了我们的agent在实现这些目标方面的成功率。请注意,对于这些新目标,我们并没有微调网络。
      •                                                    
      •           
    •  6.2 Transfer Learning Ability

      •  迁移学习在监督学习领域得到了广泛的研究,能够实现对新任务的快速训练[Sharif Razavian et al., 2014]。如果模型能够学习到问题丰富表示形式,那么这些知识在学习新任务时应该是有用的。这使我们能拥有一个能够快速适应新任务的agent。为了迁移到新的目标,我们对网络进行了微调,以测试网络的迁移学习能力。图7显示,我们的agent能够非常快速地学习导航到以前无法实现的目标。为达到一个新目标而采取的步骤数量显著减少,并且agent可以在15分钟内学习。
      •                                                         
    •  6.3 Future Work

      •  近年来,DRL在解决复杂任务方面非常有效[Silver et al., 2016, Mnih et al., 2015]。在DRL中,真实世界的导航仍然是一个悬而未决的问题。新算法通常只在简单的游戏环境中进行测试。可伸缩性是将DRL应用于复杂领域时需要考虑的另一个因素。我们发现,将新概念合并到复杂领域是一项挑战,而一个关键的研究问题是如何用稳定的架构实现这些想法。我们希望,我们这种“合并两个新概念”的尝试,可以引导更多的研究,能够创建一个少许微调就可以在现实世界采用的架构(额,为什么我没见到泛化能力的对比实验。。。)。

通篇读完,总结一下:

  • 1 用“前向动力学&逆向动力学”对 current_state s 进行编码,得到φ(s)
  • 2 把goal_state 进行编码,把编码后的向量 w(g) 乘以φ(s),来预测reward;根据我的理解,此处loss只更新"对goal进行编码的那几层网络"。
  • 3  由1&2已经可以得到这么一个等式 reward  = w(g)*φ(s)。那么把这个式子带入贝尔曼方程的state_value更新式,就可以把state_value表示为 ψπ(st,gt)*w(g)。作者把这个ψπ(st,gt)起名为USR。接下来同时更新“传统的critic-loss”和“USR-loss”。作者认为,如果这个USR学的还不错的话,能够增强网络对未接触过的目标的泛化能力。

槽点:硬吹一波泛化能力,对比实验呢?。。。

 

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值