当前位置: 代码迷 >> 综合 >> PoseAgent: Budget-Constrained 6D Object Pose Estimation via Reinforcement Learning
  详细解决方案

PoseAgent: Budget-Constrained 6D Object Pose Estimation via Reinforcement Learning

热度:52   发布时间:2023-12-15 21:56:13.0

PoseAgent: Budget-Constrained 6D Object Pose Estimation via Reinforcement Learning

  • 如有错误,欢迎指正
    • 摘要
    • 1 介绍
    • 2 相关工作
      • 2.1. Pose Estimation
      • 2.2. Reinforcement Learning in Similar Tasks
    • 3 方法
      • 3.1. Pose Estimation Pipeline
      • 3.2. PoseAgent
        • 3.2.1 State Space
        • 3.2.2 Policy
        • 3.2.3 CNN Architecture
      • 3.3. Policy Gradient Training
        • 3.3.1 Efficient Gradient Calculation
    • 4 实验
      • 4.1. Training and Validation Procedure
      • 4.2. Additional Baselines
      • 4.3. Testing Conditions
      • 4.4. Results
      • 4.5. Efficiency of the Training Algorithm
    • 5 结论

如有错误,欢迎指正

本文翻译为机翻,仅作初步了解学习使用,需要用到的时候再回来整理。
如有侵权,请私信本人。

摘要

最先进的计算机视觉算法通常通过对下一步要探索的假设进行离散选择来获得效率。这允许将计算资源分配给有希望的候选者,然而,这样的决定是不可微的。因此,这些算法很难进行端到端的训练。在这项工作中,我们提出学习一个有效的六维物体姿态估计的算法。我们的系统使用强化学习来优化现有的位姿估计系统的参数,其中位姿估计系统现在变成随机策略,由CNN参数化。此外,我们提出了一个有效的训练算法,大大减少了计算时间。我们的经验表明,我们学习的姿势估计程序可以更好地利用有限的资源,并改进了具有挑战性的数据集的最新技术。我们的方法可以对复杂算法管道进行端到端的可微训练,并学习如何最佳地利用给定的计算预算。

1 介绍

计算机视觉的许多任务都涉及到学习一个函数,通常是学习在给定输入图像的情况下预测期望的输出标签。深度学习的进步导致了在解决这些任务方面的巨大进步。特别是,卷积神经网络(CNNs)在使用梯度下降法对大型训练集进行训练时,可以很好地将预测值与真实值标签之间的预期损失降到最低。

然而,重要的计算机视觉系统采取算法的形式而不是简单的可微函数:滑动窗口搜索、超像素分割、粒子滤波和分类级联都是实现复杂非连续函数的算法的例子。

算法方法在计算预算有限的情况下特别有用:一个算法可以动态地分配其预算来解决问题的不同方面,例如,采取捷径,以便在更有希望的解决方案上花费计算时间,而牺牲不太有希望的解决方案。我们想学习算法。不幸的是,在大多数算法方法中所做的艰难决策是不可微的,这意味着这些有效算法的结构和参数不能很容易地从数据中学习。

强化学习(RL)[22]为学习算法提供了一种可能的解决方案。我们将该算法视为RL-agent的策略,即动态序列行为的描述。RL提供了一个学习这种行为的参数的框架,目标是使期望的回报最大化,例如,算法输出的准确性。我们将此观点应用于算法计算机视觉方法。特别是,我们解决了6D目标位姿估计问题,并使用RL来学习深度算法管道的参数,以在有限的计算预算下提供尽可能高的精度。

目标姿态估计是从图像中估计特定物体相对于其环境的三维平移(位置)和三维旋转(方向)的任务。这项任务在许多应用中都很重要,比如机器人和增强现实,在这些应用中,有效地使用有限的计算预算是一个重要的要求。一个特别的挑战是在杂乱无章的环境中的小的、无纹理的和部分被遮挡的物体(见图1)。

