一句话定位

ChainedDiffuser 把「关键位姿(keypose/macro-action)检测」与「轨迹扩散生成」两条各自成熟但互相独立的操作学习范式缝合成一个分层策略:沿用 Act3D 的全局 transformer 检测下一个末端执行器关键位姿,再用一个局部条件扩散模型(DDPM)生成连接当前位姿到目标关键位姿的稠密轨迹——用学出来的轨迹生成器取代此前所有 keyframe 方法依赖的运动规划器连接器。CoRL 2023;在 RLBench 需要连续交互/关节约束的 10 个「运动规划器困难」任务集上比纯 keypose 方法 Act3D 平均绝对提升近 60 个点(21.0%→80.9%)。

背景与定位

机器人操作模仿学习长期存在两条并行的技术路线:一条是把任务抽象为一串离散关键位姿(keyframe/macro-action)检测问题——Transporter Networks、CLIPort、PerAct、HiveFormer、InstructRL、Act3D 都属此列,检测出关键位姿后交给运动规划器(BiRRT/OMPL/MoveIt!)连接执行;这条路线样本效率高,但假设”关键位姿之间可以用规划器直线/避障连接”,对需要连续交互、遵守运动学约束的任务(擦桌子、开冰箱门、拧螺丝)束手无策,且现实世界人类示范通常不提供规划器所需的避障监督信号。另一条路线是直接对稠密动作轨迹建模——Diffusion Policy 等用扩散模型生成完整轨迹,训练稳定、能捕捉多模态轨迹分布,但论文指出这类方法尚未在长时程任务上得到验证,且缺少关键位姿这一结构化的中间表示。

ChainedDiffuser 站在 Act3D(同实验室前作,CMU Fragkiadaki 组,同一代码仓库)的延长线上,直接把 Act3D 的检测头拿来做全局 macro-action 预测器 πglobal,再新增一个局部轨迹扩散器 πlocal(qt, ât) 生成连接当前状态 qt 与预测关键位姿 ât 的稠密微动作——用条件扩散取代 Act3D 论文自陈的”运动规划器直线连接、无法处理关节物体”这一局限。这一「keypose 检测 + 轨迹扩散」的分层框架此后被同实验室 3D Diffuser Actor(CoRL 2024)进一步统一为单一扩散模型直接去噪整段 6-DoF 轨迹。

模型架构

输入编码:与 Act3D 共享同一套视觉-语言编码器——冻结的 CLIP ResNet-50 视觉+语言编码器,把 m 个相机视角的 256×256 RGB 图像编码为多尺度视觉 token(附录 7.2:32×32 粗粒度 + 64×64 细粒度两张特征图,与 Act3D 完全一致),再用深度通道把每个 2D 视觉 token 按其感受野对应像素的平均深度值、经针孔相机方程”抬升”为 3D 场景特征云(每个 3D token 携带 2D 外观特征 + 3D 位置);本体感受 qt 用简单 MLP 编码。仿真实验 m=3(左/右/腕部)或 m=4(另加前视角,取决于对比基线设置),真实世界 m=1(单前视角)。

全局 macro-action 预测器 πglobal:完整复用 Act3D 架构——3 个由粗到细的幽灵点(ghost point)采样阶段(工作空间约 1 米立方 → 16 厘米直径球 → 4 厘米直径球),幽灵点与一个可训练 query token 各自独立地对语言 token、视觉 token、本体感受 token 做相对 3D 交叉注意力(RoFormer 式旋转位置编码扩展到 3D,内积只依赖相对位置 p_j−p_i),query 与幽灵点特征做内积打分选出下一关键位姿的 3D 位置 â_pos,旋转 â_rot(四元数)与夹爪开合 â_grip 由 query 的上下文化表示过 MLP 回归。训练采样 1000 个幽灵点(三阶段均分),推理时增采到 20,000 个(论文附录 7.2 数字,用额外算力换精度,因幽灵点彼此不做自注意力、可独立扩展)。交叉注意力 2 层,embedding 维度单任务 60 / 多任务 120。

