一句话定位
把 consistency model 蒸馏引入 3D 点云条件的扩散策略 dp3-3d-diffusion-policy,让它从 10 步 DDIM 推理压缩到 1 步,决策延迟从 178ms 降到 17ms(约 10 倍),成功率不降反略升。
背景与定位
diffusion-policy 和 dp3-3d-diffusion-policy(DP3)用扩散模型建模机器人动作分布,效果好但推理慢——DP3 处理高维 3D 点云输入时单步决策要 ~178ms,无法支撑真实闭环控制。此前的加速思路是分层采样(hierarchical sampling,如 DiffuserLite、ChainedDiffuser),但跨任务域难以确定合适的层级划分。
本文转向图像生成领域已验证有效的 consistency model(Song et al., 2023):训练一个函数把 PF-ODE 轨迹上任意一点直接映射回终点(即”自洽性”),从而单步完成原本需要多步迭代去噪的采样。同期工作 consistency-policy(Stanford/Princeton, RSS 2024)也做了同类蒸馏,但作用于 2D 图像条件的扩散策略;ManiCM 的差异点在于面向 3D 点云条件、且专门论证了在低维(~28 维)动作流形上应该预测动作样本而非噪声。作者致谢港大 Zhixuan Liang、Yao Mu 提供技术讨论。
模型架构
- 教师网络:直接采用预训练的 dp3-3d-diffusion-policy 作为 teacher(DP3 本身把点云条件注入 Diffusion Policy 的去噪 U-Net/MLP 结构)。
- 3D 条件编码:单目 RGB-D 相机(eye-to-hand)通过内外参反投影得到点云,用最远点采样(FPS)下采样到 512 点,经一个 MLP 点云编码器压缩为 64 维embedding;机器人本体位姿(agent pose)同样用 MLP 编码为 64 维。图像/深度图裁剪到 84×84。
- 一致性函数(consistency function):f_θ(a^t, t, p, q) = c_skip(t)·a^t + c_out(t)·F_θ(a^t, t, p, q),其中 F_θ 被显式参数化为直接预测干净动作样本 a^0,而非预测噪声 ε——论文论证这是因为动作维度低(~28 维),预测样本比预测噪声收敛更快、方差更小,且 consistency distillation 会放大噪声预测沿 ODE 轨迹传播的方差(消融验证见下)。
- 三网络结构:online network、target network、teacher network(均以 DP3 教师参数初始化)。训练时对干净动作 a₀ 做 n+k 步前向加噪得到 a_{n+k},同时送入 teacher(生成 a_hat_0*)和 online network(生成 a_hat_0);target network 用 teacher 的 k 步 ODE 估计结果(DDIM-Solver)生成 a_hat_0^-;target network 参数由 online network 的 EMA 更新(μ=0.95),以此逼近自洽性约束。
- 观测/动作时序:历史观测步数 2(用最近两帧点云做条件),horizon 4(每次预测 4 步连续动作),但每次只执行 2 步(receding horizon)。
数据
- 基准:Adroit(Shadow 灵巧手,动作维度 28,3 个任务)+ MetaWorld(平行夹爪,动作维度 4,28 个任务,按难度分 Easy/Medium/Hard/Very Hard),共 31 个任务。
- 每个任务仅 10 条专家演示(沿用 DP3 设定以保证公平对比)。
- 演示来源:MetaWorld 用启发式策略(heuristic policy)生成;Adroit 用 VRL3(强化学习方法)生成。
- 纯仿真数据,无真实机器人数据、无跨具身/仿真到真实迁移;点云与本体位姿是唯一的观测模态(无 RGB 图像输入到策略)。
训练方法
- 蒸馏目标:manipulation consistency distillation 损失 L_MCD(θ,θ⁻) = E[‖f_θ(a_{n+k}, t_{n+k}) − f_{θ⁻}(â_n^Φ, t_n)‖₂²],其中 â_n^Φ 是用 k 步 DDIM-Solver 从 a_{n+k} 估计出的 n 步结果。
- 教师扩散过程:训练时间步 100,DDIM 推理步数 10(教师 DP3 用 10 步 DDIM 采样);蒸馏跳步 k=10。
- 优化器:AdamW,batch size 128,训练 3K epoch,cosine decay 学习率调度 + 500 步线性 warmup。学习率数值论文正文与附录表不一致:正文写 5e-5,附录 Table 5 超参表写 0.0005(5e-4)——原文自身矛盾,未能核实哪个是最终生效值,此处如实标注两处口径。
- EMA 衰减率 μ=0.95;action/观测归一化到 [-1, 1](因 DDIM 预测本身会裁剪到该区间以保证训练稳定)。
- 关键消融:预测动作样本 vs 预测噪声 ——两者理论上优化同一扩散过程,但在 consistency distillation 下预测样本的平均成功率 78.5%,预测噪声只有 24.4%(用噪声预测时一致性蒸馏会导致复合不稳定性,几乎失效)。
- 教师 DDIM 步数消融(Table 3):教师用 100→10(train→infer)时 DP3 平均运行时间 177.6ms/SR 77.5%,ManiCM 蒸馏后 17.3ms/SR 78.5%;教师换成 1000→50 时 DP3 平均运行时间 994.4ms/SR 78.2%,ManiCM 蒸馏后 17.4ms/SR 75.3%——蒸馏后运行时间几乎不随教师步数变化,且从 50 步 DDIM 教师蒸馏可获得约 57 倍加速(994.4ms→17.4ms)。
Infra(训练 / 推理工程)
- 训练与推理评测均只用一块 NVIDIA RTX 4090 GPU(论文正文原话:“train the model on one NVIDIA RTX 4090 GPU. All compared models are evaluated on one NVIDIA RTX 4090 GPU”)。
- 据 GitHub README:教师 DP3 训练约 10GB 显存、约 4 小时(单任务);ManiCM 蒸馏训练同样约 10GB 显存、约 4 小时(单任务,单 4090)。
- 推理延迟(决策每步耗时,31 任务/100 episode/3 随机种子 均值±标准差):
- DP(10 步扩散):162.6±1.2ms
- DP3(原论文数值,10 步):157.4±1.5ms;本文复现版 DP3*(性能更高,10 步):177.6±1.4ms
- Simple DP3*(轻量骨干,10 步):120.6±0.9ms
- ManiCM(1 步,NFE=1):17.3±0.1ms——约为 DP3* 的 1/10
- ManiCM(4 步,NFE=4):66.2±0.3ms——约为 DP3* 的 1/3
- 未披露:边缘设备部署、真实机器人闭环控制频率实测(论文全部实验在仿真中评测运行时间,未做真实机械臂的端到端延迟测试)。
评测 benchmark
Adroit + MetaWorld 共 31 任务,3 随机种子,每 200 epoch 评估 20 episode 取最高 5 次成功率均值;正式评测跑 100 episode。
运行时间(ms/step,均值±std,Table 1):
| Method | NFE | Adroit | MW-Easy(18) | MW-Medium(3) | MW-Hard(3) | MW-VeryHard(4) | Average |
|---|---|---|---|---|---|---|---|
| DP | 10 | - | - | - | - | - | 162.6±1.2 |
| DP3(原论文) | 10 | - | - | - | - | - | 157.4±1.5 |
| DP3*(复现) | 10 | 159.6 | 177.4 | 186.1 | 183.2 | 181.8 | 177.6±1.4 |
| Simple DP3* | 10 | 95.5 | 123.5 | 119.2 | 124.6 | 124.7 | 120.6±0.9 |
| ManiCM(1步) | 1 | 16.9 | 17.6 | 17.2 | 17.0 | 16.5 | 17.3±0.1 |
| ManiCM(4步) | 4 | 56.3 | 66.8 | 68.2 | 67.9 | 69.4 | 66.2±0.3 |
成功率(%,Table 2):
| Method | NFE | Adroit | MW-Easy | MW-Medium | MW-Hard | MW-VeryHard | Average |
|---|---|---|---|---|---|---|---|
| DP | 10 | 31.6 | 77.1 | 18.0 | 3.0 | 22.5 | 52.8±3.6 |
| DP3(原论文) | 10 | 68.3 | 86.0 | 25.0 | 13.3 | 44.0 | 65.9±3.3 |
| DP3*(复现) | 10 | 76.1 | 91.7 | 46.3 | 44.8 | 62.3 | 77.5±3.8 |
| Simple DP3* | 10 | 73.0 | 90.4 | 47.3 | 45.6 | 56.5 | 75.8±3.3 |
| ManiCM(1步) | 1 | 74.9 | 92.9 | 47.7 | 44.2 | 65.7 | 78.5±4.2 |
| ManiCM(4步) | 4 | 78.2 | 93.0 | 48.0 | 46.7 | 64.5 | 79.0±3.9 |
论文正文另外声称:单步 ManiCM 相对 DP3 与 Simple DP3 平均成功率提升约 1.3 个百分点;在 MetaWorld Very Hard 子集上相对”state-of-the-art method”绝对提升 5.5 个百分点——原文未明确这两处百分比具体对应上表中哪一基线列的哪一次运算,与 Table 1/2 逐格核对后数值对不完全齐(例如 ManiCM 1 步 Average 78.5% 与 DP3* Average 77.5% 相差 1.0pt、与 Simple DP3* 75.8% 相差 2.7pt),这里如实保留论文原话,不代为改写或对齐。定性案例(Figure 4):Adroit 转笔任务与 MetaWorld 踢球入门任务中,DP3 未能精确对齐/未能带球,ManiCM 单步推理下动作质量仍完成任务。
创新点与影响
- 首次把 consistency distillation 用到3D 点云条件的机器人操作扩散策略上(区别于同期 consistency-policy 面向 2D 图像条件),把 DP3 的多步去噪压缩为单步推理。
- 关键工程判断:在低维(~28 维)动作流形上,consistency 蒸馏必须预测动作样本而非噪声,否则蒸馏过程的复合方差会让模型基本失效(78.5% vs 24.4% 成功率)——这与图像生成领域默认预测噪声的惯例相反。
- 蒸馏本身代价很低:单块 4090、约 4 小时即可完成一个任务的蒸馏训练,教师网络参数直接复用初始化 online/target 网络。
- 论文自陈的局限(原文 Section 6):1)ManiCM 的性能上限受限于教师模型(consistency distillation 本质是蒸馏,不能超越教师太多);2)把 consistency model 蒸馏扩展到大规模预训练扩散策略的可扩展性仍未探索。
原始链接
- arXiv: https://arxiv.org/abs/2406.01586
- PDF: https://arxiv.org/pdf/2406.01586
- Project page: https://manicm-fast.github.io
- GitHub: https://github.com/ManiCM-fast/ManiCM
一手源存档(sources/)
- manicm—github-readme.md
- manicm—project-page.md
- arXiv 原文 PDF:https://arxiv.org/pdf/2406.01586(不入 git,全文经 arxiv.org/html/2406.01586v1 抓取阅读)