最先进的姿态系统,如Krull等人的系统。[12] 生成一组姿势假设,然后使用预先训练的CNN对每个假设进行评分。对高分假设的子集进行了细化,最终将得分最高的假设作为答案返回。从计算上讲,优化步骤是最昂贵的,并且在允许的优化数量和预期的结果质量之间存在权衡。

理想的情况下,人们可以对这种最先进的系统进行端到端的训练,以便学习如何使用最佳的优化数量来最大限度地提高姿势估计的预期成功率。不幸的是,将系统视为一个带有参数进行优化的黑盒是不可能的,原因有两个:(i)每个选择过程对于评分函数是不可微的;(ii)用于确定估计姿势是否正确的损失也是不可微的。

为了克服这些困难,我们将位姿估计重新定义为RL问题。我们将姿势推理过程建模为一个称为PoseAgent的RL agent。PoseAgent被赋予比原始系统更大的灵活性:它被赋予细化步骤的固定预算,并且允许通过选择要细化的单个姿势来操纵其假设池,直到预算用完为止。在我们的PoseAgent模型中,每个决策都遵循一个可能行为的概率分布。这种分布被称为策略,我们可以通过随机策略梯度方法来区分和优化这种连续策略[23]。由于这种随机方法的结果,最终的姿态估计成为一个随机变量,并且每次运行PoseAgent将产生一个稍微不同的结果。

这种策略梯度方法是非常普遍的,不需要使用损失函数的可微性。因此,我们可以直接获得关于预期兴趣损失的梯度,即正确估计的姿势数。由于估计梯度的额外方差[7,23],政策梯度方法的训练可能很困难[7,23],因为额外的随机性导致估计梯度的更大方差。为了克服这一问题,我们提出了一种有效的训练算法,与单纯的训练方法相比,它能从根本上减少训练过程中的方差。

我们将我们的方法与最先进的[12]进行了比较,并在精确度方面取得了实质性的改进,同时使用了与[12]相同或更小的平均精化步骤预算。总之,我们的贡献是
?据我们所知,我们第一个将策略梯度方法应用于目标姿态估计问题。
?我们的方法允许使用与原始评估标准相对应的不可微奖励函数
?我们提出了一种有效的训练算法,可以显著降低训练过程中的方差
?我们对数据集的最佳发布结果进行了显著改进。

2 相关工作

下面,我们首先讨论6D位姿估计的方法,重点讨论目标坐标预测方法,然后简要回顾一下在类似环境中使用的RL方法。

2.1. Pose Estimation

6D目标姿态估计的方法有很多种。传统上,基于稀疏特征的方法[14,15]是成功的,但只适用于纹理对象。其他方法包括基于模板的方法[9,19]、投票方案[6,10]和基于CNN的直接姿势回归[8]。

我们关注对象坐标回归[3]的工作,它为我们的方法提供了基本框架。物体坐标回归最初被提出用于人体姿势估计[24]和相机定位[20]。在[3]中,随机森林为6D目标姿态预测提供了密集的像素级预测。在每个像素处,森林都会预测像素是否位于对象表面以及位于对象表面的位置。通过对一小部分像素进行采样,并将森林预测与来自RGB-D相机的深度信息相结合,可以有效地生成姿势假设。

[3,12,17]中的目标坐标回归方法通过比较渲染和观察到的图像块来对这些假设进行评分。当[3,17]使用一个简单的像素距离函数时,[12]提出了一个学习比较:CNN比较渲染图像和观察图像,并输出表示姿势空间中后验分布参数的能量值。尽管他们在特定的评分函数上存在差异,[3,17,12]使用相同的推理技术来得出最终的姿势估计:他们都细化最佳假设,重新评分,并输出最佳假设作为最终选择。我们的PoseAgent方法可以看作是该算法的一个推广,在该算法中,agent不断地选择要求精的假设,每次都能做出更明智的选择。

