论文阅读:《Improving Target-driven Visual Navigation withAttention on 3D Spatial Relationships》

摘要

具身智能任务从关注互联网图像的任务转向涉及具身Agent的主动设置,这些Agent在3D环境中感知和行动。本文研究了在三维室内场景中使用深度强化学习(DRL)的目标驱动视觉导航,其导航任务旨在训练一个智能体,该智能体可以仅基于自我中心视图,从任何可能的起始位置智能地做出一系列决策,以到达预先指定的目标位置。 然而,目前大多数导航方法都面临着一些具有挑战性的问题,如数据效率、自动避障和泛化。泛化问题是指Agent不具备将以往经验中学习到的导航技能传递到未知目标和场景的能力。 为了解决这些问题,我们在经典的DRL框架中加入了两个设计:attention on 3D knowledge graph(KG)和target skill extension(TSE)模块。 一方面,我们提出的方法结合视觉特征和三维空间表示来学习导航策略。 另一方面,TSE模块用于生成子目标,允许Agent从失败中学习。 具体地说,我们的三维空间关系是通过最近流行的图卷积网络(GCN)来编码的。考虑到现实世界的设置,我们的工作还考虑了开放动作,并在传统的导航环境中添加了可操作的目标。这些比较困难的设置被用来测试DRL Agent是否真正理解它的任务、导航环境,并能够进行推理。 我们在AI2-THOR中进行的实验表明,我们的模型在SR和SPL指标上都优于基线,并提高了跨目标和场景的泛化能力。

介绍

从被要求“打开咖啡机下的橱柜,给我一个里面的杯子”的家庭服务机器人,到帮助视障佩戴者在陌生地铁中导航的设备,下一代人工智能助手需要展示广泛的能力。 为了发展这些技能,许多研究人员认为最有效的方法是专注于具身AI任务,如视觉导航[1]、指令遵循[2]、具身问答(EQA)[3]。 这些任务使用交互式环境而不是依赖于静态数据集(如ImageNet[4],COCO[5],VQA[6])来支持系统的训练。 与基于互联网图像数据集的任务相比,具身AI任务需要主动感知、长期规划和从交互中学习的特殊技能。

本文主要研究了在三维室内场景中目标驱动的视觉导航,即Agent通过自我中心的视图感知环境,并能够执行一系列动作,如向前移动、向上看、向右转等。指示机器人的一种自然方式是要求它在某个位置附近移动,比如一个地方(例如“去沙发”)[7]、[8]或某个房间(例如“去厨房”)[9]。 此外,机器人还可以执行自然语言指令或找到有用的信息来回答问题[2],[3]。 与[1]类似,我们不是用语言来命令机器人,而是通过向机器人展示远处目标的单一图像来与机器人交流(见图1)。 该智能体需要根据所分配的目标图像从任何可能的起始位置智能地导航到目的地。 在每一个时间步骤中,智能体观察所处的环境,同时与给定的目标图像进行匹配,确定下一步的行动。

训练一个像人类一样具有智能导航能力的智能体(例如:少样本学习、避障、定向探索)面临着许多困难和挑战。目前的算法大多采用像素级的视觉特征来学习最优策略,通过流行的深度强化学习算法来克服这些问题。然而,以这种方式训练的智能体在未见过的目标和场景[9],[10]上表现不佳。一般情况下,训练后的agent可以利用训练目标的场景信息,但在对未见过的目标和场景进行测试时,却无法做到这一点。目前,研究人员对这一泛化问题进行了一些研究,并对具身AI任务[11]-[14]进行了一些实验。相反,我们从知识图谱的角度进行研究,因为很多常见的场景(如图像或文本)一般都可以转换成图,我们的视觉系统也以图的形式对我们所看到的东西进行建模。因此,借鉴人类的导航机制可能是实现合理导航性能的一个很好的途径。对于人类来说,我们的视觉系统是如此强大,以至于我们只会采取使我们更接近目标位置的行动,并且可以在未见过的环境中自由导航。在探索了众多的环境之后,我们可以建立一个强大的3D知识库(见图2)。从视觉系统获得的三维知识为我们提供了大量的信息,如对象属性(如颜色、形状、大小、距离、开度、类别),障碍方向(如表在左边),当前视场中对象之间的局部空间关系(如左、右、前、下、上、上),和全局空间信息,总结为导航推理。例如,根据经验,我们知道鸡蛋通常被放在封闭的冰箱里,而杯子通常被放在咖啡机旁边,撞到桌子会导致摔倒。这种知识总结能力可能是我们实现迁移学习、进行目标诱导探索、避免障碍的必要因素。因此,本研究拟将三维知识图谱整合到经典的DRL框架中,帮助agent建立这样的导航知识系统。我们在agent探索过程中提取对象之间的三维空间关系来形成图,然后应用图卷积网络来获取所建立图的节点特征。此外,当我们观察世界时,我们的视觉系统实际上并不是关注整个图像的每个部分,而是选择特定的部分。另一方面,我们将根据之前观察到的图像,了解未来应该聚焦在哪里。由于我们的视觉系统更倾向于关注辅助判断的部分信息,而忽略不相关的信息,我们进一步使用注意力机制,学习关注当前视场或目标图像中最重要的参考(对象)来引导策略搜索。我们的策略最终取决于图表示和视觉特性来做出最终决定。

