FAST:高效动作分词与 π0-FAST
FAST: Efficient Action Tokenization for Vision-Language-Action Models
- 动作分词
- DCT
- BPE 压缩
- 自回归策略
与上一篇 π0 的关系: 本文正式题目是 FAST,π0-FAST 是其中训练出的策略模型。FAST 是动作分词方法;FAST+ 是预先训练好的通用动作分词器;π0-FAST 是使用这类分词器进行自回归动作预测的 VLA。它与原 π0 共享 PaliGemma 视觉语言骨干路线,但动作生成机制发生了变化,不能理解为给原来的流匹配动作专家增加一个压缩前处理。
阅读来源: 原论文 PDF,正文第 I–VII 节与附录 A–E;结构承接上一篇《论文精读:π0 - A Vision-Language-Action Flow Model for General Robot Control》。下文页码均指这份 19 页 PDF 的物理页码,图片直接截取自该版本。补充推导和数值例子会标记为“解释”,不冒充原论文公式或实验。

先验知识
什么是视觉-语言-动作模型与动作分词
解释: 视觉-语言-动作模型(Vision-Language-Action Model,VLA)把“看到的场景”和“听懂的任务”转换成机器人控制指令。以折 T 恤为例,图像说明衣服和夹爪的位置,语言说明要折衣服,本体状态说明手臂当前姿态,模型输出未来一段手臂与夹爪动作。
本文沿用动作分块(Action Chunking):一次预测未来 步,而不是只预测下一步。记:
其中, 是机器人控制时刻, 是 维动作, 是动作块长度; 是第 路图像, 是相机数量, 是任务语言, 是本体状态。模型学习条件动作分布 , 表示策略网络参数。
原文: 论文主要按 1 秒 切分动作块。因此 随数据控制频率变化:15 Hz 对应 15 步,20 Hz 对应 20 步,50 Hz 对应 50 步。本文不能统一套用上一篇 π0 的 。
动作分词(Action Tokenization)是把连续动作块变成离散符号序列的映射:
是分词器, 是动作 token 的编号, 是动作词表大小, 是压缩后的序列长度。同样大小的动作块可以产生不同的 ,就像同样字数的句子可能分成不同数量的子词。
注意: token 编号不是关节角度;一个 FAST token 也不一定对应一个时刻、一个关节或一个完整动作。模型先生成整段 token,再经解码恢复连续动作块。
逐点离散化、π0 流匹配与 FAST 的区别


传统分箱(Binning)把每个时刻、每个动作维度独立量化为一个整数。论文介绍的常见配置是 256 个均匀区间:
第 1 步的 D 个动作分量 → D 个 token
第 2 步的 D 个动作分量 → D 个 token
……
第 H 步的 D 个动作分量 → D 个 token
合计 H × D 个 token
这在高频控制中带来两个相互关联的问题:序列很长;相邻时刻的同一动作分量又往往很相似,预测很多重复 token 就能降低损失,模型却未必学会整段运动。
最小时间序列例子: 假设一个动作分量依次为 。若量化区间较粗,它们可能全部落入同一分箱。训练时只要复制前一个时刻该分量的 token,就能猜中很多标签,但这没有体现“需要持续移动”的轨迹形状。
FAST 的处理顺序是:
连续动作块 → 频域系数 → 系数量化 → 按频率展开 → BPE 压缩
→ 少量动作 token → VLA 自回归预测 → 解码回连续动作块
离散余弦变换(Discrete Cosine Transform,DCT)把整段轨迹写成不同频率余弦分量的组合;字节对编码(Byte-Pair Encoding,BPE)再合并常见整数片段。模型预测的是整段轨迹的压缩表示,训练标签中的冗余因而减少。
| 对比项 | 逐点分箱自回归 VLA | 原 π0 | π0-FAST |
|---|---|---|---|
| 动作表示 | 每个时刻、每个维度的离散值 | 连续动作块 | 动作块的压缩离散 token |
| 训练目标 | 下一 token 预测 | 条件流匹配 | 下一 token 预测 |
| 生成方式 | 顺序生成 个动作 token | 动作专家迭代更新整块动作 | 顺序生成 个压缩 token 后解码 |
| 高频数据的主要处理方式 | 高频会增加 token 数与重复性 | 用连续生成避免逐维解码 | 压缩时间冗余,缩短有效输出序列 |
| 主要边界 | 灵巧高频任务可能学不动 | 需要专门的连续动作专家 | 量化有损,且自回归推理仍可能较慢 |
原文: 表 I 中,50 Hz、14 维、1 秒的折 T 恤动作块,从逐点分箱的 700 个 token 缩短到 FAST 平均 53 个 token。解码后仍是 50 个时刻的 14 维动作,机器人控制频率并未变成“每秒 53 个 token”。

