Skip to content

FAST:基于时间序列压缩的高效动作 Tokenization——原理详解

论文FAST: Efficient Action Tokenization for Vision-Language-Action Models

作者:Karl Pertsch*, Kyle Stachowicz*, Brian Ichter, Danny Driess, Suraj Nair, Quan Vuong, Oier Mees, Chelsea Finn, Sergey Levine

机构:Physical Intelligence, UC Berkeley, Stanford

发布时间:2025年01月

论文链接arXiv | 项目主页

分类标签action tokenization DCT BPE autoregressive VLA high-frequency control


一句话总结

提出 FAST(Frequency-space Action Sequence Tokenization),用离散余弦变换(DCT)+ 字节对编码(BPE)对机器人动作序列进行频域压缩 tokenization,解决了自回归 VLA 在高频灵巧任务上的训练瓶颈,训练速度比扩散 VLA(π₀)快 5 倍且性能匹配。


一、问题与动机

1.1 自回归 VLA 的 tokenization 困境

自回归 VLA(如 RT-2、OpenVLA)将连续动作信号离散化为 token,通过 next-token prediction 训练。这些模型通常采用**朴素分箱(naive binning)**方案:将每个动作维度、每个时间步独立分成 N=256 个均匀 bin。

对于一段 D 维、H 步的 action chunk a1:H,朴素方案产生的 token 序列为:

Ta(a1:H)=[T1,1,,T1,D,,TH,1,,TH,D]

token 数量为 D×H。例如,7 维动作、50 Hz 控制频率、1 秒 action chunk → 350 个 token

1.2 为什么朴素 tokenization 在高频任务上失效?

核心问题在于相邻 token 的高度相关性。自回归模型的学习信号正比于当前 token Ti 相对于前文 T1:i1边际信息量。对于平滑的连续控制信号:

  • 控制频率越高,相邻时间步的动作变化越小
  • 边际信息量趋近于零
  • 模型可以通过简单复制上一步动作就获得低 loss,陷入平凡局部最优

论文通过一个教学实验验证了这一点:让一个小 Transformer 预测通过 4 个随机点的三次样条曲线。结果表明:

  • 采样率 25 → 预测准确
  • 采样率 400 → 预测偏差显著增大
  • 采样率 800 → 模型直接复制第一个动作,完全失效

而底层数据分布的复杂度并没有改变——问题完全出在 tokenization 上。

1.3 现实影响

OpenVLA 在低频数据集(BridgeV2, 5 Hz)上效果好,但在高频数据集(DROID, 15 Hz)上难以收敛。这直接限制了自回归 VLA 处理灵巧操作任务(如叠衣服、精细抓取)的能力。


二、预备知识

2.1 离散余弦变换(DCT)

DCT 是一种频域变换,将时域信号表示为不同频率余弦分量的加权和。与傅里叶变换不同,DCT 只使用实数运算。

对于一维信号 x[0],x[1],,x[N1],DCT 系数为:

Ck=n=0N1x[n]cos[πN(n+12)k],k=0,1,,N1

DCT 的核心性质——能量集中(energy compaction):对于实际中的平滑信号,大部分能量集中在低频系数上,高频系数接近零。这意味着可以通过丢弃高频分量实现高效压缩。JPEG 图像压缩正是基于这一原理。

2.2 字节对编码(BPE)

BPE 是自然语言处理中标准的 tokenization 方法。其核心思想是迭代合并训练语料中最频繁出现的 token 对,形成新的 token,从而实现无损压缩。

对于动作 tokenization,BPE 的作用是:

  • 将 DCT 量化后产生的大量零值系数"压缩"掉
  • 将频繁共现的系数组合合并为单一 token
  • 产生固定大小的词表,可直接集成到 VLM 的词表中

三、核心方法:FAST Tokenization

3.1 完整流水线

FAST 的 tokenization 流程包含 5 步(如 Figure 4 所示):

  1. 归一化:对每个动作维度,用训练集的第 1 和第 99 百分位将值映射到 [1,1]。使用百分位(而非极值)是为了对大规模数据集中偶发的异常动作鲁棒。

  2. DCT 变换:对每个动作维度独立做 DCT,将时域信号转换为频域系数矩阵 Cjii 为维度索引,j 为频率索引)。

  3. 量化:对 DCT 系数做缩放-取整操作 C¯ji=round(γCji),其中 γ 是缩放超参数(默认 γ=10)。量化后矩阵变得稀疏——大量高频系数变为零。

  4. 展平:将 |A|×H 的稀疏系数矩阵展平为一维整数序列。关键选择:列优先展平(先拼接所有维度的最低频系数),而非行优先。原因是在自回归预测中,先预测低频分量(决定整体形状)再预测高频分量(决定细节),有利于 rollout 稳定性。

  5. BPE 编码:用预训练的 BPE tokenizer 将整数序列无损压缩为最终 action token 序列。