稀疏奖励是深度强化学习中的经典问题,也是导致学习困难的主要原因。 HER[15]允许从稀疏的奖励中进行样本有效的学习,并在用机械臂操纵物体的任务中取得了良好的效果。 根据HER的原理,我们提出了一个模块来解决视觉导航中的稀疏奖励问题。 我们的基本思想是Agent的大部分探索可能失败,但Agent仍然可以从这些失败的探索中学习。 受此启发,机器人探索的一条轨迹不仅包含从起点到目的地的信息,还包含如何到达行程中间点的信息,因此如果切换目标,那么失败的体验可以成为到达其他目标的成功体验。 我们引入了一个示例增强模块,称为target skill extension(TSE),它在训练过程中生成子目标,并允许从失败中学习。 从Agent搜索的一条轨迹中,选择包含查找对象或其他合理对象的位置作为新的子目标,并根据这些子目标将该轨迹划分为多个轨迹。 最后,我们的模型对这些分割后的轨迹进行训练,以提高采样效率并提取导航策略。 我们的实验表明,训练子目标大大加快了训练过程,并且有更大的潜力学习更广义的导航规则。

我们在智能体的词汇表中添加了一个专用操作:Stop,而不是认为当智能体移动到足够接近目标时导航会自动终止。为了表明这种理解,我们的智能体需要在到达目的地时发出Stop操作。 否则,导航将被视为失败。 除了关注环境中可以直接发现的静态目标外,我们还采用了可操作目标来评估导航性能。在现实世界中,我们希望机器人寻找的东西并不总是可见的。例如,鸡蛋通常放在一个封闭的冰箱里,只有当智能体走到冰箱前面并打开它时,才能被发现。如图1所示引入了可操作目标,即在Agent找到目标容器并打开之前,导航任务不会成功。此外,我们还使用模仿学习(IL)来训练策略,利用少量的演示数据来辅助智能体。 我们在AI2-Thor[16]中评估了我们的方法,它提供了接近照片真实感的室内环境和对物体操纵动作的支持。 由于目前只有文献[1]关注于目标驱动的视觉导航,所以我们主要将结果与他们的工作进行比较。 但是我们也报告了使用LSTM的更高级体系结构的导航性能[17]。 实验结果表明,与基线相比,我们的方法有了很大的改进。

相关工作

视觉导航

传统的导航方法将导航任务分解为两个子任务,首先建立场景的三维地图,然后在此地图中进行规划[18]-[20]。最近深度学习和强化学习的成功使得基于学习的导航方法更加流行。基于学习的导航任务可以从几个维度来区分,如视觉语义导航[8]、[14]、[21]-[23]、指令跟随[2]、[7]、[24]-[28]和EQA[3]、[29]。 在我们的例子中,目标是以图像的形式给智能体的。 相对于指令跟随和EQA,我们将评估指标只考虑导航组件的导航任务作为研究重点。

早期以学习为基础的导航研究主要针对合成游戏环境中的导航,如Vizdoom[30]、Minecraft[11]和DeepMind Lab[31]。 [32]使用前馈体系结构来学习深度后继表示。 [33]将深度技能网络纳入层次化的DRL网络体系结构,实现知识保留。 [34]和[35]通过引入自监督辅助任务来提高迷宫中的导航能力。 然而,这些工作都是在相同训练场景或相同目标下评估导航性能的。 我们的目标是训练一个具身智能体,它可以将学习到的导航技能泛化到未见过的场景和目标。

最近的一些研究评估了在稍微不同的场景下的导航性能,这些场景在训练中没有使用。[11]研究了各种具有外部记忆的q -网络如何很好地推广到未见过的或更大的地图。[36]对深度q网络的迁移学习进行了实证研究。[12]使用一个空间结构的2D内存图像来存储关于长时间滞后的环境信息。[25]提出了一个分层的体系结构,其中元控制器学习使用获得的技能。[7]使用gated attention机制来学习策略。然而,这些工作要么专注于过于简化的任务,要么只对像素级变化或小迷宫的环境进行轻微的测试。相比之下,我们使用了更多样化的环境,其中包含了不同的视觉和结构观察。