*图 2:同一条三次样条曲线在不同采样密度下的预测结果。黄色曲线是逐点分箱,绿色曲线是 DCT 方案;下方颜色由浅黄到紫色表示采样点数 从 25 增加到 800。截取自原论文图 3,PDF 第 3 页。*
看图重点: 输入四个点,目标始终是同一类插值曲线,只增加采样密度。逐点分词的预测误差随密度增加而上升,最高密度下甚至输出近似常数;DCT 方案保持较低误差。这说明失败不必来自任务变难,目标表示本身就可能妨碍学习。这里的 25–800 是每条合成序列的采样点数,不能直接当作真实机器人控制频率。
训练、推理和评估
| 阶段 | 输入与操作 | 输出及判断方式 |
|---|---|---|
| 分词器训练 | 对示范动作归一化、DCT、量化,再从整数序列学习 BPE 词表 | 得到动作编码/解码规则;检查压缩率与重建误差 |
| 策略训练 | 当前图像、语言、状态作为条件;真实未来动作经 FAST 编成监督 token | 优化动作 token 的交叉熵,得到 VLA 策略权重 |
| 策略推理 | 用当前观测生成动作 token,再执行 BPE 逆变换、反量化与逆 DCT | 恢复连续动作块,交给机器人控制器执行 |
| 机器人评估 | 在指定任务与初始条件下运行策略 | 用任务成功率或归一化任务进度判断实际效果 |
原文: 本文评估包括 6 个真实机器人任务/场景与 1 个仿真基准。它还单独测试 FAST+ 在多种本体动作数据上的离线压缩能力。这两类评估证明的事情不同:能够压缩某个人形机器人数据集,不等于已经训练并实机验证了人形控制策略。
注意: token 预测损失、动作重建误差、机器人任务得分是三个不同指标。本文的重要发现恰恰是:重复标签可以让训练损失看起来不错,但实际轨迹与任务行为仍很差。
摘要
翻译
自回归序列模型,例如基于 Transformer 的视觉-语言-动作策略,能够非常有效地表示复杂且具有泛化能力的机器人行为。然而,这类模型要求我们为连续动作信号选择一种分词方式;它决定了模型预测的离散符号如何映射到连续机器人动作。作者发现,目前基于逐维、逐时刻简单分箱的机器人动作分词方法,在从高频机器人数据学习灵巧技能时通常表现较差。
为应对这一挑战,作者提出一种基于离散余弦变换的机器人动作压缩分词方案。该方法称为频域动作序列分词(Frequency-space Action Sequence Tokenization,FAST),使自回归 VLA 能够学习高度灵巧的高频任务,而标准离散化方法在这些任务上完全失败。
基于 FAST,作者发布 FAST+:一个在 100 万条真实机器人动作轨迹上训练的通用动作分词器。它能够作为黑盒分词器,处理动作空间和控制频率各不相同的多种机器人动作序列。
最后,作者表明,将该方法与 π0 VLA 结合后,可以扩展到 10,000 小时机器人数据的训练,并达到与扩散式 VLA 相当的表现,同时将训练时间最多缩短 5 倍。
批注
-
为什么做: 高频动作中存在大量重复信息。把这些信息逐点变成 token,会让下一 token 预测投入很多计算,却获得很少关于运动变化的监督。
-
核心改变: 先改变学习目标的表示,再训练策略。FAST 没有通过降低机器人执行频率来减少动作点,而是压缩这些点共同表达的轨迹信息。
-
为什么可能有效: DCT 集中轨迹形状信息,量化制造可压缩的稀疏系数,BPE 把常见系数组合变成更短的序列。三步合起来才得到最终动作 token。
-
FAST+ 的“通用”含义: 新数据不必重新训练一个专属 BPE 词表;仍需匹配归一化、动作维度和动作块长度。附录明确这 100 万条训练样本主要是约 1 秒的动作块,不应理解为 100 万个完整任务回合。
-
“5 倍”的适用范围: 大规模策略实验报告所需 GPU 小时最多减少约 5 倍。它不是推理速度提升;v1 中 π0-FAST 单块推理约 750 ms,而原 π0 通常在 100 ms 内完成。
引言

第一段:把高频自回归控制的瓶颈定位到动作分词
-
原文在说什么: 大容量 Transformer 可以从零学习机器人行为,也可以利用互联网图文预训练。但连续动作如何转成 token 是必要选择。已有逐维、逐时刻分箱在高频灵巧任务上表现差;动作块中高度相关的相邻时刻标签,使模型通过复制最近动作就能获得较低损失,停留在较差的局部最优。
-
承接的问题: 强大的预训练骨干并不保证能学好机器人动作;标签表示可能限制模型利用训练数据。
-
为后文铺垫: 第 IV 节用合成插值任务检验高采样密度为何破坏学习,第 V 节提出压缩动作序列的解决办法。

第二段:提出“先压缩,再预测”的 FAST 路线
-
原文在说什么: 作者借鉴语言模型的压缩分词思路,但针对连续机器人信号选择 DCT,由此构造 FAST。它让标准下一 token 预测能够学习原本失败的高频灵巧任务,并训练出可通过自然语言在未见环境中零样本使用的 DROID 策略。
-
承接的问题: 如果困难来自时间冗余,就应减少连续动作对应 token 中的冗余,而不是只增加网络容量。
-
为后文铺垫: 第 V-B 节给出具体编码算法,第 VI 节检验真实任务表现与 DROID 场景泛化。

