第 8 讲(扩展)· 生成式机器人 · Generative Robotics

Generative AI with Stochastic Differential Equations · Lecture 08。个人学习讲义与配套实验,按主题整理并持续修订。

课程源码 ZIP ↓

个人整理的学习笔记,非官方讲义;课程来源与整理说明见课程介绍。配套示例未逐一运行验证。

本篇目录

对应 Maps to:MIT 6.S184 2025 年 Lecture 5 客座讲座(Benjamin Burchfiel,丰田研究院 TRI)。这次讲座没有公开 slides,本讲依据公开论文写成。 阅读材料:Chi et al. (2023) Diffusion Policy;Florence et al. (2021) Implicit Behavioral Cloning;Shafiullah et al. (2022) Behavior Transformers;Zhao et al. (2023) ACT / ALOHA;Brohan et al. (2023) RT-2;Black et al. (2024) π0;Ross et al. (2011) DAgger。 依据说明:本讲没有原课讲义作为依据。行为克隆、多峰示范、Diffusion Policy 的动作块与滚动执行、π0 的流匹配动作专家,来自上述论文;机器人系统的数字写成”某某报告”。二维”绕障碍”任务、三种策略的对比、观测噪声下的动作块实验是本讲义设计的。结论依赖于这个玩具设定:例如在二维动作上离散化策略表现最好(§2.3),在高维动作上就不是这样(§2.4);有几处结果和我原先的预期不一致(§1.3、§3.2),如实报告。 配套代码 Code:code/lecture08/(2 个脚本 + 1 个模块;PyTorch + matplotlib;每个脚本 20–26 秒,都完整运行过) 预计阅读时间:3 小时(含运行代码)


0. 本讲导航 · How to read this lecture

0.1 学习目标 Learning goals

学完这一讲,你应该能够:

  1. 把”模仿人类示范”表述成条件生成:数据是动作,条件是观测;说清行为克隆和它的误差累积问题。
  2. 解释为什么多峰示范会让均方误差回归失败,以及它只在”观测分辨不出峰”的地方失败。
  3. 比较表示多峰动作分布的几种办法(离散化、混合高斯、能量模型、扩散 / 流),知道它们在低维和高维动作上的取舍。
  4. 实现一个流策略,理解”积分一步 = 条件均值 = 回归”。
  5. 说清 Diffusion Policy 的动作块和滚动执行:一次生成未来 HH 步、执行 kk 步再重新规划;它解决了什么、代价是什么。
  6. 读懂 π0 这类视觉–语言–动作模型的结构,知道真实机器人评估的难点。

0.2 先修与本讲范围

需要的背景在哪里
条件流匹配、条件生成(类别 → 任意条件)第 2 讲 §4、第 4 讲 §1
一步欧拉 = 条件均值;分界线附近的”中间”样本第 7 讲 §1.1、§1.3
离散化 + 分类(token)的思路第 6 讲
回归的最优解是条件期望前置讲 P1 §4.2

本讲不涉及机器人学的控制理论(动力学、逆运动学、阻抗控制等),也不涉及强化学习;只讲”从示范中学一个策略”这一件事里生成模型扮演的角色。

0.3 本讲地图 Map

§1  行为克隆:把控制当成条件生成;多峰示范与回归的失败          ← 代码 01
§2  生成式策略:离散化、混合模型、能量模型、扩散 / 流;积分步数    ← 代码 01
§3  动作块与闭环执行:Diffusion Policy                          ← 代码 02
§4  走向大规模:视觉–语言–动作模型、π0、大行为模型;评估
§5  小结   §6  常见误区   §7  练习   §8  延伸阅读   §9  下一讲预告

0.4 任务与记号

记号意思
oo观测(这里是机器人的位置,可能带噪声;真实系统里是图像、关节角、语言指令)
aa动作(这里是一步的位移,长度约 0.15)
π(a∣o)\pi(a\mid o)策略:给定观测的动作分布
HH,kk动作块的长度(一次生成几步);执行长度(执行几步后重新规划)

