首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

RoboVLM——通用机器人策略的VLA设计哲学:如何选择骨干网络、如何构建VLA架构、何时添加跨本体数据

  • 25-02-15 07:20
  • 2511
  • 10953
blog.csdn.net

前言

本博客内解读不少VLA模型了,包括π0等,且如此文的开头所说

前两天又重点看了下openvla,和cogact,发现

  • 目前cogACT把openvla的动作预测换成了dit,在模型架构层面上,逼近了π0
  • ​那为了进一步逼近,感觉可能会有人把cogACT中的VLM模块(dinov2+sigclip+llama2)换成paligemma

总之,各种vlm + 各种动作预测头/方法,会出来很多vla

当然,各种VLA我在此文《24年具身智能模型汇总:从训练数据、动作预测、训练方法到Robotics VLM、VLA》已经详细介绍过

而适用于通用机器人策略的VLA也不是随意设计的,背后都有一整套的设计哲学、逻辑、方法论,本文便基于RoboVLMs探讨这背后的设计哲学

  1. 其对应的论文为《Towards Generalist Robot Policies: What Matters inBuilding Vision-Language-Action Models》
  2. 对应的作者为
    Xinghang Li1,2∗, Peiyan Li2,3∗, Minghuan Liu2,4∗, Dong Wang1,2∗, Jirong Liu2,4∗,Bingyi Kang2, Xiao Ma2, Tao Kong2, Hanbo Zhang5, Huaping Liu1
    他们各自来自
    1Tsinghua University, 2ByteDance Research, 3CASIA MAIS-NLPR,4Shanghai Jiao Tong University, 5National University of Singapore

尽管有的设计哲学——动作空间是连续的还是离散的,在之前诸多模型的效果PK上,我们早已看出来,但为系统起见,还是也放在本文的介绍中

第一部分 RoboVLMs

1.1 引言与相关工作

1.1.1 VLM骨干和结构的研究

在构建通用机器人策略的其中一种途径是基于VLM微调并进行一定的架构调整来学习机器人基础模型,从而最终成为VLA

而这个途径之所以广受欢迎,在于VLMs在通过对网络规模数据的广泛训练中展示了学习多模态数据(如文本、图像/视频)的通用且鲁棒的表示的强大能力。这种能力可以激发机器人基础模型的适应,以弥合高度多样化的开放世界场景和有限的机器人数据之间的差距

然而,大规模视觉-语言预训练在多大程度上促进通用机器人策略仍然是一个未解决的问题。此外,伴随着不同类型的LLM骨干、训练数据、模型规模、架构和训练方案,迅速涌现出大量多样化的不同VLMs

故,哪种VLM骨干更适合机器人操作也是成功开发VLAs的一个关键问题

除了不同骨架的多样性之外,对于通用机器人策略,包括VLA,其结构更加复杂且形式多样

基于现有的最流行的工作[4-π0,7-Rt-2,20-Vima,22-Openvla,24-Vision-language foundation models as effective robot imitators,34-R3m,35-Open x-embodiment,39-Octo,47-Unleashing large-scale video generative pre-training for visual robot manipulation,55-3d-vla]——这其中大部分的工作,都可以在此文 《24年具身智能模型汇总:从训练数据、动作预测、训练方法到Robotics VLM、VLA》里看到对应的介绍链接

作者提出了一种分类方法,基于

  1. 历史和动作信息如何在VLA中被整合
  2. 动作空间是连续的还是离散的

如下图图2所示,考虑了4种结构形式「根据两个主要层次对VLA结构进行分类:1)动作空间(纵轴);2)是否整合了历史信息(横轴)——比如左边是one-step 右边是historical。此外,对于涉及历史的VLAs,根据历史信息的组织模式将涉及历史的VLAs分为策略头和交错形式。请注意,这种分类不仅考虑了从预训练的VLMs中派生的模型,还包括那些虽然没有在VLMs上预训练(因此不被称为VLAs),但可以为将VLMs转变为VLAs提供见解的策略架构」

对于历史信息建模,识别出两种形式:

  1. 一步建模one-step modeling——见上图左侧●,仅利用当前状态或观察来产生动作;
  2. 历史建模history modeling,处理历史状态或观察的滑动窗口

关于历史信息的聚合,将其分为两种方法:

  1. 交错建模interleaved modeling▲——见上图右上角、右下角,将历史观察和动作序列以交错格式整合
  2. 策略头policy head ▀——见上图中间偏右上,分别处理每个历史步骤,并在一个独立的策略头中融合信息以进行动作预测

不同的结构以不同的方式利用预训练的VLMs。因此,当面临不同类型的环境和任务时,它们在鲁棒性、泛化能力和数据效率方面可能具有不同的特征

1.1.2 数据的质量、多样性、跨本体数据、训练方法的研究

除了VLA本身,用于开发VLA的训练数据的质量和多样性同样重要。随着著名VLA的近期进展[4-π0,7-Rt-2,22-Openvla,35-Open x-embodiment,39-Octo],来自不同来源的大规模数据对于在对抗分布外任务和环境的鲁棒性和泛化方面进一步提高性能非常重要

然而,它们在详细的训练方法上存在很大差异:一些利用额外的数据进一步预训练VLMs,使表示更接近机器人操作任务[4-π0],而另一些则与领域内任务共同训练VLA[7-Rt-2,22-Openvla,35-Open x-embodiment,39-Octo]

此外,通过充分预训练在多样化操作技能上,期望机器人策略能以最少的示范学习新技能[13]。因此,在开发高效VLA的情况下,何时利用大规模跨化身数据成为一个有趣的问题