第三段:从单数据集分词扩展到通用分词器与大规模策略
-
原文在说什么: FAST+ 用 100 万条真实动作序列学习通用词表,覆盖单臂、双臂、移动平台及不同控制空间和频率。将 FAST 与 π0 路线结合,可在 10,000 小时数据上训练自回归 VLA,以更少训练时间达到与扩散式 VLA 相当的表现。
-
承接的问题: 每换一个机器人都重新训练分词器,会增加使用成本;方法还需要证明能扩展到通用策略训练。
-
为后文铺垫: 第 V-C 节与附录 A 介绍 FAST+,第 VI-C 节验证通用分词,第 VI-F 节比较大规模 π0-FAST 与 π0。
注意: 引言实际有三个正文段落,第一段跨越 PDF 第 1–2 页。这里按原段落拆解,没有把跨页文本或图注重新拆成额外段落。原文对 DROID“首个”结果的表述属于作者对当时已有工作的判断,不是本精读对后来研究的排查结论。
相关工作
-
语言、图像与音频的分词: 文本 BPE 通过合并常见片段压缩符号序列,图像与音频还会使用学习式量化或频域表示。本文借鉴其“先表示与压缩,再做序列预测”的思路,但对象是连续机器人动作块;DCT 提供解析变换,只有 BPE 词表需要学习。
-
视觉-语言-动作模型: RT-2、OpenVLA 等把图文预训练模型用于机器人控制,获得较好的语义与泛化能力,但常用逐点分箱动作。本文重点改变输出表示,让自回归骨干能处理高频灵巧数据;原 π0 则走连续流匹配路线,本文把它作为重要对照。
-
VLA 的动作表示: 高层子任务、关键点等语义表示往往依赖手工低层控制器;逐点分箱直接产生控制量但存在时间冗余;回归头、扩散动作专家则改变连续输出机制。FAST 保持离散序列预测路线。对学习式向量量化压缩,本文实验使用有限标量量化(Finite Scalar Quantization,FSQ)作为比较:FAST 不需要另训神经编码器,在高保真动作重建与真实灵巧任务上表现更好,但这不能扩写成所有学习式分词器都不如 FAST。
π0-FAST 的策略系统与实验平台
设计目标和组成
FAST 本身是动作数据处理方法,本文没有提出新的遥操作硬件。因此本章对应上一篇的“系统与平台”,重点是分词器、VLA、机器人控制和评估数据如何组成完整系统。
设计目标是:压缩高频动作而保留细粒度轨迹;沿用自回归 VLM 的下一 token 训练方式;支持不同动作空间;让分词器容易训练和复用;验证方法能扩展到大规模跨本体策略。
| 系统组成 | 论文配置 | 在系统中的作用 |
|---|---|---|
| FAST / FAST+ | DCT、系数量化、频率优先展开、BPE | 把动作块转换为可预测的离散序列,并解码 |
| π0-FAST 骨干 | PaliGemma-3B | 编码图像与语言,自回归生成动作 token |
| 骨干迁移对照 | 基于 Prismatic 7B 的 OpenVLA | 检验 FAST 是否只对 PaliGemma 有效 |
| 图像输入 | 2 或 3 路,每路 像素 | 一路外部视角,每条手臂一路腕部视角 |
| 本体状态 | 先离散成 256 档,再作为整数文本分词 | 告知模型当前机器人状态 |
| 执行端 | 各平台低层机器人控制器 | 把解码后的连续动作发送到关节/夹爪等接口 |
原文: 所有策略微调都不冻结网络权重。策略骨干的视觉编码器逐路编码图像,再拼接视觉 token。图像尺寸及状态文本化来自附录 C,而不是从上一篇 π0 的接口推断。

