专栏名称: 自动驾驶之心
自动驾驶开发者社区,关注计算机视觉、多维感知融合、部署落地、定位规控、领域方案等,坚持为领域输出最前沿的技术方向!
目录
相关文章推荐
开发者全社区  ·  H家最新进展 ·  昨天  
开发者全社区  ·  55 ... ·  昨天  
潇湘晨报  ·  海尔开启强制双休 ·  2 天前  
湖南日报  ·  太突然!双双宣告停产 ·  3 天前  
51好读  ›  专栏  ›  自动驾驶之心

OpenVLA-OFT:破解VLA泛化微调技术难题!

自动驾驶之心  · 公众号  ·  · 2025-03-09 00:00

正文

点击下方 卡片 ,关注“ 具身智能 之心 ”公众号


>> 点击进入→ 具身智能之心 技术交流群

更多干货,欢迎加入国内首个具身智能全栈学习社区 具身智能之心知识星球 (戳我) 这里包含所有你想要的。

使用视觉 - 语言 - 动作模型(VLAs)的朋友们可能发现,在实际应用中,当面对自己的新机器人或新任务时,别人的VLA就失灵了,结果一塌糊涂。

实际上,不同机器人在硬件配置(如传感器类型、关节数量和运动范围等)、控制频率等方面存在差异。以在模拟环境训练的 VLA 模型为例,若应用到真实的双手机器人上,由于真实环境中机器人的动作空间、感知输入更为复杂,模型的表现会大打折扣,所以需要微调来适应新的机器人设置。同时,新任务可能涉及不同的语义理解和动作规划,比如从简单的物体抓取任务转换到复杂的组装任务, 模型也需要重新调整才能准确执行

当面对新机器人或新任务时,微调是让模型适配并良好运行的关键,但目前却没有明确有效的微调方法。 首先,现有微调方法速度较慢。 Kim 等人提出通过 LoRA 进行参数高效微调,然而其自回归动作生成速度较慢,仅为 3 - 5Hz,这对于需要高频控制(25 - 50+Hz)的任务,如双手机器人快速操作物体的任务来说,远远无法满足实时性要求。在实际操作中,机器人需要快速响应指令做出动作,迟缓的动作生成速度会导致任务执行效率低下甚至失败。

其次,在双手机器人操作任务中执行不可靠。 在双手机器人操作任务中,例如在 ALOHA 机器人进行的折叠衣物任务,使用 LoRA 或全量微调的自回归 VLAs 表现不佳。因为双手操作任务需要机器人双臂协同配合,对动作的精准度和协调性要求高,现有微调方法难以让模型有效学习和执行这类复杂任务,可能出现动作不协调、无法完成任务目标的情况。

针对这些问题,文章提出 OpenVLA - OFT 模型,通过以下方式解决速度慢、双手操作任务执行不可靠等局限:

  • 改进动作生成策略: 采用并行解码替代自回归生成,并结合动作分块。并行解码使模型能在单次前向传递中生成所有动作,减少推理时间,且可自然扩展到动作分块,提高动作生成吞吐量,解决了推理速度慢不适合高频控制的问题,同时提升了下游任务成功率。

  • 优化动作表示: 使用连续动作表示代替离散动作表示。连续动作表示可让模型直接建模动作分布,避免离散化造成的细节损失,从而提高模型性能,在任务执行中表现更精确。

  • 调整学习目标: 采用 L1 回归作为学习目标。实验表明,L1 回归与基于扩散的微调性能相当,但训练收敛更快、推理速度更快,在保证任务性能的同时提高了效率。

  • 增强语言基础: 在 ALOHA 机器人实验中,为 OpenVLA - OFT 引入 FiLM(Feature-wise Linear Modulation)。FiLM 将语言嵌入融入视觉表示,使模型更关注语言输入,解决了模型在处理多视角视觉输入时难以遵循语言指令的问题,提升了语言跟随能力。

模型框架

文章基于OpenVLA提出OpenVLA-OFT模型框架,通过一系列改进提升性能,主要包含以下关键部分:

输入处理模块 :OpenVLA-OFT可处理多摄像头图像,如第三人称视角和手腕摄像头图像,通过共享的SigLIP-DINOv2骨干网络提取256维patch嵌入,再经3层MLP投影到语言嵌入空间。同时,14维机器人本体感受状态(如关节角度)经2层MLP投影到语言嵌入空间,所有输入嵌入按序列维度拼接,为后续动作生成提供丰富信息。