Krull等人的工作是与我们工作关系最密切的1。我们使用与Krull等人类似的CNN结构,将渲染和观察到的图像补丁都输入到CNN中。然而,我们使用CNN的输出作为随机策略的参数来控制姿态agent的行为。此外,虽然[12]中的训练过程被视为学习后验分布,然后在使用固定的推理程序进行测试时最大化,但是我们的训练过程却直接修改了agent的行为,以使正确估计的姿势数目最大化。

2.2. Reinforcement Learning in Similar Tasks

传统上,RL在机器人技术[21]、控制[1]、广告、网络路由或玩游戏等领域取得了成功。虽然RL的应用对于涉及真实主体和环境的情况似乎很自然,但RL在计算机视觉系统中的应用越来越成功,因为将系统解释为与环境交互的agent并不总是那么直观。据我们所知,我们是第一个将RL应用于6D目标姿态估计的,但最近有几篇论文将RL应用于2D目标检测和识别[18,5,16,2]。

在[18,5]中,一个agent将注意力转移到图像上,直到它做出最终决定。我们不是像[18,5]那样在搜索空间中移动单一的二维注意力区域,而是使用多个6D姿势假设。[16]中的agent通过移动一个2D固定点来集中注意力,尽管它对一组预先计算的图像区域进行操作以收集信息并做出最终决定。我们的agent通过细化个体假设来操纵其假设池。

Caicedo等人使用Q学习,CNN预测可用状态-动作对的质量。Mnih等人以及Mathe等人使用一种不同的基于随机策略梯度的RL方法,在这种方法中,直接学习agent的行为以使期望的报酬最大化。我们遵循[18,5]中的随机策略梯度,它允许我们使用不可微的奖励函数,直接对应于评估过程中使用的最终成功标准。

3 方法

在本节中,我们首先定义了位姿估计任务,并简要回顾了文献[3,12,4]中的位姿估计管道。然后我们继续描述PoseAgent,我们的强化学习agent,旨在解决同样的问题。最后,我们讨论了如何训练我们的agent,介绍了我们的新的,有效的训练算法。

3.1. Pose Estimation Pipeline

在这里插入图片描述

我们从描述目标姿态估计任务开始。给定一个RGB-D图像x,我们感兴趣的是定位一个特定的、已知的、刚性的物体(图1a)。我们假设场景中只存在一个对象实例。我们的目标是估计物体的真实姿态,即它在空间中的位置和方位。该姿势共有六个自由度,其中三个用于平移,三个用于旋转。我们将姿势定义为刚体变换,将一个点从物体的局部坐标系映射到相机的坐标系。

我们的方法是基于Krull等人的工作。在[12]中,我们使用一种称为对象坐标的中间图像表示。通过观察RGBD输入图像的小块区域,随机森林(图1b)为每个像素i提供两个预测。每个树预测对象概率pi∈[0,1]以及一组对象坐标yi(图1c)。目标概率pi描述像素是否被认为是对象的一部分。目标坐标yi表示像素在物体表面的预测位置,即其在物体局部坐标系中的三维坐标。

在[12]之后,我们在RANSAC启发的采样方案中使用这些森林预测来生成姿势假设。根据目标概率pi,我们从图像中重复采样三个像素。通过将预测的目标坐标yi与像素的摄像机坐标(根据输入图像的深度通道计算)相结合,得到三个3D-3D对应关系。我们使用Kabsch算法从这些对应关系中计算出一个姿势假设[11]。我们抽取固定数量的假设,这些假设组合在假设池H0=(h01…h0n)(图1d)。上面的索引表示我们稍后将在算法中使用的时间步长。

Krull等人提出了如下刚性位姿优化方案。对所有假设进行评分,并对得分最高的25个假设进行细化。然后,对改进后的假设进行重新评分,并返回最佳评分假设作为算法的最终姿态估计。本文主要从相同的初始假设池出发,改进正确姿势的发现过程。我们建议使用RL agent(图1e)来动态地决定下一步要改进哪个假设,以便最有效地利用给定的计算预算。当预算耗尽时,agent选择最终的姿势估计(图1f)。