| 任务/场景 | 平台与控制频率 | 需要检验的能力 |
|---|---|---|
| LIBERO | 仿真基准 | 空间、物体、目标和长时程任务泛化 |
| 清桌 Table Bussing | 单臂 UR5/UR5e,20 Hz | 对 12 个物体做抓取、分类与收纳 |
| 折 T 恤 T-Shirt Folding | 双臂 ARX,50 Hz | 精确抓取平放衣服并完成折叠 |
| 杂货装袋 Grocery Bagging | 单臂 UR5/UR5e,20 Hz | 把 7 个物体装入袋中,避免袋子倒塌或破损 |
| 取吐司 Toast out of Toaster | 双臂 Trossen Viper-X,50 Hz | 从烤面包机取出两片吐司并放到盘中 |
| 洗衣折叠 Laundry Folding | 双臂 ARX,50 Hz | 从篮中取衣物、展开、折叠并堆叠 |
| DROID 零样本桌面操作 | Franka 数据与实机设置,15 Hz | 在未见场景按语言做放置、擦拭、开关抽屉等任务 |
注意: “高频”描述每秒动作控制点的数量;“频域高频分量”描述同一轨迹在时间轴上变化得多快。50 Hz 采集的平滑手臂轨迹仍可能主要由低频 DCT 分量表达。机器人控制频率也不是大模型重新推理的频率。
编码、策略预测与执行如何衔接
整体工作方式是:
示范轨迹 → 切出 1 秒未来动作 → 归一化与 FAST 编码 → 动作 token 标签
当前图像 + 语言 + 本体状态 → VLM 条件前缀 → 学习预测动作 token
↓ 训练完成后
新观测 → 自回归生成动作 token → FAST 解码 → 连续动作块 → 机器人执行
↓
重新观测并再次预测
训练数据记录的是观察条件与真实动作。FAST 编码器只处理动作监督目标;它不负责理解相机图像,也不把机器人本体状态一起做 DCT。模型在训练时看真实历史动作 token,在推理时看自己已经生成的动作 token,二者需要区分。
原文: 动作 token 替换 VLM 原词表中较少使用的 token,沿用已有离散输出接口;模型训练无需额外增加一个类似原 π0 的流匹配动作专家。对 OpenVLA 的实验,作者仍修改了多图输入与动作块输出设置。因此“分词器适用于不同自回归骨干”不等于已有机器人代码完全无需适配。
执行节奏: DROID 模型预测 15 步动作块,实机推理时开环执行其中 8 步或 15 步,再更新观测。15 Hz 下这分别对应约 0.53 秒或 1 秒的控制点跨度;这些是动作执行跨度,不是包含网络推理和通信后的墙钟周期。其他任务不能直接套用这一设置,FAST v1 未统一列出全部平台的动作块执行步数。
为什么这样设计: 动作块保留轨迹连贯性;压缩后的 token 让训练能够处理高频轨迹;保留自回归 VLM 输出结构,使图文预训练权重能直接参与动作 token 预测。控制器最终接收的是连续控制值,不需要识别 BPE 编号。
数据、任务能力与实验结果
数据规模与配置
| 用途 | 数据范围 | 必须区分的含义 |
|---|---|---|
| FAST+ 分词器训练 | 约 100 万个 1 秒真实动作块 | 学习 BPE 词表,不是训练 VLA 的图像理解能力 |
| FAST+ 数据覆盖 | 单臂、双臂、移动操作;关节、末端世界坐标、末端相机坐标;多种频率 | 同一机器人可贡献多个动作参数化版本 |
| 大规模 π0-FAST 策略训练 | 沿用 π0 混合数据;自有数据 903M 个 timestep,开放数据占混合采样权重 9.1% | 开放部分包含 Bridge v2、DROID、OXE;9.1% 不是全部原始数据量占比 |
| DROID 专项策略 | 75k 成功回合,约 21M 样本 | 轻度筛选并去掉全零闲置动作,仍需策略训练 |
| DROID 训练设置 | batch size 256,240k 次迭代,约 3 个 epoch | 附录 D 报告 8 张 H100 约 4 天,适用于此专项设置 |
原文: FAST+ 训练动作在分词前补到 32 维,以容纳不同动作空间。这是通用分词器训练数据的对齐配置,不是本文所有策略都输出 32 维,也不能与上一篇 π0 的 18 维接口混同。新平台仍需清楚自己的有效动作维度。
DROID 输入使用一路外部相机与一路腕部相机。训练时在两路可用外部相机之间随机选择,并在每回合的三个语言标注之间随机选择;不使用相机标定信息。动作空间为关节速度与绝对夹爪位置。该设置支持论文中的新视角部署,但不意味着机器人无需任何坐标或控制接口配置。
压缩率:减少的是 token,保留的是整段动作
下表按原论文表 I 转录,均为 1 秒动作块。压缩倍数是逐点分箱 token 数除以 FAST 平均 token 数;比较在相近重建误差下进行。
| 数据集/任务 | 动作维度 | 控制频率与 | 逐点分箱 token | FAST 平均 token | 压缩倍数 |
|---|---|---|---|---|---|
| BridgeV2 | 7 | 5 Hz,5 步 | 35 | 20 | 1.75 |
| DROID | 7 | 15 Hz,15 步 | 105 | 29 | 3.6 |
| 清桌 | 7 | 20 Hz,20 步 | 140 | 28 | 5.0 |
| 折 T 恤 | 14 | 50 Hz,50 步 | 700 | 53 | 13.2 |
看表重点: 控制点从几十增加到几百,并不一定带来同等比例的新运动信息。FAST 在这些数据中大致用每条手臂每秒约 30 个 token 表达动作,但这是经验观察,不是固定输出长度。
版本核对: 附录表 III 的部分离线分词测试使用不同维度版本,例如 DROID Joint 与清桌各列为 8 维;表 I 则各列为 7 维。这里保留表 I 的具体口径,不强行把不同动作参数化合并成一个规格。
评估指标:成功率与任务进度分别看
| 任务 | 原论文评估方式 |
|---|---|
| LIBERO | 每个回合按二值成功标准评估;四套基准合并训练,数据约 270k 样本,训练 40k 次迭代 |
| 清桌 | 12 个物体中正确放入垃圾桶或收纳箱的比例 |
| 折 T 恤 | 人工判断衣服是否成功折叠,计算成功比例;评估轮换 5 件已见 T 恤 |
| 杂货装袋 | 7 个物体中放入袋内的比例 |
| 取吐司 | 每取出一片、每放入盘中一片各计 1 分,总分 4 分,再归一化 |
| 洗衣折叠 | 人工判断是否完成折叠与堆叠,计算衣物成功比例;篮中放 5 件随机衣物 |
| DROID 定量测试 | 每个策略共 44 次试验,用各任务的进度规则评分,例如抓对物体、放入正确容器分别给分 |
版本核对: 正文将 LIBERO 的第四套称为 Libero-10,附录称为 Libero-Long;本文保留为“长时程任务套件”。附录 E 称 DROID 定量测试有 16 项任务,但表 II 实际列出 17 个任务名称,试验次数相加仍为 44。本精读依据可核对的表格与总次数描述,不把差异默默改成一个一致数字。
评估边界: DROID 的跨伯克利、斯坦福、华盛顿大学三所校园展示属于额外定性测试,作者没有报告该部分成功率。零样本指训练后不针对新部署场景再训练,并非模型没用过 DROID 数据。FAST+ 词表训练本身也包含真实机器人评估任务的数据,所以图 6 不能解释成“分词器与策略都完全没有见过这些任务”。
动作分词器比较