局部轨迹扩散器 πlocal:把 keypose 之间的轨迹生成建模为 DDPM 离散时间去噪过程——从归一化 SE(3) 空间采 S=50 个高斯噪声路点,经 K 步去噪迭代还原为无噪声路点序列。去噪网络同样是注意力模型:噪声 token 序列先对语言 token、视觉 token、机器人状态 token、目标 macro-action token(Z_macro=MLP(â_t))、去噪时间步 token(正弦位置编码)做交叉注意力,再彼此做自注意力,每个路点的时间位置 s 也用正弦编码叠加到对应噪声 token 上;最终 MLP 把上下文化噪声 token 回归为噪声预测 ε_θ(x_s^k, k)。位置去噪采用 scaled-linear 噪声调度,旋转去噪采用 squared-cosine 调度(均为 DDPM 标准形式,公式见附录 7.1)。动作空间 A={a_pos∈R³, a_rot∈四元数, a_grip∈{0,1}},macro-action 与轨迹路点共享同一动作空间定义。固定长度 S=50(而非可变长度)被证明训练更稳定——论文未给出可变长度版本的具体消融数字,仅陈述”实践中发现固定长度更稳定、效果更好”。

跨本体/多任务:语言条件多任务实验用同一模型跨任务共享权重(embedding 维度 120),未涉及跨本体(cross-embodiment)设计;仿真与真实世界分别训练,未见联合/共训练设置的披露。

数据

纯离线示范模仿学习(无在线 RL)。

仿真(RLBench)——两套各 10 任务的评测集,均为每任务 100 条示范训练、100 条未见 episode 评测:

  • Auto-λ 10 任务集(沿用 Auto-λ/HiveFormer/InstructRL 论文协议,便于横向对比):pick & lift、pick-up cup、push button、put knife、put money、reach target、slide block、stack wine、take money、take umbrella。
  • 作者自建 10 任务”运动规划器困难集”:专门挑选需要连续交互或遵守运动学约束、纯 keypose+规划器范式难以解决的任务,如 wipe desk(需要擦拭轨迹去除污渍)、open fridge(抓握把手时局部轨迹需遵守铰链运动学约束)、unplug charger、close door、open box、frame off hanger、open oven、books on shelf、cup in cabinet、shoes out of box。

相机与分辨率:仿真 RGB-D 256×256,对比 PerAct 时用 4 视角(左肩/右肩/腕部/前视),对比其余基线用 3 视角(左/右/腕部)。

真实世界:Franka Emika Panda + 平行爪 + 单个 Azure Kinect 前视 RGB-D 相机(30Hz 采集,1280×720 裁剪降采样到 256×256,easy_handeye 标定外参);设计 7 个任务:put mask in kit(20 条示范)、fold and wipe coffee(20)、stack cups(15)、spread dough(15)、fold and wipe beans(20)、put nails in box(20)、press stapler(10);示范通过 SpaceMouse 遥操作采集(30Hz),训练一个跨全部 7 任务的多任务策略。

关键位姿抽取:沿用 Act3D/HiveFormer/InstructRL 一致的启发式——末端执行器状态改变(抓取/释放)或全部关节速度趋近零即判定为 keyframe。

微动作监督:示范中 keypose 之间的全部稠密动作被重采样为固定长度 S=50 的轨迹段,用于监督局部扩散器;仿真与真实世界分别独立训练,未披露 sim-to-real 共训或联合训练。

训练方法

目标函数(式 7):三项相加——幽灵点候选位置上的交叉熵损失(CE,监督位置选择)、四元数旋转与夹爪开合的 MSE 损失、轨迹去噪噪声预测的 MSE 损失。

两阶段课程训练:先训练前两项(macro-action 检测)直到收敛,再加入第三项(轨迹扩散)联合优化——刻意不用 ground-truth keypose 训练扩散器,而是用(可能不准的)预测 keypose 训练,这样扩散器能学到一定的错误恢复能力(对不准确的 macro-action 预测有容错),论文未给出该课程设计单独的消融数字,仅作为设计动机陈述。

优化器与超参:AdamW,学习率 1e-4,batch size B=24(全部实验统一)。

控制方式:宏观层闭环(macro-action 预测器持续感知环境变化重新决策),微观层开环(预测出的一段稠密路点用笛卡尔空间位置控制顺序执行,控制频率 10Hz);真实机器人经 frankapy 包在 1kHz 低层 PID 控制下跟踪。

Infra(训练 / 推理工程)

  • 训练硬件:单任务模型 1× A100,训练 1 天;语言条件多任务模型 4× A100,训练 5 天;真实世界多任务策略 4× A100,训练 3 天。并行策略与训练精度(fp16/bf16 等)论文未披露。
  • 推理硬件:真实世界推理在单张 RTX 4090 桌面 GPU 上运行,系统 Ubuntu 20.04 + ROS Noetic。
  • 控制频率:宏观-微观轨迹执行 10Hz;真实机器人底层 PID 控制 1kHz(frankapy 包)。论文未报告端到端模型推理延迟或 FPS 数字。
  • 视觉输入:真实世界单个 Azure Kinect 前视 RGB-D,30Hz 采集、1280×720 裁剪降采样到 256×256。