为了彻底研究上述问题并找到VLA的最有效解决方案,作者的研究选择了4种VLA结构、8种不同骨架和3种不同的训练数据方案来训练VLA模型

1.1.3 RoboVLMs:使任何VLM能轻松集成到VLA中

在作者的实验中,他们提出了一个新的框架,RoboVLMs,将VLM转移到VLA,并提供了一个统一、灵活、易于使用的开源框架,使任何VLM能轻松集成到VLA中,几乎不需要额外努力,允许机器人从业者研究、比较和部署未来的VLA

此外,他们还在一个自收集的真实世界机器人操作数据集上训练和评估了建成的VLA,该数据集由100个操作任务和总共74K条轨迹组成

  1. 具体来说,他们最初选择了三个常用的VLMs——LLaVA、Flamingo和KosMos 作为骨架,将它们与四种VLA结构结合起来,检查动作空间、观察视野和历史聚合方法的效果

    对于应该如何制定VLA?
    通过广泛的研究和实验,连续动作始终优于自回归离散动作,同时结合历史背景对于提高性能和解决部分可观测性至关重要

    发现连续动作空间的策略头建模表现最佳后,又比较了8种不同的VLMs作为骨架与策略头形式,以回答哪个骨架更适合

    对于哪种VLM骨干更适合用于VLA?
    作者对8种不同的VLM骨干进行的广泛研究显示,两种杰出的VLM骨干,即KosMos [36]和Paligemma [3],显著优于其他骨干。这些结果强调,全面的视觉-语言预训练对于实现卓越的VLA性能至关重要
  2. 同时,比较了不同VLA结构的泛化和数据效率
    对于模型架构,直接与策略头集成的视觉-语言模型(VLM)表现优于其他形式,因为一致使用,即视觉-语言token应以其原始预训练格式进行处理,并添加策略头以整合过去的视觉和本体感知观察以进行有效决策

    对于数据效率
    更大的VLM进一步提高效率,需更少的数据即可实现更高的性能
  3. 对于何时利用跨化身数据的问题
    虽然普遍认为使用跨体数据进行预训练或后训练能提高性能,但这一观点尚未得到严格验证。他们的研究结果表明,使用跨体数据进行预训练并不总能显著改善最终性能。然而,在目标数据集上对跨体预训练模型进行后训练可以显著提高性能

    故作者比较了
    \rightarrow  预训练(使用Open X-Embodiment训练的VLA)
    \rightarrow  微调(使用目标数据集训练的VLA)
    \rightarrow  后训练(使用Open X-Embodiment预训练并进一步用目标数据集微调的VLA)——相当于预训练 + 微调
  4. 最后,为了确认具有最佳配置的VLA在真实世界中的适用性,作者在真实世界机器人操作场景中训练和评估了它们,展示了在
    1)未见的干扰物
    2)未见的背景
    3)未见的目标对象
    4)新技能描述方面的泛化能力

此外,利用相同机器人或任务的操作数据可以明显提升性能

例如,模块化方法利用预训练的视觉和语言模块来编码多模态输入的潜在表示 [6- Rt-1,31-What matters in language conditioned robotic imitation learning over unstructured data],而替代方法则依赖于使用多样化的机器人数据集进行直接训练 [39-Octo]。即使在VLA研究中,对于架构或训练方案也没有共识 [7-Rt-2, 8-Gr-2, 22-Openvla, 24-Vision-language foundation models as effective robot imitators]

1.2 主要结果及发现

利用RoboVLMs这个框架,作者进行了广泛的实验以解决几个关键问题

  1. 为什么更喜欢 VLA?
  2. 应该如何制定 VLA?
  3. 哪种 VLM 主干更适合 VLA?
  4. 应该何时利用跨实体数据集?

如下表 I 所示

作者进一步将 4 个基本问题分为 6 个研究问题,并实施 VLA 的连续实验以回答每个研究问题。使用适当的主干和结构构建的 VLA 模型可以大幅超越最新的通用机器人策略

为了全面评估 VLA 的性能,在这项工作中,作者对所有模型进行了基准测试,具体而言,如下图图 3 所示

选择了两个知名且广泛使用的模拟基准(CALVIN[32] 和 SimplerEnv[40])以及一个现实世界的机器人操作实验来评估 VLA 模型

  • CALVIN[32] 是一个用于多任务桌面操作的模拟基准,数据集根据不同的场景设置分为 A、B、C和 D 四个部分,并提供 34 个基本任务,总共包含 24K 人工远程操作演示,并附有语言指令注释
    评估指标包括完成1 ∼5 个连续任务的成功率,以及成功执行的任务平均数量(简称为Avg. Len.)
  • 真实机器人基准测试[8]包括超过70K的远程操作人类轨迹,用于微调机器人策略,涵盖105个操作任务
    为了评估模型在该基准测试上的性能,采用[23- Gr-mg: Leveraging partially annotated data via multi-modal goal conditioned policy]中概述的方法,在一个简单设置和四个具有挑战性的未见设置中测试每个模型

    这些设置的示例如下图图4所示

    总共,在20个任务中评估每个VLA,每个任务有5个设置,每个设置有3次执行,并报告每个设置的平均成功率。基准测试的详细描述见附录K和附录D。这些基准测试中包含的所有任务都由单臂机器人驱动,导致7个自由度的动作——夹持器的6D姿态和一维的开/关状态。机器人观测可以从本体感受器信息、视觉观测和语言输入中获得

1.2.1 为什么偏爱VLA?——是否合适构建通用策略、现实世界中的表现如何

1.2.1.1 是否合适构建通用策略

关于为什么需要VLA?可以先回答

问题1:VLA是否是构建通用机器人策略的合适选择?