玩具任务(robot_lib.py):一个点状机器人从 (x0,−3)(x_0, -3) 出发(x0∼U[−0.05,0.05]x_0\sim U[-0.05, 0.05]),要走到 (0,3)(0, 3)(距离 < 0.3 算成功),中间有一个半径 1 的圆形障碍。每步移动一个动作,最多 80 步,进入障碍算碰撞。200 条人类示范:一半从左边绕、一半从右边绕,路径是随机宽度的 Bézier 曲线,加一点手抖的噪声。


1. 行为克隆 · Behavior cloning

1.1 把控制当成条件生成

教机器人做事,最直接的办法是示范:人遥控机器人做几百遍,记录下每个时刻的观测 oo 和动作 aa,然后训练一个策略去模仿。这叫行为克隆(behavior cloning)。它就是一个监督学习问题:数据集是 (o,a)(o, a) 对,学 π(a∣o)\pi(a\mid o)。

换成本课的语言:动作是”数据”,观测是”条件”。第 4 讲里我们学 p(x∣y)p(x\mid y),xx 是图像、yy 是类别;这里学 π(a∣o)\pi(a\mid o),aa 是动作、oo 是观测。前七讲的全部工具都能直接用。

行为克隆有一个经典的问题:误差累积。策略只在示范走过的状态上训练过;一旦执行时走偏一点,就到了没见过的状态,在那里可能犯更大的错,越走越偏(Ross et al. 2011 证明了误差可以随时间二次增长,并提出用 DAgger——让专家在策略走到的新状态上补充示范——来缓解)。本讲关注另一个问题:示范本身是多峰的。

1.2 多峰示范与回归的失败

人类示范者不是一台确定的机器:同一个情形,这次从左边绕,下次从右边绕。在我们的任务里,起点几乎都在中线上,往左还是往右完全由示范者随机决定:

示范的第一个动作:往左 55%、中间 0%、往右 46%(相对正上方约 ±55°)

最常见的做法是用均方误差回归 a=gθ(o)a = g_\theta(o)。它的最优解是条件均值 E[a∣o]\mathbb{E}[a\mid o](P1 §4.2)——两个峰的平均,指向正上方,正对障碍。01 号脚本在起点处向每种策略要 2000 个动作:

策略往左(< −20°)中间(±20°)往右(> 20°)
回归(均方误差)0%100%0%
离散化 + 分类(24 格)56%0%44%
流策略(积分 10 步)53%3%45%

回归输出唯一的动作(夹角 −9.8°),另外两种策略都抽出了两个峰。闭环执行 500 次:

策略成功碰撞
回归80.2%19.8%
离散化 + 分类99.2%0.8%
流策略(10 步)94.2%5.8%

多峰示范、起点处的动作、闭环执行

1.3 回归什么时候不失败

一个让我意外的结果:第一版实验让起点在 [−0.3,0.3][-0.3, 0.3] 里随机,回归策略的成功率是 99% 以上(脚本里保留了这个对照:99.8%)。原因是:起点一偏离中线,位置本身就告诉了策略该往哪边绕——右侧起点附近的示范大多往右,条件均值就指向右上方。回归策略的场在中线两侧”分叉”,只要不正好在中线上,就会被推向一边。

所以准确的说法是:多峰只在观测分辨不出峰的地方伤害回归。在真实任务里,这样的地方很多:同一张图像下”先拿杯子还是先拿碗”、“从哪一侧抓”,观测里没有任何线索。把起点收窄到 ±0.05\pm0.05 就是在模拟这种情况。§3 会看到另一种来源:观测有噪声时,“在中线哪一边”本身就是不确定的。


2. 生成式策略 · Generative policies

2.1 怎样表示多峰的动作分布

