生成式人工智能 (Generative AI) 与机器人的融合引发了一场革命。特别是 扩散策略 (Diffusion Policy, DP) 已成为“行为克隆”——即教机器人通过模仿人类演示来执行任务——的最先进方法。与试图将人类动作平均化为单一平均轨迹的旧方法不同,扩散策略接受了人类解决任务方式多样化的事实。它对可能的动作分布进行建模,使机器人能够处理多模态行为 (例如,从左侧右侧抓取杯子) 。

然而,这也存在一个问题。扩散模型本质上是随机的。它们通过将随机高斯噪声去噪为轨迹来工作。虽然这允许了多样性,但在推理时引入了“掷骰子”效应。有时,模型采样的轨迹虽然在技术上是可能的,但位于分布的边缘——即离群点 (outlier) 。在像穿针或堆叠立方体这样的高精度任务中,这些离群点可能会导致失败。

在这篇文章中,我们将深入探讨 KDPE (用于扩散策略轨迹选择的核密度估计) 。 这项研究提出了一种巧妙的推理时“过滤器”,在不需要昂贵的重新训练的情况下,显著提高了基于扩散的机器人的可靠性。

问题: 随机性的双刃剑

要理解 KDPE,首先需要了解标准扩散策略的局限性。

当一个使用 DP 训练的机器人看到一个观测结果 (工作区的图像) 时,它从一组随机噪声开始。它迭代地去除这些噪声,以揭示清晰的动作轨迹。因为起点是随机的,所以每次运行策略时,输出轨迹都是不同的,即使对于完全相同的观测结果也是如此。

通常,这没有问题。但有时,去噪过程产生的轨迹是:

  1. 抖动或不一致: 随机性影响了运动的质量。
  2. 离群点: 由于 DP 是一种监督学习方法,它可能会学习到训练数据中存在的坏习惯或离群点。如果模型在执行过程中采样到了这些“罕见”模式之一,机器人可能会偏离航线。

目前大多数解决方案涉及投入更多数据或将 DP 与其他复杂算法相结合。KDPE 的作者提出了一个不同的角度: 为什么不生成多个选项并选择最好的一个呢?

解决方案: KDPE

KDPE 代表 用于扩散策略轨迹选择的核密度估计 (Kernel Density Estimation for Diffusion Policy Trajectory Selection) 。 其核心思想简洁优雅,但在数学执行上却很复杂。

机器人不再生成单一轨迹并祈祷好运,而是并行生成一个包含 \(N\) 条轨迹的种群。然后,它使用统计分析——具体来说是核密度估计 (KDE) ——来确定这些轨迹中哪一条最能“代表”学到的分布。简单来说,它寻找位于动作空间最“稠密”部分的轨迹,从而有效地过滤掉奇怪的离群点。

背景: 扩散策略机制

在进入密度估计之前,让我们简要回顾一下轨迹是如何生成的。扩散策略将机器人的策略建模为去噪扩散概率模型 (DDPM) 。

在推理时,过程如下所示:

扩散策略中的去噪步骤公式。

这里,\(\mathbf{A}^K\) 是起始随机噪声。模型从第 \(K\) 步倒推到第 \(0\) 步。在每一步,神经网络 \(\epsilon_\theta\) 预测噪声,然后将其减去以优化动作 \(\mathbf{A}\)。

网络使用均方误差 (MSE) 损失进行训练,试图预测添加到真实演示中的噪声:

训练噪声预测网络的损失函数。

结果是一个动作轨迹 \(\mathbf{A}^0\),包含时间跨度 \(T\) 内末端执行器的位置、姿态和夹爪状态。

核心方法: 流形感知动作选择

这篇论文的核心不是轨迹的生成 (使用标准 DP) ,而是 选择机制

1. 采样种群

机器人获取当前观测 \(\mathbf{o}_t\) 并采样 \(N\) 条独立的轨迹 (例如,\(N=100\)) 。因为去噪过程是随机的,我们会得到一团略有不同的潜在未来轨迹。

2. 聚焦末端执行器