具体来说,作者展示了研究中表现最好的VLA,它在CALVIN和SimplerEnv基准测试中创造了新的最先进成果,以明显优势超越了所有其他机器人策略

所有结果如表II和图5所示「在CALVIN基准上的模拟性能,所有模型均在拆分ABCD/ABC上训练,并在拆分D上评估。KosMos P.H.代表使用KosMos-2作为骨干和策略头作为架构的VLA,且使用RoboVLMs框架构建,最大训练5个周期——即KosMos P.H. represents the VLA utilizing KosMos-2 as backbone and policy head as architecture, built with theRoboVLMs framework, and is maximally trained for 5 epochs」

从这些表格中,可以看到,RoboVLM大幅超越了现有的最先进通用策略,并为机器人操作任务在模拟和实际实验中建立了一个强有力的基准

具体来说,可以轻松观察到以下事实

  • 在CALVIN 基准测试中,RoboVLM模型在所有指标上都达到了最高性能,并在从ABC 转移到D(一个在训练分割中未见过的新场景)时展示了卓越的泛化能力,单个任务执行的绝对提升为12.6 %,连续5 个任务的总提升为30.3 %
    平均而言,在零样本设置下,RoboVLM可以在每次单独展开中完成5 个任务中的4.25 个,超越了之前的SOTA 模型(GR-1)1.09 个任务
  • 在SimplerEnv 中,RoboVLM在WidowX + Bridge 和Google Robol 环境中都实现了最高的平均性能,展示了对不同设置和多样化操作任务的普遍有效性和鲁棒性

此外,作者还研究了视觉-语言预训练对泛化和数据效率的影响(图6和表IV),详细结果见附录H

  1. 在CALVIN的泛化中,作者采用官方设置:在ABC的分割上训练模型,并在D上验证性能
  2. 为了评估数据效率,我们在模型规模从3B到9B和各种数据规模上进行实验:10%的训练数据(0.1x ABCD),标准设置(ABCD),以及500%的训练数据(5x ABCD),额外的数据来自于官方发布的未标记数据集,遵循Wu等人[47]中介绍的设置,不同数据规模的详细结果见附录E

可以看到,视觉-语言预训练对于泛化和数据效率都是至关重要的。这个观察是直观的,因为对齐的视觉-语言表示提供了一个稳固的视觉理解基础,使策略能够专注于学习操作技能。因此,可以得出结论

发现1:VLA是通用机器人策略的有前途路径

1.2.1.2 VLA在现实世界的场景中的表现如何

然而,尽管VLA在模拟中表现良好,由于模拟到现实的差距[54],VLA是否适合实际机器人应用仍然是一个未解的问题,故,作者提出第二个开放问题

问题 2:在现实世界的场景中,VLA 的表现如何?

如上所述,作者在现实世界的场景中部署了表现最佳的RoboVLM模型,即基于仅解码器KosMos的模型,以验证其有效性

如下图图4所示,作者的实验涉及20个具有多种技能的任务,包括打开、关闭、按按钮、拾取和放置等任务

对于每项任务,我们评估五次执行,包含基本设置、新技能描述、未见过的干扰因素、未见过的目标对象和未见过的背景

  • 该机器人系统用于真实实验,基于一个7自由度的Kinova Gen3机械臂,配备Robotiq 2F-85夹爪,更多关于真实机器人的细节请参见第四节
  • 输入方面,分别获取机器人头部和手腕上的两台摄像机的RGB图像
    头部摄像机提供工作空间的概览,而夹爪摄像机则提供末端执行器与环境之间交互区域的近距离观察

在真实机器人基准上微调由RoboVLMs构建的Octo-Base、OpenVLA和KosMos P.H.,并比较它们的性能。结果如图7所示

他们观察到,由RoboVLMs构建的最佳VLA(KosMos P.H.)在所有评估设置中均表现最佳,尤其是在简单和未见过的背景上,展示了其有效性和泛化能力,这与SimplerEnv和CALVIN模拟中的结果一致

至于定性结果在附录K中展示,包括各种设置下的成功执行和一些具有代表性的失败案例。KosMos P.H.不仅在基本设置任务如打开抽屉、拾取茄子等方面优于基线模型,而且在未见过的物体、干扰物和背景上也能实现更好的性能

此外,如下图图8所示

KosMos P.H. 展现出自我纠正能力,它能够识别末端执行器的不正确位置,并纠正其未来的轨迹以成功完成任务。请注意,这种能力在其他测试的基线中没有出现,而这种数据不包含在训练数据集中

如此可以得到

发现2:由RoboVLMs构建的最佳设置的VLA在实际场景中表现出强大的有效性和鲁棒性

1.2.2 如何制定VLA?策略头结合历史观测和连续动作,且提高泛化和数据效率

1.2.2.1 如何对机器人操作任务中的观测、状态和动作进行建模

更具体地说,应该如何在VLA的背景下对机器人操作任务中的观测、状态和动作进行建模?

为了解决这个问题,作者实现了几种变体,利用了各种开源VLM骨干网络,如OpenFlamingo [35]、LLaVA [28]和KosMos [36-Kosmos-2: Grounding multimodal large language models to the world]

这些变体结合了不同的历史信息建模策略和动作空间,如在Sec.I中讨论和分类的那样。CALVIN中各种VLA结构的性能总结在表III中「下图中,one-step代表一步模型,interleaved代表交错,policy head代表策略头,discrete代表离散,continuous代表连续」

