跳到主要内容

7. ACT 架构与关键机制

先修建议

  • 行为克隆(Behavior Cloning)与 compounding error 的基本概念
  • VAE/CVAE 的 ELBO 目标
  • Transformer 编码器-解码器结构

本节目标

  • 明确 ACT 在 VLA 课程中的定位与适用边界
  • 读懂 k 步动作分块为何能降低有效时域
  • 理解 CVAE 如何处理人类示教的多模态性
  • 读懂 ACT 的训练与推理闭环,并能对照论文消融解释关键数字

1. 论文定位与本章聚焦

ACT 来自 ALOHA 体系,面向双臂精细操作场景。原论文题目是 Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware,目标并不是提出一个更通用的策略模型,而是回答一个更具体的问题:低成本硬件能否在真实世界中,通过高质量示教与合适的行为克隆结构,学会毫米级精细操作。

原论文的贡献可以分为两层:

  1. ALOHA(系统层):以较低成本实现 50Hz 双臂遥操作、4 机位观测和高质量精细示教采集。
  2. ACT(算法层):为这些高频、长时序、人类示教数据设计更合适的 imitation learning 结构。

本章属于 VLA 路线阅读,重点展开算法层。ACT 关注的核心问题是”在 50Hz 精细操作下,行为克隆如何避免长时序误差崩溃”,具体拆成三点:

  1. 以动作序列预测替代单步预测,把”每步决策”改为”每段决策”。
  2. 用 CVAE 建模人类示教中的随机性与多解轨迹,而不是把多解任务压成单峰均值。
  3. 用 temporal ensembling 缓解朴素 chunking 的动作切换突变,提高执行平滑性。

需要注意:论文摘要级结果(”80-90% + 约 10 分钟示教”)与任务级数字(如 Slot Battery 96%、Thread Velcro 20%)来自不同粒度,引用时应区分。本章聚焦 ACT,但不能把论文读成”只靠一个网络结构就完成了精细操作”——理解结果时,始终要把 ALOHA 的系统能力当作前提条件。


2. 形式化定义

ACT 在时刻 接收观测 ,输出未来 步动作序列:

其中动作是双臂目标关节位置(14 维),不是离散 token。低层控制由电机 PID 跟踪目标关节轨迹。

训练目标可写成“重构 + 正则”的组合:

说明:论文伪代码将重构项写为 MSE,但实际实现采用 L1 并观察到更高精度。本章统一写为 ,对应实现中的 L1。

符号表:

符号含义
时刻 的观测(4 路图像 + 本体感觉)
时刻 的动作(14 维目标关节位置)
开始长度为 的动作序列
chunk size,控制每次预测的时域长度
CVAE 隐变量(风格变量)
KL 正则权重
temporal ensembling 的指数权重衰减系数

3. Action Chunking:从单步到分段

单步行为克隆学习 。ALOHA 的控制频率是 50Hz,真实任务单条示教常有 8-14 秒(约 400-700 步),在这种时域长度下 compounding error 会迅速让状态偏离训练分布。

Action Chunking 的改动是把单步决策改成分段决策:

论文在这里最想强调的是:需要闭环修正的“有效决策次数”由 变为 。因此,chunking 的核心价值不是“让单次预测更简单”,而是“用更长预测换更短有效时域”。这才是 ACT 最核心的结构性创新。

论文还强调了第二层动机:chunking 能更好覆盖示教中的 temporally correlated confounders——人类在中途短暂停顿、微调姿态、等待对齐等现象,单步 Markov 策略难以自然表达;而当这些变化落在同一个 chunk 内,模型更容易将其当作局部动作程序来建模。

因此,action chunking 同时改变了策略的决策粒度、有效时域,以及对非严格 Markov 示教片段的建模方式。

教学补充(非论文原式):如果用误差传播直觉来理解,单步 BC 的累计误差可以近似看成按 次决策展开,而 chunking 后近似变成按 次决策展开:

补充边界:论文原文重点陈述“有效时域缩短 倍”,并未给出完整理论推导;上式仅用于帮助建立机制直觉。


4. CVAE 与示教多模态性

仅靠 chunking 还不够。论文把第二个挑战表述为 noisy human demonstrations:即使由同一个操作者采集,同一观测附近仍可能对应多条合法轨迹;而且在人类认为“精度不那么关键”的区段,动作往往更随机。若直接用单峰回归,模型容易把这些差异平均成一条不可执行的“中间轨迹”。

因此,CVAE 在 ACT 里的作用,并不只是抽象地“建模多模态”,而是更具体地处理人类示教中的随机性、多解性,以及不同精度区段的变化分布。

ACT 用条件变分自编码器建模该多模态性:

实现时使用 -VAE 形式:

