Instruct2Act:使用大型语言模型将多模态指令映射到机器人动作

这篇具有很好参考价值的文章主要介绍了Instruct2Act:使用大型语言模型将多模态指令映射到机器人动作。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Instruct2Act:使用大型语言模型将多模态指令映射到机器人动作

基础模型在多种应用中取得了重大进步,包括文本到图像的生成、全景分割和自然语言处理。本文提出了一个名为Instruct2Act的框架,该框架利用大型语言模型将多模态指令映射为机器人操作任务的顺序动作。
具体来说,Instruct2Act使用大型语言模型生成Python程序,构成了一个完整的机器人任务的感知、规划和行动循环。
在感知部分,预定义的API用于访问多个基础模型,其中"Segment Anything Model"(SAM)精确地定位候选物体,而CLIP对它们进行分类。
通过这种方式,该框架利用基础模型的专业知识和机器人的能力,将复杂的高级指令转化为精确的策略代码。我们的方法可以调整和灵活地适应各种指令模态和输入类型,并满足特定任务需求。
我们通过在不同场景下的机器人任务中评估,验证了我们的方法的实用性和效率。此外,我们的零射击方法在许多任务中都超越了许多最先进的基于学习的策略。
Instruct2Act:使用大型语言模型将多模态指令映射到机器人动作,语言模型,机器人,人工智能

近年来,大型语言模型(LLMs),如GPT-3、LLaMA和ChatGPT在人类文本生成和理解自然语言指令方面取得了前所未有的进步。这些模型在被训练大量收集的语料库并吸收人类反馈后,展示了出色的零样本泛化能力。继续发展的工作,例如Visual ChatGPT,结合了多种视觉基础模型,利用提示管理器实现视觉绘图和编辑。此外,VISPROG提出了一种神经符号化方法,用于复杂的视觉任务,包括图像理解、操作和知识检索。受到将LLMs和多模态基础模型结合的巨大潜力的启发,我们的目标是开发通用的机器人操纵系统。我们是否能建立一个像ChatGPT那样支持机器人操作、视觉目标达成和视觉推理的机器人系统?

开发能够在动态环境中执行复杂任务的通用机器人系统是机器人研究中的一大挑战。这样的系统必须具备感知环境、选择相关机器人技能,并将它们适当地排列以实现长期目标的能力。实现这些功能需要集成各种技术,包括感知、规划和控制,以使机器人能够在非结构化环境中自主操作。受到从LLMs的文档字符串中合成简单Python程序的强大能力的启发,CaP直接基于几个在上下文中的示例语言命令生成以机器人为中心的策略代码。然而,由于代码的高精度要求,它受限于感知API可以提供的内容,并且在解释更长更复杂的命令时会遇到困难。

为了解决这些挑战,我们提出了一种新的方法,利用多模态基础模型和LLMs同时实现感知识别、任务规划和低级控制模块。与现有的直接生成策略代码的方法(如CaP)不同,我们生成可以帮助降低执行复杂任务的错误率的决策制定动作。具体来说,我们使用各种基础模型(如SAM和CLIP)精确地在环境中定位和分类对象。然后,我们结合机器人技能和LLMs生成决策制定动作。

我们在多个领域和场景中评估了我们的方法,包括简单的物体操纵、视觉目标达成和视觉推理。我们的框架提供了一个易于使用的通用机器人系统,并在VIMABench的六个代表性元任务中显示出强大的竞争性能能力。我们的方法可以作为机器人研究领域的强基线方法,并有助于开发更智能、更有能力的机器人。

论文相关特点

  • 通用机器人系统。 我们介绍了一个通用功能的机器人系统Instruct2Act,该系统利用LLMs的上下文学习能力和多模态指令生成来自自然语言和视觉指令的中级决策制定动作。
  • 灵活的模态输入。 本文研究了机器人任务(如操纵和推理)上的统一模态指令输入,并提出了一个灵活的检索架构来处理各种类型的指令。
  • 强大的零样本性能和最小的代码开销。 与最先进的基于学习的策略相比,我们提出的Instrcut2Act显示出优越的性能,甚至无需微调。此外,与从头开始训练的方法相比,使用基础模型的适应效果相对较小。

境中的物体的精确定位和分类