评测 benchmark

Auto-λ 10 任务集(单任务,Table 1,每任务 100 条示范,均值):Auto-λ 55.0%、HiveFormer 88.4%、InstructRL 93.8%、ChainedDiffuser 95.8%(10 任务上普遍持平或小幅领先)。

运动规划器困难 10 任务集(Table 2,均值):Act3D(keypose+规划器)21.0%、Open-loop trajectory diffusion(ChainedDiffuser 去掉 macro-action 检测器,纯轨迹扩散)31.7%、Act3D+trajectory regression(用确定性回归替代扩散器连接 keypose)59.6%、ChainedDiffuser 80.9%——比 Act3D 平均绝对提升约 60 个点(论文正文原话),是论文的核心结果:证明”分层 keypose+学习轨迹”同时优于”纯 keypose+规划器”与”纯轨迹扩散无 keypose 结构”。Act3D+regression 在 cup in cabinet 等存在多模态轨迹(抓取阶段与放入柜子阶段轨迹分布不同)的任务上明显弱于扩散版本,印证扩散建模对多模态轨迹分布的优势。

真实世界(Table 3,7 任务,各 10 episode 评测):put mask in kit 6/10、fold and wipe coffee 8/10、stack cups 7/10、spread dough 7/10、fold and wipe beans 6/10、put nails in box 6/10、press stapler 10/10。最常见失败原因是深度图噪声导致关键位姿点选择的定位误差(与 Act3D 观察一致)。

相机视角鲁棒性(Table 4,同 Auto-λ 10 任务集,两侧肩部相机随机扰动 20°–30°):HiveFormer 均值从 88.4%→62.2%(Δ−26.2);ChainedDiffuser 均值从 95.8%→82.7%(Δ−13.1,跌幅明显更小);InstructRL(纯 2D 回归动作)在视角扰动下”完全失效、输出不合理动作”(论文未给出具体数字,仅定性描述)——3D 特征云表示对视角变化的鲁棒性优于 2D 方法。

基线:Auto-λ、HiveFormer、InstructRL(均取原论文数字)、Act3D、Open-loop trajectory diffusion、Act3D+trajectory regression(后两者为作者自行实现的消融式基线)。

创新点与影响

贡献:(1)首次把”关键位姿检测”与”轨迹扩散生成”两条此前独立发展的操作学习范式统一进单一分层策略——全局 transformer 负责需要语义场景理解的宏观决策(下一个 keypose 是什么),局部扩散模型负责需要连续交互/运动学约束感知的微观执行(怎么从当前状态平滑走到那个 keypose),用可学习的轨迹生成器彻底替代经典 keypose 方法依赖的运动规划器连接器;(2)证明”先训 keypose 检测收敛、再联合训练轨迹扩散”这一两阶段课程能给扩散器带来对不完美 keypose 预测的错误恢复能力;(3)在需要连续交互/关节物体操作的困难任务集上取得对纯 keypose 方法近 60 个点的绝对提升,同时在传统 pick-and-place 型任务集上保持不逊于/略优于 SOTA 的表现,说明统一框架没有以牺牲简单任务性能为代价换取困难任务能力;(4)验证该框架在真实机器人、仅用 10–20 条人类示范/任务的低数据场景下可行。

改变了什么:把 keyframe 预测范式的”最后一公里”——运动规划器连接——换成了条件扩散模型,从而把 keypose 方法的适用范围从”可被直线/避障规划器连接的 pick-and-place 型任务”扩展到”需要遵守运动学约束的连续交互任务”(擦拭、开关铰链物体),且不依赖真实世界罕见的避障监督标注。该”keypose 检测 + 轨迹扩散”分层思路被同实验室后续 3D Diffuser Actor(CoRL 2024)进一步化简为单个扩散模型端到端预测整段轨迹与 keypose。

作者自陈局限(论文 4.3 节):(1) 轨迹扩散器只建模末端执行器 SE(3) 位姿空间,尚未扩展到完整关节配置空间,作者认为这样能获得更灵活的轨迹预测能力,列为未来工作;(2) 宏观层闭环、微观层开环的控制方式限制了模型在高动态环境中的灵活性,作者指出框架可以扩展为微观层也闭环重规划以提升动态鲁棒性,列为未来工作;(3) 沿用 RLBench 标准假设,依赖标定好的相机——作者认为这一假设合理,因为未来面向家庭服务的移动机器人应当出厂时就标定好相机。

原始链接

一手源存档(sources/)