当前位置:   article > 正文

机器人近期最重要的论文之一 RT-2: Vision-Language-Action Models Transfer Web Knowledge to Robotic Control

rt-2: vision-language-action models transfer web knowledge to robotic contro

这个论文联合所有AI顶级名校实验室和google的AI部门联合发布 Robot Transformer,今天就来讲解这篇论文:

RT-2: Vision-Language-Action Models Transfer Web Knowledge to Robotic Control

本文介绍了一种将视觉-语言模型(Vision-Language Models, VLMs)与机器人数据相结合,训练视觉-语言-动作模型(Vision-Language-Action Models, VLAs)的方法。作者提出了两个基于PaLM-E和PaLI-X的VLA模型实例,称为RT-2-PaLM-E和RT-2-PaLI-X。这些模型通过机器人轨迹数据进行联合微调(co-fine-tune),将机器人动作表示为文本tokens并进行输出。实验表明,该方法可以得到性能非常好的机器人策略,更重要的是,通过从网络规模的视觉语言预训练中继承知识,可以显著提升模型的泛化能力和新兴能力。

1. 简介

高容量的大规模预训练模型,如大语言模型、视觉-语言模型等,可以为下游任务提供一个有效且强大的平台。这些模型不仅可以生成流畅的文本,还展现出新兴的问题解决能力、创造性写作和编程能力。视觉-语言模型甚至可以对图像中的物体-agent交互进行复杂推理。这种语义推理、问题解决和视觉解释能力,对于需要在真实世界环境中执行各种任务的通用机器人来说是非常有用的。但目前尚不清楚机器人应该如何获得这些能力。

虽然可以通过收集大量机器人交互数据来解决,但目前最强大的语言和视觉语言模型是在数十亿的网络tokens和图像上训练的,机器人数据在近期内不太可能达到这个量级。另一方面,直接将这些模型应用于机器人任务也很困难:这些模型对语义、标签和文本提示进行推理,而机器人需要接地的低级动作,如笛卡尔末端执行器命令。

本文的主要贡献是RT-2,一系列通过在网络规模数据上进行微调得到的大型视觉语言模型,可以直接作为可泛化和语义感知的机器人策略。通过6000次机器人评估实验,作者展示了RT-2在对象、场景和指令方面的显著泛化改进,以及从网络规模视觉语言预训练中继承的广泛的新兴能力。
在这里插入图片描述

2. 相关工作

视觉-语言模型

有两类最相关的视觉-语言模型(VLMs):

  1. 表示学习模型,如CLIP,学习两种模态的共同嵌入。
  2. {vision, text} -> {text}形式的视觉语言模型,学习将视觉和语言作为输入并提供自由格式的文本。

这两类模型已被广泛应用于目标分类、检测、分割等下游任务。本文主要关注后一类模型,探究如何将VLM赋予预测机器人动作的能力,将其扩展到机器人闭环控制,利用VLM中已有的知识来实现新水平的泛化。

机器人学习中的泛化

开发能够在各种场景中广泛成功的机器人控制器是机器人研究的一个长期目标。一种有前景的方法是从大型多样化数据集中学习。先前的方法已经证明,机器人可以泛化到新的目标实例、涉及新目标和技能组合的任务、新的目标或语言指令、新的语义目标类别,以及看不见的环境。与大多数先前的工作不同,本文的目标是开发和研究一个单一的模型,它可以沿着所有这些轴线泛化。其关键是利用在比机器人看到的数据更广泛的数据上预训练的模型。

机器人操作的预训练

大多数工作集中在预训练的视觉表示上,用于初始化机器人相机观测的编码器。其他工作整合了预训练的语言模型,通常作为指令编码器或用于高级规划。本文特别考虑使用预训练的视觉语言模型(VLM),它提供了关于世界的丰富、扎实的知识。先前的方法将VLM用于视觉状态表示、物体识别、高级规划,或提供监督或成功检测。虽然CLIPort和MOO将预训练的VLM集成到端到端的视觉运动操作策略中,但两者都在策略中加入了大量结构,限制了它们的适用性。值得注意的是,与这些工作不同,本文利用生成语言的VLM,公式化的统一输出空间使模型权重能够在语言和动作任务之间完全共享,而不引入仅针对动作的模型层组件。

3. 视觉-语言-动作模型

本文提出了一种简单而有效的方法:直接训练视觉语言模型来输出低级机器人动作,同时解决其他互联网规模的视觉语言任务。尽管这些模型通常被训练来产生自然语言tokens,但我们可以通过将动作标记化为文本tokens,并创建"多模态句子"来响应与相机观测配对的机器人指令从而产生相应的动作,以此来训练它们处理机器人轨迹。