方法做法优点缺点
离散化 + 分类把动作切成格子,交叉熵学”选哪一格”(RT-1、RT-2 把每一维切成 256 格,当 token 自回归生成)简单;天然多峰;能接到语言模型上量化误差;高维时格子数组合爆炸,按维度自回归则 token 很多
混合高斯 / k-means + 偏移输出 KK 个高斯的权重、均值、方差(BeT 用 k-means 聚类 + 连续偏移)一次前向就能采样KK 要预先选;高维时难训练
能量模型学 Eθ(o,a)E_\theta(o, a),π∝e−E\pi\propto e^{-E}(Implicit BC)任意形状采样要优化 / MCMC,训练不稳定
扩散 / 流条件生成 π(a∣o)\pi(a\mid o)(Diffusion Policy、π0)任意形状;高维连续动作(动作块)很自然;训练稳定采样要多步积分(推理慢)

2.2 流策略

流策略就是第 4 讲的条件流匹配,条件换成观测(代码 robot_lib.FlowPolicy):

Algorithm  训练流策略
for 每一步:
    从示范里抽一批 (o, a);ε ~ N(0, I);t ~ U[0, 1]
    x_t = (1 − t) ε + t a
    loss = ‖ u_θ(x_t, t, o) − (a − ε) ‖²

执行:给定观测 o,从 ε ~ N(0, I) 出发,用欧拉法积分 dx/dt = u_θ(x, t, o) 到 t = 1,得到动作

网络就是一个 MLP,输入是”带噪的动作 + 时间 + 观测”。和第 4 讲不同的只有两点:条件 oo 是连续的(不需要类别嵌入);“数据” aa 是低维的。

2.3 积分步数:一步就是回归

流策略的积分步数1251050
成功48.4%75.6%92.8%94.2%95.8%
碰撞51.6%24.4%7.2%5.8%4.2%

积分 1 步时,流策略就是回归策略:t=0t = 0 时 ϵ\epsilon 和动作独立,u0(x,o)=E[a∣o]−xu_0(x, o) = \mathbb{E}[a\mid o] - x,一步走完是 E[a∣o]\mathbb{E}[a\mid o](第 7 讲 §1.1 的”一步塌缩到均值”)。起点处 89% 的一步样本落在”中间”。实际上它比回归还差(48% vs 80%):网络在 t=0t = 0 处的误差直接变成了动作误差,而回归网络专门学的就是这个均值。

步数加到 50,成功率 96%。剩下 4% 的碰撞来自”落在两个峰之间”的动作——10 步时起点处仍有 3% 的样本在中间。这正是第 7 讲 §1.3 的分界线问题:从噪声到”左峰 / 右峰”的映射在分界线上是跳变的,有限步的积分和光滑的网络把它抹成了斜坡。

离散化在这里最好(99.2%):它抽出的永远是 24 个方向之一,没有”中间”。在二维动作上,离散化简单又有效。

2.4 为什么大系统还是用扩散 / 流

二维动作只要 24 个格子。真实机器人呢?一个双臂机器人(ALOHA)每一步有 14 个关节;Diffusion Policy、π0 一次生成未来几十步的动作块(§3)——π0 报告的是 50 步。一个动作块是 14×50=70014\times50 = 700 维。

  • 离散化:联合离散化不可能(每维 24 格就是 2470024^{700} 类);按维度当 token 自回归(RT-2 的做法)要生成 700 个 token,推理慢,而且”先生成第 1 维、再生成第 2 维”的顺序是人为的。
  • 混合高斯:700 维的协方差矩阵、要多少个成分?
  • 扩散 / 流:维度高一点只是网络的输入输出宽一点,训练目标不变;多峰、维度间的相关性都由生成模型自动处理。

所以 §2.3 的排序(离散化 > 流)是二维玩具的结论,不要推广到高维。


3. 动作块与闭环执行 · Action chunking and receding-horizon control

3.1 Diffusion Policy 的设计