研究人员发现,分析预测轨迹中的最后一个动作能为整条路径的质量提供强有力的信号。我们将第 \(i\) 条轨迹的最后一个动作称为 \(\mathbf{a}_i\)。

3. 机器人学中的“密度”挑战

目标是找到哪个动作 \(\mathbf{a}_i\) 具有最高的概率密度。如果我们只是处理图上的 2D 点,我们可以使用标准的高斯 KDE。但机器人动作很复杂。它包括:

  • 位置: 欧几里得空间 (\(\mathbb{R}^3\)) 。
  • 夹爪状态: 欧几里得空间 (通常为 1 维,开/关) 。
  • 方向 (姿态) : 旋转空间 (\(SO(3)\)) 。

你不能简单地减去两个旋转矩阵来找到它们之间的距离。旋转空间是非欧几里得的;它存在于一个流形上。为了有效地执行核密度估计,我们需要一个能理解这种几何结构的核 (kernel) 。

4. 流形感知核

作者提出了一个统一的核函数,可以同时处理位置、旋转和夹爪状态。核函数 \(k(\mathbf{a}_i, \mathbf{a}_j)\) 衡量两个动作之间的相似性:

定义多元核函数的公式。

在这个公式中,\(\mathbf{H}\) 是一个协方差矩阵,用于对不同分量 (位置、旋转、夹爪) 进行加权。关键部分是 \(\boldsymbol{\Delta}_{ij}\),它代表两个动作之间的“差异”。

通过连接各个分量的差异来构建此差异向量,并尊重它们各自的流形:

显示差异向量 delta 构建过程的公式。

让我们分解 \(\log(R_j^T R_i)^\vee\) 这一项:

  1. \(R_i\) 和 \(R_j\) 是旋转矩阵。
  2. \(R_j^T R_i\) 计算它们之间的相对旋转。
  3. \(\log(\cdot)\) 是李群对数映射,它将旋转从流形 \(SO(3)\) 映射到切空间 \(\mathfrak{so}(3)\)。
  4. \((\cdot)^\vee\) (“Vee” 算子) 将切空间元素转换为 \(\mathbb{R}^3\) 中的向量。

本质上,这以数学上严谨的方式计算了两个 3D 姿态之间的角度距离。

当我们将其代入核函数的指数时,我们得到了平方距离的加权和:

核函数展开后的指数部分,显示加权距离。

在这里,涉及旋转的项有效地表示了测地线距离 (旋转球面上最短路径) 的平方:

定义 SO(3) 上测地线距离的公式。

这种数学处理确保了姿态上的“接近”与位置上的“厘米级接近”一样被自然地处理。

5. 选择最佳轨迹

定义了核函数后,算法现在可以计算任何特定动作 \(\tilde{\mathbf{a}}\) 的密度分数 \(\rho\)。密度是与种群中所有其他生成动作的平均相似度:

计算动作概率密度的公式。

最后,KDPE 选择与具有 最大 \(\rho\) 值 的动作相关联的轨迹。

密度的可视化

为了直观地展示这一点,请看下图。它显示了夹爪动作的热力图。绿色和红色箭头分别代表张开和闭合的夹爪。

通过 KDE 估计的 PDF 可视化。

当你从左向右移动时,“探测”的姿态会发生变化。注意热力图 (紫色/黄色斑点) 的形状是如何变化的?只有当位置、姿态夹爪状态都与大多数采样数据一致时,KDE 才会出现峰值。这证明了该内核成功地将所有这些不同的数据类型融合到了一个单一的密度景观中。

实验设置

为了证明选择“最稠密”的轨迹比随机选择更好,作者在一套标准基准测试中对 KDPE 进行了测试。

仿真任务: 他们使用了 RoboMimicMimicGen , 涵盖了提升物体、组装零件和操作咖啡机等任务。

RoboMimic 和 MimicGen 任务环境。

他们比较了四种方法:

  1. DP (基线) : 标准扩散策略 (随机选择) 。
  2. KDPE (本文方法) : 选择最高密度的动作。
  3. KDPE-OOD: 选择最低密度的动作 (以证明离群点是有害的) 。
  4. Tr-KDPE: 一种变体,查看整个轨迹的密度,而不仅仅是最后一步。