解码与动作生成模块

并行解码 :摒弃OpenVLA原有的自回归解码,采用并行解码。模型接收空动作嵌入作为输入,将因果注意力掩码替换为双向注意力掩码,使解码器能在单次前向传递中预测所有动作,大幅提升推理效率。结合动作分块技术,通过在解码器输入中插入额外空动作嵌入,可一次预测多个未来时间步的动作,如设置分块大小为K时,模型一次前向传递能预测KD个动作。

动作表示 :原OpenVLA使用离散动作表示,而OpenVLA-OFT采用连续动作表示。通过4层ReLU激活的MLP动作头,将Llama-2解码器的最终隐藏状态直接映射为连续动作,避免离散化带来的信息损失,提高动作预测精度。

学习目标模块 :采用L1回归作为学习目标,训练模型最小化预测动作与真实动作之间的平均L1差异。相比基于扩散的方法,L1回归训练收敛更快,推理速度更快,且能使高容量的OpenVLA模型有效学习多任务动作分布。

语言增强模块(FiLM) :在ALOHA机器人实验中,为解决模型在多视角视觉输入下语言跟随困难的问题,OpenVLA-OFT+引入FiLM。计算任务描述的语言嵌入平均值,投影得到缩放向量γ和偏移向量β ,对视觉特征进行仿射变换,公式为

在每个视觉Transformer块的自注意力层之后、前馈层之前应用FiLM,且为每个块设置单独的投影仪,使模型更好地关注语言输入,增强语言基础。

实验结果

通过控制变量实验,评估论文提出的VLA适应设计决策的效果,回答三个关键问题:各设计决策如何影响微调策略在下游任务的成功率;如何影响模型推理效率(动作生成吞吐量和延迟);如何影响模型输入输出规范的灵活性。

选用LIBERO模拟基准进行评估,实验以原始微调的OpenVLA模型为主要基线,同时纳入其他先进模仿学习方法的结果作更广泛对比。实验中,通过LoRA对OpenVLA进行微调,根据方法不同设置不同训练步数,使用特定批次大小在多个GPU上训练,并在训练过程中定期测试检查点,报告最佳性能。

LIBERO任务性能比较 :为评估不同VLA微调设计决策对任务成功率的影响,实验结合并行解码(PD)和动作分块(AC)技术,对比使用离散动作、基于L1回归的连续动作和基于扩散的连续动作的OpenVLA策略变体。结果表明,并行解码和动作分块不仅提高了吞吐量,还显著提升了性能,使平均成功率比自回归OpenVLA策略提高了14%。连续动作变体比离散动作变体成功率进一步提高5%,且L1回归和扩散变体性能相当,说明OpenVLA模型即使使用简单的L1回归也能有效建模多任务动作分布。

LIBERO推理效率比较 :评估并行解码、动作分块和连续动作表示对模型推理速度的影响,通过在NVIDIA A100 GPU上查询每个模型变体100次,测量平均延迟(生成一个机器人动作或动作块所需时间)和吞吐量(每秒生成的总动作数)。结果显示,并行解码减少了延迟并将吞吐量提高4倍;添加动作分块虽使延迟增加17%,但与并行解码结合后,吞吐量大幅提升,相比基线OpenVLA实现26倍加速;基于L1回归的连续动作变体在效率上与其他变体差异可忽略不计,而基于扩散的变体虽延迟较高,但通过并行解码和分块仍实现了比基线OpenVLA高2倍的吞吐量。

模型输入输出灵活性 :并行解码使OpenVLA能以最小的延迟增加生成动作块,增强了模型输出的灵活性,且为处理更多输入创造了空间。实验通过微调OpenVLA,添加机器人本体感受状态和手腕摄像头图像等输入,结果表明,尽管输入序列长度大幅增加,微调后的OpenVLA策略仍保持高吞吐量(71.4 Hz)和低延迟(0.112 sec)(表2),且在LIBERO基准上的平均成功率进一步提高(表1),超过了其他优秀的微调模型,证明了该设计决策的有效性。

优化微调方案

