24年6月来自苹果公司、乔治亚理工和加拿大Mila AI的论文“Grounding Multimodal Large Language Models in Actions”。
多模态大语言模型 (MLLM) 已在包括具身人工智能在内的许多领域展示了广泛的功能。这项工作研究如何将 MLLM 最好地应用到不同的具身人工智能及其相关的动作空间中,目的是利用 MLLM 的多模态世界知识。首先通过统一架构和
动作空间适配器(ASA)
的视角概括了许多方法。对于连续动作,学习的token化可以实现足够的建模精度,从而在下游任务中产生最佳性能。对于离散动作,将这些动作与 MLLM 的固有输出token空间在语义上对齐可获得最强的性能。对五种不同环境中的七个动作空间适配器(ASA)进行深入研究得出这些结论,涵盖超过 114 个具身任务。
如图所示:实证分析如何在连续和离散动作空间中的 114 个任务中将 MLLM 落地于动作。在每个环境中,训练一个具有不同动作空间适配器 (ASA) 的多任务策略,重新参数化 MLLM 输出动作。对于连续动作,学习每个动作具有多个tokens的token化,效果最佳(残差 VQ)。对于离散动作,将动作映射到语义相关的语言tokens,效果最佳(语义token化)。
在五个具身 AI 环境中彻底验证上述原则,其中三个是机器人连续控制,两个具有离散动作。
在连续情况下,最佳token化在 CALVIN [30] 上达到 72%,高于直接动作回归的 68% 和统一动作token化的 28%;
在 Meta-World [31] 的准确率为 84%,高于直接动作回归的 61% 和统一token化的 75%。
同样,在离散动作的情况下,该语义对齐的动作token,在 LangR [21] 上的准确率为 51%,高于直接动作预测的 42%。
多模态大语言模型 (MLLM) 被定义为大型基础模型,以文本和图像为输入并生成文本,最近取得快速进展并取得了令人印象深刻的表现 [1- 13]。这些模型非常重要,因为它们可以解决大量有用但困难的自然语言和图像任务,例如描述图像、回答视觉和文本问题、推理以及从少量示例中学习。最近得到改进,足以供非专家的人进行通用部署 [14-16]。
虽然 MLLM 能够描述现实世界的具身概念,但它们在具身任务中的能力仅限于通过生成代码 [17, 18]、将动作表示为文本 [19] 或从内部表示中提取动作 [20, 21] 使用文本执行操作。将 [22] MLLM 应用于生成动作将其能力扩展到具身任务,例如机器人操纵和导航,并且对实际问题具有巨大价值,有可能克服训练白板(tabula rasa)的高成本。将 MLLM 扩展到多模态图像生成可实现目标检测和分割以及图像和视频生成 [3, 23–27]。在具身环境中,通过预测智体affordance和生成动作来奠定 MLLM 的基础,可产生能够泛化到新任务的有效策略 [19, 21, 28, 29]。
奠定 MLLM 基础的一个关键且未解决的挑战是,固有输出空间、自然语言和具身智体动作空间之间的差距,这限制了它们在具身任务中的能力。这个问题在连续动作空间中尤其严重,其中低层控制器可能需要高精度。在文献中,已经提出了许多处理动作空间的架构和方法,但尚未对这些设计进行系统研究。
为了解决具身任务,在交互式环境中学习的智体必须从一组有效动作中选择一个决策。例如,一个动作空间可以是视频游戏中的一组键盘按下动作,也可以是控制机器人操纵器的实值向量。本文工作研究如何最好地适配一个MLLM,其最初训练为输出文本tokens ,先改成建模给定环境中的动作。将连接 MLLM 和特定动作空间的模块称为
动作空间适配器 (ASA)
。
MLLM 策略输入的是描述下游任务的文本指令、任务中过去观察的序列,并输出智体操作空间中的动作。
在上图左下方,任务描述和环境描述首先被编码生成语言嵌入。
然后,MLLM 将当前观察的一系列视觉嵌入附加到这些嵌入中。
由于视觉嵌入通常由大量tokens组成(流行的 LLaVA-1.5 模型 [6] 有 556 个tokens),引入一个下采样层,使 MLLM 能够关注更长的观察历史。
在实践中,将下采样层视为Perceiver模型 [53],这是一种可学习的转换,在输入 MLLM 之前减少视觉编码器的tokens数量。
离散动作空间的ASA类型定义:
分类预测 (Pred):将ASA实现为 MLP 网络,从 MLLM 隐状态预测环境动作分类分布的对数。适配器头是一个 MLP,将隐状态 h1 直接映射到动作 a。这相当于生成一个直接对应于动作 a 的动作token u1,动作解码器是一个 identity map。适配器头和token嵌入都是从头开始初始化的。[21] 使用这种类型的 ASA。
语义语言 (SemLang):ASA预测映射到离散动作的自然语言文本。首先,每个动作 a 都用自由格式的文本描述,标记为 (l1 , . . . , lm )。然后,MLLM 自回归地预测一系列 m 个 tokens,然后由适配器解码器将其解码为相应的动作。例如,在动作空间中,选择高级技能 a 可以描述为“摘苹果”,使用 LLaMA token化器将其token化为 [5839, 26163]。然后,MLLM 必须按顺序预测token 5839,然后预测token 26163 才能调用此动作。与无效动作相对应的token序列要么完全使用token过滤器避免,要么被视为无操作。适配器头和token嵌入都被重新用作预训练 LLM 的语言头和嵌入层,这意味着在预训练 MLLM 上没有添加任何额外参数。[29] 使用这种类型的 ASA。
非语义语言 (Lang):动作被映射到语言tokens,但与 SemLang 不同,动作被映射到数字序列,而不是语义上有意义的动作描述。例如,“摘苹果”用字符串“5 3”表示。然后,策略必须输出与该文本对应的tokens来调用此“摘”动作。
连续动作空间定义以下四个 ASA,第一个 ASA 在原始动作空间中进行预测,而其他三个使用token化。在训练时,学习一种策略从 ASA 预测这些动作tokens。在测试时,使用一个动作解码器,将这些动作tokens映射到原始空间中的动作。
连续回归 (
Pred
):从 MLLM 隐藏状态 ht 回归到原始连续动作。这是通过单层 MLP 网络实现的,该网络使用 MSE 损失进行训练。[20, 39] 使用了此 ASA。
统一动作token化(
Uniform
):最简单的方法是使用动作空间的统一bin分格。具体来说,将每个动作表示为 D 个tokens的序列,方法是将 D 个动作维中的每一个量化为 K 个均匀 bins 中的一个。在测试时,将预测的动作tokens解码到每个维度的相应 bins 中心。[19] 使用这种类型的 ASA。
矢量量化token化 (
VQ
):为了使token化适应特定的动作空间,使用学习的token化。具体来说,将每个动作表示为单个token,对应于学习码本 V 中最接近的动作代码。使用编码器网络 fθ,将动作映射到潜嵌入空间。使用 VQ-VAE [54] 从离线动作数据集 D 中学习大小为 K 的码本 V。从 LLM 词汇表中覆盖 K 个不常用的tokens来表示 V。
残差向量量化token化 (
RVQ
):精确控制需要精确的动作建模,而token化后可能会受到影响。为了提高学习的token化精度,进一步研究 Uniform 中多个动作token序列的使用。与 VQ 类似,这些tokens来自 M 个动作码本 Vm ,m ∈ {1,...,M}。但是,每个码本都会获得的残差空间进行建模,在使用之前码本对动作进行建模后,因此每个后续tokens都会捕获越来越精细的动作信息。
使用 LLaVA-1.5-7B [6] 作为基础 MLLM。在考虑的复杂环境中,MLLM 的零样本性能在所有 ASA 中都很差,即使有详细的提示也是如此。因此使用交互式(即带有动作标签的)数据对 MLLM 进行微调,使其更适合与动态环境交互。分别采用SFT从专家演示中微调,以及采用RL在环境反馈中微调。
实验设置如下。
CALVIN [30]:该操作基准,测试桌面机器人与物体交互以完成自然语言指令的能力。连续动作指定 6DoF 末端执行器控制和二进制夹持器状态。观察结果是来自固定位置相机的 200 × 200 RGB 图像。用基准的 ABC → D 拆分,包含 34 个任务,并根据未见过的指令措辞和桌面背景对智体进行评估。
Meta-World [56]:用这个桌面操作基准的 ML-45 版本,它有 45 个任务。动作空间是连续控制,指定 3DoF 末端执行器平移和连续夹持器状态。观察结果是来自固定相机的 200 × 200 RGB 图像。根据未见过的物体和机器人起始状态对智体进行评估。