机器人动作微调

为了使视觉语言模型能够控制机器人,它们必须被训练来输出动作。本文采取了一种直接的方法来解决这个问题,将动作表示为模型输出中的tokens,并以与语言tokens相同的方式对待它们。动作空间包括机器人末端执行器的6-DoF位置和旋转位移,以及机器人夹持器的伸展级别和一个用于终止episode的特殊离散命令。连续维度被均匀地离散化为256个bins。

为了使用这些离散的动作来微调VLM成为VLA模型,我们需要将模型现有标记化中的tokens与离散的动作bins相关联。这需要保留256个tokens作为动作tokens。为了定义VLM微调的目标,我们将动作向量转换为一个单一的字符串,简单地将每个维度的动作tokens与空格字符连接起来。

采用上述的动作表示,本文将机器人数据转换为适合VLM模型微调的格式,其中输入包括机器人相机图像和文本任务描述,输出被格式化为表示机器人动作的数字/最不常用tokens的字符串。

另一个提高机器人性能的关键技术细节是在微调过程中将机器人数据与原始网络数据一起使用,而不是仅使用机器人数据进行微调。在联合微调期间,通过增加机器人数据集的采样权重,在每个训练批次中平衡机器人和网络数据的比例。

实时推理

现代VLM的规模可达数十亿或数百亿个参数。直接在通常用于实时机器人控制的标准台式机或机器人GPU上运行这样的模型是不可行的。据我们所知,本文的模型是迄今为止用于直接闭环机器人控制的最大模型,需要一套新的解决方案来实现高效的实时推理。作者开发了一个协议,通过将RT-2模型部署在多TPU云服务中,并通过网络查询该服务,可以在机器人上运行它们。使用这种解决方案,可以实现合适的控制频率,并使用相同的云服务为多个机器人提供服务。

4. 实验

实验主要关注RT-2在真实世界中的泛化能力和新兴能力,旨在回答以下问题:

  1. RT-2在已见任务上的表现如何,更重要的是,如何在新物体、背景和环境上进行泛化?
  2. 我们能否观察和衡量RT-2的任何新兴能力?
  3. 泛化能力如何随参数数量和其他设计决策而变化?
  4. RT-2是否能表现出类似于视觉语言模型的思维链推理迹象?

作者评估了RT-2方法和几个基线在各种条件下的约6000次评估轨迹。除非另有说明,否则使用7自由度移动机械手进行实验。

4.1 RT-2在已见任务上的表现以及在新物体、背景和环境上的泛化能力

为了评估分布内性能以及泛化能力,作者将RT-2-PaLI-X和RT-2-PaLM-E模型与四个基线进行了比较。对于已见任务,使用与RT-1中相同的指令集。对于泛化评估,分为看不见的类别(物体、背景和环境),并进一步分为简单和困难情况。

实验结果表明,RT-2模型和RT-1在已见任务上的性能相似,其他基线的成功率较低。RT-2模型和基线之间的差异在各种泛化实验中最为明显,这表明视觉语言动作模型的优势在于从其互联网规模的预训练数据中迁移更多可泛化的视觉和语义概念。平均而言,RT-2的两个实例表现相似,比下两个最好的基线RT-1和MOO提高了约2倍,比其他基线提高了约6倍。
在这里插入图片描述在这里插入图片描述

4.2 RT-2展现出的新兴能力

除了评估视觉语言动作模型的泛化能力外,本文还旨在评估此类模型能在多大程度上通过从网络迁移知识而实现超出机器人数据中所演示的新能力。作者将这些能力称为新兴的,因为它们是通过迁移互联网规模的预训练而产生的。作者并不期望这种迁移能实现新的机器人运动,但确实期望语义和视觉概念,包括关系和名词,能有效地迁移,即使在机器人数据中没有看到这些概念的情况下也是如此。

通过定性评估,作者发现RT-2在语义理解和场景上下文的基本推理方面继承了新的能力。例如,完成"把草莓放进正确的碗里"这个任务需要不仅对草莓和碗是什么有细微的理解,还需要在场景的上下文中进行推理,知道草莓应该和相似的水果放在一起。

为了量化这些新兴能力,作者将前面评估中的两个最佳基线RT-1和VC-1与两个RT-2模型进行了比较,使用A/B测试框架来减少实验的方差。

新兴能力被分为三类:符号理解、推理和人物识别。符号理解测试RT-2策略是否能迁移在机器人数据中不存在的视觉语言预训练的语义知识。推理任务需要将基础VLM的各个方面应用于控制任务,如视觉推理、数学推理和多语言理解。人物识别任务展示以人为中心的理解和识别能力。