3.2 算法伪代码

  1. 输入:action chunk a1:H,缩放系数 γ,BPE 字典 Φ
  2. 对每个维度 i,计算 DCT 系数:CjiDCT(a1:Hi)
  3. 量化:C¯jiround(γCji)
  4. 列优先展平:[Tk][C¯11,C¯12,,C¯21,,C¯Hn]
  5. BPE 压缩:[T¯1,,T¯k¯]BPE([T1,,Tk],Φ)
  6. 返回 action tokens

3.3 解码(逆过程)

所有操作均可逆:BPE 解码 → 逆展平 → 反量化(除以 γ)→ 逆 DCT。因此可以快速从预测的 token 序列恢复连续动作。

3.4 超参数

FAST 仅有两个超参数:

超参数默认值作用
缩放系数 γ10控制压缩率与重建精度的 trade-off:γ 越大保留越多细节但 token 越多
BPE 词表大小1024最终 action token 的词表大小

两者对性能不敏感,在所有单数据集实验中使用相同值。

3.5 为什么 FAST 有效?

从信息论角度:DCT 将高度冗余的时域信号变换为去相关的频域系数,每个 token 携带更高的边际信息量,从而让 next-token prediction 的学习信号更强。

从压缩角度:DCT + 量化 + BPE 的三级压缩实现了显著的 token 数量缩减:

数据集动作维度控制频率朴素 token 数FAST token 数压缩比
BridgeV275 Hz35201.75×
DROID715 Hz105293.6×
Table Bussing720 Hz140285.0×
T-Shirt Folding1450 Hz7005313.2×

有趣的发现:FAST 对每条机械臂始终产生约 30 个 token(双臂约 60 个),与控制频率基本无关。这说明 FAST 找到了接近底层动作信号内在复杂度的表示。

3.6 FAST+:通用动作 Tokenizer

FAST 的唯一需要训练的部分是 BPE 词表。虽然训练只需几分钟,但为每个新数据集重新训练仍增加使用摩擦。因此论文训练了 FAST+——一个通用的动作 tokenizer:

  • 训练数据:约 100 万条 1 秒 action chunk,覆盖单臂、双臂、移动操作等多种构型,关节空间 / 末端执行器空间 / 相机坐标系三种动作参数化,5-50 Hz 多种控制频率
  • 预处理:所有动作填充到 32 维以适配不同维度的动作空间
  • 使用方式:作为黑盒 tokenizer 直接用于任意机器人 action chunk,无需重新训练

四、实验结果

4.1 实验设置

VLA 骨架:主要使用 π₀(基于 PaliGemma-3B),部分实验使用 OpenVLA(基于 Prismatic 7B)。训练时将 action token 替换 VLM 词表中使用最少的 token。

评估任务(7 个,覆盖从仿真到真实、从简单到高度灵巧):

任务机器人控制频率难度
LIBERO(仿真)中等
Table BussingUR5 单臂20 Hz中高
T-Shirt Folding双臂 ARX50 Hz
Grocery BaggingUR5 单臂20 Hz
Toast out of Toaster双臂 Trossen50 Hz
Laundry Folding双臂 ARX50 Hz极高
DROID Zero-ShotFranka15 Hz泛化测试

对比方法

  • Naive(朴素分箱):RT-2 / OpenVLA 使用的逐维逐步 256-bin 离散化
  • FSQ:基于有限标量量化的学习型压缩方案(VQ-VAE 的简化版)
  • FAST:本文方法(per-dataset 训练)
  • FAST+:通用 tokenizer

4.2 Tokenizer 对比

在 Figure 6 的 4 个任务上比较不同 tokenization 方案的策略表现:

  • LIBERO(低频仿真):所有方法表现接近,朴素方案也能工作
  • DROID(15 Hz):FAST/FAST+ 显著优于朴素方案,FSQ 与 FAST 接近
  • Table Bussing(20 Hz):朴素方案几乎无法完成任务,FAST 表现优异
  • T-Shirt Folding(50 Hz):朴素方案完全失效(0% 成功率),FAST 成功率约 60%

核心结论:压缩型 tokenization(FAST、FSQ)在高频数据上显著优于朴素分箱,且 FAST 比 FSQ 更简单(无需训练神经网络)、在灵巧任务上表现更好。

4.3 DROID 零样本泛化

FAST 使得首次在 DROID 数据集上成功训练出强泛化策略成为可能。该策略可以在三所大学的完全未见环境中零样本执行桌面操作任务,无需微调,仅通过自然语言指令。这是 DROID 策略首次展示零样本部署结果——此前所有工作(包括原始 DROID 论文和 OpenVLA)都仅展示了 co-training 或 fine-tuning 结果。

4.4 通用 Tokenizer 表现

FAST+ 在 Figure 8 所示的 14 个未参与训练的异构数据集上测试压缩能力,涵盖:

  • 单臂 / 双臂 / 灵巧手 / 人形 / 移动 / 自动驾驶
  • 关节空间 / 末端执行器空间
  • 2-60 Hz 控制频率

FAST+ 在所有数据集上实现至少 2× 压缩,部分数据集高达 15×。在策略训练中,FAST+ 与 per-dataset FAST 的表现基本匹配。

4.5 消融实验