看高频真实任务最容易理解方法的价值:逐点分箱在 20 Hz 清桌与 50 Hz 折 T 恤上基本无法取得任务进展;FAST 与 FAST+ 能学到有效策略。FSQ 也说明“压缩动作”有价值,但在这些灵巧真实任务上通常弱于 FAST。通用 FAST+ 接近各数据集专门训练的 FAST,支持把它作为默认分词器使用。
注意: 此图的平均项汇总了不同任务评分,不适合称为统一的“平均成功率”。图中误差线也提醒我们不能把相近柱子的细小差异都当作确定优势。
与原 π0 的单数据集比较

-
小数据集如 LIBERO 与折 T 恤,论文判断两条路线表现相近。
-
大数据集清桌中,FAST 更快达到较高表现;原 π0 需要约 3 倍训练步数达到接近水平。
-
DROID 中,作者观察到 π0-FAST 更好地遵循语言,而流匹配 π0 经常忽略指令;论文没有进一步确定这种差异的根本原因。
解释: 下一 token 训练可以在教师强制条件下并行计算各输出位置的损失;自回归推理则必须根据已有输出继续生成。训练更快与推理更慢可以同时成立。本文结果不证明自回归路线在所有任务、所有模型规模上都更优。
大规模通用策略与同计算量对照

π0-FAST 的总体平均表现接近原 π0,涵盖折衣、清桌、装袋、取吐司和洗衣折叠;单项有高有低,取吐司尤其不能写成 FAST 全面领先。论文报告用于这些评估的 π0-FAST 所需 GPU 小时约为原 π0 的五分之一。
注意: 第 VI-F 节整体称为零样本能力比较,但附录 E 明确洗衣折叠先进行大规模预训练,再使用少量高质量任务数据微调;装袋与取吐司则使用预训练模型直接评估。因此不能把图 6 的全部任务统称为“从未做过任务微调”。

同计算量对照更直接支持“更快收敛”:FAST 总体平均更高,清桌与装袋优势明显,但取吐司仍低于原 π0。这是训练效率证据,而非每个任务的最终能力都更强。
部署边界: 第 VI-E 节在 NVIDIA RTX 4090 上报告,原 π0 生成 1 秒动作块通常不足 100 ms,π0-FAST 约 750 ms。后者通常要解码 30–60 个 token,并反复经过完整语言骨干;原 π0 进行 10 次流匹配更新,重复计算主要在约 300M 参数动作专家中。作者在静态操作任务中接受了这一延迟,但把动态任务与推理优化留给后续研究。
频域动作序列分词与自回归策略建模
核心机制一:用 DCT 表达整段轨迹
问题与直觉
平滑轨迹的相邻控制点非常相似。如果每个点都当成独立预测单位,输出长度随采样频率增长,标签中的新增信息却可能很少。DCT 改变描述方式:不逐点描述轨迹,而是描述“哪些余弦形状按多大幅度组合成这条轨迹”。
对平滑信号,少量低频系数往往承载主要形状;高频系数描述快速变化与细节。DCT 本身不是丢弃高频,更不是对机器人动作做固定低通滤波。 完整 DCT 与逆 DCT 可以互相还原;有损压缩来自后面的量化。
形式化表达
解释: 原文给出的是“对每个动作维度分别做 DCT”的算法。为了说明符号,下面采用正交归一的 DCT-II 写法;该归一化约定用于讲解,不声称论文伪代码指定了这一约定。
设归一化动作块为 ,则:
其中, 是块内时间索引, 是动作维度, 是频率索引, 是系数矩阵。 对应常量分量,较大的 对应更快速的时间变化。DCT 只沿时间轴做,不沿关节维度做。
同一约定下,逆变换为:
这两式说明:每个时间点都由多个频率分量共同决定,单个频域系数通常影响整个动作块。
最小数值例子
解释: 假设 ,两维已归一化动作如下,数值只是教学例子:
第一维保持常数,只需要一个非零常量系数;第二维逐渐增大,主要由常量与第一个变化分量表达,最高频率分量很小。轨迹还是原来的 4 个时刻、2 个维度,变化的是表示坐标。
为什么有效: 高频采样给平滑轨迹增加很多近似重复点,但不一定增加很多重要频率分量。频域表示可以把这些共同信息集中到较少系数,接下来才能压缩成较少高信息量 token。
关键尺度与边界: 本文常用约 1 秒动作块。 时没有可利用的时间冗余;块太短时压缩空间有限,块太长时输出跨度增加,而且如果长时间开环执行会降低观测更新速度。剧烈接触、快速夹爪切换等轨迹可能需要更多高频系数,不能假定所有动作都能用几个低频系数准确表达。
核心机制二:系数量化、频率优先展开与 BPE
为什么只有 DCT 还不够
DCT 把信息集中起来,但仍输出 个实数系数。若把每个系数单独变成 token,序列并未缩短;大量接近零的系数还会形成重复标签。FAST 因而继续做量化与 BPE 压缩。