实验结果表明,VLA模型在所有类别上显著优于基线,最佳的RT-2-PaLI-X模型比次优基线RT-1的平均成功率高出3倍以上。

4.3 泛化能力如何随参数数量和其他设计决策而变化

为了进行这种比较,作者使用RT-2-PaLI-X模型,比较了两种不同的模型尺寸(5B和55B)以及三种不同的训练方式:从头开始训练模型,不使用VLM预训练的权重;只使用机器人动作数据微调预训练模型;以及联合微调,即使用原始VLM训练数据和机器人数据进行VLM微调。

结果表明,从头开始训练一个非常大的模型会导致非常差的性能,即使对于5B模型也是如此。其次,无论模型大小如何,联合微调模型都会比简单地用机器人数据微调产生更好的泛化性能。这可能是由于在训练的微调部分保留原始数据,使模型不会忘记在VLM训练期间学到的以前的概念。最后,不出所料,增加模型的大小会带来更好的泛化性能。

4.4 RT-2是否能表现出类似于视觉语言模型的思维链推理

受LLMs中思维链提示方法的启发,作者微调了RT-2的一个变体,增加了它利用语言和动作进行更复杂推理的能力。增强后的数据包括一个额外的"计划"步骤,首先用自然语言描述机器人即将采取的动作的目的,然后是实际的动作tokens。这种数据增强方案充当了VQA数据集(视觉推理)和操作数据集(生成动作)之间的桥梁。

通过定性观察,作者发现带有思维链推理的RT-2能够回答更复杂的命令,因为它首先有一个地方用自然语言计划它的动作。这是一个有希望的方向,提供一些初步证据,表明使用LLMs或VLMs作为规划器可以与单一VLA模型中的低级策略相结合。
在这里插入图片描述

5. 局限性

尽管RT-2表现出了良好的泛化特性,但该方法仍有多个局限性:

  1. 虽然通过VLMs引入网络规模的预训练可以提高语义和视觉概念的泛化能力,但机器人并没有通过加入这些额外的经验获得执行新动作的能力。模型的物理技能仍然局限于机器人数据中看到的技能分布,但它学会了以新的方式部署这些技能。作者认为这是由于数据集在技能方面的变化不够大造成的。通过新的数据收集范式(如人类视频)来获取新技能是未来工作的一个令人兴奋的方向。

  2. 虽然作者展示了可以实时运行大型VLA模型,但这些模型的计算成本很高。随着这些方法应用于需要高频控制的设置,实时推理可能成为一个主要瓶颈。探索量化和蒸馏技术,使此类模型能够以更高的速率或在更低成本的硬件上运行,是未来研究的一个令人兴奋的方向。

  3. 目前只有少数普遍可用的VLM模型可用于创建RT-2。作者希望将来会有更多开源模型可用,专有模型也将开放其微调API,这是构建VLA模型的充分条件。

6. 结论

本文描述了如何通过将视觉语言模型(VLM)预训练与机器人数据相结合来训练视觉语言动作(VLA)模型。然后提出了基于PaLM-E和PaLI-X的两个VLA模型实例,称为RT-2-PaLM-E和RT-2-PaLI-X。这些模型与机器人轨迹数据进行联合微调,以输出表示为文本tokens的机器人动作。作者表明,该方法可以产生性能非常好的机器人策略,更重要的是,通过从网络规模视觉语言预训练中继承知识,可以显著提高泛化性能和新兴能力。作者认为,这种简单通用的方法显示出机器人学习直接受益于更好的视觉语言模型的希望,使机器人学习领域处于战略地位,可以随着其他领域的进步而进一步发展。

以下是一些核心技术的代码示例:

将机器人动作转换为文本tokens

# 假设action是一个包含8个元素的列表,表示机器人动作
# 每个元素都是0-255之间的整数
def action_to_tokens(action):
    return " ".join(str(x) for x in action)

# 示例用法
action = [1, 128, 91, 241, 5, 101, 127, 255]
tokens = action_to_tokens(action)
print(tokens)  # 输出: "1 128 91 241 5 101 127 255"
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

在微调过程中约束模型的输出

# 假设model是一个视觉语言模型
# tokenizer是对应的标记器
# is_robot_action_task是一个布尔值,指示当前任务是否为机器人动作任务

# 定义一个函数,在采样时过滤掉无效的tokens
def valid_action_tokens_filter(tokens):
    valid_tokens = [0, 1, 2, ..., 255]  # 有效的动作tokens
    return [t for t in tokens if t in valid_tokens]