骨架无关性:在 OpenVLA 上用 FAST+ 替换朴素 tokenization,T-Shirt Folding 成功率从约 0% 提升至约 60%。FAST 可以即插即用地应用于任意预训练自回归 Transformer。

BPE 的重要性:去掉 BPE 后(仅用 DCT + 量化),策略表现下降但仍优于朴素方案。原因是:虽然 DCT 已经集中了信息量,但没有 BPE 会有大量重复的零 token 稀释学习信号并拖慢推理(需要自回归预测数百个 token)。

4.6 与扩散 π₀ 的对比

单任务训练

在 Figure 9 中比较 π₀-FAST(自回归)与 π₀(扩散/flow matching):

  • 小数据集(LIBERO、T-Shirt Folding,< 50h):两者表现相当
  • 大数据集(Table Bussing):π₀-FAST 收敛显著更快,用 3× 更少的训练步达到相同性能
  • DROID:π₀-FAST 更好地遵循语言指令,扩散 π₀ 经常忽略语言指令

通才策略训练(π₀-FAST)

在 π₀ 的完整跨构型数据混合(903M 步 + 开源数据)上训练 π₀-FAST:

任务π₀-FASTπ₀(扩散)
T-Shirt Folding~65%~60%
Table Bussing~80%~75%
Grocery Bagging~60%~55%
Toast out of Toaster~60%~60%
Laundry Folding~40%~40%
Average匹配匹配

关键发现:π₀-FAST 匹配 π₀ 扩散版的性能,但训练所需 GPU 小时减少 5×。Figure 1 的学习曲线清晰显示 π₀-FAST 在约 100k 步即达到 π₀ 在 600k+ 步才达到的性能。


五、局限性与未来方向

5.1 推理速度

π₀-FAST 的主要局限。扩散 π₀ 在 4090 上约 100 ms 生成一个 1 秒 action chunk(10 步扩散,使用 300M 参数的 action expert);而 π₀-FAST 需要约 750 ms(自回归解码 30-60 个 token,每步使用完整的 2B 参数 backbone)。虽然在静态操作任务上这个延迟可接受(1 秒 chunk 开环执行),但会限制高动态任务的应用。

LLM 社区已有大量推理加速技术(推测解码、量化、定制推理核等)可以直接迁移,但论文未做探索。

5.2 测试平台覆盖

论文在静态操作平台上验证了 FAST,FAST+ 离线实验展示了在移动机器人、灵巧手、人形机器人等平台的压缩能力,但实际策略性能测试有待开展。

5.3 VLA 架构选择

论文初步探索了自回归 vs 扩散两种 VLA 架构的 trade-off,但"最佳 VLA 架构"仍是开放问题,需要在训练速度、语言理解能力、动作表达力等维度做更深入的对比。


六、个人思考

6.1 与 π₀ 的互补关系

FAST 和 π₀ 来自同一团队,解决的是 VLA 设计空间中不同的问题。π₀ 通过 flow matching 绕过了 tokenization 问题,但引入了扩散/flow 的多步推理开销;FAST 则正面攻克 tokenization 瓶颈,让自回归 VLA 也能处理高频灵巧任务。两条路线各有优势:

  • 自回归 + FAST:语言跟随更强(DROID 实验证实)、与 VLM 预训练兼容更好、训练更快
  • Flow matching(π₀):推理更快(100 ms vs 750 ms)、可以用更小的 action expert

6.2 "好的 tokenization = 好的压缩"

FAST 的核心洞察非常简洁:将连续信号压缩后再 tokenize。这是第一性原理的推导——自回归模型需要高边际信息量的 token。任何足够有效的压缩方法都能改善 VLA 训练,DCT + BPE 只是一个简单高效的实例。

6.3 约 30 token 的不变性

FAST 对每条机械臂始终产生约 30 个 token,无论控制频率是 5 Hz 还是 50 Hz。这暗示 1 秒的机器人操作序列有大约恒定的内在信息量(约 30 token × 10 bit/token ≈ 300 bit),与采样频率无关。这是一个有趣的实验观察,可能对动作表示的信息论分析有启示。

6.4 对 VLA 高效推理研究的影响

FAST 产生的 token 数量显著少于朴素方案(28 vs 140 for 20 Hz),这直接缓解了自回归 VLA 的推理瓶颈。结合 PD-VLA 的 Jacobi 并行解码或 HeiSD 的推测解码,FAST 的短序列将进一步放大这些加速方法的效果。


参考

  • π₀ [Black et al., 2024]:FAST 的主要实验载体,flow matching VLA 基础模型
  • OpenVLA [Kim et al., 2024]:使用朴素分箱 tokenization 的自回归 VLA,FAST 的主要对比基线
  • DROID [Khazatsky et al., 2024]:大规模"in-the-wild"操作数据集,FAST 首次使其可用于训练强泛化策略
  • BPE [Gage, 1994]:FAST 使用的无损压缩方法,最初用于文本 tokenization
  • DCT [Ahmed et al., 1974]:FAST 使用的频域变换,也是 JPEG 压缩的基础