没有合适的资源?快使用搜索试试~ 我知道了~
Kuan Fang1Alexander Toshev2Li Fei-Fei1Silvio Savarese112t15380场景记忆变换器用于长时间跨度任务中的具身代理01 斯坦福大学 2 谷歌大脑0摘要0许多机器人应用需要代理在部分可观察的环境中执行长时间跨度的任务。在这种应用中,任何步骤的决策都可能依赖于远处接收到的观察。因此,能够正确地记忆和利用长期历史是至关重要的。在这项工作中,我们提出了一种新颖的基于记忆的策略,名为场景记忆变换器(SMT)。所提出的策略将每个观察嵌入并添加到记忆中,并使用注意机制来利用时空依赖关系。该模型是通用的,并且可以通过长时间的强化学习进行高效训练。在一系列视觉导航任务中,SMT相比现有的反应式和基于记忆的策略表现出更好的性能。01. 引言0由神经网络策略控制并通过强化学习算法进行训练的自主代理已经在各种机器人导航应用中使用[1, 2, 3, 22, 27, 31, 46,49,50]。在许多这些应用中,代理需要在未知环境中执行长时间跨度的任务。考虑一个机器人在一个大型未探索的建筑物中巡逻或搜索物体。通常,完成这样的任务需要机器人利用每一步接收到的观察,并增加对环境的了解,例如建筑结构,物体布置,已探索区域等。因此,对于代理来说,保持对过去观察和行动的详细记忆是至关重要的。赋予代理策略记忆的最常见方法是使用递归神经网络(RNN),其中LSTM[5]是一种常见选择。RNN通过将输入观察与每个时间步的状态向量相结合,将信息存储在固定大小的状态向量中。策略根据更新后的状态向量输出代理要执行的动作。然而,不幸的是,RNN经常无法捕捉到长期依赖关系。为了增强代理的规划和推理能力,已经提出了具有外部记忆的神经网络策略。0场景记忆0SMT策略任务0漫游0覆盖范围0搜索0策略网络0图1.场景记忆变换器(SMT)策略将每个观察嵌入并添加到记忆中。给定当前观察,注意机制应用于记忆以产生一个动作。SMT在几个视觉导航任务中取得了成功的应用,所有这些任务都具有较长的时间跨度。0提出了[31,48]。这种基于记忆的策略主要在部分可观察的环境中的机器人导航中进行了研究,其中神经网络学习对接收到的观察进行编码并将其写入类似地图的记忆中[15, 16, 18, 32,43]。尽管与反应式和RNN策略相比,现有的基于记忆的策略表现出更好的性能,但它们的灵活性和可扩展性有限。具体而言,这些记忆的设计涉及到强领域特定的归纳偏差,例如环境的2D布局,该布局的预定义大小,基于几何的记忆更新等。与此同时,RNN通常是这些基于记忆的策略的关键组成部分,用于利用时空依赖关系。因此,它们仍然受到RNN模型的缺点的影响。在这项工作中,我们提出了一种名为场景记忆变换器(SMT)的基于记忆的策略,它使用注意机制来理解部分可观察的环境中的长时间跨度机器人任务。该策略受到Transformer模型[42]的启发,该模型最近已成功应用于多个自然语言处理问题。如图1所示,SMT由两个模块组成:一个场景记忆,它嵌入并存储所有遇到的观察,以及一个策略网络,它使用场景记忆上的注意机制来产生一个动作。与现有方法相比,所提出的SMT策略在如何利用先前步骤中接收到的观察方面有所不同。SMT不像通常由RNN策略完成的那样,将过去的观察组合成一个单一的状态向量,而是将每个时间步的观察分别嵌入到场景记忆中。与大多数现有的5390记忆模型中,场景记忆仅仅是所有嵌入观测和聚合存储信息的决策,被推迟到稍后的时间点。我们认为,在长时间跨度的任务中,特定时间步骤的动作计算可能依赖于过去提供的任何信息,这可能无法在状态向量或类似地图的记忆中正确捕捉到。SMT中的策略网络采用注意机制而不是RNN来聚合场景记忆中的视觉和几何信息。该网络有效地学习利用存储的信息,并且随着时间跨度的增加而扩展得很好。因此,SMT有效地利用了长期的时空依赖关系,而不会在模型设计中承诺环境结构。虽然场景记忆随着剧集长度的增加呈线性增长,但它只在每个步骤存储一个嵌入向量。因此,我们可以轻松地存储数百个观测,而不会对设备内存造成任何负担。这种开销是合理的,因为它比具有更紧凑记忆的已建立策略提供了更高的性能。此外,由于原始模型的计算复杂性与场景记忆的大小呈二次增长,我们在SMT中引入了一种记忆分解过程。这将计算复杂性降低为线性。当存储的观测数量较多时,将应用该过程。通过这种方式,我们可以利用大容量的存储器,而不会承受原始模型的计算负担。所提出的SMT的优点在三个长时间跨度的视觉导航任务(漫游,覆盖和搜索)上经过实证验证。我们使用深度Q学习[29]训练SMT策略,并首次展示了注意机制如何在强化学习设置中提高任务性能。在这些任务中,SMT明显且一致地优于现有的反应式和基于记忆的策略。视频可以在https://sites.google.com/ view/scene-memory-transformer找到。02. 相关工作0基于RNN的基于记忆的策略。在机器人导航和其他任务的强化学习环境中,已经广泛研究了使用RNN的策略。最常见的架构选择是LSTM[19]。例如,Mirowski等人[27]训练了一个使用LSTM策略的A3C[28]代理在合成迷宫中导航。Wu等人[45]使用了一个带有多模态输入的门控LSTM策略,用于房间导航。Moursavian等人[30]使用了一个LSTM策略进行目标驱动导航。RNN的缺点主要有两个。首先,将所有过去的观测合并为一个固定大小的状态向量可能会丢失有用的信息。其次,RNN在长序列的优化中存在困难[33,41]。0通过时间(BPTT)进行训练。相反,我们的模型将每个观测单独存储在内存中,并且仅在计算动作时聚合信息。它使用注意机制提取时空依赖关系,因此不会受到BPTT的挑战的限制。外部记忆。记忆模型已经在自然语言处理中广泛研究,用于各种任务,如翻译[42],问答[38],摘要[26]。这些模型是相当通用的,大多基于注意函数,并设计用于处理长序列或大型集合格式的输入数据。当涉及到自主代理时,大多数方法将内存结构化为2D网格。它们被应用于视觉导航[15,16,32,47],交互式问答[13]和定位[7,18,20]。这些方法表现出一定的刚性。例如,2D布局的大小是固定的,并且为环境的每个部分分配了相同数量的内存容量。Henriques等人[18]设计了一个具有2.5D空间结构表示的可微分映射模块。这种结构化记忆需要写操作,当代理执行任务时,将所有观测压缩,并且可能会丢失以后在任务执行中可能有用的信息。相反,我们的SMT保留所有嵌入观测,并允许策略在任何步骤中根据需要对它们进行关注。此外,上述论文中的内存操作基于机器人定位的当前估计,其中内存正在被修改和访问。相反,我们以其原始形式保留所有姿态信息,因此允许更灵活的使用。对于自主代理的内存的更通用视角并不常见。Savinov等人[35]构建了环境的拓扑地图,并将其用于规划。Oh等人[31]在控制问题中使用单层注意解码器。然而,该方法依赖于LSTM作为内存控制器,这带来了BPTT的挑战。Khan等人[23]将非常通用的可微分神经计算机[14]应用于控制问题。虽然这种方法很难优化,并且仅应用于非常简单的导航任务。视觉导航。我们将SMT应用于一组视觉导航任务,这在计算机视觉和机器人技术中有着悠久的历史[6,10,39]。我们的方法属于视觉导航,其中代理没有关于环境的任何特定场景信息[8,9,36,40,44]。与最近关于导航任务的端到端训练策略的工作[2,22,27,46,49,50]一样,我们的模型不需要预先提供环境的地图。虽然[22,27]在3D迷宫中评估他们的模型,但我们的模型可以处理更结构化的环境,如由多个房间组成的逼真杂乱的室内场景。与[27,49,50]训练一个或几个已知场景的策略不同,我们训练的模型可以推广到未见过的房屋。 at-1ptIto1o2otFigure 2. The Scene Memory Transformer (SMT) policy. At each time step t, the observation ot is embedded and added to the scenememory. SMT has access to the full memory and produces an action according to the current observation.3. MethodIn this section, we first describe the problem setup. Thenwe introduce the Scene Memory Transformer (SMT) and itsvariations as shown in Fig. 2.3.1. Problem Setupτ = (st, at)Ht=1 of time horizon H unrolled by the policy.3.2. Scene Memory TransformerThe SMT policy, as outlined in Fig. 2, consists of twomodules. The first module is the scene memory M whichstores all past observations in an embedded form.Thismemory is updated at each time step. The second module,denoted by π(a|o, M), is an attention-based policy networkthat uses the updated scene memory to compute an distribu-tion over actions.In a nutshell, the model and its interaction with the envi-ronment at time t can be summarized as:ot∼P(ot|st)Mt=Update(Mt−1, ot)at∼π(at|ot, Mt)st+1∼T(st+1|st, at)In the following we define the above modules.3.2.1Scene MemoryThe scene memory M is intended to store all past observa-tions in an embedded form. It is our intent not to endowit with any geometric structure, but to keep it as generic aspossible. Moreover, we would like to avoid any loss of in-formation when writing to M and provide the policy withall available information from the history. So we separatelykeep observations of each step in the memory instead ofmerging them into a single state vector as in an RNN.The scene memory can be defined recursively as fol-lows. Initially it is set to the empty set ∅. At the currentstep, given an observation o = (I, p, aprev), as defined inSec. 3.1, we first embed all observation modalities, concate-5400我们对需要一个具有行动能力的智能体在未知环境中导航以达到任务目标的各种任务感兴趣。这些任务可以被公式化为部分可观察马尔可夫决策过程(POMDP)[21](S,A,O,R(s,a),T(s' | s,a),P(o |s)),其中S,A,O是状态、动作和观测空间,R(s,a)是奖励函数,T(s' | s,a)和P(o |s)是转移和观测概率。观测是一个由多个模态组成的元组o=(I,p,aprev)∈O。I表示由机器人上安装的摄像头传感器获取的RGB图像、深度图像和语义分割掩码的视觉数据。p是相对于该场景的起始姿态的智能体姿态,由环境估计或给定。aprev是上一个时间步骤中采取的动作。在我们的设置中,我们采用离散动作空间A ={前进,左转,右转},这是导航问题在平面表面上的常见选择。请注意,这些动作是在由P(s' |s,a)建模的噪声动力学下执行的,因此状态空间是连续的。虽然我们在任务和环境之间共享相同的O和A,但每个任务由不同的奖励函数R(s,a)定义,如第4.1节所述。每个任务的策略被训练以最大化预期回报,定义为累积奖励Eτ[�++AttU K VFC++AttU K VFC++AttK V UFC++AttU K VFCFPSMM̃MCψ(o) = FC({φI(I), φp(p), φa(aprev)})(1)Att(U, K, V ) = softmax(UKT )V(3)AttBlock(X, Y ) = LN(FC(H) + H)(4)π(a|o, M)=Cat(softmax(Q))(7)5410编码器 编码器 + 记忆分解 解码器0图3.编码器无记忆分解,编码器有记忆分解,解码器如第3.2.2节所示。0将它们连接起来,并应用全连接层 FC:0其中 φ I , φ p , φ a是每种模态的嵌入网络,如第3.4节所定义。为了获得下一步的记忆,我们通过将 ψ ( o ) 添加到集合中来更新它:0更新 ( M, o ) = M ∪ { ψ ( o ) } (2)0上述记忆随着回合长度线性增长。在我们的设计中,由于每个接收到的观察值都被嵌入到低维向量中,可以轻松地在硬件设备上存储数百个时间步。而RNNs受限于固定大小的状态向量,通常只能捕捉短期依赖关系。03.2.2 基于注意力的策略网络0策略网络 π ( a | o, M )使用当前观察值和场景记忆来计算动作空间上的分布。如图2所示,我们首先通过将上下文中的每个记忆元素转换为其他所有元素的上下文来对记忆进行编码。这一步骤有潜力捕捉环境中的时空依赖关系。然后,我们根据当前观察值解码一个动作,使用编码后的记忆作为上下文。注意机制。编码和解码都使用注意机制来定义,详见[42]。在其一般形式中,注意函数 Att 对 n 1 个注意力查询 U ∈ R n 1 × d k应用于 n 2 个值 V ∈ R n 2 × d v 和相关键 K ∈ R n 2 ×d k,其中 d k 和 d v 是键和值的维度。Att 的输出有 n 1个维度为 d v的元素,定义为值的加权和,其中权重基于查询和键之间的点积相似度:0一个注意力块 AttBlock 是基于上述函数构建的,它接受维度为d x 和 d y 的两个输入 X ∈ R n 1 × d x 和 Y ∈ R n 2 × dy。它将 X 投影到0将查询和 Y作为键值对输入到注意力块中。它由两个残差层组成。第一个应用于上述的 Att,第二个应用于全连接层:0其中 H = LN ( Att ( XW U , Y W K , Y W V ) + X )0其中 W U ∈ R d x × d k , W K ∈ R d y × d k 和 W V∈ R d y × d v是投影矩阵,LN代表层归一化[4]。我们选择 d v = d x作为残差层的维度。编码器。与[42]中一样,我们的SMT模型使用自注意力机制来编码记忆 M。具体来说,我们将 M用作注意力块的两个输入。如图3所示,这通过使用观察值与其他过去观察值的关系来转换每个嵌入观察值:0编码器 ( M ) = AttBlock ( M, M ) (5)0通过这种方式,模型提取了记忆中的时空依赖关系。解码器。解码器根据当前观察值给定上下文 C来产生动作,在我们的模型中,上下文是编码后的记忆。如图3所示,它应用了与编码器类似的机制,唯一的区别是注意力层中的查询是当前观察值的嵌入 ψ ( o ) :0解码器 ( o, C ) = AttBlock ( ψ ( o ) , C ) (6)0最终的SMT输出是动作空间 A 上的概率分布:0其中 Q = FC ( FC ( 解码器 ( o, 编码器 ( M ))))0其中Cat表示分类分布。这使我们得到了一个随机策略,我们可以从中抽样动作。经验上,这导致了更稳定的行为,避免了陷入次优状态。讨论。上述SMT模型基于Transformer模型中引入的编码器-解码器结构,该模型在自然语言处理(NLP)问题(如机器翻译、文本生成和摘要)上取得了成功。该模型的设计原则在NLP领域的强大实证结果的支持下,很好地转化到了机器人导航设置中,这是采用该模型的主要动机。首先,一个在大环境中移动的代理必须处理动态增长的过去观察数量。编码器-解码器结构在长文本输入的情况下表现出了强大的性能。其次,与常见的RNN或其他结构化的外部记忆不同,我们不对内存施加预定义的顺序或结构。相反,我们将时间和空间信息编码为观察的一部分,并通过编码器-解码器结构的注意机制让策略学习解释与任务相关的信息。54203.2.3 内存分解0SMT的计算复杂度主要由注意机制中查询-键对的数量决定。具体而言,由于自注意力,编码器的时间复杂度为O(|M|²),解码器的时间复杂度为O(|M|)。在长期任务中,内存的增长会导致二次复杂度变得禁止。受[25]的启发,我们用类似设计但更易处理的计算方式替换了等式(4)中的自注意力块:0AttFact(M,˜M)= AttBlock(M,AttBlock(˜M,M))(8)0其中我们使用通过从M中找到代表性中心获得的“压缩”内存˜M。这些中心需要动态更新以保持存储观察的良好覆盖。在实践中,我们可以使用任何聚类算法。为了提高效率,我们将迭代最远点采样(FPS)[34]应用于M中的嵌入观察,以选择在特征空间中彼此距离较远的元素子集。FPS的运行时间为O(|M||˜M|),AttFact的时间复杂度为O(|M||˜M|)。具有固定中心数的情况下,整体时间复杂度变为线性。编码器与内存分解的图示如图3所示。03.3. 训练0我们使用标准的深度Q学习算法[29]训练所有模型变体和基线。我们遵循[29]中使用经验回放缓冲区的做法,该缓冲区的容量为1000个剧集。回放缓冲区最初由随机策略收集的剧集填充,并在每500个训练迭代中进行更新。更新将缓冲区中最旧的剧集替换为由更新的策略收集的新剧集。在每个训练迭代中,我们从回放缓冲区中随机抽样64个剧集构建一个批次。模型使用Adam优化器[24]进行训练,学习率为5×10-4。除了嵌入网络外,所有模型参数都进行端到端训练。在训练过程中,我们持续评估验证集上的更新策略(如第4.1节所述)。我们持续训练每个模型,直到在验证集上观察不到改进为止。嵌入网络使用相同的训练设置使用SMT策略进行预训练,唯一的区别是将内存大小设置为1。这导致SMT没有注意层,因为大小为1的注意是一个恒等映射。通过这种方式,优化变得更加容易,以便可以对嵌入网络进行端到端训练。训练收敛后,嵌入网络的参数被冻结以供其他模型使用。与RNN策略或其他基于内存的策略相比,SMT不需要通过时间的反向传播(BPTT)。因此,优化更加简单。0稳定且计算负担较轻。这使得模型能够利用更长的时间依赖性进行训练。03.4. 实现细节0图像模态以 640 × 480的分辨率渲染,并进行10倍的子采样。每个图像模态使用修改后的ResNet-18[17]嵌入到64维向量中。我们将所有卷积层的滤波器数量减少了4倍,并在前两个卷积层中使用步长为1。我们去除了全局池化,以更好地捕捉空间信息,并直接在最后应用全连接层。姿态和动作向量都使用一个16维的全连接层进行嵌入。SMT中的注意力块使用多头注意力机制[42],每个头的键和值都是128维。注意力块中的所有全连接层都是128维,并使用ReLU非线性激活函数。姿态向量需要特别注意。首先,在每个时间步骤中,记忆中的所有姿态向量都会转换为由当前智能体姿态定义的坐标系。这与记忆的自我中心表示一致。因此,姿态观察需要在每个时间步骤重新嵌入,而其他观察只需嵌入一次。其次,时间步骤t上的姿态向量p = (x,y, θ)被转换为规范化版本p = (x/λ, y/λ, cos θ, sin θ,e−t),在其最后一个维度中以柔和的方式嵌入其时间信息t。这使得模型能够区分最近和旧的观察,假设前者可能比后者更重要。缩放因子λ = 5用于减小坐标的幅度。04. 实验0我们设计了实验来研究以下几个问题:1)SMT在不同长时间范围的机器人任务上的表现如何?2)与相关方法相比,其设计属性有多重要?3)定性地说,SMT学到了哪些智能体行为?04.1. 任务设置0为了回答这些问题,我们考虑了三个视觉导航任务:漫游、覆盖和搜索。这些任务要求智能体在长时间范围内总结环境的空间和语义信息。除了每个任务中的奖励函数定义不同外,所有任务都共享第3.1节中的POMDP。漫游:智能体尽可能向前移动而不发生碰撞。在这个基本的导航任务中,记忆应该帮助智能体避免拥挤区域和振荡行为。奖励定义为 R (s, a ) = 1 当且仅当 a = 向前走并且没有发生碰撞。覆盖:在许多现实世界的应用中,机器人需要探索未知环境并访问所有区域。5430环境。这个任务明显需要一个详细的记忆,因为机器人应该记住它访问过的所有地方。为了定义覆盖任务,我们在每个环境的平面图上叠加了一个0.5大小的网格。我们希望智能体尽可能多地访问未被占用的单元格,通过奖励R ( s, a ) =5来表达。当机器人执行动作后进入未访问过的单元格。搜索:为了评估策略是否能够学习超越对环境几何形状的知识,我们定义了覆盖任务的语义版本。具体而言,对于六个目标对象类别,我们希望机器人在房屋中尽可能多地搜索到它们。每个房屋包含1到6个目标对象类别,平均有4.9个类别。具体而言,如果图像中超过4%的像素具有对象标签(如[45]中所示),并且相应的深度值小于2米,则将对象标记为已找到。因此,R ( s, a ) = 100当且仅当在执行动作a后我们找到了尚未找到的六个对象类别之一。每次智能体发生碰撞时,我们添加一个碰撞奖励-1。如果智能体发生超过50次碰撞,一个episode将被终止。为了鼓励探索,我们在搜索任务中添加覆盖奖励,权重为0.2。以上任务按照复杂性的升序列出。覆盖和搜索任务在机器人学中得到了研究,然而主要是在已探索的环境中,并且关注最优路径规划[12]。环境。我们使用SUNCG[37],这是一组合成但视觉上逼真的建筑物。我们使用与[45]选择的相同的数据分割,并删除具有缺陷的房屋,这给我们提供了195个训练房屋和46个测试房屋。我们保留20%的训练房屋作为消融实验的验证集。在测试和验证期间,我们在每个房屋中运行10个episode,并使用固定的随机种子。智能体通过固定的步长0.25米进行移动,使用向前走。它使用向左转或向右转来进行45度的原地转弯。为了模拟真实世界动态的随机性,添加了高斯噪声。模型变体。为了研究不同模型方面的影响,我们使用三个变体进行实验:SMT,SMT+ Factorization和SM +Pooling。第二个模型使用AttFact而不是AttBlock应用SMT。受[11]的启发,最后一个模型直接对场景记忆中的元素应用最大池化,而不是使用SMT的编码器-解码器结构。基线。我们使用以下基线进行比较。Random策略均匀采样三个动作之一。Reactive策略通过纯前馈网络直接计算Q值。它是嵌入观察值之上的两个全连接层。LSTM策略[27]是最常见的基于记忆的策略。具有更大容量的模型称为FRMQN[31],它维护嵌入观察值。01 我们使用电视、冰箱、书架、桌子、沙发和床。0方法 奖励 距离 碰撞0随机 58.3 25.3 42.7 反应式 [ 27 ] 308.9 84.6 29.3 LSTM[ 27 ] 379.7 97.9 11.4 FRMQN [ 31 ] 384.2 99.5 13.80SM + 池化 366.8 96.7 20.1 SMT + 因式分解 376.4 98.617.9 SMT 394.7 102.1 13.60表1. 漫游性能。列出了累积奖励、漫游距离和碰撞次数的平均值。0方法 奖励 覆盖的单元格0随机 94.2 27.4 反应式 [ 27 ] 416.2 86.9 LSTM [ 27 ]418.1 87.8 FRMQN [ 31 ] 397.7 83.20SM + 池化 443.9 91.5 SMT + 因式分解 450.1 99.3SMT 474.6 102.50表2. 覆盖性能。列出了累积奖励的平均值和覆盖的单元格数量。0方法 奖励 类别比例0随机 140.5 1.79 36.3% 反应式 [ 27 ] 358.2 3.14 61.9% LSTM[ 27 ] 339.4 3.07 62.6% FRMQN [ 31 ] 411.2 3.53 70.2%0SM + 池化 332.5 2.98 60.6% SMT + 因式分解 432.6 3.6975.0% SMT 428.4 3.65 74.2%0表3.搜索性能。列出了总奖励累积、找到的类别数量和找到的类别比例。0在一个固定大小的内存中,类似于SMT。它不使用编码-解码结构来利用内存,而是使用一个LSTM,其输入是当前观察,输出用于对内存进行注意。对于所有方法,我们使用相同的预训练嵌入网络和两个全连接层来计算Q值。在训练过程中,我们还使用相同的批量大小为64。为了训练LSTM和FRMQN,我们使用128步的截断反向传播。04.2. 对比评估0这些方法在三个不同的任务上进行了比较:表1中的漫游,表2中的覆盖和表3中的搜索。对于每个任务和方法,我们展示了获得的奖励和任务特定的指标。记忆设计的影响。在所有任务中,SMT的性能优于所有其他基于内存的模型。与其他方法相比,相对性能提升在覆盖任务中最为显著(提高了14%),在搜索任务中也相当可观(提高了5%)。这与覆盖和搜索中记忆所有过去观察更为重要的观点是一致的。在漫游任务中,更大的内存容量(在SMT情况下)有所帮助,然而,所有基于内存的方法的表现都差不多。这在某种程度上是合理的,因为保持一条直线无碰撞的轨迹是一个相对短视的任务。除了内存容量,通过注意力进行内存访问也带来了改进。对于所有任务,SMT优于SM +池化。在对象搜索(表3)中,差距尤为明显,因为该任务具有额外的语义复杂性。同样,在覆盖和搜索中,多头注意力和残差层相对于基本注意力(FRMQN所使用的)带来了改进。提出的内存因式分解带来了计算上的好处,而性能损失则很小或者没有。即使有时会导致下降,奖励也比SM +池化和其他基线方法更好。导航中记忆的影响。了解记忆如何帮助我们解决导航任务也很重要。为此,除了奖励,我们还报告了覆盖的单元格数量(表2)和找到的对象数量(表3)。对于这两个任务,反应式策略是一个强有力的基线,我们怀疑它学习了一般的探索原则。通过SMT添加内存有助于将覆盖率提高18%,超过反应式的17%,超过LSTM策略的23%,超过更简单的内存机制(FRMQN)。我们还观察到,在搜索任务中,找到的对象数量增加了5%。上述报告的指标是在固定的500步时间范围内的。对于不同的时间范围,我们在图4中展示了搜索的性能。我们可以看到,基于内存的策略通过基于注意力的读取在探索环境时始终能够找到更多的对象类别,其中SMT变体表现最好。这在整个执行过程中都是如此,性能差距在300步之前稳步增加。notion that for coverage and search memorizing all past ob-servations is more vital. On roaming, larger memory ca-pacity (in SMT case) helps, however, all memory-based ap-proaches perform in the same ballpark. This is reasonable inthe sense that maintaining a straight collision free trajectoryis a relatively short-sight task.In addition to memory capacity, memory access via at-tention brings improvements. For all tasks SMT outper-forms SM + Pooling. The gap is particularly large for objectsearch (Table 3), where the task has an additional seman-tic complexity of finding objects. Similarly, having multi-headed attention and residual layers brings an improvementover a basic attention, as employed by FRMQN, which isdemonstrated on both coverage and search.The proposed memory factorization brings computa-tional benefits, at no or limited performance loss. Even ifit causes drop sometimes, the reward is better than SM +Pooling and other baseline methods.Implications of memory for navigation. It is also im-portant to understand how memory aids us at solving navi-gation tasks. For this purpose, in addition to reward, we re-port number of covered cells (Table 2) and number of foundobjects (Table 3). For both tasks, a reactive policy presentsa strong baseline, which we suspect learns general explo-ration principles. Adding memory via SMT helps boost thecoverage by 18% over reactive, and 17% over LSTM poli-cies and 23% over simpler memory mechanism (FRMQN).We also observe considerable boosts of number of foundobjects by 5% in the search task.The reported metrics above are for a fixed time horizonof 500 steps. For varying time horizons, we show the per-formance on search in Fig. 4. We see that memory-basedpolicies with attention-based reads consistently find moreobject classes as they explore the environment, with SMTvariants being the best. This is true across the full executionwith performance gap increasing steadily up to 300 steps.5440图4.按时间步骤找到的类别。对于搜索任务,我们展示了在时间步骤中找到的目标对象类别的数量。04.3.消融分析0在这里,我们分析了SMT的两个方面:(i)场景记忆的大小,以及(ii)不同观察模态和组件的重要性。0(a)记忆容量的影响。(b)每个组件的影响。0图5.消融实验。(a)我们从50个步骤到500个步骤扫描记忆容量,并评估500个步骤的轨迹奖励。(b)我们逐个省略我们的完整模型中的一个组件,并评估每个任务的平均奖励。0记忆容量。在前面的部分中,我们讨论了不同模型之间的记忆容量,这里我们看一下对于SMT来说记忆大小的重要性。直观上,基于记忆的策略在长时间范围内应该从更大的记忆中受益。但实际上,这取决于任务和网络容量,如图5(a)所示。所有三个任务都受益于使用更大的场景记忆。漫游的性能随着记忆容量增加而增长,直到300个元素。对于覆盖和搜索,性能随着更大的记忆容量不断提高。这表明SMT确实利用了提供的记忆。模态和组件。对于所提出的任务,我们有图像观察、姿态和先前的动作。为了理解它们的重要性,我们通过逐个省略一个模态来重新训练SMT。我们在图5(b)中显示了结果奖励。在观察模态中,上一个动作、姿态和深度图在各个任务中起着关键作用。这可能是因为SMT使用相对姿态和上一个动作来推理空间关系。此外,深度图是与避免碰撞相关的最强线索,对于所有任务都至关重要。去除分割和RGB观察对覆盖任务的影响很小,对漫游任务的影响下降了10%,因为这些任务主要由环境几何形状定义。然而,对于需要与语义一起工作的搜索任务,影响下降了15%和20%。我们还展示了编码器结构对任务的性能提升。特别是在搜索任务中,从推理和规划的角度来看最具挑战性的任务,编码器将任务奖励提高了23.7。5450SMT(我们的模型) LSTM 反应式0奖励:437,发现类别4/6 奖励:591,发现类别5/6 奖励:757,发现类别6/60奖励:312,覆盖的单元格:63(39.9%) 奖励:348,覆盖的单元格:72(45.6%) 奖励:439,覆盖的单元格:96(60.8%)0奖励:336,距离:366,碰撞:30 奖励:383,距离:389,碰撞:6 奖励:413,距离:422,碰撞:90覆盖任务0漫游任务0搜索任务0图6.智能体行为的可视化。我们将轨迹从俯视图中以绿色曲线的形式进行可视化。每个轨迹的起点和终点以白色和黑色标出。可导航区域以深紫色遮罩,红线表示碰撞边界。对于覆盖任务,我们用粉色标记已覆盖的单元格。对于搜索任务,我们用黄色遮罩标记目标对象。04.4.定性结果0为了更好地理解智能体的学习行为,我们在图6中可视化了导航轨迹。我们选择反应式和LSTM策略作为无记忆和基于记忆的基准,与SMT进行比较。在漫游任务中,我们的模型展示了更好的策略来保持移动并避免碰撞。在许多情况下,智能体首先在房屋中找到一条长而清晰的路径,让它可以直线前进而不频繁转弯。然后智能体沿着同一路线来回导航,直到剧集结束。因此,SMT通常会导致紧凑的轨迹,如图6顶部所示。相比之下,反应式策略和LSTM策略经常在场景中徘徊,没有一致的模式。在覆盖任务中,我们的模型通过记忆已经覆盖的区域更有效地探索未知空间。如图6中间行所示,在大多数房间内的单元格被
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 黑板风格计算机毕业答辩PPT模板下载
- CodeSandbox实现ListView快速创建指南
- Node.js脚本实现WXR文件到Postgres数据库帖子导入
- 清新简约创意三角毕业论文答辩PPT模板
- DISCORD-JS-CRUD:提升 Discord 机器人开发体验
- Node.js v4.3.2版本Linux ARM64平台运行时环境发布
- SQLight:C++11编写的轻量级MySQL客户端
- 计算机专业毕业论文答辩PPT模板
- Wireshark网络抓包工具的使用与数据包解析
- Wild Match Map: JavaScript中实现通配符映射与事件绑定
- 毕业答辩利器:蝶恋花毕业设计PPT模板
- Node.js深度解析:高性能Web服务器与实时应用构建
- 掌握深度图技术:游戏开发中的绚丽应用案例
- Dart语言的HTTP扩展包功能详解
- MoonMaker: 投资组合加固神器,助力$GME投资者登月
- 计算机毕业设计答辩PPT模板下载
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功