结合外部模块作图像处理,通过结合LLMs的自然语言理解和生成能力,以及各种基础模型,例如SAM和CLIP,来实现环境中的物体的精确定位和分类。这些信息结合机器人技能,可以由LLMs生成决策行动。这种方法的优点是,相比直接生成策略代码的传统方法,例如CaP,此方法可以通过生成决策行动来减少执行复杂任务的错误率。

视觉基础模型的应用

论文提到了视觉任务上的基础模型的使用,包括使用预训练的图像编码器改进从图像中提取的视觉特征,使用大规模的视觉基础模型进行更好的图像分析
同时,预训练的LLMs在文本理解和生成方面也取得了重大进展。最近的研究试图将LLMs的推理能力与视觉基础模型的视觉理解能力相结合。这一点与论文提出的Instruct2Act非常相似,其目标是通过利用先进的基础模型,借助LLM的推理能力,赋予机器人感知能力。

基础模型在机器人学中的应用

LID使用预训练的语言模型来初始化政策网络,其中目标和观察结果被嵌入;R3M探索了如何通过对多元化的人类视频数据进行时差对比学习和视频语言训练,使得下游的机器人操作任务学习数据更为高效;CACTI提出了一个可扩展的视觉模仿学习框架,该框架利用预训练模型将像素值映射到低维的潜在嵌入,从而提高了泛化能力。Instruct2Act框架则采用了视觉基础模型作为可以通过API调用的模块化工具,无需进行微调,从而消除了数据收集和训练成本的需求。

具体实现

Instruct2Act使得机器人能够根据用户的指令以及一个由顶视摄像头捕捉的观察图像来执行一系列的动作。它旨在改变环境中的物体状态,以匹配指令描述中的配置。它使用大型语言模型(LLM)生成可以执行的感知到动作的代码。任务相关的变量(包括在任务指令中使用的图像剪裁和图像到机器人坐标的转换)被存储在一个可以通过API访问的环境缓存中。系统使用感知模型获得对其操控环境的视觉理解。基于这些信息,系统生成可执行的动作代码,机器人在可用的低级控制器的帮助下执行这些代码。为了指导LLM的输出,我们向LLM提供API定义和上下文示例。

为了帮助LLM完成机器人任务,我们提供了一个设计好的提示,以引导LLM的生成,并伴随具体的任务指令。这个提示包括应用程序接口(API)和上下文示例来展示他们的使用,这将在下一节中介绍。LLM的最终输入是一系列的代码API,使用示例和任务指令。LLM的输出是一个可以被Python解释器执行来驱动机器人动作的Python函数字符串

使用LLM作为机器人驱动有几个优点。首先,由LLM的API生成的机器人策略具有高度的灵活性,因为上下文示例可以被调整以指导LLM的行为并适应新的任务。其次,通过直接利用视觉基础模型,无需收集训练数据或进行训练过程,且任何基础模型的改进都可以提高动作准确性,而无需额外的成本。最后,简单的API命名和可读的Python代码使得生成的策略代码高度可解释。

具体控制实现:
在获取了输入图像的语义信息(包括目标对象的位置和语义类别)后,我们需要在图像空间和动作空间之间建立一个映射来生成可执行的动作。我们使用一个预定义的变换矩阵将物体位置转换为机器人坐标,并应用边界夹持来防止意外的动作。LLM根据指令和上下文示例识别合适的动作。
Instruct2Act:使用大型语言模型将多模态指令映射到机器人动作,语言模型,机器人,人工智能

具体的驱动:

可以利用大型语言模型(LLM)通过为其提供设计好的提示来驱动机器人任务。这包括应用程序编程接口(API)、使用示例和任务说明。LLM输出一个可以执行机器人动作的Python函数。这种方法具有多个优点,包括灵活性、无需训练数据以及由于基础模型的改进动作准确性。在获取输入图像的语义信息后,建立图像空间和动作空间之间的映射,以生成可执行的动作。

论文通过提供任务的API定义和使用示例的方式演示了这种工作原理的示例,如“将斑点方块放入绿色容器中”和“将拖动的对象旋转150度”。

Instruct2Act的提示

完整的Instruct2Act提示应包括有关第三方库、API定义和上下文示例的信息。这有助于LLM理解如何使用API并执行计算。根据机器人系统层次结构的功能,对API进行分类。例如,SAM()函数是感知模块的一部分。作者还为不同模块提供了完整的代码示例。提示的设计涵盖了所有任务,并包含较少的上下文示例。