根据这些结果,可以得出以下关键观察:

  1. 连续动作很重要
    通过比较两种类型的动作空间,连续和离散,如表III所示,观察到在单帧公式下,连续动作空间始终优于离散动作,尤其是在任务时间跨度增加时
    这一发现是直观的:连续动作可以表示高精度的浮点值,而离散动作仅限于索引动作区间。对于长时间跨度任务,累积的复合错误显著降低了离散动作的性能
  2. 历史观察事项History observation matters
    如表 III 所示,在相同的 VLM 结构下(无论是编码器-解码器还是仅解码器),将历史观察作为输入的模型始终优于一步模型,在所有任务中均实现了显著更高的成功率「models incorporating history observations as input consistently outperform one-step models」。这种改进不受历史融合策略的影响
    此外,增加可观察历史的长度可以提高性能,尽管会带来更高的计算开销
  3. 策略头policy head改进历史融合
    在利用历史信息的各种公式中,交错历史公式的表现不如通过额外的策略头合并历史信息的效果好「Among the formulations utilizing history, the interleaved history formulationperforms worse than merging history via an additional policy head」。假设策略头保留VLM 的原始视觉-语言融合能力,同时有效地整合历史信息
    此外,交错的公式在训练和推理过程中会导致显著更高的内存和 FLOP 成本。这表明,通过附加的策略头来结合历史信息对于 VLAs 是一种更有效和高效的方法

发现3:VLA在使用多步骤的历史观测作为输入和连续动作作为输出时,其性能最佳。为了将历史与连续动作空间结合,策略头结构表现更佳

1.2.2.2 不同的公式化如何影响VLAs的泛化和数据效率?

然而,除了性能本身之外,现代VLA面临的最重要挑战之一是实现对新对象和环境设置的泛化,这对于在各种机器人和场景中的实际部署至关重要

因此,VLA应在开放世界环境中继承VLM的泛化能力,同时在有额外域内训练样本可用时保持高数据效率。因此,他们进一步探讨以下问题

问题4:不同的公式化如何影响VLAs的泛化和数据效率?

为了解决这个问题,作者对各种VLA公式的泛化和数据效率进行了实证研究和评估,旨在为训练高性能的VLA提供实用见解

具体来说,他们通过在不同数据规模上使用CALVIN数据集训练不同架构和公式的模型,评估由RoboVLMs构建的不同VLA的泛化和数据效率

如前所述,他们重点比较交错和策略头公式——使用OpenFlamingo和KosMos骨干网络,这些配置在所有配置中显示出强大的潜力

请注意,交错的公式只能与仅解码器结构配对。图9和表IV中展示的结果导致以下观察

  • 关于泛化性能(图9),作者的最佳模型基于KosMos骨干网络,并利用策略头进行历史融合,在零样本设置中仅表现出轻微的性能下降

    相比之下,其他公式化方法则经历了显著的性能下降。这个发现强调了模型架构对泛化的显著影响
    这一结论在图5的结果中得到了进一步支持,其中评估集中的任务与新指令配对;
    以及在图7中,他们的最佳模型在所有未见任务上大幅领先于其他模型
  • 对于数据效率,他们观察到与泛化类似的趋势
    他们的最佳模型在训练数据缩减时始终实现最高性能,并且与其他公式相比,性能下降速度显著较慢
    此外,不同规模的编码器-解码器VLA比较显示,较大的模型往往更具数据效率

如此,得出

发现4:在泛化能力和数据效率方面,利用策略头进行历史融合是最好的

1.2.3 哪种VLM骨干网络更适合VLA?KosMos和Paligemma证明:充分视觉-语言预训练很有用

在大规模视觉-语言数据集上训练VLMs需要极高的资源。因此,他们基于多样化选择的预训练大规模视觉-语言骨干进行VLAs,它们具有不同的架构、训练数据规模、模型大小和潜在嵌入

这些包括

  1. Flamingo模型家族[1](编码器-解码器)
  2. 以及一系列仅解码器的VLMs,包括LLaVA[28]、Qwen-VL[2]、MoonDream[44]、UForm[41]、Paligemma[3]和KosMos[36]

值得注意的是,在本节中,为了公平比较,所有模型均使用静态图像进行训练,而非同时使用静态和手持相机。尽管这种方法可能无法提供完全受控的比较,但他们的广泛实验旨在提供关于不同VLM骨干对VLA影响的见解

结果如表V所示,揭示了以下观察

KosMos和Paligemma表现出明显更好的性能:从表V可以看出,这两个骨干比其他骨干有显著的优势。它们的优越性能得益于在大型视觉语言数据集上进行的充分视觉语言预训练——也从侧面解释了为何目前的vla sota模型π0,选择PaliGemma作为其中的VLM结构部分的原因

这一结果是直观的,因为广泛的预训练促进了视觉和语言特征之间更强的对齐——这种对齐对语言条件操控任务至关重要

从而也就说明了

发现5:VLAs从VLMs主干的“大型视觉语言数据集上进行的充分视觉-语言预训练”中受益——即VLAs benefit from the sufficient vision-language pre-training on large vision-language datasets of VLMsbackbone

1.2.4 应该何时利用跨实体数据集?大规模跨体预训练可提高机器人操作和泛化能力

在最近的研究中,利用大规模跨形态机器人操作数据集来提高VLAs的性能已成为一种主流趋势[4-π0, 7- Rt-2, 22-Openvla, 35- Open x-embodiment]。然而,是否真正有帮助仍不完全清楚,一个重要的问题仍然存在:

问题6:大规模跨形态数据集如何对VLAs做出贡献?

为了解决这个问题,作者将其分解为两个子问题:

  1. 从大规模跨载体数据集中获取哪些类型的数据对构建VLA最有利?
  2. 何时以及如何有效地利用这些数据?