3.2. PoseAgent

在这里插入图片描述

现在我们描述一下RL agent,PoseAgent,以及它如何执行推理。该过程的概述可在图2中找到。agent分两个阶段工作:(i)精化阶段,在此阶段中,agent选择单个假设进行昂贵的细化步骤;和(ii)最终决策阶段,在此阶段,它必须决定应选择哪个姿势作为最终输出。下面,我们将详细讨论这两个阶段。

推理从细化阶段开始。姿势agent从一个集合H0=(H0 1…H0 N)开始,这些假设已经生成,如第2节所述。3.1,以及可能的细化步骤的固定预算B0。

在每一个时间步骤t agent选择一个假设指数at,我们称之为行动。所选择的假设被完善,下一步开始。我们将agent选择相同假设的最大次数限制为τmax。因此,随着时间的推移,动作池(也就是假设)逐渐精化减少。我们用At={a∈{1,…,N}|τt a<τmax}表示可能的动作集,其中τt a表示假设a在时间t之前被细化了多少次。随后,agent通过细化假设Ht+1 At=g(Ht At)来修改假设池,其中g(·)是细化函数。所有其他假设保持不变Ht+1a=Hta ?a=at。

我们执行如下的优化(另见[12])。我们把物体渲染为姿态Hta。在渲染掩模中的每个像素都被当作正确数据测试。所有的inlier(正确数据)像素都被用来用Kabsch算法重新计算姿势。对于一个选定的假设,我们重复这个过程多次,直到inlier像素的数量停止增加,或者直到执行的细化步骤的mt超过最大mmax。预算根据执行的细化步骤的数量而减少,Bt+1=Bt?mt。agent继续选择优化操作,直到Bt<mmax,在这种情况下,进一步的优化可能会超过优化步骤的总预算B0。

当达到这一点时,细化阶段结束,agent进入最终决策阶段,在此阶段agent选择一个假设作为最终输出。我们将最终作用表示为aT∈{1…N},并将最终姿态估计表示为H=HT aT。如果姿势正确,agent将获得r=1的奖励,否则将获得r=-1的负奖励。我们使用[9]中的姿势正确性准则。

下面,我们将描述agent如何做出决定。在细化阶段和最终决策阶段,agent从假设池中进行选择。我们用概率分布π(at| St;θ)来描述agent行为,称为“策略”。给定当前状态St,其中包含关于假设池和输入图像x的信息,agent通过从策略中提取样本来选择一个假设。可学习参数的向量θ由CNN权重组成(见3.2.3段)。在解释策略π(at | St;θ)之前,我们将首先详细介绍状态空间St。

3.2.1 State Space

我们以一种允许我们使用新的、有效的训练算法的方式来建模我们的状态空间,如第3.3.1节所述。我们假设假设池的当前状态St分解为St=(St 1,…St N),其中St a称为假设状态hta。假设的状态包含原始输入图像x、图像的森林预测z、姿势假设hta,以及假设的附加上下文特征的向量ft a(见第3.2.3段)。总的来说,这给出了st a=(x,z,Ht a,ft a)。

3.2.2 Policy

我们的agent使用softmax策略做出决定。在细化阶段选择特定动作的概率由下式给出
在这里插入图片描述
其中E(st a;θ)将被称为状态st a的能量,我们将其缩写为Et a=E(st a;θ)。在softmax策略中,状态的能量是衡量agent改进假设的期望值。在最终决策阶段,我们使用相同的策略,但是使用不同的能量E‘(st a;θ),缩写为E’ t a。我们使用CNN来预测这两种能量,Et a和E‘ t a。在下一节中,我们将讨论CNN架构以及它如何控制agent的行为。

3.2.3 CNN Architecture

在这里插入图片描述

我们在图3中给出了在这项工作中使用的CNN架构的概述。如[12]所述,CNN比较渲染图像和观察到的图像。我们使用了相同的6个通道,也就是,渲染的深度通道,观察的深度通道,渲染的分割通道,目标可能性通道,深度掩膜,和一个单一通道包括目标坐标之间的差异。