Diffusion Policy(Chi et al. 2023)在”用扩散模型生成动作”之外,还有两个关键设计:

  1. 动作块(action chunk):一次生成未来 HH 步的动作序列 (at,…,at+H−1)(a_t, \dots, a_{t+H-1}),而不是一步。
  2. 滚动执行(receding horizon):执行动作块的前 kk 步(k≤Hk\le H),然后用新的观测重新生成。论文的典型设置是预测 16 步、执行 8 步。

为什么要一次生成一段?论文给出的主要理由是时间上的一致性:如果每一步独立地从多峰分布里抽样,相邻两步可能抽到不同的峰——这一步”往左”,下一步”往右”,机器人在两个选择之间摇摆。一次抽一整段,这一段属于同一个峰。ACT(Zhao et al. 2023)也独立地提出了动作块,用来减少误差累积。

3.2 实验:观测噪声下的摇摆

02 号脚本让策略看到的位置带有标准差 0.2 的噪声(训练和执行时都有)。起点在中线附近时,策略”看不清自己在中线的哪一边”。动作块策略 H=8H = 8,执行长度 kk 从 1 到 8:

策略成功碰撞超时摇摆次数抖动每条轨迹调用策略
回归84.2%15.8%0.0%2.520.02543.6 次
离散化 + 分类90.8%7.4%1.8%1.600.03445.7 次
流策略(单步)93.6%6.2%0.2%1.900.03746.5 次
动作块,k=1k = 190.0%9.8%0.2%2.090.03945.6 次
动作块,k=2k = 293.2%5.6%1.2%0.660.02523.9 次
动作块,k=4k = 493.0%3.4%3.6%0.140.01912.5 次
动作块,k=8k = 888.6%2.0%9.4%0.050.0176.7 次

(“摇摆次数” = 在中线附近、障碍下方时,横向动作改变方向的次数;“抖动” = 相邻两步动作之差的平均长度。)

动作块:k = 1 时在中线附近摇摆,k = 4 时一次决定

  1. 动作块消除了摇摆。kk 从 1 到 8,摇摆从 2.1 次降到 0.05 次,碰撞从 9.8% 降到 2.0%,抖动减半。上图左边(k=1k = 1)红色的轨迹在障碍正下方来回折返,越靠越近,最后撞上;右边(k=4k = 4)一出发就决定了方向。
  2. 开环太久有代价。k=8k = 8 时整块开环执行,这 8 步里的新观测被忽略,噪声带来的偏差累积,超时升到 9.4%。k=2k = 2–4 的成功率最高,和 Diffusion Policy 的经验(执行一半再重新规划)一致。
  3. 成功率并没有提高——这一点和我的预期不一样。单步的流策略成功率是 93.6%,动作块最好也是 93.2%。动作块改变的是失败的方式:碰撞从 6.2% 降到 3.4%(k=4k = 4),超时从 0.2% 升到 3.6%。对真实机器人,“撞上去”和”慢了一点”的代价完全不同。另外,500 次试验的成功率标准误约 1.1 个百分点(练习 3),93.6% 和 93.0% 之间的差别不显著。
  4. 推理代价:k=4k = 4 时每条轨迹只调用策略约 12 次(k=1k = 1 约 46 次),每次 10 步积分。机器人要实时控制,这很重要。
  5. 没有观测噪声时(脚本第 2 部分),k=1k = 1 的摇摆本来就少(0.51 次),k=4k = 4 仍然最好(93.0%,k=1k = 1 和 k=8k = 8 约 89%)。还要注意:H=8H = 8 的动作块策略在 k=1k = 1 时(89.6%)比单步流策略(94.2%)差——一次预测 8 步(16 维)更难学,同样的网络和训练步数下每一步都学得差一点。

4. 走向大规模 · Scaling up

4.1 视觉–语言–动作模型