在本节中,他们进行了一系列实验,以研究使用外部大规模跨实体数据集的不同策略。具体来说,作者探讨了两种主要的设置

  • 预训练:使用领域内操作数据和跨实体数据集对模型进行预训练。这种方法已在RT-2 [7]、OpenVLA [22] 和OCTO[39] 中进行探索
    ——如下图所示,该图来自此文《GRAPE——RLAIF微调VLA模型:通过偏好对齐提升机器人策略的泛化能力(含24年具身模型汇总)》的开头

  • 后训练:首先在跨实体数据集上训练VLMs,然后通过领域内操作任务进行微调。这一策略已被π0 [4] 采用

本节中的实验使用表现最佳的KosMos骨干网与用于历史融合的策略头作为基础模型。他们使用Open X-Embodiment (OXE) [35] 作为跨实体数据集,该数据集包含了全球收集的多种机器人操作数据,是最近研究中使用最广泛的[比如广泛应用于4-π0, 7- Rt-2, 22-Openvla, 39-Octo]

为了进行比较,他们还评估了一个基线设置Finetune,其中VLA仅在域内数据上进行训练

此外,对于Google Robot,包括了RT Partial Finetune和RT Finetune

  • 其中RT Partial Finetune仅涉及与评估任务相同任务类型的轨迹
  • 而RT Finetune涉及使用来自同一机器人在不同任务中的额外数据对策略进行协同微调
    and RT Finetune involves co-fine tuning the policy with additional data from the same robot across different task

对于Bridge,只评估Bridge Finetune,它使用整个Bridge-V2数据集微调策略,因为训练数据集中不包含具有相同评估任务指令的轨迹

为了更全面地评估跨体数据集的影响,他们还在CALVIN上进行了实验,CALVIN不属于OXE。对于CALVIN,他们省略了共同训练设置,主要关注跨体数据集是否有利于机器人操控在分布外任务上的少样本学习

因此,他们在CALVIN上仅使用每个任务10条轨迹进行实验(CALVIN少样本)

为了保持设置一致,他们仅使用来自静态头顶摄像头的图像作为输入。在不同训练阶段利用跨化身的比较如图10所示

从上到下,该图显示了SimplerEnv-Google Robot和SimplerEnv-Bridge的评估结果。此外,关于是否在CALVIN few-shot上整合跨化身预训练的比较如图11所示

可以得出以下观察结果

  1. 使用跨体现数据进行预训练并没有显著帮助
    比较OXE Pre-train和RT-Partial Finetune可以发现,对于谷歌机器人和Bridge,使用跨体现数据进行共同训练并没有带来实质性的性能提升
    特别是对于谷歌机器人来说,使用额外的领域内数据进行训练(RT Finetune)——即便是来自不同任务的数据——也能实现更高的成功率(相比于RT-Partial Finetune)
    这表明领域内

    即使是与任务无关的数据,也比跨载体数据更有效地提高模型性能
  2. 在跨载体预训练后进行后训练显示出潜在的好处
    后训练模型的平均性能(在Google Robot 上为52 %,在Bridge 上为38 %)超过了仅在域内数据上微调的模型(在Google Robot 上为48 %,在Bridge 上为31 %)
    这表明跨载体预训练可以提供一个有用的初始化,从而有利于随后的微调
  3. 预训练提高了少样本学习性能
    在CALVIN 的少样本设置中,使用单视角头部摄像头,预训练显著提高了性能,单任务执行提高了17.2 %,每次回合多执行0.25 个任务
    可以得出结论,在大规模跨载体数据集上进行预训练有利于学习更有效的机器人操作表示,这可以快速适应包含未见过的物体和环境设置的新操作任务

从而得出发现6

发现6:即使来自不同任务的额外领域内数据也显示出有益,并且大规模跨体现预训练进一步提高了整体以及少样本性能

1.3 小结:相关结论

1.3.1 解决的4个基本问题

这项实证研究主要关注于构建视觉-语言-动作模型(VLA)时的重要因素。作者提出了四个构建VLA的基本问题:

  • 为什么我们需要VLA而不是其他通用策略,并通过大幅超越现有方法,说明研究VLA的必要性
  • 接下来,描述了构建基于VLM的VLA的关键组件:
    应该使用哪种VLM骨干——对应上文的1.2.3 哪种VLM骨干网络更适合VLA?KosMos和Paligemma证明:充分视觉-语言预训练很有用
    如何训练模型生成动作——对应上文的1.2.2 如何制定VLA?策略头结合历史观测和连续动作,且提高泛化和数据效率
    以及何时应将跨载体数据添加到训练阶段

为回答这些问题,作者建立了一个统一框架,以便对VLA进行公平比较,并设计了一系列自下而上的系统实验

为此,作者在三个模拟器中进行了广泛的实验,涉及20个任务中的240多次实际场景的执行

可以从实验中得出结论:

  1. 对于为什么的问题,VLA能够实现高性能和泛化,是通用机器人策略的有前途的路径;
  2. 对于哪个问题,发现在大规模视觉-语言数据集进行“充分视觉-语言预训练”的VLM适合构建VLA
    For the Which problem, we find that VLMs with sufficient vision-languagepre-training over large scale vision-language datasets is suitable for constructing VLAs.
  3. 对于如何的问题,可以研究不同VLA结构的性能、泛化和数据效率,发现整合历史观察对于VLA至关重要,并且相比交错,策略头是一种更有效和高效的历史聚合方法
  4. 对于何时的问题,我们比较了在不同阶段整合跨载体的三种训练方法,并得出结论,额外的域内数据显示出有益,并且大规模跨载体预训练进一步提高了整体以及少样本性能

作为对提出问题的答案的副产品,作者构建了一个易于使用的框架,便于整合任意VLM并将其转换为VLA,名为RoboVLMs

1.3.2 研究中的观察与限制