结构上的关键点:

  1. 编码器只在训练时使用,用当前本体感觉与目标动作序列推断 ;为加速训练,论文实现不把图像送入编码器。
  2. 解码器(策略)在训练时接收观测与 ,输出 动作。
  3. 推理时丢弃编码器,设 (先验均值)做确定性解码。

这里最容易误解的一点是:ACT 并不是在推理时不断采样不同风格动作再做选择。论文实际部署时直接固定 ,因此执行仍是确定性的。CVAE 的主要价值发生在训练阶段:它把示教中的随机性和多解性吸收到潜变量里,让解码器不必用单峰回归硬拟合所有人类轨迹。

证据边界(来自论文消融):

  • 在脚本数据(近似确定性)上,去掉 CVAE 影响很小。
  • 在人类示教数据(多模态)上,去掉 CVAE 成功率从 35.3% 降到 2%。

5. Temporal Ensembling

朴素 chunking 每 步才更新观测,容易在切换点产生不连续动作。ACT 的改进是每步都查询策略,得到多个覆盖同一时刻 的重叠预测,再加权融合。

这里沿用论文推理算法的记号: 表示“针对当前时刻 的第 个候选动作”,其中 是最早写入缓冲区的旧预测, 越大表示越新的预测。论文正文特别说明: 对应 oldest action。

该机制的作用:

  1. 不增加训练成本,仅增加推理时计算。
  2. 在同一时刻融合多个估计,缓和 chunk 边界处“突然切换观测”的不连续性。
  3. 不等价于“跨时刻平滑”,因为融合对象是“对同一时刻的不同预测”,而不是相邻时刻的动作。

关于超参数 :由于权重按 衰减, 越小,衰减越慢,更新观测带来的新预测就越快参与融合; 越大,则执行更保守。

论文消融显示:

  • 在 ACT 上,temporal ensembling 带来约 3.3% 增益。
  • 在 BC-ConvMLP 上约 +4%。
  • 在 VINN 上可能下降,提示该机制更适配参数化策略的建模误差特性。
ACT 通过重叠 chunk 的同刻融合降低抖动;该步骤只增加推理计算,不改变训练图
ACT 通过重叠 chunk 的同刻融合降低抖动;该步骤只增加推理计算,不改变训练图

6. 模型架构与训练流程

6.1 模型结构

ACT 是 Transformer encoder-decoder 架构。

结构要点:

  1. 观测输入:4 路 RGB 图像(每路 )+ 双臂关节(14 DoF)。
  2. 图像编码:每路 ResNet18 输出 ,展平为
  3. 多相机拼接:4 路合并得到 ,再追加关节特征与 ,形成 编码器输入。
  4. 解码输出:解码器以长度为 的 query 生成 ,经 MLP 投影成 目标关节序列。

工程细节:

  • 动作采用“绝对关节目标位置”,论文报告其优于关节增量形式。
  • 编码器为提速可省略图像输入,仅用本体感觉+动作序列推断
ACT 详细结构:多相机特征编码、风格变量注入、序列化动作解码三段闭环
ACT 详细结构:多相机特征编码、风格变量注入、序列化动作解码三段闭环

读图重点:下图用于理解 ALOHA 的 4 机位布局与双臂工作空间,对“为何需要高频闭环”很关键。

ALOHA 机位与双臂布局:顶视、前视、双腕视角共同支撑精细接触阶段的观测
ALOHA 机位与双臂布局:顶视、前视、双腕视角共同支撑精细接触阶段的观测

6.2 训练与推理闭环

训练流程:

  1. 采集时使用 leader 机械臂关节位置作为动作标签,而非 follower 端读数。
  2. 从示教数据采样
  3. 编码器估计 并采样
  4. 解码器预测
  5. 用重构项与 KL 项联合优化。

推理流程:

  1. 固定 ,每步基于当前观测预测未来 步动作。
  2. 将预测写入对应时刻缓冲区。
  3. 对当前时刻候选动作做指数加权融合后执行。

训练/部署指标(同机型条件):

  • 训练:单张 11G RTX 2080 Ti 约 5 小时。
  • 推理:单步约 0.01 秒。

7. 实验结果与消融分析

7.1 数据与评估标准

  1. 真实任务共 6 个,示教多数任务 50 条,Thread Velcro 为 100 条。
  2. 每条示教约 8-14 秒,对应 50Hz 下约 400-700 步。
  3. 仿真任务分 scripted 与 human 两类示教,用于区分“确定性数据”和“多模态人类数据”的训练难度。

读图重点:下图先看 6 个真实任务的阶段拆分,再看每个阶段需要的双臂协同类型。

ACT 评测任务覆盖开盖、装配、穿插与中空交接等高精度双臂流程,适合检验长时序误差与多模态问题
ACT 评测任务覆盖开盖、装配、穿插与中空交接等高精度双臂流程,适合检验长时序误差与多模态问题

7.2 主结果与消融

