OpenVLA
Kim 2024 · 论文
一句话总结 — OpenVLA 是一个 70 亿参数的开源视觉-语言-动作模型,基于 Open X-Embodiment 中 97 万条真实机器人演示数据训练,在性能上匹配甚至超越规模更大的闭源 VLA,同时能够在消费级 GPU 上高效微调。
问题
在互联网规模的视觉语言数据以及多样化机器人演示数据上进行预训练的大型策略模型,为教机器人新技能提供了一种新方式:微调一个通用的视觉-语言-动作(VLA)模型,而不是为每个新行为从零开始训练。但这一方向的推广受阻于两个方面——现有的 VLA(RT-2 及其同类)大多是闭源的,对架构、训练流程和数据配比的可见性有限;此前的工作也没有探索如何在商用硬件上高效微调 VLA 以适配新任务,而这正是实际应用的关键一步。OpenVLA 旨在消除这两个障碍。
方法与架构
- 骨干网络:Prismatic-7B VLM——(1)一个约 6 亿参数的双视觉编码器,其中每个图像 patch 同时经过预训练的 SigLIP(语义、文本对齐)和 DINOv2(低层空间信息)编码,两者的特征向量按通道拼接;(2)一个 2 层 MLP 投影器,映射到 LLM 的嵌入空间;(3)一个 Llama 2 7B 语言骨干网络。Prismatic 本身在 LLaVA-1.5 数据混合集(约 100 万样本)上进行了调优。
- 动作即词元:一个 维连续动作的每个维度被分别离散化为 256 个区间之一,得到 个整数 ;区间宽度在训练动作的第 1 和第 99 百分位之间均匀划分(而不是 RT-2 的最小-最大值边界,这样离群值就不会破坏离散粒度)。由于 Llama 的分词器只保留了 100 个特殊词元,256 个最少使用的词元被覆写为动作词元。训练时仅在动作词元上最小化标准的下一词元交叉熵。
- 训练数据:从 Open X-Embodiment(70 多个数据集,200 多万条原始轨迹)中筛选出 97 万条轨迹,过滤为带至少一个第三人称相机的单臂末端执行器控制操作任务,并使用 Octo 的数据配比启发式方法重新加权(DROID 曾以 10% 的权重试用,但由于动作词元准确率持续偏低,在最后三分之一的训练阶段被弃用)。
- 经验性得出的设计决策:微调视觉编码器对 VLA 性能至关重要(与 VLM 的常规做法相反);224×224 像素的输入在计算量减少 3 倍的情况下能匹配 384×384 的效果;VLA 训练需要很多个 epoch——最终的训练运行了 27 个 epoch,直到动作词元准确率超过 95%;固定学习率为 2e-5。
- 基础设施:在 64 块 A100 上训练 14 天(21,500 A100 小时,batch 2048);推理在 bfloat16 下需要 15GB 显存,在 RTX 4090 上以约 6 Hz 运行;一个远程推理服务器将动作流式传输给机器人。
- 高效适配:LoRA 在所有线性层上学习低秩更新(秩 即足够),量化 int4 部署可将显存减半——这两项都作为一等贡献进行了专门研究。
实验结果
- 开箱即用的通用控制:在 WidowX(BridgeData V2,每种方法 170 次试验)和 Google 机器人(每种方法 60 次试验)上跨 29 个任务测试,OpenVLA 以 7 倍更少的参数量,绝对成功率超过闭源的 55B RT-2-X 16.5%,在 BridgeData V2 除语义泛化外的所有类别上均超过它(RT-2-X 联合微调了网络数据;OpenVLA 没有)。RT-1-X 和 Octo 落后甚多。
- 在新机器人上微调(Franka-Tabletop 5 Hz 和 Franka-DROID 15 Hz,每任务 10-150 条演示):微调后的 OpenVLA 取得最高的综合性能,且是唯一一个在每个测试任务上成功率均超过 50% 的方法;平均比从零训练的 Diffusion Policy 高 20.4%,后者只在狭窄的单一指令灵巧任务上保有优势。
- 参数高效微调:LoRA r=32 达到 68.2 ± 7.5%,接近全量微调的 69.7 ± 7.2%,但只训练了 1.4% 的参数(97.6M 对 7,188M)——在单块 A100 上耗时 10-15 小时,计算量减少 8 倍。
- 量化推理:int4 得分 71.9 ± 4.7%,接近 bfloat16 的 71.3 ± 4.8%,显存为 7.0GB 对 16.8GB;int8 降至 58.1%,因为其 1.2 Hz 的推理速度破坏了 5 Hz 控制器的动态特性。
- 所有模型权重、微调笔记本以及 PyTorch 训练代码库(FSDP、FlashAttention、HuggingFace 集成)均已发布。
对SLAM的意义
OpenVLA 是参照级的开源 VLA,也是后续大量机器人学习工作的基础模型,证明了一个 7B 的开源模型可以超越规模远大得多的闭源系统。对 SLAM 社区而言,它的意义体现在两方面:它验证了 SigLIP/DINOv2 风格的基础模型特征可作为机器人感知骨干网络,并且它定义了新兴自主性技术栈中动作侧的角色——SLAM 提供定位和度量地图,而 VLA 则把感知和语言闭环到物理动作。