真实机器人任务: 他们还在物理 Franka Emika Panda 机器人上部署了该系统,用于需要灵巧性的任务,如 PickPlush (抓取毛绒玩具) 、CubeSort (立方体分类) 和 CoffeeMaking (制作咖啡) 。

包括抓取毛绒玩具和制作咖啡在内的真实机器人任务。

结果: 精度与一致性

结果证实了假设: 针对分布的众数 (mode) 进行过滤可以提高成功率。

仿真基准测试

在下表中,“ph”代表 *熟练人类 (proficient human) * (干净数据) ,“mh”代表 *混合人类 (mixed human) * (杂乱数据) 。

比较 DP 和 KDPE 变体成功率的表格。

数据的主要结论:

  • KDPE 获胜: KDPE 在几乎每个类别中都优于标准 DP 基线。
  • 杂乱数据: 在“mh”数据集上的改进最为显著。这很有道理——如果训练数据包含糟糕的演示,模型会产生更多的离群点。KDPE 有效地过滤掉了这些。
  • 精度至关重要: 在需要高精度的 ToolHang (工具悬挂) 任务上,KDPE 表现出巨大的提升 (在 OOD 实验背景下高达 12%) 。
  • 离群点是致命的: KDPE-OOD 行显示了糟糕的性能。这证实了扩散分布的“尾部”包含故障模式。如果你选择密度最低的轨迹,机器人几乎肯定会失败。

对视觉扰动的鲁棒性

机器人技术中的一个常见问题是,如果光照或颜色略有变化,模型就会失效。作者通过修改仿真中的物体颜色来测试这一点。

显示颜色偏移物体的视觉扰动实验。

即使在这些偏移的域中,KDPE 仍保持了比标准 DP 更高的成功率,这表明分布的“众数”比随机样本对视觉噪声更具鲁棒性。

现实世界的成功

在物理机器人上,结果与仿真反映的一致。

真实世界任务的成功率。

CoffeeMaking 任务——一个需要精确插入咖啡胶囊的长视界任务——中,KDPE 表现出更平滑的行为和更高的可靠性。作者指出,机器人的动作明显更少抖动,因为 KDE 选择可能过滤掉了具有高频噪声或不稳定运动的轨迹。

为什么不使用整条轨迹?

你可能会想,为什么 KDPE 只关注最后一个动作,而不是整条路径。作者实际上测试了一个“轨迹-KDPE” (Tr-KDPE) ,它使用条件概率来对整个序列进行建模:

Tr-KDPE 中使用的条件 KDE 公式。

然而,正如结果表所示,Tr-KDPE 的表现不如更简单的 KDPE。原因是 维度灾难 (Curse of Dimensionality) 。 当你增加维度 (从一个动作到一系列动作) 时,数据变得稀疏,估计密度变得指数级困难且计算昂贵。专注于最终动作作为一个启发式方法,在不打破计算预算的情况下已经足够有效。

结论与启示

KDPE 为机器人操作提供了一种令人信服的“推理时扩展 (inference-time scaling) ”策略。它表明,我们并不总是需要重新训练模型来获得更好的性能;有时,我们只需要更聪明地从现有模型中进行采样。

通过将扩散策略的输出不视为单一答案,而是一个概率选项场,KDPE 利用了“群体的智慧” (或者更确切地说,生成样本的智慧) 。通过使用流形感知核,它正确地导航了机器人姿态的复杂几何结构,确保机器人坚持它学到的最可靠、“正常”的行为,同时丢弃扩散模型偶尔可能采取的危险的“创造性自由”。

对于学生和研究人员来说,KDPE 强调了一个重要的教训: 生成模型很强大,但它们的随机性需要控制。 像 KDE 这样的统计工具提供了将概率猜测转化为可靠机器人动作所需的护栏。

可视化工具 作者还发布了一个可视化工具来帮助调试这些轨迹,使用点云来查看分布的确切中心位置。

显示轨迹密度的可视化工具。

这项工作为更可靠的自主代理铺平了道路,使其能够从生成式人工智能的创造力中受益,而无需承受其幻觉带来的痛苦。