然而,与[12]中使用的CNN相比,我们的CNN有两个主要的区别。首先,Krull等人预测一个姿势的单一能量值,我们联合预测两个独立的能量值:一个能量值Eta用于细化阶段,一个能量值E’ta用于最终决策阶段。

其次,我们通过将附加特征连接到第一个完全连接的层,向网络输入附加特征。其特征是:假设已被选择进行细化的次数、上次细化期间假设移动的距离以及细化前假设与原始池中所有其他假设的平均距离

我们的CNN由以下层组成:128个6×3×3的核,256个128×3×3的核,一个2×2的最大池化层,512个256×3×3的核,对图像剩余大小的最大池操作,最后是3个完全连接的层。特征ft a连接到第一完全连接层,如图3所示。除最后一层外,每层后面都有一个tanh操作。

3.3. Policy Gradient Training

现在我们将讨论我们的poseagent的训练过程。首先,我们将对策略梯度训练做一个概括性的介绍,然后将此方法应用于态势。最后,我们将介绍一个有效的演算法,它能大大减少训练过程中的方差,使训练成为可能。

训练的目标是期望报酬最大化。这个期望值取决于环境以及我们agent的政策。在随机策略梯度方法中,试图根据策略参数θ来近似梯度。请注意,由于我们处理的是期望值,所以可以计算导数,即使报酬函数本身是不可微的。利用等式???θj p(x;θj)=p(x;θj)?8706;θj ln p(x;θj)
我们可以将θ中每个参数θj的期望报酬导数写成
在这里插入图片描述
其中p(s1:T,a1:T;θ)是特定状态序列s1:T=(s1…sT)和作用a1:T=(a1…aT)发生的概率。由于环境的马尔可夫特性,可以将概率分解并重写为
在这里插入图片描述
按照强化算法[25],我们使用通过在训练图像上运行agent生成的采样序列(S1:tkk,a1:tkk)近似公式3,如第3.2节所述。
在这里插入图片描述
其中Tk是序列中的步骤数,rk是序列中获得的奖励。

3.3.1 Efficient Gradient Calculation

现在我们将介绍一种算法(Alg.1) ,通过允许我们在给定时间内使用更高数量的序列M,来显著降低估计梯度的方差。其基本思想是利用状态空间的特殊可分解结构和我们的策略。图4说明了我们的算法与自然实现相比的优势。
在这里插入图片描述

从假设池H0=(h01…h0n)开始,在我们的假设过程中,只有有限个不同的假设状态sτa | a∈{1,…N},τ∈{0,…τmax}。这里,sτa=(Hτa,fτa)表示假设a经过τ次精炼后的状态。

该算法预先计算所有可能出现的假设状态sτa,并利用CNN预先预测所有相应的能量值Eτa2。虽然这会带来一些计算开销,但它允许我们快速地对大量序列进行采样,而不必重新计算能量函数。

为了说明这是可能的,现在让我们重新考虑等式4中导数的计算。使用链式法则,我们可以把它们写成
在这里插入图片描述
我们现在可以重新排列等式4,作为可能假设状态的总和
在这里插入图片描述
这里,1(τt a,k=τ)是指示函数。只有当序列k中时间t的假设a被选为精确的τt a,k=τ次时,它才有值1。在其他情况下,它的值为0。

我们的算法首先计算公式7中的内部和,然后将结果存储在表D的条目D(a,τ)中。我们通过对所有序列k和所有时间步长t的一次迭代来计算这些和。这些值的累积在计算上是廉价的,因为它不需要任何渲染或CNN的参与。

这种结构使得我们可以在不增加计算开销的情况下增加采样序列M的数目。对于每个可能的假设状态,该算法只需使用CNN的一次反向传播过程,就可以处理任意数量的序列。在一个简单的实现中,所需的前向-后向传递次数将随着采样序列的数量线性增加。

