【论文翻译】Learning to Navigate in Cities Without a Map

摘要:在非结构化环境中导航是agent的一项基本能力,因此在人工智能的研究和发展中具有重要的意义。远程导航是一项复杂的认知任务,它依赖于对空间的内部表示,以可识别的地标和健壮的视觉处理为基础,能够同时支持连续的定位(“我在这里”)和目标表示(“我要去那里”)。基于近期“将深度强化学习应用于迷宫导航问题”的研究,我们提出了一种可应用于城市尺度的端到端深度强化学习方法。我们意识到成功的导航依赖于“通用的策略”和“特定于地区的知识”的集成,因此提出了一种双重路径架构,允许封装特定于地区的特性,同时支持向多个城市迁移。我们提供了一个交互式导航环境,使用谷歌StreetView进行图片内容和全球范围的覆盖,并演示了我们的方法允许agent学习在多个城市的导航和穿越到可能有数公里远的目的地。一段视频总结了我们的研究,并展示了在不同城市环境下训练有素的agent以及转移任务。google.com/view/streetlearn。


  • 1 .Introduction

    • 导航这门学科对各种研究学科和技术领域都很有吸引力,它同时也是希望破解网格和定位细胞代码的神经科学家们的研究对象,也是建造能够到达指定目的地的移动机器人的机器人研究的一个基本方面。大多数算法都涉及到在探索阶段建立明确的地图,然后通过它来计划和行动。在这项工作中,我们感兴趣的是通过提出新的方法并演示它们在大规模、真实环境中的性能,来突破端到端深度强化学习的局限。就像人类可以学会在城市中穿行而不依赖地图,GPS定位,或者其他的辅助工具,这是我们的目标,我们的目标是让一个神经网络agent学会用肉眼观察来学习如何穿越整个城市。为了实现这一目标,我们设计了一个使用来自谷歌StreetView的图像和底层连接信息的交互环境,并提出了一个可以在环境中导航的双路径代理架构(见图1)。

    • 图1所示。我们的环境是在现实世界中建立的。这幅图展示了纽约(时代广场、中央公园)和伦敦(圣保罗大教堂)的不同景观和相应的当地地图。绿色圆锥表示agent的位置和方向。

    • 通过使用"从任务奖励中学习的深度强化学习(RL)方法"(例如,导航到目的地),学习直接从视觉输入来导航在某些领域是可行的。最近的研究表明,RL-agent可以学习导航室内场景、迷宫和3D游戏。尽管取得了成功,但深度RL方法的数据效率低,对环境的扰动非常敏感,并且在游戏和模拟环境中比在实际应用程序中更出名。因此,它们是否可以用于基于现实世界图像的大规模视觉导航尚不明显,因此这是我们研究的主题。

    • 本文的主要贡献是提出一种新颖的双路agent架构,使用端到端强化学习进行训练,能够处理城市规模的、真实世界的视觉导航任务。我们提出的agent演示了依赖于目标的学习,这意味着策略和价值函数必须学会适应把目标作为输入。该方法的特点是一个“既支持特定地区的导航行为,也支持通用的可迁移的导航行为”的循环神经网络结构。平衡这两种能力的方法是:将一个循环神经网络从agent的总体导航策略中分离出来。这个分离出来的网络解决了两个问题:首先它接收和解释环境给出的当前目标,其次它封装和记忆一个单一城市的特征和结构。因此,与其用地图或外部记忆,我们提出了一种具有两个循环通路的架构,它能有效地解决单一城市的导航任务,并通过只训练新的“特定区域通路”来转移到新的城市或地区。

    • 提出的agent结构在一个新的交互式环境中进行了演示,用于增强学习,该环境以真实世界图像作为agent的观察,特点是:全球范围和多样性,以及具有构建在公共可用的谷歌StreetView之上的现实世界基础。在这种环境下,我们已经展开了一项艰巨的任务,任务是让agent从目标进入伦敦,巴黎和纽约。在现实世界中,我们的任务类似于一个信使在一个给定的城市中工作,从一个叫做“a”的任意位置开始,然后被定向到一个叫做“B”的特定位置,而不需要显示这些位置的地图或者从a到B的路径,或者被告知它自己的位置。

  • 2 .Related Work

    • 在现实世界环境中,目标驱动导航与深度学习、增强学习、导航和规划的各个领域的研究有关。
    • 现实世界的图像中定位 :

      •  仅仅从一个图像定位似乎是不可能的,但人类可以整合视觉线索,如地标、植被和建筑,以惊人的精确度为给定的图像定位,这激励研究人员研究机器学习方法。例如,复杂的神经网络在地理定位任务中取得了有竞争力的表现,而CNN + LSTM架构通过利用空间时间的连续性来提高它的质量,而其他的深层架构可以通过像素来评估摄像头的姿势或深度评估,或者通过获取健壮的定位图像检索。DeepNav和Khosla使用了一个StreetView的环境,并提出可以通过基于cnn的架构来学习“基于常识的”导航相关任务。RatSLAM项目以生物架构为灵感,展示了本地化和长距离路径规划。上述方法依赖于带有地面标签的监督训练,这在我们的环境中是没有的。此外,我们不仅对定位感兴趣,而且还在规划一条到达指定目的地的路径。

    • 深度RL导航的方法:

      • 许多基于rl的导航方法依赖于模拟器,这些模拟器在视觉上很简单,但也不现实。为了在这些环境中支持稀疏的奖励信号,最近的导航agent在训练中使用辅助任务。举个例子,在各种模拟迷宫中进行视觉导航以进行自我监督的辅助任务。其他方法学习预测未来的测量结果。其他人则使用简单的文本描述为代理添加目标指令;在我们的案例中,goal以这样的方式给出:“agent的distances to local landmarks”。
      • 为了弥合模拟与现实之间的差距,研究人员开发了更加逼真、高保真的模拟环境。然而,尽管环境中图片的逼真度越来越高,但是虚拟环境的固有问题在于:环境多样性是有限的,和observation的清晰度。相比之下,我们真实数据集是多样的,视觉上更加真实,包括行人,汽车,巴士,卡车,天气环境,植被。然而,我们的环境任然有明显的局限性:它不包含动态元素,动作空间必须是离散的,因为它必须在全景之间跳跃,并且街道拓扑不能任意改变或重新生成。
    • 深度RL,用于路径规划和制图

      • 最近的一些方法已经使用存储器或其它明确的神经结构来支持计划或映射的端到端学习。其中包括神经网拍(Neural SLAM),它提出了一个“带有外部内存和一个基于SLAM的算法的神经地图”的RL-agent。另一项工作明确地提供了一份全局地图,这是给agent的输入,目的是学习阅读和使用地图。该架构采用了一种显式的神经映射器和导航任务规划器,并认为联合训练使整个系统在单个组件引入的错误下更加健壮。与此类似,它们还使用额外的内存来表示代理的以自我为中心的位置。另一个最近的研究提出了一个图的网络解决方案。最后,我们提到了目标驱动的视觉导航方法,它学习了与我们的方法相关的目标条件策略。
  • 3. Environment

    • 本节提供了一个交互式的环境构建使用谷歌街景,它提供了一个公共API1。由于StreetView的数据是在全球范围内收集的,它包含了高分辨率的图像和图的连通性,对于研究导航来说是一个很有价值的资源(图1)。
    • 街景提供了一组定位360̋全景图像,这些全景图形成一个无向图的节点。

      我们选择了纽约市、巴黎和伦敦的一些大区域,这些区域包含7000到65,500个节点(分别在7,200到128,600条边之间),平均节点间距为10m,覆盖范围为5km。

    • 我们不减少或简化底层连接,而是使用完整的图,因此拥挤的地区有许多节点,复杂的闭塞的十字路口,隧道和小路。虽然图是用来构造环境的,但是agent从不观察底层的图——它只看到RGB图像。

    • 3.1. Agent Interface and the Courier Task

      • RL环境需要指定agent的观察和操作空间,并定义任务。agent有两个输入:图像 xt 和目标描述 gt 。对于输入图像,我们模拟一个具有挑战性的第一人称视角:84*84像素,60度的方框视角。操作空间有五个离散的行为:慢左或右旋转(22.5度),快速向左或向右旋转(67.5),或前进(如果当前agent的位置没有看到图的边,则该动作变成“无动作”)。如果agent的视锥中有多条边,那么最中心的是被选中的。

      • 有很多方法可以将目标表征给agent,图像 or 相对方向 or 文本描述 or 地址。我们选择用距离一组固定地标L的近似来表示当前目标: L = {( Lat k , Long k )}k,其中Lat/Long代表纬度和经度。简而言之,把目标地点表达成一个向量:

      • g t,i (t时刻距离第i个地标的距离,一共有k个地标) 其中,d是 g 距离第i个地标的距离,alpha = 0.002。这形成了一个目标描述,它有许多优点:它是一个可扩展的表示,很容易扩展到新的区域,地图坐标的缩放或规范化无影响,它有直观的含义——人类和动物也会参照固定地标进行导航。注意,目标描述是绝对的:它不是相对于agent的位置,只有在绘制了新的目标才会发生变化。我们手动定义了纽约,巴黎和伦敦的644个地标建筑。

      • 我们把快递任务定义为:“在一个城市中随机选择目标进行导航”的问题,每一个episode都是从随机抽取的位置和方向开始的。如果agent到达目标100m内的范围内了,那么下一个episode随机选择新的目标并输入给agent。每个episode在1000个steps后结束。当目标是第一次分配的时候,agent到达目标的回报正比于“目标和代理之间的最短路径”。就像快递服务一样,快递员长途旅行会得到更高的报酬。

      • 为了解决快递任务,agent需要学习“目标向量”和“在目标地点观测到的图像”之间的映射,以及,“当前位置观测到的图像”和“到达目标地点的策略”之间的映射。

  • 4  .Methods

    • 4.1. Goal-dependent Actor-Critic Reinforcement Learning

      • 我们将学习问题形式化为一个马尔可夫决策过程,包含状态空间S、行为空间a、环境E和一组可能的目标G。奖励函数取决于目标和当前状态 R:S*G*A -> R  。强化学习通常的目标是找到最大化回报的策略,其中回报定义为:从状态s0开始按照折扣率gamma计算的所有打过折的奖励之和。在这个导航任务中,状态st的回报还取决于一系列采样目标 { gk }k 。策略是:给定当前状态st和目标gt下,在动作上的分布: π(a|s,g) = Pr(at=t|st=s,gt=t)。我们把值函数定义为:agent在状态st,目标为gt,采用策略pi下的总回报的期望。
      •        
      •                        
      • 图4. 架构的比较:左边——GoalNav—卷积编码器+具有目标描述输入的策略LSTM。中间——CityNav——是单一城市导航架构,具有一个单独目标LSTM和可选辅助航向(θ)  。右边:MultiCityNav是多城市导航架构,每个城市具有独立的目标LSTM。
      • 我们设想的快递任务应该支持两种类型的学习:通用学习和特定地区学习。一个导航agent不仅需要一个通用的内部表示来支持像场景理解这样的认知过程,还需要组织并记住一个特定地方的特征和结构。因此,为了支持这两种类型的学习,我们关注具有多通路的神经网络架构。
    • 4.2. Architectures

      • 策略函数和值函数都由一个共享所有层(除了最终的线性输出层)的神经网络来进行参数化。agent根据原始输入图像xt采取行动,图像输入到卷积编码器。LSTM接受:卷积编码器的输出&过去的回报r t-1&之前的动作a t-1。下面将描述三个不同的架构。补充材料中提供了其他的架构细节。
      • GoalNav 架构——拥有一个卷积编码器和一个策略LSTM。目标描述gt,之前的行动a t-1 和奖励 r t-1一同输入到LSTM。
      • CityNav 架构——结合了前面的架构和额外的新LSTM(“目标LSTM”:编码后的视觉特征以及目标描述g t作为输入)。CityNav的agent还增加了一个辅助航向预测(θ)(在目标LSTM的输出端)。
      • MultiCityNav 架构扩展了CityNav的agent在不同城市学习的能力。目标LSTM的主要任务是对特定于地区的特征和拓扑进行编码和封装,以便在每个城市或地区添加多条路径。此外,在对多个城市进行训练后,我们证明了卷积编码器和策略LSTM变得足够通用,只需要为新城市训练一个新的目标LSTM。
      • 如(Jaderberg et al., 2016; Mirowski et al., 2016; Dosovitskiy & Koltun, 2016)所示,辅助任务可以通过提供额外的梯度和相关信息来加速学习。我们使用这样一个辅助任务:agent的朝向角度 θt (定义为:正北方向 和 agent朝向之间的角度),对于binned angles使用多分类loss。
      • 为了训练agent,我们使用了IMPALA(Espeholt et al., 2018),这是一种将表演和学习分离开来的表演家评论家算法。在我们的实验中,IMPALA表现出与A3C相似的性能。我们使用256个actor来实现CityNav, 512个actor来实现MultiCityNav,批处理大小分别为256个或512个,序列的展开长度为50。
    • 4.3. Curriculum Learning

      • Curriculum Learning通过为学习算法选择越来越难的例子,逐渐增加了学习到的任务的复杂性。我们建议使用Curriculum 来帮助agent学习如何导航到越来越远的目的地。类似于其他RL问题,快递任务具有非常稀疏的回报;不同的是,我们可以定义一个natural curriculum scheme。第一阶段:对agent500米内的每一个新目标采样。阶段二:我们逐步扩大了允许到达的目的地的最大范围,以覆盖整个图表(较小的纽约地区3.5公里,伦敦市中心或曼哈顿市中心5公里)。
  • 5 . Results

    • 在这一节,我们将展示并分析在快递任务中所提出的架构的性能。首先,我们展示了我们的agent在大城市环境中的表现,并展示了他们在完成既定目标后的推广能力。最后,我们研究了所提出的方法是否允许将在一组区域上训练的agent转移到一个新的,以前看不见的区域。
    • 5.1.  Courier Navigation in Large, Diverse City Environments

    • 我们的第一个展示的是:CityNav agent,经过curriculum learning的训练,在纽约,伦敦和巴黎的快递任务中取得了成功,包括各种各样的街道,公园,桥梁和隧道。我们用5个随机种子重复了实验,并在纽约大学和伦敦大学周围部分地区的实验结果中绘制出平均值。在这篇论文中,,我们只展示位于目的地时候的回报。图5对不同的agent进行了比对结果显示,具有“双LSTM架构和航向预测任务的”的CityNav系统性能比简单的目标导航系统要稳定得多,也好得多。我们还训练了一个CityNav(没有视觉编码器到策略LSTM的skip connection)。这会影响性能,但我们出于这样的考虑:想实现多城市场景的迁移,为了使目标LSTM和策略LSTM之间的接口规范化。我们还考虑了两个baseline,它们给出了性能的下限(启发式)和上限(Oracle)。启发式算法是在街道图上的随机漫步,当agent无法前进时,它会向随机方向旋转;如果在一个十字路口,它会以概率p = 0.95转弯。Oracle使用完整的图来计算,使用BFS图搜索算法寻找最优路径。
    • Fig 5. 上图是纽约城,下图是伦敦。y——平均每个episode到达目标的奖励   x——学习的步数。 纽约城中的GoalNav agent, the CityNav agent, and the CityNav agent ,没有skip connection。伦敦只比较了CityNav agent。我们还比较了Oracle和启发式,如下所述。伦敦的agent接受了两阶段的课程训练——第一阶段(500米)和第二阶段(500米到5000米)。在巴黎左岸(与在伦敦以同样的方式训练)的结果是相似的,并且agent实现了平均目标奖励426。
    • Fig 6 经过训练的CityNav-agent在两种环境下的性能:伦敦市中心(左窗格)和纽约大学(右窗格)。顶部:在一个1000步的episode,agent轨迹的例子,显示了成功的连续目标获取。箭头显示了agent的行进方向。下面,我们将在100个轨迹(随机起始点和相同的目标)(分别是圣保罗大教堂和华盛顿广场的目标)来观察其值函数。更厚更暖和的彩色线代表更高的值函数。

    • 我们通过两个1000步的episode来观察训练过的agent的轨迹(图6(上一行))。在伦敦,我们可以看到agent穿过一座桥到达第一个目标,然后到达目标2,episode在到达第三个目标之前就结束了。图6(底部一行)显示了这个agent的值函数,它不断地向选定的目的地导航(分别在伦敦的圣保罗大教堂和纽约的华盛顿广场)

    • 为了了解agent是否在整个环境范围内学习了策略,我们绘制了agent达到目标所需的步数。随着数字与距离目标的直线距离的线性增长,这个结果表明agent已经成功地学习了两个城市的导航策略(图7)。

    • Fig 7 . 100个起始位置中,CityNav-agent导航到目的地需要的步数(纽约的华盛顿广场或伦敦的圣保罗大教堂) VS 以m为单位的到达终点的距离。agent一步对应于向前移动大约10米或左/右转22.5̋或67.5̋。

  • 5.2. Generalization on Held-out Goals

    • Fig . 8 中型网格插图:与灰色对应的是训练目的地,黑色对应的是测试目的地。地标位置用红色标出。
    • 为了检验训练好的agent的泛化能力,我们掩盖了25%的目标,并对剩下的目标进行训练(图8)。在测试的时候,我们只评估agent是否有能力到达灰色区域的目标。请注意,agent仍然能够穿过黑色被遮盖区域,但它从未在黑色区域采样过目标。更准确地说,开发集区域大小分别大约1公里ˆ1公里,0.5公里ˆ0.5公里和0.25公里ˆ0.25公里。我们将这些网格分别称为粗网格(有很少的和大的helout区域)、中网格和细网格(有许多小的helout区域)。
    •                            

    • TABLE 1 . CityNav agent同城市泛化性能(目标获取奖励),当分离训练和一组已定义的目标位置时,表明随着已定义区域的大小增加,agent的表现会更差。除了奖励度量和失败度量之外,我们还计算半程时间(T1/2或达到目标一半所需的步骤数),以了解较低的性能。

    • 在实验中,我们对CityNav agent进行了1B步长的训练,然后对其权重进行冻结,并对其在封闭区域100M的性能进行评估。表1显示了随着helout区域大小的增加,agent的性能下降。为了获得进一步的理解,除了测试奖励度量之外,我们还使用”错过目标“(失败)和“半程时间“(T1)度量。”错过目标“度量了没有达到目标的比例。”半程时间“度量了覆盖半个路程(直线距离),agent需要的步数。尽管agents在更大的网格错过了更多的目标,在同样的时间内,它仍然能够到达目标的一半距离,也就是说,agent有个大概的目标表示可以让它朝它前进直到它接近目标,只不过这个表示对最后的路径不再有用了 
  • 5.3. Transfer in Multi-city Experiments

    • 对我们提出的方法的一个重要测试是:证明它可以转移到新城市。和人类一样,当我们的agent访问一个新城市时,我们期望它必须学习一组新的地标,但不需要重新学习它的视觉表征、行为等等。因此,我们按照如下方式使用MultiCityNav-agent:我们在一些城市(实际上是纽约市的一些地区)进行训练,冻结策略LSTM和卷积编码器,然后在一个新的城市上(新的地区)训练一个新的目标LSTM。通过优化RL-loss计算出的梯度直接通过策略LSTM而不影响策略LSTM,梯度只用于优化目标LSTM。
    • Fig 9.训练机制的说明:(a第一个):在单一城市进行训练(相当于城市导航)  (b第二个):在多个城市进行联合训练,每个城市有专用的路径,共享卷积网络和策略LSTM  (c第三第四个):在多个城市进行联合预训练,然后在目标城市进行训练(此时冻结卷积编码器和策略LSTM)
    • 我们使用三种不同的训练机制来比较效果,如图9所示:只对目标城市进行训练(单次训练)/ 多城市(含目标城市)联合训练 / 除了目标城市以外的所有城市都进行联合训练,然后在目标城市进行训练,冻结agent的其余部分。在这些实验中,我们使用如图2所示的整个曼哈顿环境,由以下几个区域组成:“华尔街”、“纽约大学”、“中心城”、“中央公园”和“哈莱姆区”。目标城市始终是华尔街环境,我们在其他环境的234上评估预训练的效果。我们还会对比是否去掉”卷积编码器和策略LSTM之间的skip connection“会对性能有影响。
    • 从图10的结果中我们可以看到,迁移不仅是可行的,而且其有效性随着网络所训练的区域的数量而增加。值得注意的是,在4个地区进行预训练,然后转到华尔街的agent,其表现与在所有地区进行联合训练的agent不相上下,仅略逊于单独在华尔街进行的单一城市训练的agent。这个结果支验证了我们的直觉,即在更大的环境下进行训练会带来成功的迁移。我们还注意到,在单城市场景中,最好是训练一个具有skip-connection的agent,但是在多城市迁移场景中这种趋势是相反的。我们假设,将”特定区域LSTM“隔离起来更加具有挑战性,但是这样减少了对卷积层生成的特征的过度拟合,并强制实现了一个更通用的策略LSTM接口。虽然”迁移学习的agent“性能低于”在所有区域共同训练的agent“,但agent的性能明显优于baseline,并且实现了目标依赖的导航。
    • Fig 11(右边).  TOP : 纽约大学的CityNav agent的学习曲线::不同早期奖励半径的reward shaping  VS  随机硬币 VS curriculum learning with ER 200m and no coins (ER 200m, curr.)  Bottom  : 对于具有不同目标表示形式的CityNav-agent的学习曲线:基于地标的,以及基于纬度和经度分类的和基于回归的。
  • 6 . Analysis and Discussion

    • 为了更好地了解环境,我们进行了关于奖励、课程和目标表示的实验。补充材料中还提供了其他分析,包括体系结构、位置和目标解码。
    • 在我们的实验中,我们聚焦于纽约大学地区,分析 reward-shaping 和课程学习(第6.1节)和目标表达(第6.2节)的贡献。我们用每个到达终点的episode的平均回报来衡量性能。每个实验用不同的种子重复5次。我们展示平均最终奖励,并绘制奖励统计量的均值和标准差。
    • 6.1. Reward Shaping and Curriculum Learning

      • 我们的导航任务给agent分配一个目标,agent成功导航到目标后,就会给agent一个新的目标。目标地点离agent很远,这是一个具有稀疏回报的RL问题。为了简化这一具有挑战性的任务,我们研究在agent达到目标(我们认为代理在达到目标100米以内时已经达到目标)之前给予早期奖励(reward shaping),或者添加随机奖励(硬币)来鼓励探索。
      • 作为任务现实主义与可行性之间的权衡,在图11a结果的指导下,我们决定结合Curriculum Learning,保留少量的Reward Shaping(离目标2米远)。请注意,这并不能阻止agent在离目标几公里远的相反方向上误入歧途,而且目标有时可能在agent附近取样。因此,我们的课程方案自然地结合了简单和困难的案例,后者在一段时间内变得越来越普遍。
    • 6.2. Goal Representation

      • 如3.1节所述,我们的任务使用目标描述:是到一组固定地标的标准化距离向量。我们手动定义了涵盖纽约、巴黎和伦敦的644个地标,其中一些在图2中可见。如图11b所示,将地标密度减少到一半、四分之一或八分之一(50%、25%、12.5%)似乎不会降低性能。
      • 尽管基于地标的目标表示有很多优点(它是可扩展的,很容易扩展到新的城市,并且不依赖于任意的缩放或地图协作的规范化),我们研究了一些替代表示:(a):在agent导航的区域内,经纬度标量坐标规范化为0到1之间(图11b中的Lat/long标量)  (b):上述世界坐标的二进制表示Lat/long二进制表示用35个箱子表示X, 35个箱子表示Y,每个箱子覆盖100米。经纬度标量目标表示表现最好。然而,由于所有的地标表示在保持独立于坐标系统的情况下执行得很好,所以我们使用这个表示作为规范表示。
      • 最后,为了评估”以目标作为条件的agent“的重要性,我们还通过删除输入gt来训练一个没有目标的CityNav-agent。这个agent的糟糕性能(图11b)证实了我们的方法的性能不能仅仅归功于对街道图的探索。无目标CityNav-agent运行在不断增大半径的圆上。对这种行为的一种合理解释是:agent“盲目地”探索环境,每个地点最多只访问一次,希望找到目标。
  • 7. Conclusion

    • 导航是一项重要的认知任务,使人类和动物能够在没有地图的复杂世界中穿梭。我们提出了一种深度RL导航方法来解决城市规模实际环境中的任务,介绍并分析了一种新的快递任务,并提出了一个多城市神经网络agent架构来演示向新环境的迁移。

  • B. Further Analysis

    • B.1. Architecture Ablation Analysis

      • 分析中,我们使用的在纽约城中训练的agent,使用2天的learning curriculum和在200m时的早期奖励。我们辅助任务如何帮助学习。我们用到达目标的episode的平均奖励来量化性能表现。每个实验用随机种子重复五次。我们展示最终的平均奖励,并绘制奖励统计量的均值和标准差。图12显示,航向辅助任务结合skip-connection获得了更好的性能。CityNav的性能明显优于GoalNav(标准RL的变种)。CityNav在航向预测方面与GoalNav表现相当,但是后者在没有重新训练或添加特定于城市的组件的情况下不能适应新城市,而具有特定地区LSTM的Multii-CityNav可以。我们最弱的baseline(CITYNAV-无视觉)表现不佳,因为agent不能利用视觉线索执行导航任务。由于目标是不可见的,并且我们的agent具有广泛变化的视觉输入,所以不适合在卷积层上面增加奖励预测辅助任务。我们保留了2-LSTM架构,并通过航向和邻近遍历性预测代替了深度预测(因为在数据集上不可行)。我们没有实施闭环检测,因为它在原始论文中表现很差,并使用了地图信息。
    • B.2. Allocentric and Egocentric Goal Representation

      • 【这一段没太看懂。。】我们对特定区域LSTM的256个隐藏单元的激活情况进行了分析,通过训练编码器(2层的多层感知机,隐藏层有128个单元,修正非线性传递函数)以定位agent和目标,以及指向目标的自我中心。非自我中心的解码器是和经纬度有关的多分类器,并有50ˆ50bin(伦敦)或35ˆ35bin(纽约),每bin占地面积大小100mˆ100m。以自我为中心的解码器有16个方向bin。图13显示了沿3个轨迹的agent位置的噪声的解码和目标的解码(这里是圣保罗),与地面真实轨迹和目标位置重叠。自中心方向解码的平均误差为60度(随机预测是90度),suggesting some decoding but not a cartesian manifold representation in the hidden units of the LSTM.
    • B.3. Reward Shaping: Goal Rewards vs. Rewards

      • 如果agent在距离目标1米以内,则认为agent已经达到目标,而reward-shaping在于在距离目标2米以内给予agent早期奖励。早起奖励的形式如下:
      • 其中,dgt是agent当前位置到目标的距离,rg是agent在达到目标后会得到的奖励。每个全景图/节点只能获得一次早期奖励,而且只有当dt到目标的距离减少时(为了避免agent形成在目标周围兜圈子获取早期奖励的行为,而不是直接朝着目标前进)。然而,根据agent对目标所采取的路径,如果其采取更长的路径到达目标而不是更短的路径,则它可以获得稍多的奖励。在整个论文中,为了便于与包含reward-shaping的实验进行比较,我们只展示目标位置的奖励。
  • C. Implementation Details

    • C.1. Neural Network Architecture

      • 对于本文的所有实验,我们使用了Deep RL的标准视觉模型(Mnih et al.2016),它有两个卷积层,然后是一个全连接层。Baseline-GoalNav架构有一个单独的循环层(LSTM),我们从中预测策略和值函数,类似于(Mnih et al.2016)。
      • 图像编码器如下所示。第一层卷积核大小为8x8,步长为4x4,以及16个feature map。第二层核大小为4x4,stride为2x2,有32个feature map。全连通层有256个单元,输出256维视觉特征ft。层之间用的是relu。
      • 编码器的输出,作为输入连接到策略LSTM。策略LSTM还有其他的输入:过去的奖励r t-1以及之前的动作a t-1(用5维one-hot编码表示——对应于五种动作)。
      • 目标描述也是一个输入:在GoalNav中直接输入给策略LSTM,在CityNav/MultiCityNav中输入给对应的目标LSTM。对于基于地标的目标表征,gt是一个包含460个元素的向量(有关纽约和伦敦环境中地标位置的完整列表,请参阅D部分)。对于基于经纬度的目标表征,gt是经纬度的二维向量,在相关环境中坐标归一化为0到1之间。对于二进制的经纬度坐标表征,在纽约分别用35个单位表示经度和维度,每个单位代表100m,向量gt有70个元素。
      • 目标LSTM也从卷积编码器接收256维数据作为输入。目标LSTM包含256个单元的隐藏层,接一个tanh函数,p=0.5的drop-out层,然后是64维的线性层,最后是tanh。针对CityNav或者MultiCityNav,最后目标LSTM输出64维,并输入到策略LSTM。我们之所以选择这样的bottleneck(由droppout,256到64的线性层,以及非线性函数),是为了让目标LSTM对噪声更加鲁棒,并且只发送少量信息(agent关于目标的egocentric position相关)给策略LSTM。请注意,就算没有这个目标LSTM,CityNav-agent仍然可以被训练解决导航任务。
      • 类似于(Mnih et al., 2016),策略LSTM包含了256个单元的隐藏层,后接两个平行的层:一个从256到1的线性层用来输出值函数,一个从256到5的线性层(5是动作的数量)后接一个非线性的softmax输出策略函数。
      • 航向辅助任务θt使用了一个具有128单元的隐藏层的MPL,连接到目标LSTM的每一个隐藏单元,输出一个16维的softmax,对应16个朝北的binned directions。辅助任务使用多项损失进行优化。
    • C.2. Learning Hyperparameters

      • 将所有辅助航向预测任务、值函数、熵正则化和策略函数的损加在一起,然送到RMSProp算法进行学习。航向预测的权值为1,熵的权值为0.004,值函数的权值为0.5。
      • 在我们所有的实验中,我们用IMPALA训练我们的agent,这是一种深度强化学习的演员-批评家式的实现,它将表演和学习分离开来。在我们的实验中,IMPALA在单个城市任务上的表现与A3C相似,但是已经证明它可以比A3C更好地处理多任务学习,所以在我们的多城市迁移学习实验中,我们更喜欢A3C。我们使用256个actor来实现CityNav, 512个actor来实现MultiCityNav,批处理大小分别为256个或512个,序列的展开长度为50。我们使用0.001的学习率,在2B步(NYU)、4B步(London)或8B步(多城市和转移学习实验)后线性退火到0。Bellman方程中的贴现系数为0.99。为了梯度计算的目的,奖励被缩减为1。
    • C.3. Curriculum Learning

      • 由于学习算法的分布式特性,使用表演者和倾听者的Wall clock实现curriculum learning的阶段一阶段二是很容易的,相比于和演员共享步数,这就解释了为什么阶段持续时间用天数来表示,而不是用给定的步骤数来表示。通过我们的软件实现、硬件、批处理大小以及参与者的数量,分布式学习算法的运行速度约为6000步/秒,一天的训练大约相当于500M步。
  • D. Environment

    • 为了对来自纽约曼哈顿的数据进行实验,我们使用了一个更大的街景图的子区域,其中包含256961个节点和266040条边。我们按照这样的方式定义5个区域:根据给出坐标系选一个起始点,使用广度优先搜索在全景图邻接图中收集全景图,直到搜索树的给定深度。我们定义的区域如下:
      • 华尔街/曼哈顿下城:6917个节点,7191条边,200深搜索树(40.705510,- 74.013589)。
      • NYU / Greenwich Village: 17227个节点,17987条边,200深搜索树(40.731342,- 73.996903)。
      • Midtown: 16185个节点,16723条边,200深搜索树(40.756889,-73.986147)。
      • 中央公园:10557个节点,10896条边,200深搜索树(40.773863,-73.971984)。
      • Harlem: 14589个节点和15099条边,220个深度搜索树(40.806379,-73.950124)。
  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值