使用现成的基础模型进行感知

Instruct2Act使用现成的视觉基础模型,如Segment Anything Model(SAM)和CLIP模型,通过两个API进行访问:SAM()和CLIPRetrieval()。这些函数分析任务的视觉元素。然而,使用预训练的视觉模型时可能存在不正确和不完整的问题。作者通过应用各种图像处理技术和过滤机制来解决这些问题。

结果的评估

论文使用六个桌面操纵元任务来评估所提出的方法。示例包括视觉操纵、旋转和重新排列任务,每个任务都与单模态和多模态指令相关联。
Instruct2Act:使用大型语言模型将多模态指令映射到机器人动作,语言模型,机器人,人工智能

多模态输入处理

将输入分类型进行处理,Instruct2Act能够处理多模态指令,包括纯语言指令和语言-视觉指令。对于纯语言输入,Instruct2Act利用大型语言模型(LLM)从指令中提取查询,然后使用该查询从环境中获取适当的对象。对于语言-视觉指令,指令包括目标对象或状态的图像,Instruct2Act使用该图像获取所需的对象。

Instruct2Act还提供了一种指向-语言增强指令的方法,其中使用光标移动方法生成指向提示,用于引导分割。

该方法使用VIMABench中的各种任务进行了评估。实验结果显示,Instruct2Act在性能上与最先进的基于学习的方法VIMA相当。在需要多个步骤的任务中,它也明显优于VIMA。

Instruct2Act在多模态指令任务中的性能通常优于单模态指令。该方法还展示了在L2和L3泛化任务上强大的泛化能力。此外,该方法是零样本学习的,意味着它能够在没有任何先前训练的情况下执行这些任务。

疑惑: “Instruct2Act还提供了一种指向-语言增强指令的方法,其中使用光标移动方法生成指向提示,用于引导分割。” 不熟悉的领域,这个是怎么实现的?

错误生成情况的处理

缺乏使用示例的情况下,模型可能生成不必要的动作,如在Listing 2中所见,或者不返回已执行的信息,如在Listing 4中所见。然而,我们很高兴发现,LLM能够通过调用SaveFailureImage函数来处理执行失败的情况
Instruct2Act:使用大型语言模型将多模态指令映射到机器人动作,语言模型,机器人,人工智能

和adapter一起使用

Instruct2Act:使用大型语言模型将多模态指令映射到机器人动作,语言模型,机器人,人工智能

其他

Instruct2Act中的处理模块A.2可以解决预训练模型在没有进行微调的情况下直接用于下游任务所出现的问题,如不完整性或错误。在这个全程执行机器人任务的循环中,我们制定了各种处理程序,分别针对感知、规划和执行这三个模块,并针对桌面操作领域进行了设计。例如,图像预处理方法,我们使用灰度阈值过滤器和闭合形态学操作来减少阴影对目标对象识别的影响。在遮罩后处理中,我们开发了一套处理模块来处理SAM的输出,包括基于遮罩大小的过滤过程、扩张操作以及非极大值抑制(NMS)操作等。

此外,通过引入指向语言增强指令,用户可以通过点击来选择目标对象,这些点击点将作为点提示来引导SAM的分割过程。结果显示,与纯语言指令模式相比,使用指向语言增强模式的Instruct2Act效果更好。

结论

Instruct2Act框架利用LLM将多模态指令映射到机器人领域的顺序动作。通过LLM生成的策略代码,使用API调用各种视觉基础模型来获得对任务集的视觉理解。为了弥补零样本设置中的差距,引入了一些处理模块。广泛的实验证实了Instruct2Act在机器人操作任务中的有效性和灵活性。文章来源地址https://www.toymoban.com/news/detail-563687.html

