【论文阅读】3D Diffuser Actor: Policy Diffusion with 3D Scene Representations
好悬给我拽开线2024-09-19 9:19
Abstract
扩散policies是条件扩散模型,它学习以机器人和环境状态为条件的机器人动作分布。他们最近被证明优于确定性和替代的动作分布学习公式。3d机器人policies使用使用感知深度从单个或多个摄像机视图聚合的3d场景特征表示。它们已被证明比它们在相机视点上的 2d 对应物具有更好的泛化能力。我们统一了这两条工作并提出了 3d diffuser actor ,这是一种神经 policy,配备了一种新颖的 3d 去噪 transformer,融合了来自 3d 视觉场景的信息、语言指令和本体感觉来预测噪声 3d 机器人姿态轨迹中的噪声。3d diffuser actor 在 rlbench 上设置了新的最先进技术,在多视图设置上的绝对性能增益比当前的 sota 提高了 18.1%,在单视图设置中的绝对增益为 13.1%。在 calvin 基准测试中,它比之前的 sota 提高了 9%。它还学习从少数演示中控制现实世界中的机器人机械手。通过与当前 sota policies 和我们模型的消融进行了彻底的比较,我们展示了 3d diffuser actor 的设计选择显着优于 2d 表示、回归和分类目标、绝对注意力和整体非标记化 3d 场景嵌入。
在这项工作中,我们将扩散用于处理动作预测中的多模态,并使用 3d 场景表示进行有效的空间推理。我们提出了 3d diffuser actor,一种新颖的 3d 去噪 policy transformer,它将标记化的 3d 场景表示、语言指令和加噪声的末端执行器未来平移和旋转轨迹作为输入,并预测机器人末端执行器平移和旋转的误差。该模型表示同一3d空间中的场景tokens和末端执行器位置,并将它们与相对位置3d注意[19,20]融合,实现了平移等方差,有助于泛化
我们在rlbench[11]和calvin[12]的模拟基准以及现实世界中的演示中测试3d diffuser actor从演示中学习机器人操作policies。3d diffuser actor 在 rlbench 上设置了新的最先进技术,多视图设置的绝对增益为 18.1%,单视图设置的绝对增益为 13.1%(图 1),优于现有的 3d policies 和 2d 扩散 policies。在calvin上,它在零镜头 zero-shot 不可见场景泛化设置下的性能优于当前的sota,相对增益提高了9%(图1)。我们进一步展示了 3d diffuser actor 可以从少量真实世界演示中学习 12 个任务中的真实世界中的多任务操作。我们凭经验表明,3d diffuser actor 优于所有现有的 policy 公式,它们要么不使用 3d 场景表示,要么不使用动作扩散。我们进一步与我们模型的消融版本进行比较,并展示了 3d 相对注意力的重要性。
3D Diffuser Actor基于3d policies中的act3d[17]和diffusion policies的[36,6]的作品构建。它使用类似于[17]的标记化3d场景表示,但它是一个概率模型而不是确定性模型 。它不采样3d点,也不推断3d动作图。它使用扩散目标,而不是[17]中使用的分类或回归目标。与[40,36]相反,它使用3d场景表示,而不是2d图像或低维状态。我们在实验中与2d扩散policies和3d扩散policies进行了比较,结果表明3D Diffuser Actor的性能大大优于它们。我们在附录的图4中强调了我们的模型与相关模型之间的差异,我们参考图5和图6了解3D Diffuser Actor和act3d的更多架构细节。
3 Method
3D Diffuser Actor经过训练,可以模仿形式的演示轨迹,并伴有任务语言指令l,类似于之前的作品[57,16,17,58],其中代表视觉观察,at代表时间步长t的机器人动作。每个观察ot是一个或多个姿势RGB-D图像。每个动作都是一个末端执行器姿态并被解耦为3D位置、旋转和开合二值状态,在所有实验中,我们使用[59]的6D旋转表示来表示所有的旋转,以避免四元数表示的不连续性 。我们将使用符号来表示时间范围 T 的时间步 t 处的 3D 位置和旋转的轨迹。我们的模型在每个时间步 t 预测轨迹和二进制状态 。
3D Diffuser Actor 的架构如图 2 所示。它是给定视觉场景和语言指令的轨迹的条件扩散概率模型 [31,60];它通过迭代去噪一次预测整个轨迹 τ,通过迭代去噪,通过反转逐渐将噪声添加到样本的过程。扩散过程与方差调度相关联,它定义了在每个扩散步骤中添加了多少噪声。扩散步骤i处样本的噪声版本可以写成,其中是来自高斯分布的样本(维数与相同),,。
图 2:3d diffuser actor 概述。(a) 3d diffuser actor 是机器人 3d 轨迹的条件扩散概率模型。在扩散步骤 i 中,它将机器人未来动作轨迹、姿势 rgb-d 视图 o 和本体感觉信息 c 的当前噪声估计转换为一组 3d tokens。它使用 3d 相对去噪 transformers 融合这些 3d tokens 和语言指令 tokens l 中的信息,以预测 3d 机器人位置的噪声和 3d 机器人旋转的噪声 。(b)在推理过程中,3d diffuser actor 迭代地去噪机器人未来轨迹的噪声估计。(c) 3d diffuser actor 在现实世界中工作,并在训练演示中捕获多种行为模式。
3D Relative Denoising Transformer
3d diffuser actor 使用 3d 相对 transformer 对去噪过程的学习梯度进行建模,该梯度将时间步 t 的噪声轨迹、扩散步骤 i 和来自语言指令 l 的条件信息、时间步 t 的视觉观察 ot 和本体感觉 ct 作为输入,以预测噪声分量 。在每个时间步 t 和扩散步骤 i,我们将视觉观察 ot、本体感觉 ct 和噪声轨迹估计 转换为一组 3d tokens。每个 3d token 由潜在嵌入和 3d 位置表示。我们的模型使用相对 3d attention 融合所有 3d tokens,并使用正常注意力额外融合来自语言指令的信息,因为为语言 tokens 定义 3d 坐标是没有意义的。接下来,我们将描述如何对每个部分输入进行特征化(当不明确时,为了清楚起见,我们省略了下标 t)。
3D tokenization
在每个扩散步骤 i 中,我们通过将 的每个噪声位姿 映射到具有 mlp 的潜在嵌入向量,将干净轨迹的噪声估计表示为 3d 轨迹 tokens 的序列,并将来自噪声 3d 平移分量的 3d 位置表示为 3d 轨迹 tokens 的序列 。我们使用 2d 特征提取器对每个图像视图进行特征化,并获得相应的 2d 特征图,其中 c 是特征通道的数量,h, w 是空间维度,使用预训练的 clip resnet50 2d 图像编码器 [61]。给定来自该视图的相应深度图,我们通过平均补丁 patch 范围内的深度值来计算每个 h × w 特征补丁的 3d 位置 (x, y, z)。我们使用相机intrinsic和extrinics和针孔相机模型将patch的像素坐标和深度值映射到相应的3d坐标。这导致 3d 场景 token 基数为 h × w。每个场景token 由对应的补丁特征向量 表示,特征向量对应补丁坐标 (x, y) 处和 3d 位置。如果有多个视图可用,我们从每个视图聚合 3d 场景 tokens,以获得最终的 3d 场景 token 集 。本体感觉c也是一个3d场景token,具有可学习的潜在表示和对应于末端执行器当前3d位置的3d位置嵌入。最后,我们按照之前的工作 [17],使用预训练的 clip 语言编码器将语言任务指令映射到语言 tokens。
我们的 3D Relative Denoising Transformer 在所有 3d tokens 中应用相对自注意力 relative self-attentions,并将交叉注意力应用于语言 tokens。对于 3d 自注意力,我们使用旋转位置嵌入 [20] 来编码注意力层中的相对位置信息。查询 q 和键 k 之间的注意力权重写为:,其中 和 表示查询/键的特征和 3d 位置,M 是一个矩阵函数,它仅取决于查询和键的相对位置,灵感来自最近关于视觉对应 [62, 63] 和 3d 操作的工作 [17, 21]。我们将最终轨迹tokens输入到mlp中,以预测:
我们在表1中显示了多视图设置的定量结果和表2中的单视图设置。在多视图上,3D Diffuser Actor在所有18个任务中的成功率平均达到81.3%,比之前的最先进技术Act3D绝对提高了+18.1%。特别是,3D Diffuser Actor 在具有多个模式(例如堆块、堆杯子和放置杯子)的长视距高精度任务上实现了很大的飞跃,大多数基线都无法完成。所有基线都使用分类或回归损失,我们的模型是唯一一种使用扩散进行动作预测的方法。
在单视图上,3D Diffuser Actor 比 GNFactor 高 +46.7%,Act3D 高 +13.1%。令人惊讶的是,Act3D 也大大优于 GNFactor。这表明 3D 场景表示的选择比 3D 特征补全更重要。由于Act3D具有与3D Diffuser Actor类似的3D场景标记化,这表明了扩散对替代方案在预测中处理多模态的重要性,特别是基于采样的3D动作映射和旋转回归。
表 1:多视图设置上 RLBench 的评估。我们展示了所有随机种子的成功率平均值的平均值和标准差。3D Diffuser Actor 在大多数任务上都大大优于所有现有技术。可用时包含方差。
表 2:单视图设置中 RLBench 的评估。3D Diffuser Actor 在大多数任务上大大优于先前的最先进的基线 GNFactor 和 Act3D。
Ablations
我们考虑我们模型的以下消融版本:
2D Diffuser Actor,我们实现了 [6] 的 2D 扩散策略。我们从 3D Diffuser Actor 中删除了 3D 场景编码,而是通过每个视图中的平均池化特征使用每张图像 2D 表示。我们添加了可学习的嵌入来区分不同的视图并将它们与动作估计融合,如[6]中所做的那样。
2.3D Diffuser Actor w/o RelAttn。,使用绝对(非相对)注意力的消融版本。
我们在表 3 中展示了消融结果。 3d diffuser actor 大大优于其 2d 对应物 2d diffuser actor。这显示了 3d 场景表示在性能方面的重要性。具有绝对 3d 注意力的 3d diffuser actor (3d diffuser actor w/o relattn)。)比具有相对 3d 注意力的 3d diffuser actor 差。这表明通过相对注意力的平移等方差对于泛化很重要 。尽管如此,这种消融版本已经优于表 1 中的所有现有技术,证明了结合 3d 表示和扩散 policies 的有效性。
表 3:消融研究。我们的模型明显优于不使用 3D 场景表示或平移等变 3D 相对注意力的对应模型。
4.2 Evaluation on CALVIN
CALVIN 基准建立在 PyBullet [69] 模拟器之上,涉及一个 Franka Panda 机械臂来操纵场景。CALVIN 由 34 个任务和 4 个不同的环境(A、B、C 和 D)组成。所有环境都配备了一个桌子、一个滑动门、一个抽屉、一个打开/关闭LED按钮、一个控制灯泡和三个不同彩色块的开关(红色、蓝色和粉色)。这些环境在桌子的纹理和物体的位置之间彼此不同。CALVIN 提供 24 小时远程操作的非结构化播放数据,35% 的数据用语言描述进行注释 。每个指令链包括五个需要按顺序执行的语言指令。我们在所谓的零样本泛化设置上进行评估,其中模型在环境 A、B 和 C 中进行训练并在 D 中进行测试。我们报告成功率和完成顺序任务的平均数量,遵循之前的工作 [70, 58]。CALVIN中没有运动规划器,因此所有模型都需要预测机器人的姿态轨迹。
我们提出了 3d diffuser actor,这是一种结合了 3d 场景表示和动作扩散的操作 policy。与现有的2d和3d policies相比,我们的方法在rlbench和calvin上设置了最新的技术水平,并从少量的演示中学习现实世界中的机器人控制。3d diffuser actor 建立在机器人和生成模型的 3d 标记化场景表示的最新进展之上,并展示了它们的组合如何从演示方法中学习的强大。我们未来的工作包括从次优演示中学习 3d diffuser actor policies,并在模拟和现实世界中扩大训练数据。