在作者的实验中,他们发现基于 Qwen-VL 和 LLaVA 构建的 VLA,其性能出奇的低,与其在视觉语言任务中的原始性能相比。 在视觉编码器后添加感知重采样器后,他们发现基于 Qwen-VL 和 LLaVA 的 VLA 可以获得显著的性能提升并达到合理的性能。他们假设性能提升与输入标记序列中的图像分辨率和视觉标记数量有关。

尽管他们尽力研究构建视觉语言代理 (VLA) 的关键挑战,但这项工作仍处于初步阶段,目前存在一些限制

  1. 为了快速和简单地扩展现有的视觉语言模型 (VLM),他们保留了 VLM 中的多模态交互结构(例如,注意力掩码、专家混合)
    在此基础上,他们进一步发展了视觉、语言和动作之间的交互,这在大多数现有作品中是一种常见的方法 [22,24]
    然而,针对架构和与动作的多模态交互的专门设计有可能产生更优异的性能(例如,π0 模型 [4]),值得进一步探索
  2. 出于 (1) 中所述原因,这里考虑的VLA 分类和公式是简化和有限的
  3. 本工作中未充分探索动作标记化、策略头和相应的训练目标。 例如,像 VQ-VAE [42]、扩散模型 [9,17] 和流匹配 [4,12,26] 这样的技术在 VLA 上下文中仍未得到充分探索
  4. 本研究中考虑的 VLM 骨干网络集是有限的,可以积极扩展
  5. 将如此大型的模型用于实时机器人控制仍然是一个重大挑战

对于未来的工作,作者设想了几个推进通用机器人策略的潜在方向

  1. 如前所述,他们当前的方法在 VLM 的内部结构、策略头和相应的训练目标的设计上存在局限性。 进一步研究 VLA 的更细粒度设计选择可能非常有价值,因为最近的研究表明它们在提高效率和效果方面发挥了重要作用 [4-π0]
  2. 除了语义泛化之外,理想的通用机器人策略应该能够处理长时间的复杂任务指令(例如,做早餐),逐步推理可执行的动作,并与环境产生有意义的物理交互「例如,[52-Robotic control via embodiedchain-of-thought reasoning],相当于CoT赋能具身模型,本博客后面会解读下」
    故作者设想,在他们未来的工作中,他们旨在探索开发具有这些高级能力的策略所需的关键要素

第二部分 通用方法论与各类VLA模型的总结

接下来,考虑基于语言指令l 和每个时间步t 的历史观测o_{t-H+1: t}(最大历史长度为H)来控制机器人完成一组任务的问题

  1. 在本文中,主要考虑一个桌面机器人手臂,因此观测o_{t} 是传感器输入s_t和图像I,例如,o_{t}=\left(s_{t}, I_{t}\right),来自第三视角相机、夹持器相机或两者兼有
  2. 建立了一个控制策略\pi\left(a \mid o_{t-H+1: t}, l\right),其中动作a 被建模为一个7 维向量,包括夹持器的6 自由度位姿及其开/关状态

2.1 视觉语言模型

如RoboVLM论文中所说,视觉语言模型(VLMs),也称为多模态大型语言模型,将视觉整合到其输入模态中,使其能够处理和推理视觉和文本信息

通常,VLMs通过图像和/或文本生成文本[1,2,3,28,41,44],从而促进图像字幕生成、视觉问答和目标导向的规划等应用。这个过程可以形式化地描述为

\hat{l}=\operatorname{VLM}\left(I, l_{\text {prompt }}\right)

这里,I 和l_{\text {prompt }} 分别表示图像和文本提示,而\widehat{l} 代表由VLM 生成的文本输出。例如,在视觉问答任务中,l_{\text {prompt }}对应于问题,而l_{\text {target }} 对应于生成答案的Ground Turth

训练VLM 通常涉及最小化交叉熵损失以预测离散语言token,其可以表示为

\ell_{\mathrm{VLM}}=\operatorname{CrossEntropy}\left(\hat{l}, l_{\text {target }}\right)

其中,l_{\text {target }} 是真实文本。通过在数百万甚至数十亿对视觉-语言数据上进行预训练,VLMs 获得了视觉和文本模态的鲁棒表示

为了有效处理这两种不同的模态,VLMs 通常使用视觉处理器和语言解码器,通过各种视觉-语言特征融合机制连接。在可用的选项中,视觉变换器(ViTs)[11] 和感知重采样器[18] 是视觉处理器的广泛采用选择[24,29,39,47]。ViT 模块将每个输入图像I 重塑为补丁,并将其编码为视觉token[OBS]

[\mathrm{OBS}]=\left(x_{1}^{v}, \cdots, x_{N}^{v}\right)=\operatorname{ViT}(I)

其中,N 表示标记数量,x_{i}^{v} 表示第i 个token,在ViT 中,是一个编码输入图像块的嵌入向量

编码器-解码器架构由两个主要组件组成:

  1. 编码器通常负责使用如上所述的输入嵌入模块从输入中提取特征
  2. 解码器则生成输出(例如,文本或多模态预测)自回归

编码器和解码器之间的特征融合通常通过解码器中的交叉注意力层实现。由于其能够在生成之前显式编码多模态信息,这种结构在需要对输入模态进行详细理解的任务中表现优异,如图像字幕生成和视觉推理。代表性模型包括Flamingo [1]和OFA [46]


至于仅解码器架构则依赖于统一的transformer框架,其中输入模态(视觉和文本)和输出序列在同一个自回归解码器中处理

  1. 在这些模型中,视觉特征首先嵌入为类似token的表示(通过视觉处理器),然后与文本token连接并传递通过解码器。多模态特征融合自然地通过自注意力机制发生,使解码器能够在token生成过程中建模视觉和文本输入之间的依赖关系
  2. 仅解码器架构更加灵活和可扩展,适合于如指令跟随、多模态问答和开放式生成等任务。仅解码器模型的例子包括GPT-4V [49]和LLaVA [28]

