论文学习笔记:FAST - 高效的视觉-语言-动作模型动作分词技术

论文学习笔记:FAST - 高效的视觉-语言-动作模型动作分词技术

论文标题: FAST: Efficient Action Tokenization for Vision-Language-Action Models
作者机构: Physical Intelligence, UC Berkeley, Stanford (核心作者: Karl Pertsch, Kyle Stachowicz)
发布时间: 2025年1月 (arXiv:2501.09747v1)
项目主页: https://pi.website/research/fast


1. 核心思想与背景 (Introduction)

主要问题

当前的视觉-语言-动作(VLA)模型(如OpenVLA, RT-2)通常采用自回归Transformer架构。然而,在处理连续动作信号时,现有的"分词化"(Tokenization)策略存在严重缺陷:

  • Naive Tokenization(朴素分词): 简单地将每个动作维度在每个时间步独立离散化(例如分为256个bin)。
  • 高频控制的挑战: 这种方法在低频控制(如5Hz)下有效,但在高频(如50Hz)或灵巧操作任务中失效。因为高频采样导致相邻时间步的动作高度相关(冗余),使得"下一个token预测"任务的边际信息量趋近于零,模型难以收敛,往往陷入仅复制上一步动作的局部最优解。

解决方案:FAST

论文提出了 Frequency-space Action Sequence Tokenization (FAST)

  • 核心:将动作序列视为一种需要压缩的时间序列信号(类似图像或音频)。
  • 方法:利用 离散余弦变换 (DCT) 将动作转换到频域,再结合 字节对编码 (BPE) 进行压缩。
  • 效果:能够高效训练高频、高灵巧度的VLA策略,且训练速度比扩散模型(Diffusion VLA)快5倍。

2. 技术细节:FAST 分词管线 (Methodology)

FAST 的处理流程设计为对"动作块"(Action Chunk,例如1秒的动作序列)进行操作。

Step 1: 归一化 (Normalization)

  • 使用分位数(Quantiles)归一化,将动作值映射到 [ − 1 , 1 ] [-1, 1] [−1,1] 区间。
  • 细节: 使用第1和第99分位数来确定范围,以增强对不同机器人数据集中离群值的鲁棒性。

Step 2: 频域变换 (DCT Transform)

  • 对每个动作维度的时序信号分别应用 离散余弦变换 (DCT)
  • 原因: 动作通常是平滑的,低频分量包含主要形状信息,高频分量包含突变。DCT能将大部分信息集中在少数系数上(能量压缩)。它是解析解,无需训练,速度极快。

Step 3: 量化与修剪 (Quantization)

  • 操作: 对DCT系数乘以一个缩放因子 γ \gamma γ(超参数,文中取10),然后四舍五入取整。
  • 结果: 产生一个稀疏的整数矩阵,许多不重要的高频系数变为0。

Step 4: 展平 (Flattening) - 关键细节

  • 将稀疏矩阵展平为一维整数序列。
  • 顺序至关重要: 采用 Column-first(列优先/低频优先)策略。即先排列所有维度的最低频系数,再排列次低频系数,以此类推。
  • 原理: 在自回归预测中,先预测决定整体动作轨迹形状的低频分量,能生成更稳定的轨迹。

Step 5: BPE 压缩 (Byte Pair Encoding)

  • 使用 BPE 算法训练一个词表(文中词表大小为1024),将频繁出现的整数子序列合并为单个Token。
  • 作用:
    1. 极大地压缩了序列长度(特别是去除了大量的0值冗余)。
    2. 将动作表示为固定词表内的Token,可以直接嵌入到VLM的词表中进行端到端训练。

3. 通用动作分词器:FAST+

作者基于 FAST 方法训练了一个通用的分词器 FAST+

  • 数据规模: 使用了约100万个1秒长的动作块。
  • 数据多样性: 涵盖单臂、双臂、移动底盘、灵巧手、人形机器人等多种形态,以及不同的控制频率。
  • 结论: FAST+ 作为一个"黑盒"分词器,在未见过的机器人数据集上表现与专门为该数据集训练的Tokenizer几乎一样好。这消除了为新数据集重新训练Tokenizer的摩擦成本。