最新的导航研究主要集中在多目标任务和泛化能力上,建立了更加逼真的三维仿真环境,如AI2-Thor[16]、House3D[37]、Matterport 3D[38]等。 [21]开发了一个基于后继表示的深度预测模型,以确保交叉任务的泛化。 [39]使用自我监督探索收集的数据来学习目标条件的技能策略。 [8]使用元强化学习方法来学习鼓励有效导航的自监督交互损失。 与我们的工作最直接相关的研究是[1],我们都将我们的目标表示为RGB图像。 他们提出了一个AC模型,其策略是目标和当前状态的函数。然而,我们使用三维知识图谱和子目标来提高跨场景和跨目标的性能。 更重要的是,我们包含了更多种类的动作,并包括停止动作。 特别是,我们创建了可操作的目标,发现其中一些目标需要交互。

深度强化学习

知识图谱

本文方法

Agent通过视觉识别构造知识图谱,并通过注意力机制推理导航知识进行决策。图3阐述了基于空间关系的视觉导航系统的基本框架。

问题定义 

我们的目标是训练一个能够找到最小长度的动作序列以到达预先指定的目标位置同时避开障碍物的智能体。我们的Agent通过RGB图像感知目标位置和导航环境。考虑到视觉导航的序贯决策性质,我们将导航任务描述为一个部分可观察的马尔可夫决策过程(POMDP)问题。 在每个时刻t,智能体接收到一个观察Ot,然后产生一个动作At。 一旦行动被采取,智能体收到rt和来自环境的新观察Ot+1。 智能st是它在时间t时的观察的函数,st=f(ot)。

注意,我们并不假设环境会在智能体到达目标位置时通知它,因为这个设置使得智能体不能自我意识到它是否已经到达目标位置。 相反,我们考虑stop操作,并期望智能体在到达目标位置时发出此操作。随之而来的是,这使得Agent的学习过程由于更稀疏的奖励问题而变得更具挑战性。然而,我们强调,引入stop操作更好地使智能体推广到现实世界的设置。 我们受过训练的智能体会真正明白它的任务是什么,以及它是否完成了任务。另外,我们的导航任务涉及两种类型的目标:可操作目标和静态目标。静态目标是指在环境中通过随机行走可以直接看到的对象。可操作的目标通常隐藏在一些容器中(如冰箱、抽屉、橱柜),除非采取打开操作,否则无法直接找到。 成功地导航到可操作的目标需要对场景有深刻的理解,智能体必须了解哪些对象可以打开,并推断发现对象可能隐藏在哪些容器中。

策略学习

我们利用深度强化学习算法来学习最优导航策略,它学习从二维图像到三维场景中的一个动作的映射。使用深度强化学习的导航技能是通过最大化累积奖励来学习的。我们的导航任务可以看作是一个多目标学习问题,因此我们的策略需要同时考虑输入和目标。我们的策略以当前观测Ot和发现目标图像Og为输入进行决策。Agent在每个时间步t的动作由参数化策略函数\pi (a_t|s_t,s_g;\theta )决定,该函数允许我们训练的Agent在多个目标之间进行泛化。我们采用A3C算法,该算法依赖于在给定当前状态St和目标状态Sg的情况下学习策略\pi (a_t|s_t,s_g;\theta )和值函数V (s_t,s_g;\theta_v )。 A3C通过最小化损失函数来优化策略函数:

L_\pi(\theta )=-\mathbb{E} [\sum_{t=1}^{T}(R_t-V (s_t,s_g;\theta_v )) log\pi (a_t|s_t,s_g;\theta )]

其中\theta\theta_v分别是actor网络和critic网络的参数。T是探索路径的长度。

R_t=\sum_{i=0}^{k-1}\gamma ^i r_{t+i}+\gamma ^kV(s_{t+k},s_g;\theta _v)

 通过最小化损失来更新价值函数:

L_v(\theta _v)=\mathbb{E} [(R_t-V(s_t,s_g;\theta_v ))^2]

 A3C总的损失函数为:

L_{A3C}(\theta ,\theta _v)=L_\pi (\theta )+\alpha L_v (\theta_v )

其中\alpha是常数。

在A3C中,多个Agent实例与多个环境并行交互,既能加速学习,又能稳定学习。 我们构建的A3C体系结构使用一个LSTM[17]和两个MLP来共同逼近策略\pi (a_t|s_t,s_g;\theta )和值函数v (s_t,s_g;\theta_v )

视觉特征

我们使用在ImageNet数据库中训练过的ResNet50来提取每个输入观测的视觉特征X_t。此外,我们还应用该模块对目标图像进行了表示。然后,我们使用孪生神经网络将当前观测和目标图像的视觉特征连接起来[56]。Siamese框架是一种从数据中训练相似性度量的方法。与[1]类似,利用两个权重共享的孪生神经网络将当前观测和目标的图像表示转换到同一个嵌入空间。 然后通过一个全连通神经网络将两个嵌入点的信息融合,形成一个联合表示。

X_t=f(o_t;\theta_{ResNet})

X_g=f(o_g;\theta_{ResNet})