按动作维度做分位数归一化
原文: 每个动作维度用训练数据的第 1 与第 99 百分位数作为尺度,将这两个分位点映射到 与 ,减小不同机器人量纲差异和离群值影响。
解释: 对非退化维度,可写为:
、 分别是第 1、第 99 百分位数; 是原始物理动作分量, 是无量纲归一化值。若某关节的 ,物理动作 就映射为 。
注意: 线性映射两个分位点不保证所有值严格位于 ;超出分位范围的数据如何裁剪,需要遵循具体实现。v1 未详细规定这一点,也未给出 的处理。部署时必须保存训练所用归一化统计,不能每个推理动作块重新计算分位数。
缩放并取整,制造可压缩的整数结构
是整数系数矩阵, 是量化缩放系数, 是解码得到的近似 DCT 系数。较大的 使系数网格更细,通常提高重建精度,但也可能增加 token 数;较小的 更易将小系数归零,压缩更强,动作误差更大。
原文: 单数据集分词实验统一使用 、BPE 词表大小 ,作者认为这两个超参数在其测试范围内不太敏感。这不意味着任意动作空间都应无条件固定用相同参数。
接上一节教学例子,取 :
最高频的 变为 0,而较大的 保留为 。这里没有预先规定“只保留前两个频率”;任何位置只要系数足够大,都可以保留非零整数。
解释: 普通四舍五入满足 。这是系数域的单项误差界,不是每个关节物理动作误差的直接上界;后者还取决于逆变换、动作尺度以及是否裁剪。
低频优先展开,先生成全局轨迹结构
FAST 在 BPE 前按频率递增排列,每个频率中再依次放各动作维度:
是长为 的整数序列。教学例子得到:
频率 0 的两维:4, 3
频率 1 的两维:0, -2
频率 2 的两维:0, 0
频率 3 的两维:0, 0
展开:4, 3, 0, -2, 0, 0, 0, 0
原文: 作者比较了频率优先与动作维度优先的排列,发现先预测整体形状对应的低频信息,策略 rollout 更稳定。因为原图系数矩阵为 ,它称这一操作为按列优先展开;本精读矩阵是 ,同一操作按行展开。关键是语义顺序,不是“行/列”名称。
用 BPE 合并常见整数片段
BPE 学习经常相邻出现的整数符号组合,把这些组合加入有限大小的词表。例如某个教学词表可能把 合并为一个 token,也可能把 合并为一个 token。于是上述 8 个整数可能编码成更短序列。
解释: 合并规则与编号取决于训练语料,不能手工指定为论文的真实词表。一个 token 可以跨动作维度,甚至跨相邻频率位置;解码时,词表把它展开回原来的整数片段。
最重要的区别: 系数取整是有损的,BPE 对量化后的整数序列是无损的。FAST 没有把矩阵中所有零的位置删掉;零仍参与展开,只是通过 BPE 更紧凑地表示。否则逆变换会不知道零系数位于哪些频率与维度。