2.2 视觉-语言-动作模型

视觉-语言-动作模型(VLA)主要应用于机器人任务中,它们作为通用机器人策略π,能够处理复杂任务。形式上,VLA根据当前时间步t的先前观测来预测动作序列

a_{t: t+L-1}=\operatorname{VLA}\left(o_{t-H+1: t}, l_{\text {prompt }}\right)

其中,a_{t: t+L-1} 是一系列预测的7 维动作,L 是动作序列长度,H 是历史观测长度。与VLMs 不同,VLAs 的观测O_{t-H+1: t} 通常包含本体状态s_{t-H+1: t},例如关节角度和末端执行器位置——除了视觉输入I_{t-H+1: t}之外

作者将VLAs 抽象并分类为基于1)历史信息建模和2)动作空间的四种代表性结构。在以形式描述这些不同模型之前,首先介绍在处理不同动作空间中的机器人动作时的一般预处理和预测原则

  1. 动作预处理
    一方面是动作归一化
    对于连续和离散动作空间,对7 自由度动作的每个维度进行归一化。按照Kim 等人的方法[22],计算训练数据中动作的第1st 和第99th 分位数,并使用这些分位数来限制动作的每个维度[7]
    a^{i^{\prime}}=\min \left(a_{99}^{i}, \max \left(a_{1^{\mathrm{st}}}^{i}, a^{i}\right)\right)

    其中a^{i^{\prime}} 是动作a 的第i 维的限制值。接下来,使用动作的第1st 和99th 分位数来标准化限制动作a^{\prime}的每一维
    \tilde{a}^{i}=2 \times\left(a^{i^{\prime}}-a_{1}^{i} \mathrm{st}\right) /\left(a_{999^{\mathrm{th}}}^{i}-a_{1}^{i}\right)-1
    \tilde{a}=\left[\tilde{a}^{1}, \tilde{a}^{2}, \cdots, \tilde{a}^{7}\right]是归一化的动作,每个维度的范围是[−1, 1],最后一个维度表示夹爪的开/闭状态∈{−1, 1}。在推理时,将反向映射预测的动作为未归一化的动作

    二方面是动作离散化
    对于离散动作表示,需要进一步离散化归一化的动作。根据Brohan et al. [7], Kim et al. [22]的方法,将连续的机器人动作映射到VLM的分词器使用的离散token

    具体来说,将每个机器人动作维度单独离散化为256个箱子中的一个。对于每个维度,设置箱子的宽度,以均匀划分训练数据中动作的第1和第99百分位之间的区间。使用这种离散化,将\tilde{a}转换为\bar{a},其中包含7个离散整数∈[0...255]
    且为了避免损害语言分词器中原有的特殊token位置,添加一个偏移量(默认设置为10),并用离散化的索引替换最后的偏移∼256+偏移token
  2. 动作预测:
    对于连续动作
    优化预测动作序列a_{t: t+L-1}与真实动作序列\tilde{a}_{t: t+L-1}的均方误差(MSE)和二元交叉熵(BCE)
    l_{\mathrm{VLA}}=\sum_{i=t}^{t+L-1} \operatorname{MSE}\left(\hat{a}_{i, \text { pose }}, \tilde{a}_{i, \text { pose }}\right)+\lambda * \operatorname{BCE}\left(a_{i, \text { gripper }}, \tilde{a}_{i, \text { gripper }}\right)
    MSE 损失是针对前六个维度计算的,而BCE 损失是针对最后一个夹持器维度计算的,计算在预测动作\hat{a}_{t: t+L-1} 和真实值\tilde{a}_{t: t+L-1},λ 是平衡权重

    对于离散动作
    离散动作模型为每个动作维度预测动作token。这些token是从按维度离散化的连续动作中得到的区间索引,可以很容易地去标记化以恢复动作向量
    优化目标具有类似于VLM训练中广泛使用的文本生成的交叉熵(CE)格式
    l_{\mathrm{VLA}}=\sum_{i=t}^{t+L-1} \sum_{j=1}^{7} \mathrm{CE}\left([\mathrm{ACT}]_{i}^{j}, \tilde{a}_{i}^{j}\right)

    其中,[\mathrm{ACT}]_{i}^{j} 表示在时间i 时预测动作标记[ACT] 的第j^{\mathrm{th}} 维度的区间索引,而\bar{a}_{i}^{j} 是对应的真实值。在推理过程中,获得预测动作标记\mathrm{ACT}^{i} 后,我们将离散token重新投影到对应区间的中心——以连续形式实现任务

2.3 VLA结构:一步连续动作、一步离散动作、交错连续动作、策略头连续动作

如下图图12所示「所考虑的VLA(可变长动作)公式的示意图,包括几种流行的设计。例如,RoboFlamingo[24] 是一种策略头连续型VLA——对应于右下角,RT-2 [7] 和 OpenVLA [22] 对应于一步离散动作型VLA——对应于下图左下角。Octo[39] 和 GR [47] 对应于具有固定窗口大小的交错连续动作型VLA——对应于下图右上角」

VLA结构主要根据动作空间和历史聚合方法分为四类,即

  1. 一步连续动作模型,对应于上图左上角
  2. 一步离散动作模型,对应于上图左下角
  3. 交错连续动作模型,对应于上图右上角
  4. 策略头连续动作模型,对应上图右下角

请注意,RoboVLMs框架可以轻松将VLMs转移到任意VLA结构

