本文经自动驾驶之心公众号授权转载,转载请联系出处。
24年5月论文“A Survey on Vision-Language-Action Models for Embodied AI”。
深度学习已在计算机视觉、自然语言处理和强化学习等许多领域取得了显著的成功。这些领域的代表性人工神经网络包括卷积神经网络、Transformers 和深度 Q-网络。在单模态神经网络的基础上,引入了许多多模态模型来解决一系列任务,例如视觉问答、图像字幕和语音识别。具身智能中指令跟随机器人策略的兴起,推动了一种多模态模型的发展,即视觉-语言-动作模型 (VLA)。这种多模态能力已成为机器人学习的基础要素。人们提出了各种方法来增强多功能性、灵活性和通用性等特性。一些模型专注于通过预训练来改进特定组件。其他模型则旨在开发善于预测低级动作的控制策略。某些 VLA 充当高级任务规划器,能够将长期任务分解为可执行的子任务。过去几年,大量 VLA 应运而生,体现了具身智能的快速发展。
视觉-语言-动作模型(VLA)代表一类旨在处理多模态输入的模型,结合视觉、语言和动作模态的信息。该术语最近由RT-2 [36]提出。VLA模型被开发用于解决具身智能中的指令跟随任务。与以ChatGPT [62]为代表的聊天AI不同,具身智能需要控制物理实体并与环境交互。机器人是具身智能最突出的领域。在语言为条件的机器人任务中,策略必须具备理解语言指令、视觉感知环境并生成适当动作的能力,这就需要VLA的多模态能力。相比于早期的深度强化学习方法,基于VLA的策略在复杂环境中表现出更优越的多样性、灵活性和泛化性。这使得VLA不仅适用于像工厂这样的受控环境,还适用于日常生活任务 [33]。
基于预训练的视觉基础模型、大语言模型(LLMs)和视觉-语言模型(VLMs)的成功,视觉-语言-动作模型已经证明其在应对这些挑战方面的能力。来自最新视觉编码器的预训练视觉表征,帮助VLA在感知复杂环境时提供更精确的估计,如目标类别、姿态和几何形状。随着语言模型 [36], [69]能力的增强,基于语言指令的任务规范成为可能。基础VLMs探索了将视觉模型和语言模型整合的多种方式,包括BLIP-2 [72], Flamingo [70]等。这些不同领域的创新赋予了VLA解决具身智能挑战的能力。
如图是VLA 模型的分类。“∗ 目标-状态指导”控制策略与 VLA 密切相关,但不能严格定义为 VLA,因为它们不促进语言方式的输入。
如图以简要的时间线追溯从单模态模型到多模态模型的演变,为 VLA 模型的引入奠定了基础。计算机视觉领域的关键进步(蓝色)包括 ResNet [85]、ViT [86] 和 SAM [87]。自然语言处理领域的开创性工作(橙色)包括 GRU [88]、Transformer [66]、BERT [89]、ChatGPT [62] 等。强化学习(绿色)中,DQN [90]、AlphaGo [91]、PPO [92]、Dactyl [93] 和 DT [94] 做出了显著贡献。视觉语言模型已成为多模态模型的重要类别,例如 ViLBERT [95]、CLIP [1] 和 LLaVA [96]。VLA 的三个主要方向是:预训练、控制策略和任务规划器。
视觉-语言-动作模型 (VLA) 是处理视觉和语言的多模态输入并输出机器人动作以完成具身任务的模型。它们是具身智能领域在机器人策略指令跟随的基石。这些模型依赖于强大的视觉编码器、语言编码器和动作解码器。它们需要强大的视觉编码器、语言编码器和动作解码器。为了提高各种机器人任务的性能,一些 VLA 优先获取优质的预训练视觉表征;另一些 VLA 则专注于改进低级控制策略,擅长接收短期任务指令并生成可通过机器人运动规划执行的动作;此外,某些 VLA 脱离了低级控制,专注于将长期任务分解为可由低级控制策略执行的子任务。因此,低级控制策略和高级任务规划器的组合可以被视为一种分层策略。如图是机器人分层策略的图示,包括高级任务规划器和低级控制策略。高级任务规划器根据用户指令生成规划,然后由低级控制策略逐步执行。
预训练
视觉编码器的有效性直接影响策略的性能,因为它提供有关目标类别、位置和环境可供性的关键信息。因此,许多方法都致力于对视觉编码器进行预训练,以提高 PVR 的质量。
下表是预训练的各种视觉表示。其中V:视觉,L:语言,Net:主干网络,CL:对比学习,MAE:掩码自动编码,TFM:Transformer,Sim/Real:模拟/现实世界。Mani/Navi:操纵/导航,[SC]:自收集数据。为简单起见,仅显示目标(objective)函数的主要部分,省略温度、辅助损失等元素。S(·) 是相似度测量。(Ego-Data):Ego4D [105]、Epic Kitchens [106]、Something-Something-v2【107】,100DOH【108】。
动态学习包含旨在使模型了解正向或逆向动态的目标。正向动态涉及预测给定动作导致的后续状态,而逆向动态则涉及确定从先前状态过渡到已知后续状态所需的动作。一些研究方法还将这些目标定义为对混洗状态序列进行重新排序的问题。虽然正向动态模型与世界模型密切相关,不过这里特别关注利用动态学习作为辅助任务来提高主要机器人任务性能的工作。
下表是VLA 的各种动态学习方法。其中f(·) 是动态模型,Fwd:正向,Inv:逆向。
世界模型中,Dreamer [16] 使用三个主要模块来构建潜在动态模型:表示模型,负责将图像编码为潜状态;转换模型,捕捉潜在状态之间的转换;奖励模型,预测与给定状态相关的奖励。在演员-评论家框架下,Dreamer 利用动作模型和价值模型,通过学习到的动态传播解析梯度,通过想象来学习行为。在此基础上,DreamerV2 [116] 引入了离散潜在状态空间以及改进的目标。DreamerV3 [117] 将其重点扩展到具有固定超参数的更广泛的领域。
总结一下,预训练的视觉表征强调了视觉编码器的重要性,因为视觉观察在感知环境的当前状态方面起着至关重要的作用。因此,它为整个模型的性能设定了上限。在 VLA 中,一般视觉模型使用机器人或人类数据进行预训练,以增强其在目标检测、可供性图提取甚至视觉语言对齐等任务中的能力,这些任务对于机器人任务至关重要。相比之下,动态学习侧重于理解状态之间的转换。这不仅涉及将视觉观测映射到良好的状态表征,还涉及理解不同的动作如何导致不同的状态,反之亦然。现有的动态学习方法通常旨在使用简单的掩码建模或重新排序目标来捕捉状态和动作之间的关系。另一方面,世界模型旨在完全模拟世界的动态,使机器人模型能够根据当前状态将状态推广到未来的多个步骤,从而更好地预测最佳动作。因此,虽然世界模型更受欢迎,但实现起来也更具挑战性。
低层控制策略
通过将动作解码器与感知模块(如视觉编码器和语言编码器)集成,形成一个策略网络来在模拟或真实环境中执行指令。控制策略网络的多样性在于编码器/解码器类型的选择以及集成这些模块所采用的策略。语言指令控制策略包括以下类型:非 Transformer、基于 Transformer和基于 LLM。一些其他控制策略处理多模态指令和目标状态指令。
下表是各种低级控制策略。还包括一些非 VLA 机器人模型,因为它们密切相关,用 (∗) 标记。BC:行为克隆(动作类型 cont/disc:连续/离散),TFM:Transformer,Xattn:交叉注意,Concat:连接。LMP:潜运动规划 [119],DDPM:去噪扩散概率模型 [120],MPC:模型预测控制,MLE:最大似然估计,p/s:提示/状态的视觉编码器。[SC]:自收集数据。ER:日常机器人。
各种 VLA 架构探索了融合视觉和语言输入的不同方法,包括交叉注意、FiLM 和连接,RT-1 中使用了 FiLM,因此其后续工作也继承了这一机制。虽然交叉注意在较小的模型规模下可以提供更好的性能,但连接更易于实现,并且可以在较大的模型上实现相当的结果 [41]。
如图所示,三种最常见的低级控制策略架构的特点,是其视觉-语言融合方法。一些 Transformer 动作解码器利用交叉注意来条件化指令。在基于 RT-1 的模型中,FiLM 层用于早期融合语言和视觉。连接是 Transformer 动作解码器中视觉-语言融合的主流方法。
大多数低级控制策略会预测末端执行器姿势的动作,同时抽象出使用逆运动学控制各个关节运动的运动规划模块。虽然这种抽象有助于更好地推广到不同的实施例,但它也对灵活性施加了限制。行为克隆 (BC) 目标用于模仿学习,针对不同的动作类型有不同的变体。
基于扩散的策略利用了计算机视觉领域中扩散模型的成功[120]。其中,扩散策略[46]是最早利用扩散进行动作生成的策略之一。SUDD[35]为扩散策略添加了语言条件支持。Octo[43]采用模块化设计,以适应各种类型的提示和观察。与常见的行为克隆策略相比,扩散策略在处理多模态动作分布和高维动作空间方面表现出优势。
虽然基于 LLM 的控制策略可以大大增强指令跟随能力,因为 LLM 可以更好地解析用户意图,但人们担心其训练成本和部署速度。尤其是推理速度慢会严重影响动态环境中的性能,因为在 LLM 推理期间可能会发生环境变化。
高级任务规划器
许多高级任务规划器都是在 LLM 之上构建的。虽然以端到端方式将多模态模块集成到 LLM 中是直观的,但使用多模态数据进行训练可能成本高昂。因此,一些任务规划器更喜欢使用语言或代码作为交换多模态信息的媒介,因为它们可以由 LLM 原生处理。如图所示将 LLM 连接到高级任务规划器中多模态模块的不同方法:基于语言和基于代码。
下表是各种高级任务规划器。VL:视觉语言融合。Sim/Real:模拟/现实世界。Mani/Navi:操纵/导航。
总结一下,虽然像 SayCan [47] 这样的端到端任务规划器与低级控制策略具有类似的架构,并且可以针对特定任务进行优化,但由于 LLM 和视觉转换器组合的模型规模很大,它们的训练成本可能过高。基于语言的任务规划器具有与现有语言条件控制策略无缝集成的优势。然而,它们通常需要微调或对齐方法来将生成的规划映射到低级控制策略的可执行语言指令。另一方面,基于代码的任务规划器利用 LLM 的编程能力来连接感知和动作模块。这种方法不需要额外的训练,但其性能可能会受到现有模型能力的限制。
数据集、仿真器和基准
下表是近期 VLA 收集的机器人数据集。VIMA 技能,指的是“元任务”。这里采用较新的 BridgeData V2。PC:点云。
下表是VLA 中常用的模拟器和基准。其中D:深度,Seg:分割,A:音频,N:法线,Force:智体控制末端执行器施加力来抓取物品,PD:预定义,Vers:版本。
面临的挑战和方向:
- 机器人数据稀缺。获取足够的现实世界机器人数据仍然是一个重大障碍。收集此类数据耗时且耗费资源,而仅依靠模拟数据会加剧模拟与现实之间的差距问题。
- 运动规划。当前的运动规划模块通常缺乏解决各种环境中的复杂性所需的灵活性。这种限制妨碍了机器人与工具有效交互、在复杂环境中导航和执行高精度操作等的能力。
- 实时响应。许多机器人应用需要实时决策和动作执行才能满足操作要求。VLA 模型应设计为响应迅速、延迟最小。
- 多模态集成。VLA 必须处理和集成来自多种模态的信息,包括视觉、语言和动作。虽然在这方面已经取得了重大进展,但实现这些模态的最佳集成仍然是一个持续的挑战。
- 泛化到未见的场景。一个真正多功能的机器人系统应该能够在各种未见的场景中理解和执行自然语言指令。
- 对指令、环境、对象和实施方案的变化具有鲁棒性。
- 长远任务执行。成功执行此类任务需要机器人在较长的时间范围内规划和执行一系列低级动作。虽然当前的高级任务规划器已经取得了初步成功,但它们在许多情况下仍然存在不足。
- 基础模型。在机器人任务中探索 VLA 的基础模型仍然是未知领域,这主要是由于机器人技术中遇到的多种具体化、环境和任务。
- 基准。尽管存在许多用于评估低级控制策略 VLA 的基准,但它们在评估的技能方面往往存在很大差异。此外,这些基准中包含的对象和场景通常受到模拟器可以提供的内容的限制。
- 安全注意事项。安全是机器人技术的重中之重,因为机器人直接与现实世界互动。确保机器人系统的安全需要将现实世界的常识和复杂的推理融入到其开发和部署过程中。这涉及到整合强大的安全机制、风险评估框架和人机交互协议。
- 伦理和社会影响。机器人的部署始终引发各种伦理、法律和社会问题。这些包括与隐私、安全、工作流失、决策偏见以及对社会规范和人际关系的影响相关的风险。