看图重点: 没有 BPE 时,DCT 仍让重要信息集中,表现依然优于逐点分箱;但大量零 token 留在输出序列中,稀释训练信号并增加自回归解码步骤,两个真实任务的表现都下降。这支持“DCT 和 BPE 各有作用”,而不是只做变换就得到全部收益。
示范动作的概率建模与 FAST+ 的跨本体复用
同一观测可能对应多种合理动作
面对同一件衣服,人可以先抓左角或先抓右角,也可以采用不同的展开动作。直接用均方误差回归一个平均轨迹,可能得到两种策略都不采用的中间动作。原 π0 用连续生成分布表达这种多模态;π0-FAST 用压缩 token 的条件概率表达。
自回归分解为:
是 FAST 编码后的动作序列, 是第 个 token 之前的全部动作 token。每一步输出词表上各 token 的概率,而不是平均两个物理动作值;完整 token 序列再解码为轨迹。
注意: 本文没有 CVAE 编码器,也没有原 π0 的高斯噪声动作块与流时间。为保持原精读结构,本小节仍解释“人类数据如何建模”,但不能把 ACT 的 CVAE 或 π0 的流匹配模块套进 FAST。概率建模也不保证覆盖所有合理策略,能力仍取决于数据、量化精度和网络学习。
为什么高频逐点标签容易削弱学习
解释: 当相邻时刻的同一动作分量几乎不变,给定已有 token 后,下一个 token 的条件熵会很低:
表示随机动作 token, 表示条件熵。这里的 不是动作块长度 。低条件熵意味着前文已解释了大部分标签,模型能通过简单重复获得许多正确预测,对图像与任务目标的依赖就可能不足。
论文用这个信息量视角解释其合成实验与高频任务结果;它没有证明所有逐点分箱模型一定失败,也没有证明 token 数越少策略就越强。若为缩短序列而严重损失动作信息,依然可能学到错误行为。
FAST+ 如何提供通用词表
FAST 的解析步骤可以跨数据集使用,但专属 BPE 词表是在某一数据集上学到的。FAST+ 用约 100 万个跨本体动作块,学习一个覆盖面更广的 BPE 词表:
多机器人、多动作空间、多控制频率
→ 按各数据配置归一化
→ 训练阶段动作补齐到 32 维
→ DCT、量化、频率优先展开
→ 汇集整数序列训练 BPE
→ 得到可直接复用的 FAST+ 分词器
词表主要学习常见系数组合与零模式,并不学习相机语义,也不存储某台机械臂的完整运动学控制器。因此,新策略仍需要图像、语言、状态与动作示范来学习“在这个场景应做什么”。通用分词与跨机器人策略泛化是两个层次。

看图重点: FAST+ 能压缩形态、维度和频率差异很大的动作信号。第 VI-C 节将这些称为分词器未见的测试数据;表 III 包含与训练数据同名平台或任务的数据版本,因此这里将“未见”保留在论文所指的数据划分层面,不扩大成每个机器人类别都未参与训练。
能力边界: 图 10 是离线编码实验,不是人形行走、灵巧手操作或自动驾驶的策略成功率。论文第 VII 节明确,实机策略主要在固定式操作机器人上验证;其他本体的实际策略控制属于后续方向。表 III 中人形动作可达 40 维,也说明 FAST+ 的 32 维训练补齐不应被误写成方法在数学上的固定最大维度。
分词器的训练、编码与解码如何工作
分词器训练路径
给定示范动作块集合 ,其中 是样本索引:
-
按数据配置计算并保存各动作维度的分位数统计。
-
将动作转换为归一化块 ,对每个动作维度沿时间轴做 DCT。
-
用固定缩放系数 得到整数系数 。
-
按频率优先顺序展开为整数序列 。
-
在全部整数序列上训练固定词表大小的 BPE,得到词表与合并规则 。
原文: 分词器唯一学习的组件是 BPE 词表。专属词表通常几分钟即可训练;这是分词器训练时间,不能与 VLA 数天甚至更久的训练混为一谈。DCT 与量化没有神经网络权重,不需要另训 VQ 编码器/解码器。
编码路径:从真实未来动作得到训练标签
可以把完整编码写成:
这里 是归一化, 是频率优先展开, 是固定 BPE 规则;DCT 沿时间轴作用于各维。编码时需要真实未来动作,所以它用于制作训练监督,而不是在实机推理时预先知道未来。
注意: 原论文算法 1 从 DCT 步骤开始列伪代码,没有显式列出归一化;第 V-B 节正文明确先归一化。本精读按完整正文流水线解释。原文称操作易于逆转,但取整本身不可精确逆转,解码只能近似重建量化前动作。
解码路径:从模型预测得到可执行动作
模型生成 后,依次执行:
是生成的 token 数, 依据目标动作块形状恢复系数矩阵, 是与编码配对的逆 DCT, 是最终连续动作块。部署需要知道目标 ;长度可变的 token 序列并没有替代机器人动作接口定义。
对应前面的线性归一化,反归一化为:
解释: 接教学例子, 的量化系数逆变换后约得到:
原第二维是 ,重建后仍表达逐渐增大的运动,但有小误差。BPE 解码没有额外改变 ;误差来自系数量化。这里比较的是归一化值,并非直接以弧度或毫米计。
压缩率与重建精度要一起检查