2.3.1 一步模型:含一步连续动作模型与一步离散动作模型——分别以ACT/π0、RT2/OpenVLA为代表

一步模型仅使用当前时间步t的观测值预测未来动作序列,即历史长度为1

\hat{a}_{t: t+L-1}=\operatorname{VLA}\left(o_{t}, l_{\text {prompt }}\right)

对于一步模型,有两个变体:连续动作模型和离散动作模型型

  • 对于连续动作模型:VLM模型首先使用VLM骨干网络预测一个可学习的token[LRN]

    这通过融合视觉和语言token(在编码器-解码器架构中)或连接多模态token(在仅解码器架构中)来实现
    [\mathrm{LRN}]=\mathrm{VLM}\left(o_{t}, l_{\text {prompt }}\right)

    然后使用一个MLP来预测动作向量
    \hat{a}_{t: t+L-1}=\operatorname{MLP}([\text { LRN }])

    一步连续动作模型包括ACT [53]、BC-Z [19]、MVP [37]、R3M [34]、VIMA [20]、3D Diffuser [21]、RoboMamba [29]和π0[4]
  • 对于离散动作模型,直接遵循与VLMs相同的简单下一个词预测,其中动作被离散化为类似文本的token
    [\mathrm{ACT}]_{t: t+L-1}^{1: 7}=\operatorname{VLM}\left(o_{t}, l_{\text {prompt }}\right)

    一步离散动作模型包括RT-1 [6]、RT-2 [7]、3D-VLA [55]、LAPA [50]、OpenVLA [22]和Embodied-COT [52]

2.3.2 交错-连续动作模型:以Octo/GR2为代表

交错模型接收观测-动作序列:

O_{t}=\left([\mathrm{OBS}]_{t-H+1},[\mathrm{LRN}]\right), \ldots,\left([\mathrm{OBS}]_{t},[\mathrm{LRN}]\right)

其中,O_{t} 表示时刻t 的输入token,[OBS] 表示观测token,[LRN] 表示可学习的动作token,并重复H 次,以交错格式插入到O_{t} 中

VLM 骨干网络融合此序列(在仅解码器结构中)并通过基于每个动作token的MLP 预测动作序列

\begin{aligned} {[\mathrm{LRN}]_{t-H+1: t} } & =\operatorname{VLM}\left(O_{t}\right) \\ \hat{a}_{t: t+L-1} & =\operatorname{MLP}\left([\mathrm{LRN}]_{t}\right) \end{aligned}

[\mathrm{LRN}]_{t}用于预测动作块\hat{a}_{t: t+L-1},表示插入在[\mathrm{OBS}]_{t}之后并在t 之前与观测融合的[LRN]。损失和动作非标准化过程与单步连续动作模型相同

在推理的时刻t

  1. 输入序列仅包含当前观测[\mathrm{OBS}]_{t} 和语言指令l_{\text {prompt }} ,作者在输入序列的末尾添加可学习的token[ACT],并将序列传递给VLM 以预测动作
  2. 在机器人执行预测动作后,再将新的观测[\mathrm{OBS}]_{t+1}和语言指令l_{\text {prompt }} 添加到输入序列中以预测当前步骤的动作

交错连续动作模型包括GR-1 [47]、OCTO[39]、GR-2 [8]。注意,像GATO [38] 和RoboCat [5] 这样的交错离散动作模型不在考虑范围内

2.3.3 策略头连续动作模型:以字节的RoboFlamingo为代表

策略头连续动作模型:与在VLM骨干中融合历史信息的交错模型不同,策略头VLA仅要求VLM在每个时间步提供单步多模态表示

\begin{aligned} o_{t} & =\left([\mathrm{OBS}]_{t},[\mathrm{LRN}]\right) \\ {[\mathrm{LRN}]_{t} } & =\operatorname{VLM}\left(o_{t}, l_{\text {prompt }}\right) \end{aligned}

历史信息随后被建模,并通过额外的策略头预测动作,例如RNN [10,15,30]、 transformer [14, 43]或扩散模型 [9]:

a_{t: t+L-1}=\mathrm{h}\left([\mathrm{LRN}]_{t-H+1}, \ldots,[\mathrm{LRN}]_{t}\right)

动作块a_{t: t+L-1} 的序列长度为L,是基于可学习的token[\mathrm{LRN}]_{t-H+1}, \ldots,[\mathrm{LRN}]_{t}预测的——每个[ LRN ]t 都是相同的

需要注意的是,交错连续动作模型仅适用于仅解码器的骨干网络。策略头连续动作模型可以基于具有编码器-解码器和仅解码器结构的VLM 骨干网络构建

他们的主要区别在于语言解码器

  1. 编码器-解码器VLM 的输入序列融合仅包含文本和可学习动作token,它通过交叉注意力融合多模态输入,其中文本token与可学习token结合作为键和值,视觉token作为查询
  2. 仅解码器的骨干网络直接将视觉、语言和可学习token串联作为输入,并利用自注意力融合多模态特征

策略头连续动作模型包括RoboFlamingo [24]、RoboUniview [27] 和DeeRVLA [51]

在每个推理步骤t

  1. 当前观测[OBS]t 和语言指令l_{\text {prompt }} 以及一个可学习的token[LRN] 被连接为一个完整的输入序列,然后传递到VLM 主干中
  2. 在策略头部获取[LRN] 并预测当前动作序列后,机器人根据预测的动作进行操作,并获得下一轮预测的新观测

// 待更

注:本文转载自blog.csdn.net的v_JULY_v的文章"https://blog.csdn.net/v_JULY_v/article/details/145330457"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2492) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

101
推荐
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2024 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top