扩散策略
概述
扩散策略(Diffusion Policy, Chi et al., 2023)将去噪扩散概率模型(DDPM)引入机器人行为克隆,解决了传统 BC 难以处理的多模态动作分布问题。在接触丰富的操作任务中,扩散策略展示了显著优于传统方法的性能。
背景:去噪扩散概率模型
DDPM 回顾
DDPM(Ho et al., 2020)定义了两个过程:
前向过程(加噪):逐步向数据 \(x_0\) 添加高斯噪声:
其中 \(\beta_t\) 是噪声调度。利用累积参数 \(\bar{\alpha}_t = \prod_{s=1}^t (1 - \beta_s)\),可直接从 \(x_0\) 采样任意时刻 \(t\) 的噪声数据:
即:
反向过程(去噪):学习从噪声 \(x_T \sim \mathcal{N}(0, I)\) 逐步去噪恢复数据:
DDPM 训练目标
通过简化的变分下界,DDPM 的训练目标等价于噪声预测:
其中 \(x_t = \sqrt{\bar{\alpha}_t} x_0 + \sqrt{1 - \bar{\alpha}_t} \epsilon\),\(\epsilon_\theta\) 是噪声预测网络。
推导:
DDPM 的反向过程后验为 \(q(x_{t-1}|x_t, x_0)\),其均值为:
将 \(x_0 = \frac{1}{\sqrt{\bar{\alpha}_t}}(x_t - \sqrt{1-\bar{\alpha}_t}\epsilon)\) 代入,得到用 \(\epsilon_\theta\) 参数化的均值:
最小化 \(\|\tilde{\mu}_t - \mu_\theta\|^2\) 等价于最小化 \(\|\epsilon - \epsilon_\theta\|^2\)(忽略系数)。
DDIM 加速采样
DDPM 需要 \(T\) 步(通常 1000 步)去噪,太慢。DDIM(Song et al., 2021)提供非马尔可夫采样过程,可用 \(S \ll T\) 步完成:
当 \(\sigma_t = 0\) 时为确定性采样(DDIM),\(\sigma_t = \sqrt{\beta_t}\) 时退化为 DDPM。
Diffusion Policy 公式
问题设定
给定观测 \(\mathbf{o}_t\)(图像 + 机器人状态),预测未来 \(T_a\) 步动作序列:
其中 \(\mathbf{O}_t = (o_{t-T_o+1}, \ldots, o_t)\) 是观测历史(\(T_o\) 步)。
条件去噪
将动作序列 \(\mathbf{A}_t\) 视为扩散模型要生成的"数据"。条件扩散模型以观测 \(\mathbf{O}_t\) 为条件:
训练:
其中 \(k\) 是扩散时间步(区别于环境时间步 \(t\)),\(\mathbf{A}_t^0\) 是专家动作序列。
推理:
- 采样 \(\mathbf{A}_t^K \sim \mathcal{N}(0, I)\)
- For \(k = K, K-1, \ldots, 1\):
- 执行 \(\mathbf{A}_t^0\) 的前 \(T_e\) 步(\(T_e \leq T_a\))
动作空间参数
| 参数 | 典型值 | 说明 |
|---|---|---|
| 观测历史 \(T_o\) | 2 | 当前帧 + 1 帧历史 |
| 预测长度 \(T_a\) | 16 | 预测未来 16 步动作 |
| 执行长度 \(T_e\) | 8 | 实际执行 8 步后重新预测 |
| 去噪步数 \(K\) | 100(训练)/ 10-16(推理用 DDIM) | 推理加速 |
网络架构
观测编码器
视觉编码器:使用预训练的 ResNet-18 提取图像特征:
状态编码器:对机器人本体状态做线性投影:
融合:将视觉和状态特征拼接后投影:
噪声预测网络
Diffusion Policy 提供两种架构选择:
1. CNN-based(1D 时序卷积):
将动作序列视为 1D 信号,使用 ResNet 风格的 1D 卷积网络。观测通过 FiLM 条件化注入:
2. Transformer-based:
使用 Transformer Decoder,观测编码作为 cross-attention 的 key/value:
其中扩散时间步 \(k\) 通过正弦位置编码注入。
两种架构对比
| 维度 | CNN-based | Transformer-based |
|---|---|---|
| 推理速度 | 更快 | 较慢 |
| 参数量 | ~25M | ~40M |
| 长序列建模 | 受感受野限制 | 全局注意力 |
| 调参难度 | 较易 | 较难 |
| 典型任务 | 通用 | 长时序任务 |
为什么扩散策略优于传统 BC
多模态分布建模
传统 BC(MSE 损失 + 确定性网络)只能输出单一动作。当数据中存在多种合理动作时,MSE 回归会预测均值——这通常不是任何一种合理动作。
例子:桌上有一个杯子,可以从左边或右边绕过去。
- 传统 BC:预测中间路径(可能撞到杯子)
- 高斯混合模型:需要预设模态数量
- 扩散策略:自然建模任意复杂的多模态分布
接触丰富任务
在涉及接触的任务(如插入、折叠、倒水)中,微小的位置差异导致截然不同的力学行为。扩散策略的迭代去噪过程能精确生成满足接触约束的动作序列。
实验对比(Chi et al., 2023)
| 任务 | BC (MSE) | BC (GMM) | IBC | Diffusion Policy |
|---|---|---|---|---|
| Push-T | 56.5% | 65.1% | 62.3% | 86.2% |
| Can | 78.5% | 82.1% | 80.4% | 94.6% |
| Square | 45.2% | 51.8% | 48.9% | 84.7% |
| Transport | 35.1% | 42.3% | 38.7% | 73.8% |
3D Diffusion Policy(DP3)
动机
标准 Diffusion Policy 以 RGB 图像为输入,但图像缺乏 3D 几何信息。DP3(Ze et al., 2024)使用点云作为输入,提供显式的 3D 空间理解。
架构
点云编码:使用 PointNet++ 或类似网络将点云 \(P \in \mathbb{R}^{N \times 3}\) 编码为紧凑表征:
条件扩散:与标准 Diffusion Policy 相同,但以 \(h_{\text{3D}}\) 替代 \(h_{\text{img}}\) 作为条件。
优势
- 视角不变性:3D 表示天然对相机视角变化鲁棒
- 空间推理:显式编码物体间的空间关系
- 深度信息:精确的距离信息对操作任务至关重要
实验结果
DP3 在多个基准上超越 RGB-based Diffusion Policy,尤其在需要精确空间推理的任务(如装配、对齐)上优势明显。
Consistency Policy:快速推理
问题
标准 Diffusion Policy 推理需要 10-100 步去噪迭代,每步需要一次神经网络前向传播。在 50Hz 控制频率下:
- 16 步 DDIM:每次推理 ~50ms(仅勉强满足 20Hz)
- 100 步 DDPM:~300ms(远不能满足实时要求)
Consistency Model 回顾
Consistency Model(Song et al., 2023)学习一个函数 \(f_\theta\),将扩散轨迹上任意点直接映射到起点 \(x_0\):
自一致性条件:对同一轨迹上的任意两点 \(x_t\) 和 \(x_{t'}\),有 \(f_\theta(x_t, t) = f_\theta(x_{t'}, t')\)。
Consistency Policy
将 Consistency Model 应用于机器人策略(Prasad et al., 2024):
训练目标(蒸馏方式):
其中 \(\hat{\mathbf{A}}^{t_k}\) 是用预训练扩散模型从 \(\mathbf{A}^{t_{k+1}}\) 一步去噪的结果,\(\theta^-\) 是 EMA 目标网络。
推理:仅需 1-2 步即可生成高质量动作序列:
速度对比
| 方法 | 去噪步数 | 推理时间 | 控制频率 |
|---|---|---|---|
| DDPM | 100 | ~300 ms | ~3 Hz |
| DDIM | 16 | ~50 ms | ~20 Hz |
| Consistency Policy | 1-2 | ~5 ms | ~200 Hz |
Consistency Policy 实现了 10-60x 的推理加速,使扩散策略能够应用于高频控制场景。
实现要点
动作归一化
扩散模型假设数据在 \([-1, 1]\) 范围内。需要对动作进行归一化:
观测窗口与动作窗口
实践中的重要超参数:
- 观测窗口:使用最近 \(T_o = 2\) 步观测
- 预测窗口:预测 \(T_a = 16\) 步未来动作
- 执行窗口:执行 \(T_e = 8\) 步后重新规划(receding horizon)
重叠执行提供了平滑的动作过渡。
训练技巧
- EMA 模型:使用指数滑动平均模型用于推理
- 学习率调度:余弦退火
- 数据增强:随机裁剪、颜色抖动
- 梯度裁剪:防止训练不稳定
与其他章节的联系
参考文献
- Ho, J., Jain, A., & Abbeel, P. (2020). Denoising Diffusion Probabilistic Models. NeurIPS.
- Song, J., Meng, C., & Ermon, S. (2021). Denoising Diffusion Implicit Models. ICLR.
- Chi, C., et al. (2023). Diffusion Policy: Visuomotor Policy Learning via Action Diffusion. RSS.
- Ze, Y., et al. (2024). 3D Diffusion Policy: Generalizable Visuomotor Policy Learning via Simple 3D Representations. RSS.
- Song, Y., et al. (2023). Consistency Models. ICML.
- Prasad, V., et al. (2024). Consistency Policy: Accelerated Visuomotor Policies via Consistency Distillation. RSS.