真实机器人的观测是摄像头图像、关节角,还有一句语言指令(“把杯子放进水槽”)。近几年的做法是借用预训练的视觉–语言模型(VLM)来理解观测和指令,再接一个输出动作的”头”:

  • RT-2(Brohan et al. 2023):把动作离散化成 token,直接让 VLM 像生成文字一样生成动作(§2.1 第一行)。
  • π0(Black et al. 2024,Physical Intelligence):VLM 骨干 + 一个用流匹配训练的”动作专家”。论文报告的设计:动作块长度 50,推理时积分 10 步,训练时对时间 tt 的采样偏向噪声大的一端,数据来自多种机器人、上万小时的示范。这正是本讲的流策略,只是条件从”位置”换成了”VLM 对图像和指令的表示”,动作从 2 维换成了几十维 × 50 步。

π0 的作者解释选择流匹配的理由,和 §2.4 一样:高频、灵巧的控制需要连续、高维的动作块,离散 token 难以胜任。

4.2 大行为模型与评估

TRI(本次客座讲座讲者所在的机构)把 Diffusion Policy 扩展成在大量任务上联合训练的”大行为模型”(LBM),并且特别强调评估的难度:

  • 真实机器人上的每一次试验都要人工重置场景,几十次试验就要几个小时;
  • 成功率是二项分布的估计,几十次试验的置信区间很宽(练习 3:500 次时标准误约 1 个百分点,50 次时约 3.6 个百分点);
  • 场景的微小变化(光照、物体位置)会显著影响结果,需要盲测、随机化顺序等统计设计。

本讲的玩具实验每个设置跑了 500 次,所以能看出 1–2 个百分点的差别是否显著;真实机器人很少有这样的条件。


5. 小结 · Summary

  1. 行为克隆 = 条件生成:动作是数据,观测是条件。前几讲的条件流匹配可以直接用。
  2. 多峰示范:均方误差回归输出条件均值,在观测分辨不出峰的地方(起点在中线上)平均出一个错误的动作(20% 碰撞);观测能分辨时(起点范围放宽)回归也能成功。
  3. 表示多峰分布:离散化(低维时简单有效,本讲 99%)、混合模型、能量模型、扩散 / 流(高维动作块的首选)。
  4. 流策略积分 1 步 = 条件均值 = 回归;步数越多越好,剩下的错误来自”两个峰之间”的样本。
  5. 动作块 + 滚动执行(Diffusion Policy):一次生成 HH 步、执行 kk 步。消除了观测不确定时的摇摆,降低了碰撞和推理次数;kk 太大则对新观测反应迟钝。它改变的是失败的方式,未必提高成功率。
  6. 大规模:VLM + 离散动作 token(RT-2)或 VLM + 流匹配动作专家(π0);真实世界的评估需要严谨的统计设计。

6. 常见误区 · Common pitfalls

  1. “多峰示范一定会让回归失败。” 只在观测分辨不出峰的地方失败(§1.3)。
  2. “生成式策略总比回归好。” 积分 1 步的流策略比回归还差(48% vs 80%,§2.3)。
  3. “扩散 / 流策略在任何问题上都最好。” 二维动作上离散化更好(§2.3);扩散 / 流的优势在高维动作块(§2.4)。
  4. “动作块越长、执行越久越好。” 开环太久会忽略新的观测(k=8k = 8 超时 9.4%,§3.2)。
  5. “动作块提高了成功率。” 本讲的实验里它主要把碰撞换成了超时,成功率的差别在噪声内(§3.2)。
  6. “几十次真实试验的成功率差 5 个百分点就说明方法更好。” 50 次试验的标准误约 3.6 个百分点(§4.2、练习 3)。

7. 练习 · Exercises

练习 1(回归的平均动作)。起点处的示范动作 54.5% 是”往左上 55°“、45.5% 是”往右上 55°“,长度相同。均方误差回归的最优动作指向哪里?和脚本里回归的 −9.8° 对照。

参考答案