看图重点: 低精度、很少 token 时,学习式 FSQ 可以较有效;追求高精度时,FAST 的误差随 token 数增加下降更充分,在细粒度控制任务上更适合。不能只挑“序列最短”的方案,而忽略轨迹是否还足够准确。
边界: 量化尺度极小会让很多系数消失,重建动作可能接近常数;尺度极大则更精确但可压缩零减少、整数更复杂。较大词表可以表示更多组合,却占用更多动作 token 槽位。论文只验证了有限范围,不应将词表大小与性能写成必然单调关系。
工程说明: 模型预测可能出现不合法 token 或错误展开长度,真实执行前还需检查动作形状、有效维度和机器人控制限制。v1 没有完整描述异常序列的修复规则;这里仅说明接口所需条件,不把补零、截断等某种恢复策略写成论文实现。
完整的 π0-FAST 网络
原始输入与形状
每次条件输入包括:
-
2 或 3 路 RGB 图像,每路 ;
-
自然语言任务指令 ;
-
本体状态 ,维度随平台与动作设置变化;
-
仅训练时提供真实未来动作 ,供 FAST 生成监督标签。
对折 T 恤表 I 设置,,标签动作块为 ;对 DROID 表 I 设置,,为 。实际有效动作空间必须按当前数据版本确定。
与原 π0 的接口区别: 原 π0 给状态与带噪动作做连续投影,再交给动作专家。FAST v1 将状态离散为 256 档整数,再作为文本通过语言分词器输入;未来动作则采用更复杂的 FAST 分词。状态仅作为当前条件,并不是待预测的高频长序列,所以作者认为简单分箱足够。
视觉与文本特征进入同一骨干
预训练视觉编码器分别处理每路图像,得到视觉 token;任务语言与状态字符串通过语言分词器得到文本 token,组成观测条件前缀。论文使用 PaliGemma-3B 作为主要骨干,OpenVLA/Prismatic 7B 作为迁移对照。
解释: 设每路图像产生 个视觉 token,语言与状态分别产生 、 个 token,则观测前缀长度可抽象写为:
是图像数量, 是前缀长度;这里忽略少量分隔/特殊 token。若嵌入宽度为 ,拼接表示为 。这是维度关系的讲解;v1 没有完整列出每路视觉 token 数、嵌入宽度、分隔符与位置编码细节,不根据常见配置补写成论文规格。
动作后缀与注意力
训练时,真实动作经 FAST 得到 个动作 token。它们映射到 VLM 词表中被替换的较少使用槽位,作为待预测后缀。条件前缀与动作后缀构成一次序列训练输入。
解释: 预测第 个动作 token 时,模型利用图像、语言、状态以及前 个动作 token,不能利用其后的真实标签。这是自回归因果约束;本文没有新增一个需要单独解释的 CVAE 编码器,也没有原 π0 的连续流解码专家。
骨干输出隐藏表示,离散词表输出头将每个动作预测位置转换成 token logits,再形成分类概率。 指作者单数据集实验的动作词表大小,不是整个 VLM 的语言词表大小。
策略训练损失
解释: 将原文的“下一 token 预测”写成标准动作监督负对数似然:
是自回归训练损失, 是策略权重,期望对示范样本取平均, 随动作样本变化。公式表达本文训练目标的含义;具体实现是否按 token 平均以及特殊结束符如何计入,v1 没有详细列出。
教师强制(Teacher Forcing)意味着训练第 个位置时,前文 来自真实动作编码。因果掩码允许在一次前向中并行计算这些位置的损失;推理时则必须依赖已生成的前文,顺序生成。因此,缩短监督后缀可以改善训练开销,但没有消除自回归推理的串行依赖。
原文训练配置: 1,000 步线性学习率预热,然后保持 ;AdamW,,不使用权重衰减;梯度幅度裁剪到 1;权重指数移动平均(Exponential Moving Average,EMA)系数为 0.999。训练时所有策略权重都参与微调。
推理采样与连续动作输出
多数任务采用贪心自回归解码,即每一步选概率最高的 token。双臂折 T 恤、取吐司、洗衣折叠使用温度为 0.7 的采样,作者认为这有助于摆脱初始位置附近的静止动作模式。
解释: 设第 步词表 logits 为 ,温度为 ,则:
是候选 token 索引, 是采样概率。本文用 表示温度,避免与优化器的 混淆;论文采样温度记为 。它控制 token 选择分布,与量化尺度 不同。
输出 token 经 FAST 解码后形成 ,各分量回到对应数据的物理动作单位。DROID 是关节速度与绝对夹爪位置,其他任务依平台设置。底层控制器逐步执行动作块中的有效动作,随后用新观测生成下一块。
原文消融证据: 给 OpenVLA 加入多图输入和 1 秒动作块设置后,将原来的逐点分箱换成 FAST+,能够明显改善折 T 恤任务。这说明收益不限于 π0 的骨干,但实验范围不足以证明对任意 VLM 都有相同提升。
与上一篇 π0 对照后的完整数据流
训练时:
示范中的多路图像 + 任务语言 + 当前本体状态 + 真实未来 1 秒动作
→ 视觉编码器生成图像 token
→ 语言与离散状态整数转为文本 token,组成观测条件前缀
→ 真实动作归一化、逐维 DCT、量化、频率优先展开、BPE
→ 动作 token 映射到 VLM 输出槽位
→ 教师强制计算下一 token 交叉熵
→ 微调全部策略权重,得到 π0-FAST
推理时:
当前多路图像 + 任务语言 + 当前本体状态
→ 构造观测条件前缀
→ 贪心解码或指定温度采样,逐个生成动作 token
→ BPE 解码,还原整数系数排列
→ 反量化、逆 DCT、反归一化
→ 得到 H × D 的连续动作块
→ 由低层控制器执行设定步数
→ 重新观测并预测下一动作块
一句话理解:
视觉语言骨干负责根据场景与任务选择动作;
DCT 把高频采样轨迹的共同信息集中到频域系数;
量化与 BPE 把系数变成较短的动作 token 序列;
自回归训练学习这些 token 的条件分布,FAST 解码将其恢复为连续控制。
π0-FAST 的核心收益是高频动作表示与训练效率,v1 的推理延迟仍是主要限制。