4. 实验结果与结论 (Experiments & Findings)

作者在 π 0 \pi_0 π0 (PaliGemma-3B) 和 OpenVLA 架构上验证了 FAST。

A. 性能对比

  • vs. Naive Binning: 在高频任务(如50Hz的T-shirt折叠,20Hz的餐桌清理)中,Naive方法完全失败(成功率接近0),而 FAST 表现优异。
  • vs. FSQ (Vector Quantization): FAST 在灵巧操作任务上优于基于学习的矢量量化方法(FSQ),且更易于调参。
  • vs. Diffusion VLA ( π 0 \pi_0 π0-flow):
    • 性能: FAST 自回归模型在所有任务上匹配了最先进的扩散 VLA ( π 0 \pi_0 π0) 的性能。
    • 训练效率: FAST 模型的收敛速度极快,达到相同性能所需的计算量(GPU小时数)比扩散模型 少5倍

B. 泛化能力

  • Zero-shot DROID: 训练出的策略是第一个能在 零样本 (Zero-shot) 条件下,仅通过自然语言提示,就在未见过的环境(新背景、新物体、新视角)中完成 DROID 数据集任务的模型。
  • 通用性: FAST+ 在不同机器人形态(如人形机器人、四足机器人)上均实现了高压缩率。

C. 推理速度 (局限性)

  • 虽然训练快5倍,但 推理速度慢于扩散模型
  • 数据: π 0 \pi_0 π0 Diffusion 生成1秒动作需 ~100ms; π 0 \pi_0 π0 FAST 需 ~750ms。
  • 原因: 自回归模型需要串行解码数十个Token(30-60步),而扩散模型仅需少量去噪步数(10步),且自回归每一步都运行庞大的LLM主干。

5. 核心结论与启示

  1. 分词策略决定上限: 对于高频机器人控制,简单的离散化是瓶颈。利用信号处理(DCT)去除时序冗余是让自回归模型学会高难度动作的关键。
  2. 压缩即智能: 更好的动作压缩带来了更高效的学习信号。FAST 通过 DCT+BPE 将长序列动作压缩为少量高信息密度的 Token。
  3. 自回归不死: 尽管扩散策略(Diffusion Policy)近期流行,但配合高效分词的自回归 VLA 在性能上完全不输,且训练效率更高。
  4. 通用性可行: 动作数据的频域特征在不同机器人之间具有共性,使得构建通用的机器人动作分词器(FAST+)成为可能。

代码调用示例

论文提供了 HuggingFace 风格的易用接口:

python 复制代码
from transformers import AutoProcessor
tokenizer = AutoProcessor.from_pretrained("physical-intelligence/fast", trust_remote_code=True)
tokens = tokenizer(action_chunk) # 一键分词
相关推荐
Gain_chance2 小时前
22-学习笔记尚硅谷数仓搭建-日志表建表语句解析、数据装载及脚本装载数据
数据仓库·笔记·学习
傻小胖2 小时前
8.BTC-挖矿-北大肖臻老师客堂笔记
笔记
历程里程碑2 小时前
Linux 6 权限管理全解析
linux·运维·服务器·c语言·数据结构·笔记·算法
知识分享小能手2 小时前
Oracle 19c入门学习教程,从入门到精通,Oracle数据库控制 —— 事务与并发控制详解(14)
数据库·学习·oracle
其美杰布-富贵-李2 小时前
Spring Event 学习笔记
笔记·学习·spring·事件消息
承渊政道3 小时前
C++学习之旅【C++Stack和Queue类介绍—入门指南与核心概念解析】
c语言·数据结构·c++·学习·visual studio
嗯? 嗯。3 小时前
S32K144开发笔记-S32k系列芯片基础知识
笔记·s32k
Gain_chance3 小时前
18-学习笔记尚硅谷数仓搭建-数据仓库运行环境搭建(hive的安装及配置)
数据仓库·hive·笔记·学习
Tina Tang3 小时前
【Hello Agent】第一章 初识智能体笔记
笔记