让我们详细看看算法。它包括三个部分:
初始化阶段:我们生成如3.1所述的原始假设池。然后,我们改进所有假设τmax次,并使用CNN预测所有假设的能量值Eτa。
采样阶段:我们采样序列(s1:tk,a1:tk),如第3.2节所述,使用预先计算的能量。我们观察每个序列的奖励rk。然后,我们使用公式6计算每个时间t、k处的每个选定假设和每个可能的假设a的导数?/?Eτa lnπ(在k | St k;θ)rk。我们将结果累加到相应的表条目D(a,τt a,k)。这对应于式7中的内和。
梯度更新阶段:我们再次用CNN处理每个假设状态sτa,并使用标准反向传播计算?Eτa?θj。我们将结果与D(a,τ)相乘,并将其累加到另一个表G中,以获得最终梯度。这对应于式7中的外部和。
在这里插入图片描述

4 实验

在下面,我们将描述将我们的方法与[12]中的基线系统进行比较的实验。我们的实验证实,我们的学习推理程序能够更有效地利用其预算。它的性能优于[12],同时平均使用较少的细化步骤。此外,我们将描述一个实验,与强化算法的简单实现相比,我们的训练算法的效率。我们发现,我们的算法可以显著降低训练过程中的梯度变化。我们在[13]中介绍的数据集上进行了实验。它的特点是六个RGB-D序列的手持,有时强遮挡的物体。

4.1. Training and Validation Procedure

我们在第一个图像序列中省略了第一个400帧的图像。我们用两个不同的参数设置训练我们的系统:使用假设池大小N=210,这是在[12]中使用的设置,以及更大的池大小N=420。为了确定精化步骤预算B0的适当大小,我们从[12]开始在我们的验证集中运行系统,并确定它使用的优化步骤的平均数量。我们将培训期间的预算设置为B0=77。

在训练过程中,我们允许一个假设被选择τmax=3次以进行细化。我们将每次迭代的最大优化步骤数设置为mmax=10。使用随机梯度下降法,我们以随机顺序遍历训练图像并运行算法1来近似梯度。我们对每个图像采样M=50k序列。额外的50k序列用于估计图像的平均回报,然后从奖励中减去,以进一步减少方差[23,18]。我们在每个图像之后执行参数更新。从初始学习率λ0=25·10?4开始,我们根据λl=λ0/(1+lν)将其降低,ν=0.01。我们使用0.9的固定动量。

我们跳过了一些图像,在这些图像中,池中的假设在经过τmax次的细化后没有一个正确的姿势,并且池中超过10%的假设导致了正确的姿势。这样的图像贡献不大,因为它们不可能或很容易解决。我们在Intel E5-2450 2.10GHz的Nvidia Tesla K20x GPU上运行训练程序96小时,每50个训练图像保存一个快照。为了避免过度拟合,我们在验证集中测试这些保存的快照,并选择精度最高的模型。为了减少验证过程中的计算时间,我们只考虑被遮挡至少5%的图像。

4.2. Additional Baselines

两个演示了动态分配给定计算预算的优势,我们实现了PoseAgent的两个精简版本,作为额外的基线。基线方法(缩写为RandRef)在每次迭代中随机选择一个假设来细化。当预算耗尽时,它选择具有最佳预测最终选择能量E(st a;θ)的假设。3根据[12]的定义,基线BestRef直接选取具有最佳E(st a;θ)的假设,对其进行细化,直到预算耗尽,并作为最终决策输出。在运行基线时,我们使用了性能最好的设置:(τmax=6,mmax=5),池大小N=210;池大小N=420,τmax=7,mmax=4)。

4.3. Testing Conditions

