飞书原文 · 源修订 77
🎯
本章目标: 从机器人策略学习的基本问题出发,推导行为克隆、动作块与条件 Flow Matching,建立阅读 π0 和 π0.5 所需的统一符号。
1. 机器人策略到底在学习什么
机器人策略训练的表面形式是“输入观测,输出动作”,但从统计学习角度看,它真正学习的是:在当前观测、历史和任务条件下,哪些未来行为更可能来自成功示范。
💡
一句话结论: 机器人通常不是直接学会一套显式物理定律,而是在参数中形成一个条件行为分布;这个分布同时压缩了场景理解、任务意图、运动模式和示范数据中的偏差。
1.1 从专家数据到条件行为分布
专题补充|概率为什么长这样
详细推导条件概率、连续概率密度、多峰混合、Action Chunk 联合分布、最大似然与 Flow Matching 的关系。
设专家数据集为:
读法: 数据集 D 由 N 个样本组成,每个样本包含当前观测、语言条件和未来动作块。
推导: 把一条轨迹按时间切成监督样本,动作块长度 H 决定一次预测覆盖的短期时间范围。
其中:
- :机器人在时刻 的观测,包括多路图像、本体状态和历史信息;
- :语言任务或其他目标条件;
- :未来 步动作块。
最大似然训练要求模型给专家动作分配尽可能高的概率:
读法: 寻找参数 theta,使所有专家动作块在对应观测和语言条件下的对数概率总和最大。
推导: 样本联合似然是各条件概率的乘积,取对数后得到求和目标。
等价地,最小化负对数似然:
读法: 行为克隆损失是专家动作块负对数概率的平均值;最小化它等价于最大化似然。
推导: 最大似然目标乘以负一,再用数据集经验平均近似期望。
梯度更新为:
读法: 损失对参数的梯度等于专家动作对数概率梯度的负期望,优化器沿相反方向更新参数。
推导: 对负对数似然逐项求导,并利用期望与求导在常规正则条件下可交换。
这意味着模型并不是逐条保存示范,而是不断调整参数,使相似观测和任务条件下的专家行为具有更高概率。
1.2 模型参数中形成了哪些能力
| 层级 | 学习内容 | 从什么监督中获得 | 不保证什么 |
|---|---|---|---|
| 场景表征 | 对象、位置、遮挡、空间关系和视觉特征 | 视觉预训练、图文数据、机器人图像 | 不保证理解真实三维几何 |
| 任务条件 | 语言与对象、目标状态、操作阶段的关联 | 语言标注和任务示范 | 不保证具有因果任务模型 |
| 可供性 | 什么对象可以抓、拉、推、放置或使用 | 手-物和机器人-物交互统计 | 不保证当前机器人一定可达 |
| 运动原语 | 接近、抓取、抬升、旋转、释放等局部模式 | 动作轨迹和时序结构 | 不保证动作满足全部动力学约束 |
| 行为分布 | 不同策略、速度、抓型和路径的概率结构 | 多样化专家示范 | 不保证覆盖示范之外的恢复行为 |
因此,“机器人学会抓杯子”并不是单个知识点,而是多个能力的叠加:识别杯子、判断抓取区域、选择接近方向、生成夹爪闭合时机,并在执行后根据新观测继续决策。
1.3 Action Chunk 学到的是短期行为结构
单步策略学习:
读法: 策略在观测和语言条件下,为单步动作分配条件概率。
推导: 这是单步策略的定义:把当前观测和任务作为条件,网络参数 theta 决定动作分布;它是动作块策略在 H 等于 1 时的特例。
这是动作块分布在 H=1 时的特例;它不说明动作怎样影响未来。
Action Chunk 策略学习未来动作序列的联合分布:
读法: 策略在当前观测和语言条件下,为从 t 到 t+H-1 的整段动作联合分布分配概率。
推导: 把 H 个连续动作视为一个随机向量,联合建模可以保留动作维度和时间维度的相关性。
从概率论角度,它可以分解为:
读法: 动作块联合概率可以按时间顺序分解为每一步动作在此前动作、当前观测和语言条件下的条件概率之积。
推导: 这是概率链式法则;生成式动作模型也可以直接联合采样,不必真的按这个乘积逐步解码。
实际的 Flow Matching 或 Diffusion Policy 通常联合生成整段动作,而不必显式逐步自回归。动作块让模型学习到:
- 双臂之间的同步与先后关系;
- 接近、接触、施力和释放之间的短期连续性;
- 一段时间内相对稳定的运动意图;
- 动作维度之间的相关性,而不是每个关节独立预测。
但 越大,短期动作越平滑,闭环反馈越慢; 越小,纠错及时,但推理开销和局部抖动可能增加。Action Chunk 是控制接口的时间尺度选择,不只是训练技巧。
1.4 为什么 MSE 可能学出“平均但错误”的动作
假设确定性模型输出 ,使用均方误差:
读法: MSE 是真实动作块与模型输出动作块之间欧氏距离平方的期望。
推导: 确定性模型把所有条件动作压成一个点,因此它不能表达采样概率和多种模式。
令条件 ,固定条件下的风险为:
读法: 固定条件 c 时,风险是预测动作 f(c) 与随机真实动作 A 的平方距离的条件期望。
推导: 把总体 MSE 按条件分组,先研究每个观测和语言条件下的最优输出。
对 求导:
读法: 风险对预测向量 f(c) 的梯度是两倍的“预测动作减去条件动作均值”。
推导: 对平方范数逐维求导,再对随机动作取条件期望。
令导数为零,得到最优解:
读法: 使 MSE 风险最小的确定性预测,就是给定条件下动作块的条件均值。
推导: 令上一式梯度为零,得到预测等于条件均值;平方损失的最优点因此不是任意分位数。
因此,MSE 学到的是条件均值。如果同一观测下存在绕左和绕右两种成功路径:
读法: 动作分布由两个离散成功模式组成,各以一半概率集中在左绕动作块和右绕动作块附近。
推导: 狄拉克 delta 表示把概率质量集中在一个动作块;两个 delta 的混合表达双峰而非平均轨迹。
那么:
读法: 在左右两种模式等概率时,MSE 最优动作是两段动作逐维相加后除以二。
推导: 直接把双峰分布的条件期望代入均值公式。
这个平均轨迹可能正好撞向障碍物,既不是左绕,也不是右绕。
Flow Matching 的价值不只是让动作更平滑,而是能够表示和采样连续、多峰的动作分布。
1.5 训练时学的是专家分布,部署时面对的是自身分布
行为克隆优化的是专家状态分布下的损失:
读法: 行为克隆损失是在专家访问到的状态分布 d_E 上,计算策略动作与专家动作损失的期望。
推导: 把训练样本的观测边缘分布记为 d_E,再对该分布下的单步监督损失取平均。
但部署时,机器人访问的状态来自自身策略:
读法: 部署时,机器人观测来自当前策略 theta 自己诱导的状态或观测分布。
推导: 部署时反复用策略动作推进环境,所访问观测的长期频率构成 d_pi_theta;因此该分布由策略和环境动力学共同诱导。
这个分布不是训练集中的固定采样分布,而是策略、动力学和历史误差共同决定的访问分布。
只要早期动作出现小偏差,后续图像、对象位置和接触状态都会改变,通常有:
读法: 策略部署时访问的分布通常不等于专家训练分布。
推导: 只要策略存在动作误差,动力学就会把状态推向不同区域,除非环境和策略具有特殊不变性。
这就是协变量偏移。静态动作预测准确率很高,仍可能在闭环 rollout 中逐步偏离。
物理系统还满足:
读法: 下一状态由当前状态、动作和扰动经过真实动力学 F 产生;当前观测由状态经过观测函数 G 产生并叠加噪声。
推导: 第一式是状态转移,第二式是传感器观测模型;把二者串联就得到策略动作影响未来观测的闭环。
其中 是真实动力学, 包含摩擦、接触、物体质量和外界扰动。普通行为克隆策略并不一定显式学习 ;它可能只通过示范统计间接吸收其中一部分规律。
1.6 机器人没有自动学到什么
专题延伸|物理因果与具身思维链
物理因果改变模型所表示的世界结构,具身思维链改变机器人如何观察、预测、行动、验证和恢复。
- 没有自动学到完整物理方程。 除非引入世界模型、系统辨识或交互监督。
- 没有自动学到因果关系。 相关背景、对象和动作可能被错误绑定。
- 没有天然获得接触力。 仅凭 RGB 与关节位置很难区分稳定接触、滑移和过度施力。
- 没有保证安全和可达。 概率高的示范动作不等于满足当前机器人的碰撞、速度和力矩约束。
- 没有保证错误恢复。 如果训练数据几乎都是成功轨迹,策略不会自然掌握失败后的重新抓取和重新规划。
- 没有学到任务之外的通用智能。 它的能力边界由数据覆盖、模型结构、控制接口和真实反馈共同决定。
📌
本节收口: 机器人策略学习的是专家数据定义的条件行为分布。VLM 提供条件表示,Action Chunk 表达短期行为结构,Flow Matching 表达多峰连续动作;真正的闭环可靠性还取决于数据覆盖、反馈频率、动力学约束和失败恢复。
接下来的三个问题自然由此产生:为什么专家分布上的行为克隆会在闭环中累积误差?为什么 MSE 会在多峰动作中产生错误均值?Flow Matching 又如何从噪声生成一个完整、连贯的动作模式?
2. 为什么单纯行为克隆不够
上一节已经指出,行为克隆优化的是专家状态分布 ,部署时面对的却是策略自身产生的状态分布 。本节进一步解释:为什么很小的单步误差会沿闭环系统不断改变后续输入。
2.1 误差不仅影响动作,还会改变下一次观测
机器人环境按照以下闭环递推:
读法: 状态按真实动力学转移,动作从当前观测条件策略中采样,观测又由当前状态经过 G 得到。
推导: 三部分分别对应环境、策略和传感器,合在一起构成闭环递推。
如果在时刻 出现动作偏差 ,它会造成状态偏差:
读法: 下一时刻状态偏差近似等于当前状态偏差经过动力学对状态的 Jacobian 传播,再加上动作偏差经过动力学对动作的 Jacobian 传播。
推导: 对 F(s,a) 在名义轨迹附近做一阶 Taylor 展开并忽略二阶项。
新的状态又产生新的图像、对象位置和接触关系。模型下一步不再是在原专家轨迹上预测,而是在自己制造的偏移状态上继续预测。
2.2 为什么长时任务更容易崩溃
假设策略在专家状态上的单步错误概率为 ,任务长度为 。在简单上界分析中,纯行为克隆的累计代价可能达到:
读法: 在有限任务长度、单步错误概率为 epsilon 且代价和动力学满足有界假设的简单分析下,行为克隆相对专家的累计代价上界按 T 的平方增长。
推导: 若训练分布上的单步错误率为 epsilon,前面错误会把策略带到更陌生状态,使第 t 步错误概率最多随 t 线性增长;对 T 步累加得到二次量级 T 平方 epsilon。
适用条件: 这里的数量级不是所有机器人系统的定理,而是说明错误状态会被后续时间步重复访问。
原因是早期错误不仅产生一次代价,还可能让后续多个时间步都进入训练数据未覆盖的区域。交互式数据聚合方法让训练覆盖策略自身状态后,可以将典型上界改善为近似:
读法: 在交互式数据聚合能够覆盖策略自身状态、且专家纠正成本受控的典型假设下,累计代价的数量级可从 T 平方 epsilon 改善到 T epsilon。
推导: 数据聚合在当前策略访问的状态上请求专家标签,使每一步都能把错误控制在 epsilon 量级;对 T 个时间步求和后得到线性量级 T epsilon。
适用条件: 这不是自动保证;性能取决于数据聚合覆盖、专家标签质量和策略类表达能力。
这里的数量级依赖具体假设,但核心结论稳定:长时任务对闭环分布覆盖的要求远高于离线动作预测。
2.3 Action Chunk 能缓解什么,不能解决什么
- 能够减少频繁推理造成的局部动作不连续;
- 能够表达短期双臂协调和稳定运动意图;
- 但不能自动补足训练数据中不存在的偏移状态;
- 过长的 chunk 还可能让机器人在发生异常后继续执行旧计划。
2.4 真正提高闭环可靠性的手段
- 采集扰动、失败和恢复数据;
- 通过人工接管或 DAgger 类方法覆盖策略自身状态;
- 使用短周期滚动重规划,而不是一次执行完整长轨迹;
- 加入对象状态、接触和任务完成条件检查;
- 通过强化学习、经验学习或在线反馈优化真实 rollout 结果。
💡
核心区别: 行为克隆回答“在专家状态中应该做什么”,闭环策略还必须回答“当我已经做偏了,下一步怎么办”。
3. 为什么不能直接用 MSE 回归动作
第 1 节已经证明:确定性 MSE 回归的最优解是条件均值。本节关注更一般的问题:机器人动作为什么需要一个完整的条件分布,而不是单个最优点。
3.1 同一任务条件下可能存在多个正确模式
给定条件 ,动作分布可以写成多个模式的混合:
读法: 条件动作分布是 K 个模式分布的加权和,每个权重依赖条件、非负且所有权重加起来等于一。
推导: 先按模式权重选择一个潜在行为模式,再从该模式的动作分布采样。
不同模式可能对应:
- 从左侧或右侧绕开障碍;
- 使用左手、右手或双手;
- 不同抓取位置和抓型;
- 先移动障碍物或直接操作目标;
- 快速但风险较高,或缓慢但更稳健的策略。
3.2 单点回归丢失了哪些信息
确定性模型只输出:
读法: 确定性模型把条件 c 映射成唯一的预测动作块。
推导: 确定性回归器 f_theta 对同一条件只返回一个向量,没有额外潜变量或采样噪声,因此多次调用得到同一预测动作。
它没有显式的采样变量,因此不能表达同一条件下多个动作模式及其概率。
无论真实分布有多少模式,最终都必须压成一个点。模型无法表达:
- 当前存在几种可行方案;
- 每种方案的概率和不确定性;
- 如何采样一个内部一致的完整轨迹;
- 当某个模式不可行时如何选择另一个模式。
3.3 生成模型学习的是“如何产生样本”
Flow Matching、Diffusion Policy 或离散自回归动作模型,不直接要求网络输出条件均值,而是学习一个生成过程:
读法: 先从简单噪声分布 p_0 采样 z,再由条件生成器 G_theta 根据 c 把噪声映射成动作块 A。
推导: 生成模型把复杂动作分布改写成简单基分布经过条件变换后的推前分布。
不同噪声 可以映射到不同但完整的动作模式。理想情况下:
读法: 理想情况下,对噪声 z 采样并经过生成器得到的动作块分布,应当接近真实数据的条件动作分布。
推导: 这是生成模型的分布匹配目标;训练损失只是实现这一目标的具体代理。
关键不是随机本身,而是同一次采样生成的整段动作必须保持模式一致:选择绕左之后,后续动作不能突然切换成绕右。
3.4 多峰能力不自动等于更高成功率
- 训练数据中的坏习惯也会成为分布模式;
- 采样温度过高可能产生不稳定动作;
- 生成模型仍可能在 OOD 状态下失效;
- 真实机器人最终需要碰撞、安全和动力学约束筛选样本。
📌
本节结论: MSE 的问题不是公式简单,而是它把“多种正确行为”的分布学习问题,错误地压缩成了“预测一个平均动作”的点估计问题。下一节的 Flow Matching 将给出一种连续分布生成机制。
4. 从噪声到动作:条件 Flow Matching
取真实动作块 A 与高斯噪声 epsilon,构造从噪声到数据的线性概率路径:
读法: epsilon 从标准高斯分布采样,A 的 tau 状态是噪声与真实动作块在时间 tau 上的线性插值;tau 从零走到一。
推导: tau 等于零时得到噪声,等于一时得到真实动作,线性插值定义连接两端的条件路径。
这条路径的真实速度场为:
读法: 给定真实动作和噪声,插值路径在流时间 tau 的真实速度等于真实动作块减去噪声。
推导: 对上一式关于 tau 求导,噪声项导数为负 epsilon,数据项导数为 A。
网络根据观测、语言、噪声动作和流时间 τ 预测速度:
读法: 网络根据当前插值动作、流时间、观测和语言条件,预测此时动作应该沿哪个速度方向移动。
推导: 把动作生成器表示为随插值时间变化的常微分方程后,网络需要在每个中间动作、时间和条件处输出局部速度,这个函数就是待学习的向量场。
v_theta 是向量场,不是最终动作;推理时需要把速度场积分成完整动作块。
训练目标是速度回归:
读法: 条件 Flow Matching 损失是网络预测速度与真实插值速度之间平方误差的期望,期望覆盖数据动作、噪声和流时间。
推导: 训练时已知 A 与 epsilon,因此真实速度可以直接构造;随机采样路径时间,让网络学习整条路径上的条件向量场。
5. 推理为什么需要多次网络前向
推理从随机噪声 A 的初始状态开始,数值积分常微分方程:
读法: 动作状态沿流时间 tau 的变化率,等于网络在当前动作状态、时间、观测和语言条件下预测的速度。
推导: 把训练好的向量场作为常微分方程右端,从 tau 等于零的噪声初值开始积分。
使用欧拉法时,第 k 次更新为:
读法: 欧拉法用当前点的速度乘以时间步长 Delta tau,再加到当前动作状态上,得到下一积分点。
推导: 这是常微分方程的一阶有限差分近似;更小步长通常降低积分误差,但增加网络前向次数。
π0 使用少量离散积分步骤生成整个动作块。Flow Matching 的优势是连续动作表达精细;代价是每个动作块需要多次运行 Action Expert。
5.1 最小可复现实验
在二维平面构造左绕、右绕各占一半的动作块数据。分别训练 MSE 回归器和条件 Flow Matching 模型,并让二者在相同起点扰动下闭环执行。
- 画 MSE 预测轨迹与 Flow 模型的 100 条采样轨迹。
- 统计左右模式覆盖率、碰撞率和轨迹平滑度。
- 把积分步数从 1 增加到 2、4、8、16,画成功率与推理延迟的 Pareto 曲线。
- 改变动作块长度 H,观察闭环恢复速度和动作连续性的权衡。
实验必须固定训练数据和网络容量,避免把生成机制收益与额外模型规模混在一起。
6. 本章必须形成的结论
- VLM 负责形成与任务和场景相关的条件表示,但不天然等于控制器。
- Action Chunk 是控制接口,不只是训练技巧。
- Flow Matching 解决的是连续、多峰动作分布的生成问题。
- 行为克隆的闭环误差累积,为 π0.6* 引入经验学习埋下伏笔。
推导练习
- 证明线性插值路径的目标速度为 A 减 epsilon。
- 比较 H=1 与 H=50 时,推理频率、闭环反馈速度和动作一致性的变化。
- 解释为什么增加 Flow Matching 积分步数不一定提高真实机器人成功率。