# 在生成过程中,根据任务类型设置不同的标记过滤函数
if is_robot_action_task:
    model.set_token_filter(valid_action_tokens_filter)
else:
    model.set_token_filter(None)  # 不过滤,允许生成任何标记

# 生成robot_actions
robot_actions = model.generate(...)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

这些代码片段演示了如何将机器人动作转换为文本tokens,以及如何在生成过程中约束模型的输出,确保它只生成有效的动作tokens。在实际实现中,可能需要根据所使用的特定VLM和标记器进行调整。

关键技术讲解

1. 将机器人动作表示为文本tokens

本文的一个关键思想是将机器人动作表示为文本tokens,以便与视觉语言模型(VLM)的输出格式相匹配。具体来说,动作空间包括机器人末端执行器的6-DoF位置和旋转位移,以及机器人夹持器的伸展程度和一个用于终止episode的特殊离散命令。连续维度被均匀地离散化为256个bins,因此每个动作可以用8个0-255之间的整数表示。

为了将这些离散动作用于VLM的微调,需要将模型现有标记化中的tokens与离散的动作bins相关联。这是通过保留256个tokens作为动作tokens来实现的。在训练过程中,动作向量被转换为一个字符串,其中每个维度的动作tokens用空格分隔。

这种将动作表示为文本tokens的方法允许VLM直接输出机器人动作,而不需要修改模型架构。这是将VLM用于机器人控制的一个简单而有效的方法。

2. 联合微调

另一个关键技术是在微调过程中将机器人数据与原始网络数据一起使用,即联合微调。这与仅使用机器人数据进行微调相反。在联合微调期间,通过增加机器人数据集的采样权重,在每个训练批次中平衡机器人和网络数据的比例。

联合微调的动机是使模型能够同时接触到来自网络规模数据的抽象视觉概念和机器人动作数据,而不是仅仅接触机器人动作。实验结果表明,与单独使用机器人数据微调相比,联合微调可以得到更好的泛化策略。这可能是由于在训练的微调阶段保留了原始数据,使模型不会忘记在VLM训练期间学到的先前概念。

Q&A

Q1: RT-2与标准VLM在输出方面有何不同?

A1: 标准的VLM通常被训练来生成自然语言文本。然而,RT-2需要输出对应于有效机器人动作的特定tokens,以便在真实机器人上执行。为了确保RT-2在解码过程中输出有效的动作tokens,当模型被提示执行机器人动作任务时,我们会约束其输出词表,只对有效的动作tokens进行采样。而在标准的视觉语言任务中,模型仍然被允许输出全范围的自然语言tokens。

Q2: 联合微调如何提高模型的泛化能力?

A2: 联合微调通过在训练过程中同时使用原始的网络规模数据和机器人数据,使模型能够接触到来自不同领域的知识。网络规模数据提供了丰富的语义信息和抽象视觉概念,而机器人数据则教授模型如何执行特定的物理动作。通过结合这两种类型的数据,模型可以学习将高层语义概念与低层机器人控制相关联。这使得模型能够在新颖的环境中泛化其学习到的技能,表现出一些新兴的能力,如对看不见的对象进行操作。

参考文献

  1. Brohan, A., Brown, N., Carbajal, J., Chebotar, Y., Dabis, J., Finn, C., … & Vanhoucke, V. (2022). RT-1: Robotics transformer for real-world control at scale. arXiv preprint arXiv:2212.06817.

  2. Chen, X., Djolonga, J., Padlewski, P., Mustafa, B., Changpinyo, S., Wu, J., … & Soricut, R. (2023a). PaLI-X: On scaling up a multilingual vision and language model. arXiv preprint arXiv:2305.06420.

  3. Chen, X., Wang, X., Changpinyo, S., Piergiovanni, A., Padlewski, P., Salz, D., … & Soricut, R. (2023b). PaLI: A jointly-scaled multilingual language-image model. arXiv preprint arXiv:2209.06794.

  4. Driess, D., Xia, F., Sajjadi, M. S., Lynch, C., Chowdhery, A., Ichter, B., … & Tompson, J. (2023). PaLM-E: An embodied multimodal language model. arXiv preprint arXiv:2303.03378.

  5. Lynch, C., & Sermanet, P. (2020). Language conditioned imitation learning over unstructured data. arXiv preprint arXiv:2005.07648.

  6. Wei, J., Hou, L., Lampinen, A., Chen, X., Huang, D., Tay, Y., … & Le, Q. V. (2023). Symbol tuning improves in-context learning in language models. arXiv preprint arXiv:2305.08626.

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Li_阴宅/article/detail/886517
推荐阅读
相关标签
  

闽ICP备14008679号