条件均值 =0.545 (−sin⁡55°,cos⁡55°)+0.455 (sin⁡55°,cos⁡55°)= 0.545\,(-\sin55°, \cos55°) + 0.455\,(\sin55°, \cos55°)。横向分量 =−0.09sin⁡55°=−0.074= -0.09\sin55° = -0.074,纵向 =cos⁡55°=0.574= \cos55° = 0.574,夹角 arctan⁡(−0.074/0.574)=−7.3°\arctan(-0.074/0.574) = -7.3°。脚本里是 −9.8°:示范的绕行宽度、速度、起点都有随机性,“55°“只是近似。无论哪个数,都是”几乎正上方”,正对障碍;动作的长度也只有 0.5740.574 倍——平均把动作”缩短”了,因为两个方向的横向分量互相抵消。

练习 2(一步流策略 = 回归)。证明 CondOT 流策略积分 1 步的输出是 E[a∣o]\mathbb{E}[a\mid o]。为什么实际训练出来的一步流策略比专门训练的回归策略还差?

参考答案

t=0t = 0 时 x0=ϵx_0 = \epsilon 与 aa 独立(给定 oo),条件向量场 a−ϵa - \epsilon 的条件期望是 u0(x,o)=E[a∣o]−xu_0(x, o) = \mathbb{E}[a\mid o] - x,一步欧拉 x+u0(x,o)=E[a∣o]x + u_0(x, o) = \mathbb{E}[a\mid o]。实际中:流匹配网络要在所有 tt 上学向量场,t=0t = 0 只是其中一小部分,那里的精度不如专门回归 E[a∣o]\mathbb{E}[a\mid o] 的网络;而且一步时网络的任何误差都没有后续步骤来修正。起点处一步样本的方向分布(往左 9%、中间 89%、往右 2%)说明网络在 t=0t = 0 处还残留着对 ϵ\epsilon 的依赖。

练习 3(成功率的置信区间)。500 次试验成功 465 次(93.0%)。成功率的标准误是多少?93.0% 和 93.6% 的差别显著吗?如果只做 50 次试验呢?

参考答案

标准误 p(1−p)/n=0.93×0.07/500≈0.011\sqrt{p(1-p)/n} = \sqrt{0.93\times0.07/500}\approx0.011,95% 置信区间约 ±2.2 个百分点;两个成功率的差 0.6 个百分点远在噪声内(差的标准误约 2×1.1≈1.6\sqrt2\times1.1\approx1.6 个百分点)。50 次试验时标准误约 3.6 个百分点,95% 置信区间约 ±7 个百分点——真实机器人论文里常见的”20 次试验,成功率 85% vs 75%“往往不能说明什么。

练习 4(编程:示范的数量)。用 25、50、100、200 条示范分别训练回归策略和流策略(无观测噪声),比较成功率。

参考答案(作者机器上的结果)
示范条数2550100200
回归:成功78.8%83.0%73.2%80.2%
流策略(10 步):成功96.4%96.8%95.2%94.2%

更多的示范救不了回归:它的问题是”偏差”(最优解本身就是两个峰的平均),不是”方差”(数据不够);成功率在 73–83% 之间随机波动。流策略 25 条示范就够了——这个任务太简单。在真实任务里,示范的数量当然重要,但这个实验说明:表示能力不对时,加数据没有用。

练习 5(编程:Diffusion Policy 的默认设置)。在 02_action_chunks.py 的观测噪声设置下,用 H=16H = 16 的动作块,执行 k=1,4,8,16k = 1, 4, 8, 16。和 H=8H = 8 比呢?

参考答案(作者机器上的结果)
H=16H = 16,执行 kk14816
成功82.8%89.0%84.6%74.2%
碰撞 / 超时16.0% / 1.2%7.2% / 3.8%6.6% / 8.8%14.8% / 11.0%
摇摆次数2.250.250.120.25