I_t=\sigma (W_f[\sigma (W_sX_t),\sigma (W_sX_g)])

其中\theta _{ResNet}是resnet50网络的参数,W_s是孪生神经网络的参数,W_f是融合网络的参数。 σ表示RELU激活函数,[,]表示级联。

空间关系

目前的研究大多直接基于像素级特征学习导航策略,但在对未知目标和场景进行测试时,泛化能力较差[10]。 除了提取视觉特征外,我们还提出了一种在原有深度强化学习框架中引入三维知识图谱的模型。利用三维知识图谱可以帮助Agent避免冲突,引导Agent以最短路径到达目标位置。 此外,我们使用最近提出的图卷积网络(GCN)[57]来计算决策的空间表示。

注意,如图2所示,3D知识图谱可以编码对象之间的多个空间关系(如前、左、右、内、上、下),我们的导航空间知识需要在Agent探索过程中学习。 我们用G=(V,E)表示三维知识图谱 。 具体地说,每一个节点v∈V表示一个物体,每一条边e∈E表示一对物体之间的一种关系。 我们的Agent需要具备两个重要的技能来构造我们的3D知识图谱。一个是智能体必须知道当前观察和目标图像中有什么物体。此外,智能体还可以了解这些对象之间的关系。由于目标检测不是我们的主要任务,并且[29]已经证明了对AI2-THOR中的训练场景进行微调的Yolov3[58]可以成为一个很好的目标检测器,所以我们直接从AI2-THOR中获取目标信息来解决第一个问题。值得注意的是,环境提供的对象信息仍然需要我们的Agent学习常识。例如,我们的智能体必须了解微波可以打开,杯子通常在咖啡机旁边,向前移动是不允许的,因为前面有一张桌子。为了解决第二个问题,我们在目前的工作中只考虑了对象之间的邻近关系。我们的三维知识图谱包括AI2-THOR中出现的所有对象,如果两个节点都可见,则用边连接两个节点。 如果一个物体距离智能体的摄像机在1.5米以内,则该物体被认为是可见的。 然后以邻接矩阵的形式给出了我们的三维知识图谱。 在细节上,如图所示4,关系提取模块首先提取可见对象之间的多个关系。具体地说,我们用一个二进制向量R来表示可见的对象信息,R中每个位置的二进制值表示对应的对象是否可见,我们表示当前观测中可见对象R_t和目标图像中可见对象R_g的总可见对象R_z。 然后,基于所构造的知识图谱建立邻接矩阵A,并将每个节点特征H^{(0)}初始化为一个one-hot特征向量。 通过对A进行规范化,使每个节点都包含自己的节点特征来获得\hat{A}。 图神经网络的核心思想是利用edge信息聚集node信息,生成新的node表示。我们进一步进行空间信息传播,利用GCN计算节点特征向量H:

H^{(l+1)}=\sigma (\hat{A}H^{(l)}W^{(l)})

其中H^{(0)}=II是一个单位矩阵,W^{(l)}是第l个GCN层的参数。\sigma是RELU激活函数。最后得到的节点特征H对导航任务的空间知识进行编码。

由于我们的视觉系统更多地关注辅助判断的部分信息,而忽略了无关信息,因此我们采用了注意机制来总结空间知识,以便导航。 例如,如果目标经常在架子旁边,而架子在左边,左边也没有障碍物,那么下一个动作应该向左移动。有些时候,也许图像中的几个关键对象可以做出确定性的决定。如图4所示,让H_tH_g分别对当前观测和目标图像的GCN空间特征进行编码。最终的注意力向量H_a是在时间步长t时图像中最相关的目标的动态概率表示,以确定目标的位置。 对于每个对象i,注意力机制模块产生一个正权重\alpha _i,该权重可以解释为对象i是产生下一个动作所关注的正确对象的概率。由于Agent的下一步行动是由目标和当前的观测结果决定的,因此每个目标的权重\alpha _i是由空间特征H_tH_g决定的。就像视觉特征一样,我们使用相同的融合方法来得到融合的空间特征Q,我们约束了当前观察对象和目标图像中注意力的选择。我们的智能体还学习目标对象之间最合适的引用是什么。然后,我们使用两个全连接层(FC)计算最终的空间表示H_{a(i)}i=1,...,|V|对应于提取的不同对象的概率。H_a的计算公式为:

Q={W}'_f[\sigma ({W}'_sH_t),\sigma ({W}'_sH_g)]

{Q}' =(QW_{fc1}W_{fc2}R_z)Q

H_{a(i)}=\frac{exp({q}'_i)}{ {\textstyle \sum_{i=1}^{|V|}}exp({q}'_i)}

其中{W}'_s{W}'_f分别是孪生层和融合层的参数,W_{fc1}W_{fc2}分别FC层的参数,Q=[q_1,...,q_{|V|}]是融合空间向量,\sigma是RELU激活函数。

最后,将视觉特征和空间特征的联合表示送入DRL模块,获得动作输出。

子目标抽取

稀疏奖励问题是深度强化学习中的一个经典问题,由于搜索空间过大,使得Agent不能频繁地获得奖励。受此启发,机器人探索的一条轨迹不仅包含从起点到目的地的信息,还包含如何到达行程中间点的信息,因此如果切换目标,那么失败的经验可以成为到达其他目标的成功经验。这样,我们的智能体也可以从失败中吸取教训。 此外,在我们的设置中,A3C算法使用多个线程学习一个策略,每个线程针对不同的目标学习。但是,一个线程学习到的目标仍然可能会被其他线程遇到。 我们扩展了传统的A3C,将数据增强的子目标结合起来,并将其称为Target skill extension(TSE)模块。 假设<s_1,a_1,r_1,...,s_T,a_T,r_T>是Agent探索环境后得到的轨迹,其中s_1是随机起始状态,s_T是终止状态。

以往的方法只获取如何从s_1s_T的知识,因为它们只训练策略\pi(a_t|s_i,s_T;\theta )(i\le T),然后丢弃这条轨迹,开始下一轮新的探索。然而,这种训练方式并没有充分利用所探索的经验。对于每个线程,除了训练\pi(a_t|s_i,s_T;\theta )外,如果s_j是一个合理的子目标,我们的TSE模块还训练策略\pi(a_t|s_i,s_j;\theta)(i\le j)。 有许多可能的方法来定义子目标,然后根据它们将一个轨迹划分为多个轨迹。 如图5所示,对于每个采样轨迹,选择至少包含一个新目标(如s_5)或由其他线程训练的目标(如s_3)作为子目标。新对象是指可以拿起的、不用于训练的对象。这样,我们将一条轨迹分割成不同目标的多条轨迹进行训练。每次训练一个子轨迹后,我们总是将全局网络的参数分配给局部网络。

模仿学习

由于智能体的状态空间巨大,奖励稀疏,因此采用纯深度强化学习方法通常是不可行的,因此我们还采用了模仿学习来加快训练速度。我们对每个训练目标只使用一个专家轨迹来辅助智能体。生成最短路径通常不容易,从一个状态到另一个状态有多种合理的方法。相反,我们通过限制动作空间(向后移动、向左移动、向右旋转)和它们的优先级来生成从目标位置s_t到随机起点s_1的专家轨迹。我们选择一个动作,在采取这个选定的动作a_t后,环境的坐标将会改变。然后我们反转轨迹,得到一个从起点s_1到目标s_t的长度为n的轨迹。我们的路径生成方法可以保证我们得到一个近似的最优轨迹。我们不采用两阶段的训练过程,而是以在线的方式在一定的时间步数之前训练专家轨迹。

实验

实验设置

我们在3D室内环境AI2-Thor[16]中评估了我们的方法,它涵盖了四个不同的房间类别:厨房、起居室、卧室和浴室。与其他3D环境相比,AI2-THOR允许智能体执行几个动作来与场景交互,如打开、拾取和推入。 如果没有交互作用,AI2-THOR中的一些对象是不直接可见的。 例如,杯子是不可见的,因为在随机场景初始化开始时,它们总是隐藏在封闭的橱柜中。在我们的导航设置中,智能体可以执行两个交互操作(打开、关闭)来操作对象。各种各样的物体,如冰箱、橱柜和抽屉,都可以与之交互。AI2-Thor中总共有108个不同的对象,因此我们的3D知识图谱有V=108个对象。

我们的导航任务是训练一个智能体,它可以通过自我中心视图从一个随机的起始位置导航到一个预先指定的目标位置。特别地,我们的Agent通过预先指定的目标图像来感知其导航目标。我们选择可以拿起的物体(如苹果)或属于常见家居用品(如微波炉)作为导航目标。我们选择一个最近的位置作为静态目标和可操作目标的目的地。我们可采取行动的目标很可能藏在智能体无法直接看到的容器中。为了成功地找到可采取行动的目标,智能体必须有常识,例如,冰箱可以打开,苹果经常放在冰箱里。

如果智能体到达目的地并同时执行停止操作,则我们的导航任务被认为是成功的。 我们使用AI2Thor的导航、查看和交互命令进行实验。我们考虑动作空间A={move forward, move back, move right, move left, rotate right, rotate left, look up, look down, open object and stop}。 我们不包括关闭操作。当任务完成时,我们提供目标到达奖励(10.0),当我们的智能体到达目的地时,我们提供terminal奖励(0.01)。 为了鼓励更短的轨迹,我们增加了一个时间惩罚(-0.01)作为即时奖励。

由于在AI2-Thor中,厨房房间比其他类型的房间包含更多的可操作目标,我们在所有厨房房间中评估了我们的方法。 我们将厨房分成三个部分,20个培训室,5个验证室和5个测试室。 由于每个厨房房间大约有2个可操作的目标,我们选择20个有更多可操作目标的房间作为训练室。训练场景中所有可操作的目标都用于训练。在实践中,我们的TSE模块从每个探索的轨迹中随机采样5个子目标。 所有子目标轨迹连同探索的轨迹一起用于训练。

评估指标

SR和SPL

Baselines

(1)Random walk:即Agent在每个时间步从动作空间中随机选择一个动作。

(2)Imitation learning:其策略仅用模仿学习(IL)训练。在交叉熵损失的情况下,利用路径生成算法提供的演示动作进行有监督学习。

  (3)  FF A3C,它采用前馈(FF)网络,将前N帧和目标图像的串联特征作为输入,预测下一个动作。 由于他们的模型由场景特定层组成,这使得他们的模型缺乏对未见场景的泛化能力。

  (4)  LSTM A3C,采用与文献[1]相同的孪生融合方法得到视觉特征。然后视觉特征通过一个共享的LSTM来预测下一个动作。

 (5)  LSTM A3C+IL,将模仿学习融入到LSTM A3C中。 该模型不仅使用在线模仿学习,还使用A3C算法进行训练。

 (6)  LSTM A3C+TSE,将TSE模块集成到LSTM A3C中。 该模型还利用从探测轨迹中提取的子目标进行训练。

 (7)  LSTM A3C+IL+TSE,将模仿学习和TSE模块结合到LSTM A3C中。

 (8)  LSTM A3C+KG,将三维知识图谱(KG)融入LSTM A3C+IL+TSE中。它根据视觉特征和融合的空间特征学习导航策略Q。

 (9)  LSTM A3C+KG+Attention,这是我们最后提出的模型。 它在LSTM A3C+KG中加入了注意机制,并根据最终的空间表征和视觉特征产生动作。

结果

使用140个线程训练模型,每个线程学习不同的目标。对于每个训练线程,所有episode的最大长度为5000个时间步。 我们在TensorFlow[60]中实现我们的模型,并在NVIDIA GeForce GTX Titan RTX GPU上训练它们。 对于评估,我们选择在成功方面在验证集上表现最好的模型,并为每个目标运行100个不同的episode。智能体的初始位置是随机选择的,所有模型都使用相同的集合进行评估。 此外,初始位置距离目标位置至少10步。 当智能体到达目标位置时,或在执行最大步骤数后,测试集结束。 对见过的场景中见过的目标,最大步数被设置为100。未见过的目标,在见过和未见过的场景未见过的目标,最大步数设置为1000。 由于FF A3C对不同的场景采用不同的策略网络,其模型缺乏对未知场景的泛化能力,除非进行微调。 我们的模型和其他基线对不同场景的例子使用一个单一的策略网络,更加紧凑和可推广。

表1总结了我们提出的模型和基线的结果。我们展示了在见过场景中见过目标上的性能,然后展示了它们在见过场景中未见过目标上的泛化能力。最后,我们研究了在一组训练场景中学习到的导航技能转换到未见过场景的泛化能力。在我们的设置中,我们的目标分为两种类型,静态目标和可操作目标。 静态目标不需要任何特殊操作就可以直接可见,而可操作目标通常隐藏在封闭的容器中,需要打开操作才能找到。 我们分别提供了静态目标和可操作目标的性能,但我们只为这两类目标在所有场景中训练一个模型。

如表1所示,当Agent采用随机游动或仅采用模仿学习训练时,其性能很差。 由于搜索空间巨大,随机游动使得Agent到达目标的概率很低。 模仿学习仅用少量的专家数据进行训练,也缺乏导航能力。 我们还展示了我们的模型与纯A3C方法的比较结果。 我们可以看到,直接应用LSTM A3C不会产生明显的性能,即使在数百万个训练帧后,智能体也没有表现出学习。 另外,与LSTM A3C相比,FF A3C使用Scens pecific层学习策略效果较好,但由于学习参数较大,学习速度较慢。 FF A3C在40M训练帧后似乎不收敛。

用LSTM A3C+IL和LSTM A3C+TSE训练的模型比FF A3C训练的模型性能更好,说明专家数据和子目标对加速智能体的学习速度有显著影响。处理稀疏奖励是强化学习中最大的挑战之一。在一定程度上,专家数据和子目标在解决稀疏奖励问题上都是有效的。 LSTM A3C+IL+TSE将IL和TSE模块结合在一起,比仅使用其中一个模块获得了略高的性能。与A3C+IL+TSE模型相比,LSTM+KG模型具有更好的导航性能。此外,我们的最终模型LSTM A3C+KG+注意力,取得了最好的结果,表明了注意力机制的有效性。

我们观察到,所有模型在可见场景和可见目标上的测试比在未见目标上的测试都获得了相对较高的性能。 此外,场景和目标都不可见的场景更具挑战性,无论是基线还是我们提出的模型,性能都急剧下降。 这些结果表明,所有的方法都容易出现过拟合,训练的Agent不能真正理解所处的环境。 然而,我们观察到我们的模型在看不见的场景(静态目标)上比没有3D知识图训练的模型提高了20%以上(可操作目标),在看不见的场景上提高了6%以上(可操作目标)。我们假设这是因为三维知识图谱便于学习可用于导航的一般性知识。结果表明,3D知识图谱能够从可感知环境中提取对策略学习至关重要的信息。

比较静态目标和可操作目标,对于所有方法,可操作目标的性能都明显低于静态目标。这可能有两个问题。一个是智能体需要推断查找目标位于哪个容器中。 再一个是环境中有很多同类型的容器,比如很多抽屉、柜子,智能体需要一个一个地去找,记住以前找过哪些

请注意,SPL是一个相当严格的度量。 在所有的方法中,我们观察到用SPL度量来评估Agent的性能非常差,这表明Agent很难以最短的方式找到目标。 在最好的情况下,50%的SPL预计是一个良好的导航性能水平[59]。 在我们的例子中,智能体相机的视场是正交的,所以当采取旋转操作时,两个连续的观察之间没有重叠。 因此,与人类可能获得的最短路径相反,智能体需要更多的探索时间步骤来整合信息来做出一系列决策。

给出了在未见过的场景中,在轨迹结束时至少有一个目标物体的最后一帧的平均碰撞次数和成功率。从表1的结果来看,由于LSTM A3C似乎没有学习能力,而FF A3C在未见场景中缺乏泛化能力,除非进行微调,因此在考虑未见场景的性能时,它们在当前情况下没有给出结果。如图6所示,与其他四个基线相比,我们的模型得到了更好的结果。这表明由三维知识图建立的导航系统有助于减少碰撞和进行目标诱导探索。

如图7所示,我们给出了我们的模型在一个厨房房间的空间知识预测的一个例子。在每一个时间步t上,我们的Agent选择一些最相关的对象来产生下一个动作。 注意,这些参与的对象可以来自当前的观察,用于推理或避障,也可以来自目标图像。 由于我们的目标图像也可以包含多个对象,智能体还需要从中选择信息最丰富的对象。 更重要的是,这种方式也给出了一个明确的指示,它正在寻找的最终目标。我们观察到,我们的智能体可以像人类一样,适当地注意适当的对象,从而引导下一步的行动。例如,在第1步,我们的智能体在计划执行look up操作时,大部分注意力都在烤面包机上。在第3步,我们的智能体在计划采取左移行动时关注杯子。 此外,我们注意到,几乎在每个时间步,智能体往往会提醒自己,他们正在寻找什么。注意,我们的注意力模型是端到端可训练的,我们不应用任何额外的注意力损失函数。 完全是根据交互损失自我推断的。 我们的结果表明,自构建的空间关系可以形成一般性的推理,并且在将来使用更复杂的三维知识图谱时具有传递已学技能的潜力。

为了理解我们的空间模型学习什么,我们检查由我们的GCN层学习的节点特征向量。图8显示了从第三个GCN层获得的节点特征向量的T-SNE[61]可视化。 我们观察到这些节点特征向量的空间排列通常与它们对应的TSNE二维投影一致。 例如,花瓶和雕像通常放在架子上,所以从图中我们可以看到它们的特征空间之间的距离也很近。 这意味着我们的模型已经学会了将对象投射到特征空间,同时保留它们的空间配置。

最后,我们论证了子目标和模仿学习对数据效率的影响。我们的实验采用10M训练帧和13个目标(7个静态目标和6个可操作目标)在一个厨房房间中进行。如图9的训练曲线所示,使用场景特定层训练的FF A3C比使用完全通用层训练的LSTM A3C收敛更快。尽管我们的路径算法生成的专家轨迹是次优路径,但采用模仿学习的LSTM A3C大大加快了学习过程。此外,具有TSE模块的LSTM A3C收敛速度也比FF A3C和LSTM A3C快,说明子目标在导航任务中可以很好地替代专家数据,至少在数据效率方面是如此。我们还测试了不同类型的子目标对训练结果的影响。TSE(见过的seen target)是指LSTM A3C采用只包含训练过的目标的子目标进行训练。TSE(targets)是指使用子目标进行训练的LSTM A3C,子目标包括训练目标和未见过目标。这两种不同类型的子目标都取得了很好的收敛效果。实验结果表明,我们的TSE模块确实充分利用了从失败中学习的经验数据,解决了传统强化学习中的奖励稀疏问题。结果表明,LSTM A3C+KG算法在空间信息增强的同时也能正常收敛。

总结

在本文中,我们提出了一个有效的模型来解决目标驱动的视觉导航问题,这是一个具身智能任务,agent必须通过第一视觉根据指定的目标图像智能导航到目的地。在我们的方法中,我们将三维知识图谱和子目标集成到经典的深度强化学习框架中,以提高导航性能。子目标由我们的TSE模块生成,并允许智能体从失败中学习。具体而言,我们利用图卷积网络和注意力机制形成空间知识推理和引导策略搜索。此外,在评估导航性能时,我们考虑了“stop”动作和可操作目标。我们的实验在AI2-THOR中进行了评估,结果表明自推理空间知识提高了跨目标和场景的泛化能力。实验也验证了子目标能够很好地解决数据效率问题。在未来的研究中,我们将尝试对更复杂的空间关系类型进行实验,以获得更好的结果。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 提升单目深度估计方法来改进海洋透视。 海洋透视是指由于海洋介质的光学特性,人眼在水下观察物体时出现的模糊和失真现象。为了改善海洋透视,可以利用单目深度估计方法。 单目深度估计是借助计算机视觉技术来估计图像中每个像素点与相机的距离。在传统的单目深度估计方法中,主要依赖于图像中的几何和纹理信息来推断深度。然而,在海洋环境中,由于光线的折射和散射,图像中的几何和纹理信息丧失较多,导致传统方法的准确性下降。 为了克服这个问题,可以通过改进单目深度估计方法来提高海洋透视的效果。一种方法是利用深度学习技术,通过训练神经网络来学习从输入图像中预测深度的映射关系。可以使用已标注的水下图像数据集进行监督学习,使网络能够学习到更准确的深度估计模型。另外,还可以对网络进行迁移学习,使用在陆地环境下预训练的模型,在海洋环境中进行微调,以适应海洋透视的特殊情况。 另一个改进单目深度估计方法的途径是改进特征提取和匹配算法。可以通过使用更好的特征描述子和特征匹配算法,提高单目深度估计的稳定性和准确性。例如,可以使用基于学习的描述子,如深度卷积神经网络提取图像特征,再通过优化的匹配算法实现更准确的深度估计。 总之,通过利用深度学习和改进特征提取与匹配算法,可以显著提高单目深度估计方法在海洋透视上的效果。这将有助于提高水下图像的质量和可视性,在海洋环境下进行相关应用和研究。 ### 回答2: 提升单目深度估计方法以改善水下透视。水下透视是指我们在水下看到的物体变得模糊和失真的现象。为了解决这个问题,研究人员一直在探索使用单目深度估计方法来改善水下透视。 单目深度估计是通过使用单个摄像机来估计图像中物体的距离和深度。在水下,由于水的折射效应,光线会发生折射,导致图像失真。因此,传统的单目深度估计方法往往无法准确估计水下的物体距离和深度。 为了解决这个问题,研究人员提出了一些改进的单目深度估计方法。这些方法包括使用水下场景中的先验知识和模型,从而更好地估计水下物体的深度。例如,可以通过水下传感器捕获的信息来构建水下场景模型,并在深度估计过程中结合使用。此外,还可以利用水下图像的颜色和纹理信息,通过神经网络和机器学习方法进行深度估计。 这些改进的单目深度估计方法的应用可以在水下摄影、水下导航和水下探测等领域中发挥重要作用。例如,在水下摄影中,利用改进的深度估计方法可以提高图像的清晰度和质量,使得拍摄的照片更加真实和可视化。在水下导航和探测中,使用改进的单目深度估计方法可以提供更准确的水下环境信息,从而帮助人们更好地识别、定位和探测水下物体。 总之,改进的单目深度估计方法可以有效地改善水下透视问题,并在水下领域的各个应用中发挥重要作用。随着技术的不断发展,相信这些方法将进一步提升水下图像和数据的质量和可用性。 ### 回答3: 提升海洋透视图像的质量可以通过单目深度估计方法来实现。海洋透视图像通常受到水下湍流、波浪和光线散射等因素的影响,导致图像质量下降。而单目深度估计方法可以通过分析图像中的视差信息来估计场景中的深度信息。 单目深度估计方法有多种实现方式,其中一种常用的方法是基于卷积神经网络(CNN)。该方法通过训练一个深度估计网络,从输入图像中直接预测每个像素的深度信息。训练过程使用带有深度标签的真实图像和对应的深度地图进行,可以通过最小化预测深度与真实深度之间的差异来优化网络参数。 通过使用单目深度估计方法,可以从原始的海洋透视图像中获取更准确和清晰的深度信息。这将有助于改善海洋透视图像的视觉效果和质量。准确的深度信息可以用于场景还原、物体分割和虚实混合等应用中。此外,通过深度估计,还可以对图像进行后续处理,如去除湍流和波浪的影响,进一步提高视觉效果。 总而言之,使用单目深度估计方法可以有效地改善海洋透视图像的质量。这一方法通过分析图像中的视差信息来预测深度信息,从而提供更准确和清晰的深度信息。这将有助于改善海洋透视图像的视觉效果和质量,并为进一步的图像处理提供基础。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值