主结果(真实任务)中,论文报告:

  • Slide Ziploc:88%
  • Slot Battery:96%
  • Cup Open:84%
  • Thread Velcro:20%
  • Prep Tape:64%
  • Put On Shoe:92%

关键消融:

  1. chunk size:从 ,平均成功率从 1% 提升到 44%,继续增大到接近开环时略有回落。
  2. temporal ensembling:在 ACT 上约 +3.3%。
  3. CVAE:脚本数据影响小;人类示教数据从 35.3% 降到 2%(去掉 CVAE)。
  4. 高频用户研究:50Hz 对比 5Hz,5Hz 条件下完成时间约增加 62%,统计显著性

注意:第 4 项验证的是系统前提(”高频遥操作对精细任务是否必要”),而非 ACT 算法模块本身的消融。

ACT 证据链:chunking 降低有效时域、CVAE 处理人类多模态、temporal ensembling 提升平滑性,高频控制支撑精细任务效率
ACT 证据链:chunking 降低有效时域、CVAE 处理人类多模态、temporal ensembling 提升平滑性,高频控制支撑精细任务效率

7.3 主张 - 证据 - 结论

论文主张直接证据学习者应得出的结论
单步 BC 的长时域不适合 50Hz 精细操作,action chunking 是关键结构变化k=1k=100,平均成功率从 1% 提升到 44%;给 BC-ConvMLP、VINN 加 chunk 也能提升ACT 最核心的创新不是“用了 Transformer”,而是把策略对象从单步动作改成了动作块
仅有 chunking 还不够,执行端需要缓和 chunk 边界的突变temporal ensembling 在 ACT 上约 +3.3%,在 BC-ConvMLP 上约 +4%,在 VINN 上可能下降temporal ensembling 是执行层补丁,能提升平滑性,但不是对所有方法都必然有效
人类示教的随机性需要生成式训练目标,而不是单峰回归scripted data 上去掉 CVAE 几乎无影响;human data 上成功率从 35.3% 降到 2%CVAE 的价值主要针对 human demos,不应把它理解成一个“任何数据都加分”的通用正则项
论文成绩依赖高频、高质量示教闭环,而不只是网络结构5Hz 条件下人类遥操作完成时间约增加 62%,且真实任务实验都建立在 50Hz ALOHA 采集链路上阅读 ACT 论文时,必须同时看到 ALOHA + ACT 的系统协同,而不是只看策略模块

7.4 工程总结(决策-收益-代价)

决策直接收益代价/边界对后续路线影响
Action Chunking( 量级)显著降低有效时域,压制长时序误差传播 过大接近开环,响应性下降被 Diffusion Policy 等后续方法继承
CVAE(含 对人类示教多模态显著增益训练复杂度上升,需调 为后续生成式策略建模提供范式
Temporal Ensembling提升动作平滑性与稳定性仅推理增算,不保证所有方法收益成为分块执行时常用的执行层补丁
高频闭环采集与控制(50Hz)更易覆盖毫米级精细操作对系统实时链路要求高强化“数据质量 + 控制频率”在精细操作中的地位

8. 局限与后续路线

ACT 的能力边界主要来自两侧:硬件与策略。

硬件侧限制:

  1. 多指协同任务受限(如需压扣+旋拧的复杂手部操作)。
  2. 大力矩任务受限(如紧瓶盖、高负载提举)。
  3. 依赖“指甲式”细小边缘操作仍然困难。

策略侧限制:

  1. 某些高感知难度任务失败明显,例如糖纸拆解、平放 ziploc 开袋等。
  2. 失败常由“难感知 + 形变不稳定 + 数据量不足”共同触发。
  3. Thread Velcro 结果显示:即使前段成功率高,后段插入阶段仍可能因毫米级误差累积而掉点。

因此,ACT 更像”精细操作行为克隆的结构性改进基线”,而非通用语义机器人基础模型。该路线与 RT-1/RT-2 的大模型扩展并不冲突:ACT 优先解决动作精度与时序稳定性,后者优先解决语义覆盖与泛化范围。后续两条演进路径分别对应:

  1. 8.diffusion_policy.md:在“动作分块”框架下替换分布建模器(CVAE -> diffusion)。
  2. 9.pi0_foundation_model.md:补足预训练语义与跨任务泛化,把分块控制与基础模型能力进一步整合。

9. 自测问题

如果能独立回答下面 4 个问题,说明本章主线已经基本掌握:

  1. 为什么 ACT 不能简单概括成“把行为克隆换成 Transformer”?
  2. 为什么 action chunking 不只是“多预测几步”,而是改变了有效时域和示教建模方式?
  3. 为什么 CVAE 在 scripted data 上作用很小、在人类示教上作用很大;而推理时又仍然可以设
  4. 为什么阅读 ACT 的结果时,必须把 ALOHA 的 50Hz 遥操作与数据质量一起看?