每个 kk 都比 H=8H = 8 差(H=8H = 8、k=4k = 4:93.0%)。一次预测 16 步(32 维)更难学;k=16k = 16 时开环 16 步,噪声带来的偏差累积得更多。Diffusion Policy 的”预测 16、执行 8”是在真实机器人、更大的网络和更多数据上调出来的;在这个小问题和小网络上,H=8H = 8 更合适。HH 和 kk 都是要按任务调的超参数。

练习 6(思考:推理延迟)。一个机器人以 50 Hz 控制(每 20 毫秒一个动作)。策略每次推理要 10 步积分,每步网络前向 15 毫秒。单步策略(k=1k = 1)能实时运行吗?动作块(H=50H = 50)呢?第 7 讲的哪些方法能帮忙?

参考答案

单步策略每个动作要 150 毫秒推理,远超 20 毫秒,不能实时。动作块 H=50H = 50 每次推理覆盖 1 秒的动作;执行前 25 步(0.5 秒)再重新规划,推理有 0.5 秒的预算,绰绰有余(还可以在执行当前块时并行计算下一块)。第 7 讲的少步方法(一致性蒸馏、MeanFlow、reflow)能把 10 步降到 1–2 步,让更小的 kk(更强的闭环)也能实时;代价是 §2.3 那样的”中间”样本可能增多。

练习 7(思考:误差累积)。行为克隆的误差为什么会随时间累积?动作块对误差累积是有利还是有害?

参考答案

策略只在示范的状态分布上训练;执行时一步走偏,就进入示范很少覆盖的状态,那里策略更不准,下一步偏得更多——误差可以随步数二次增长(Ross et al. 2011)。动作块的作用是双向的:一段动作内部是连贯的(不会因为每步独立抽样而摇摆进奇怪的状态),ACT 的作者认为这减少了”有效的决策次数”,从而减轻累积;但开环执行期间无法纠正偏差,kk 太大时偏差会在块内累积(§3.2 的超时)。


8. 延伸阅读 · Further reading

  • Chi et al., Diffusion Policy: Visuomotor Policy Learning via Action Diffusion(RSS 2023;IJRR 2024 扩展版)。
  • Florence et al., Implicit Behavioral Cloning(CoRL 2021):能量模型策略,以及多峰示范对回归的伤害。
  • Shafiullah et al., Behavior Transformers: Cloning k Modes with One Stone(NeurIPS 2022)。
  • Zhao, Kumar, Levine & Finn, Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware(ACT / ALOHA,RSS 2023):动作块。
  • Brohan et al., RT-2: Vision-Language-Action Models Transfer Web Knowledge to Robotic Control(2023)。
  • Black et al., π0: A Vision-Language-Action Flow Model for General Robot Control(2024)。
  • Octo Model Team, Octo: An Open-Source Generalist Robot Policy(2024):开源的扩散动作头。
  • Ross, Gordon & Bagnell, A Reduction of Imitation Learning and Structured Prediction to No-Regret Online Learning(DAgger,AISTATS 2011)。
  • TRI LBM Team, A Careful Examination of Large Behavior Models for Multitask Dexterous Manipulation(2025):大规模扩散策略与评估方法。

9. 下一讲预告 · Next lecture

到这里,数据都”住在”欧氏空间或离散空间里。有些数据不是:一个旋转不能”加一半”,角度绕一圈回到原处,蛋白质骨架的每个残基是一个”刚体框架”(旋转 + 平移)。第 9 讲问:

  1. 数据在一个弯曲的空间(流形)上时,“从噪声到数据的直线路径”是什么?——测地线。
  2. 流匹配怎样推广到圆周 S1S^1、旋转群 SO(3)SO(3)?——黎曼流匹配:速度在切空间里,沿测地线插值,用指数映射走一步。
  3. 以蛋白质结构生成为例,看这些数学工具在 FrameDiff、FoldFlow 等方法里怎样用(只讲生成建模的数学,不涉及具体的生物功能设计)。
← 返回课程目录