基于上述实验在任务性能、推理效率和模型输入输出灵活性方面的改进,文章提出了VLA适应的优化微调(OFT)方案,该方案结合了并行解码与动作分块、连续动作表示、L1回归目标这三个关键组件,这些设计选择共同作用,可产生能在高频下部署的强大策略,同时保持算法的简单性。使用该方案从OpenVLA基础模型微调得到的策略被称为OpenVLA-OFT。

额外实验 :考虑到替代微调公式以及额外的模型输入输出可能导致基础VLA预训练和微调之间的分布转移,文章进行了消融实验,去掉OpenVLA预训练阶段,直接用OFT方案微调基础预训练VLM。结果表明,去掉预训练表示后,在LIBERO评估套件中的平均成功率下降了5.2%,证实了OpenVLA预训练表示对下游策略学习仍有益处。

将OpenVLA模型应用于真实世界ALOHA机器人 ,验证OpenVLA - OFT在模拟环境中表现出的有效性,是否也能在与预训练时差异较大的真实世界机器人平台上成功部署,以此证明其广泛适用性。

实验设置

ALOHA平台介绍 :ALOHA平台包含两个ViperX 300 S机械臂、三个摄像头视角(一个俯视、两个手腕佩戴)以及机器人状态输入(14维关节角度),运行频率为25Hz,动作代表目标绝对关节角度。该平台与OpenVLA预训练时的单臂机器人数据、单摄像头视角、无机器人状态输入、低频控制(3 - 10Hz)和相对末端执行器位姿动作等条件差异显著。

任务设计 :设计了四个具有代表性的任务,分别为 “fold shorts”(折叠短裤)、“fold shirt”(折叠衬衫)、“scoop X into bowl”(将X舀入碗中)和 “put X into pot”(将X放入锅中)。

模型微调 :使用增强版的OFT +(包含特征线性调制FiLM以增强语言基础)对OpenVLA在每个任务上独立进行50 - 150K梯度步的微调,动作块大小设为K = 25 ,推理时执行完整动作块后再请求模型生成下一块动作。

对比方法 :将OpenVLA - OFT +与近期的VLAs(RDT - 1B和pi0 )进行对比。同时,还评估了两个流行的模仿学习基线方法ACT和Diffusion Policy。

实验结果

任务性能 :非VLA基线方法中,ACT能完成基本任务,但动作不够精确,整体性能最低;Diffusion Policy在部分任务表现较强,但在 “put X into pot” 任务上表现不佳,显示出与基于VLA的方法相比可扩展性有限。在微调的VLAs中,RDT - 1B语言跟随能力较好,但处理闭环反馈存在局限;(pi_{0})执行更稳健,动作更平滑,对反馈反应更好;OpenVLA - OFT +在任务执行和语言跟随方面均取得最高性能,即便其基础OpenVLA模型仅在单臂数据上预训练,这表明微调技术对下游性能的影响比预训练数据覆盖范围更关键。

FiLM的重要性 :通过消融实验评估FiLM在OpenVLA - OFT +中的重要性,去掉FiLM后,模型在需要良好语言基础的任务上,语言跟随能力下降到随机选择指令的水平,证明FiLM对防止模型过度拟合虚假视觉特征、确保关注语言输入至关重要。

推理效率 :OpenVLA - OFT +的吞吐量为77.9Hz,虽然由于需要处理更多输入图像,其延迟比之前LIBERO实验中的策略更高,但相比原始OpenVLA已有显著提升。其他方法因架构较小,吞吐量高于OpenVLA - OFT +,如ACT结合L1回归和紧凑架构实现了最高速度,(pi_{0})凭借优化的JAX实现也在速度上表现出色,但OpenVLA - OFT +的吞吐量仍接近RDT - 1B,且生成动作只需单次前向传递,无需多次去噪步骤。

总结与展望

文章先介绍了视觉 - 语言 - 动作模型(VLAs)在新机器人设置和任务中微调的研究背景,阐述以 OpenVLA 为基础模型进行研究的方法,包括改进动作生成策略、优化动作表示、调整学习目标和增强语言基础等。通过 LIBERO 模拟实验和 ALOHA 机器人真实实验,结果表明改进后的 OpenVLA - OFT 模型在任务成功率、推理效率和输入输出灵活性等方面有显著提升。同时文章也指出自己的局限性,比如处理多模态演示、预训练与微调关系以及语言基础不一致等方面存在的问题,为后续研究指明方向。

参考文献







请到「今天看啥」查看全文