到了这里,关于Instruct2Act:使用大型语言模型将多模态指令映射到机器人动作的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python使用OpenAI 和大型语言模型对话PDF和图像文本

    本文首先介绍文件文本嵌入方法及代码实现,然后介绍和代码实现提取PDF和图像文本应用于大型语言模型。在此基础上,构建回答任何问题的人工智能助手。 文本嵌入是自然语言处理(NLP)领域的重要工具。它们是文本的数字表示,其中每个单词或短语都表示为实数的密集向

    2024年02月14日
    浏览(44)
  • 【斯坦福】FrugalGPT: 如何使用大型语言模型,同时降低成本并提高性能

    FrugalGPT: 如何使用大型语言模型,同时降低成本并提高性能 作者:Lingjiao Chen, Matei Zaharia, James Zou 本文介绍了一种新颖的方法,旨在解决使用大型语言模型(LLM)时面临的成本和性能挑战。随着GPT-4和ChatGPT等LLM的日益流行,我们需要找到降低这些模型推理成本的策略。作者强调

    2024年02月11日
    浏览(45)
  • 使用思维链(Chain-of-thoughts)提示在大型语言模型中引出推理

    语言模型(LM)在NLP领域的发展速度非常快,特别是在大型语言模型(LLM)方面:当语言模型具有大量参数或权重/系数时,它们被称为“大型”。这些“大型”语言模型拥有处理和理解大量自然语言数据的能力。 LLM被用于一系列自然语言任务,如文本摘要、情感分析、主题分类、

    2024年02月05日
    浏览(38)
  • LLMs 缩放指令模型Scaling instruct models FLAN(Fine-tuned LAnguage Net,微调语言网络)

    本论文介绍了FLAN(Fine-tuned LAnguage Net,微调语言网络),一种指导微调方法,并展示了其应用结果。该研究证明,通过在1836个任务上微调540B PaLM模型,同时整合Chain-of-Thought Reasoning(思维链推理)数据,FLAN在泛化、人类可用性和零射推理方面相对于基础模型取得了改进。论文

    2024年02月11日
    浏览(34)
  • AIGC基础:大型语言模型 (LLM) 为什么使用向量数据库,嵌入(Embeddings)又是什么?

    嵌入: 它是指什么?嵌入是将数据(例如文本、图像或代码)转换为高维向量的数值表示。这些向量捕捉了数据点之间的语义含义和关系。可以将其理解为将复杂数据翻译成 LLM 可以理解的语言。 为什么有用?原始数据之间的相似性反映在高维空间中对应向量之间的距离上。

    2024年02月21日
    浏览(56)
  • 大型医院云HIS系统:采用前后端分离架构,前端由Angular语言、JavaScript开发;后端使用Java语言开发 融合B/S版电子病历系统

    一套医院云his系统源码 采用前后端分离架构,前端由Angular语言、JavaScript开发;后端使用Java语言开发。融合B/S版电子病历系统,支持电子病历四级,HIS与电子病历系统均拥有自主知识产权。 文末卡片获取联系! 基于云计算技术的B/S架构的医院管理系统(简称云HIS),采用前后

    2024年02月03日
    浏览(48)
  • 《大型语言模型自然语言生成评估》综述

    在快速发展的自然语言生成(NLG)评估领域中,引入大型语言模型(LLMs)为评估生成内容质量开辟了新途径,例如,连贯性、创造力和上下文相关性。本综述旨在提供一个关于利用LLMs进行NLG评估的全面概览,这是一个缺乏系统分析的新兴领域。 我们提出了一个连贯的分类体

    2024年01月23日
    浏览(58)
  • 怎么建立大型语言模型

    建立大型语言模型通常涉及以下主要步骤: 数据收集:收集大规模的文本数据作为模型的训练数据。可以从各种来源获取数据,如互联网、书籍、新闻文章等。数据的质量和多样性对于模型的性能至关重要。 数据预处理:对收集到的数据进行预处理和清洗,以确保数据的质

    2024年02月14日
    浏览(44)
  • 06.构建大型语言模型步骤

    在本章中,我们为理解LLMs奠定了基础。在本书的其余部分,我们将从头开始编写一个代码。我们将以 GPT 背后的基本思想为蓝图,分三个阶段解决这个问题,如图 1.9 所示。 图 1.9 本书中介绍的构建 LLMs 阶段包括实现 LLM 架构和数据准备过程、预训练以创建基础模型,以及微调

    2024年02月03日
    浏览(49)
  • ​浅谈大型语言模型

    大型语言模型(Large Language Models,LLMs)是一类强大的人工智能模型,具有出色的自然语言处理能力。它们在许多任务中表现出色,如机器翻译、文本摘要、对话生成和情感分析等。下面我们将介绍大型语言模型的训练和生成过程,以及它们在实际应用中的重要性。 Large Lang

    2024年02月12日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包