我们使用N=210和N=420比较了模型的两个版本,与使用相应池大小的[12]系统进行了比较。在所有使用基线方法[12]的实验中,我们使用与Krull等人训练的原始权重相同的CNN,武士2序列。这是[12]报告最佳结果的网络。除了池大小之外,我们使用了与[12]中相同的测试条件,包括在[3]中最初训练的相同的随机林。为了对姿势进行正确或错误的分类,我们使用了[12]中使用的基于点距离的标准。当地面真实姿态中三维模型顶点与被评估姿态之间的平均距离低于阈值时,该姿势被认为是正确的

虽然我们的设置中优化步骤的数量受到限制,但是[12]的方法并不能保证使用了多少个优化步骤。为了确保公平的比较,我们首先运行了[12]中的方法,并记录了它在每个测试序列上所需的平均细化步骤数。在运行我们的方法时,我们将每个序列的预算设置为这个记录的值,以确保PoseAgent不会使用比[12]更多的细化步骤。两种方法所需的优化步骤的平均总数可以在表1,2中找到。我们使用τmax和mmax的不同参数来评估我们的方法,使得τmax·mmax≈30。这意味着每个姿势最多可以有大约30个细化步骤。τmax的值越高(mmax的值越小),意味着PoseAgent可以在预算的哪些方面做出更细粒度的决策。我们对两个值(τmax=3,mmax=10),(τmax=5,mmax=6),(τmax=6,mmax=5),(τmax=7,mmax=4)使用以下组合。
在这里插入图片描述

4.4. Results

在我们的实验结果中可以看到。PoseAgent能够将数据集上的最佳发布结果提高10.56%(与Tab1的60.06%相比,70.62%来自Tab2) 一。当我们将我们的方法与[12]在相同假设池大小上进行比较时,我们仍然能够取得更好的效果。原始池大小N=210增加了2.12%,N=420的池大小增加了2.59%。请注意,预算是以一种非常严格的方式设置的,确保PoseAgent永远不会使用比[12]平均使用的更多的细化步骤。在这两种情况下(N=210和N=420),似乎有一种趋势,即τmax的增加(对应于对位置的更细粒度控制)导致精度的提高。这里唯一的例外是N=210设置中的τmax=7。值得注意的是,PoseAgent是用τmax=3的不同设置训练的,并且能够推广到测试过程中使用的不同设置。我们使用假设池N=420,在Intel E5-2450 2.10GHz的NVidia Tesla K20x GPU上,测量了该方法(使用CPU渲染)的平均运行时间在17(武士2)到34(Cat 2)秒之间。

4.5. Efficiency of the Training Algorithm

为了研究out训练算法与增强算法的初步实现相比的效率,我们进行了以下实验:我们在单个训练图像上运行我们的训练算法和初步实现,而不更新网络。为了估计梯度的方差,我们计算了1000个随机选择的元素的标准偏差,并将它们平均化。我们记录了在Intel E5-2450 2.10GHz上使用Nvidia Tesla K20x GPU处理图像所需的计算时间。对于M=5,M=50,M=500,M=5000和M=50000的序列,在高效算法的情况下重复该过程。对于nave实现,我们使用M=1,M=2,M=3和M=4序列。为了使计算时间保持在合理的范围内,我们对两种方法都使用了假设池大小为N=21的简化设置。如图4所示,我们的算法允许我们在几乎不增加计算时间的情况下大大减少方差。

5 结论

我们展示了一种在姿态估计系统中使用策略梯度方法学习算法推理过程的方法。我们的系统学会了有效地利用给定的预算,并且能够在平均使用较少的计算资源的情况下优于原始系统。我们提出了一个有效的梯度逼近算法。该算法在不增加计算时间的前提下,能有效地减小梯度方差。在我们的系统环境中,我们看到了多种有趣的未来研究方向。(i) 人们可以研究PoseAgent的软版本,它不是在固定预算下工作,而是可以决定什么时候停止。在这样的系统中,使用的计算预算可以是奖励函数的一部分。(ii)当前系统的顺序结构不允许简单的并行化,但可以设想一种利用多个计算核心进行推理的可能性。


  1. https://arxiv.org/pdf/1508.04546.pdf ??

  相关解决方案