发表时间:17 Jun 2024
作者单位:Berkeley AI Research, UC Berkeley
Motivation :先前用于机器人应用的 LMM 已经在语言和动作数据上进行训练,但它们在不同设置中进行泛化的能力通常小于所需的。为了解决这个问题,我们引入了 LLARVA,这是一种使用一种新颖的 指令 调整方法训练的模型,该方法利用结构化提示来统一一系列机器人学习任务、场景和环境。
解决方法 :在这里,我们提出了一种视觉动作指令调整方法,可以弥合语言模型的基本预训练目标------下一个词预测)之间的差距,以及使模型能够处理各种机器人设置的目标。我们的关键思想是制定一种新颖的指令提示,它将机器人类型、任务、场景配置和控制机制封装在适合当代 LMM 的自然语言前缀中 。
我们引入了一种新的指令调优方法,该方法利用结构化提示来统一 一系列机器人学习任务、场景和环境和二维视觉跟踪,以进一步对齐视觉和动作空间。该模型通过包含机器人模型、控制模式、机器人任务、本体感受信息和预测步数的语言指令工作,并输出下一个机器人动作的文本以及剧集其余部分的视觉跟踪。
也是利用现有的机器人数据生成instruction(与上一篇LLaRA类似的思想) ,然后对LLaRVA进行 指令 调优。
为什么要预测二维图像的视觉轨迹?
-
我们发现预测中间的二维表示,我们称之为视觉轨迹,可以帮助对齐不同机器人和任务配置的视觉和动作空间。
-
尽管最近的机器人模型使用 3D 表示,例如体素和点云来克服这一点,但这些表示很难合并到大多数现有的开源 LMM 中,因为它们通常接受单个图像加上语言作为输入。由于这些原因,我们利用二维图像,这些图像易于扩展并与现有的LMMs集成。
-
图 3 还定性地表明,视觉轨迹可以通过充当内存缓冲区来帮助长期任务,该缓冲区补偿模型可以处理的先前机器人状态数量有限。
实现方式 :为了实现视觉输入和机器人动作之间的对齐**,我们将视觉轨迹预测为辅助任务** ,因为我们发现这有助于获得更好的细粒度定位,从而更准确地预测机器人动作。具体来说,我们生成末端执行器的二维视觉轨迹(投影),并迫使模型预测下一个轨迹以及下一个机器人动作。该航路点预测有助于将每个机器人动作与末端执行器的位置对齐,使模型能够专注于细粒度的定位,从而更准确地预测机器人动作。为此,我们使用 Open X-Embodiment 数据集 (OXE) [10] 构建具有此类视觉轨迹的指令,仔细分类动作空间、机器人类型和控制类型。
模型结构:
输入: The input to our LLARVA architecture comprises two components. 首先,我们有视觉观察 ot ,这是一个在时间步 t 捕获环境状态的图像。其次,我们有语言指令输入lt, 它提示模型预测一定数量的后续步骤,整合机器人、控制模式和以前的本体感受状态等具体信息以及任务指令。(如下图所示)
具体来说,我们制定了一个指令模板,其中包含机器人类型 R(例如,Franka、UR5、xArm)、控制模式 M(例如关节或末端执行器控制、绝对或增量控制)、任务指令 I(例如,"打开抽屉")、本体感觉信息 S(例如位置或速度)以及指示要预测的未来动作数量的查询,表示为 n。完整的指令公式如下:
输出: the language head in our model is trained to predict both robotic actions and visual traces in "natural" language(按照语言的形式输出机器人动作和视觉轨迹), this is made possible by using language instructions as a unified way to generalize across various robotic settings。
训练方式:
While keeping the vision encoder and language encoder frozen, we use instruction tuning to train the auto-regressive transformers using standard LoRA adapters [11] for both the pre-training and fine-tuning stages. 我们的两步训练过程、大规模预训练和下游任务的微调:
Step 1: Vision-Action Instruction Pre-training.
为了跨机器人任务、场景和环境进行泛化,该模型在我们的大规模视觉-动作指令数据集上进行了预训练。由于该数据集的多样性,我们的模型同时针对机器人类型 R、控制模式 M 或任务指令 I 1 等多个提示变量配置进行训练。
我们注意到这个预训练阶段与标准 LMM 预训练不同。与在VL中使用投影仪对齐两种模式不同,这里我们对齐两种模态来泛化到机器人配置。(与标准 LMM 预训练的目的不同,标准 LMM 预训练的目的是对齐视觉和语言模态,这里的对齐两种模态的目的是泛化到机器人任务)
Step 2: Fine-tuning for Downstream Tasks.
我们使用具有固定配置的小型数据集微调预训练模型,用于第 2.2 节中定义的因素(例如,指令具有相同的机器人类型 R、控制模式 M 等)。在看到不同的数据样本后,模型很容易适应特定的下游设置,类似于它在预训练期间已经遇到的设置。
我们使用与 [7] 中相同的 18 个 RLBench 任务进行评估。**在微调阶段,根据前 5 个关节位置(即 h = 5),选择前视图作为 ot。**LLARVA 预测视觉轨迹和下一个动作步骤(即 n = 1),这是一个由 7 个关节速度和二进制夹具状态组成的 8 维向量。
这两个Step应该都是按照本文的指令调优的方式,遵循本文设计的指令数据形式,只不过数据集不同。
实验:LLARVA is implemented using PyTorch [13] with the official LLaVA 1.5 [4] implementation. The base LMM uses a Llama 2 7B-parameter LLM, the default image projection layer, and the CLIP ViTL/14 vision encoder.
我们在 RLBench 模拟环境的 18 个不同的任务上评估 LLARVA,并使用真实的 7-DoF Franka Emika Panda 机器人拾取、堆叠和去堆叠任务。
结论:我们注意到语言模型解码器对于将多模态输入转换为机器人技术中的可操作输出至关重要。通过利用共享的视觉动作嵌入空间,我们的解码器产生机器人系统可以使用的响应。
-
我们认为未来的指令应该包括有关现实世界的 3-D 信息。
-
LMM 有必要能够利用深度或体素处理多个视图,这可能需要使用交错标记,就像在一些现有的 LMM 中所做的那样。