一句话定义
扩散策略(Diffusion Policy)是把图像生成领域走红的扩散模型(AI 词典:Diffusion Model">Diffusion Model)搬来做机器人控制的方法:它不直接"算出"下一步动作,而是从一团随机噪声出发,反复去噪,最后得到一整段动作轨迹。
它是怎么工作的
想象一台满是雪花的旧电视。你隐约知道屏幕里该放一段舞蹈,但一开始只有噪点。扩散策略做的事,就是一点点把雪花调掉,让那段舞蹈慢慢浮现出来。
训练时,研究者先把人类演示的动作序列"弄脏"——逐步掺入噪声,直到它变成纯随机数;然后训练一个网络,让它看着机器人当前的摄像头画面和关节状态,去猜"这段乱码里掺了多少噪声"。执行时反过来:从纯噪声起步,网络每一轮预测并减掉一点噪声,若干轮之后,噪声里就浮出一段可执行的动作,比如未来半秒内每个关节该怎么转。
为什么非要多此一举:多峰分布
假设机器人要绕过一张桌子,从左边走和从右边走都对。传统做法用均方误差训练一个"状态→动作"的回归网络,它会把两条路平均一下,结果就是直直撞向桌子——这在专业上叫多峰分布(multimodal distribution)问题。扩散策略学到的是一个概率分布,采样时落在左边那条路或右边那条路都行,就是不会"和稀泥"。
另一个附带好处是它通常一次生成一小段动作,业界叫动作分块(action chunking)。比起一步一步地算,一整段动作更连贯,抖动和迟疑明显更少。
和相邻概念的区别
| 方法 | 怎么产生动作 | 长处与短板 |
|---|---|---|
| 直接回归(行为克隆) | 状态直接映射到动作 | 快、简单;多条正确路线会被平均掉 |
| 扩散策略 | 从噪声迭代去噪,生成一段轨迹 | 能表达多种合理走法、动作连贯;推理更慢 |
| 强化学习 | 靠与环境试错、拿奖励学 | 可能超过人类演示;采样成本高、训练常不稳 |
| 动作 token 化 | 像语言模型那样逐个"吐"动作 | 能复用大模型生态;离散化会损失精细度 |
对从业者和普通人的意义
如果你在做模仿学习(imitation learning),扩散策略是值得先试的基线之一,尤其是任务里存在"怎么走都行"的多种正确解时。它的工程难点主要在实时性:去噪要迭代多轮,机器人却不能等,于是步数裁剪、蒸馏、缓存等加速手段成了重点。
对普通人来说,它的价值在于让机器人学会那些"说不清但做得出来"的细微动作——叠衣服时的翻面、插插头时的微调。至于具体实现细节、推理速度和适用范围,以官方论文与项目页面为准。
