香港大学联合上海AI LAB,提出首个人机交互一体化大模型

导读:

具身智能为人与机器人的交互带来了更多便利,利用大语言模型(LLMs)的推理能力,能够将人类的语言指令逐步转换为机器人可以理解的指令信号。

然而,由于缺乏环境信息作为机器人理解环境和人类指令的上下文支持,基于LLMs的方法的泛化能力有限,同时语言由高层自然语言转换为底层机械指令的过程中往往存在信息损失。

随着感知决策一体化系统的提出,LLMs+感知的结构被证明能够很好的应对端到端的指令理解任务,本文作者基于MLLMs提出了端到端的人与机器人交互大模型,能够直接从人类指令端到端的生成机器人的动作,极大增强了人机交互能力。

具身智能(Embodied AI)为智能体(如机器人)提供了感知、推理和与物理世界及人类交互的能力。然而,机器人操作框架的泛化能力仍然是一个核心挑战。一方面,机器人策略难以泛化到具有多种属性和机制的物体上,例如具有不同物理约束和抓取偏好的物体。另一方面,适应不同机器人平台的学习框架也面临困难,这主要源于高层次场景理解与低层次操作和控制策略之间的差距。因此,如何创建一个具有推理能力的通用框架,将高层次语义理解映射到通用的机器人行为,成为一个重要问题。
利用大语言模型(LLMs)的推理能力,提出了逐步的自然语言计划供机器人执行是一种可行的方法,在2021~2023年间占据该领域的主导。然而,由于缺乏环境信息(例如物体状态和形状的视觉信息)作为上下文支持,难以在现实场景中进行决策。因此,它们依赖于低层次技能模型来将视觉观察和语言命令转化为低层次动作。然而,这些技能模型在泛化到新场景或不同机器人平台时仍然面临困难,需要精确调整动作序列以适应机器人的形态和执行器。
机器人操作的技能和低层次行为涉及精确的动作序列,这些序列包括接触点、抓取姿势、物理约束、路径点和运动轨迹。虽然一些之前的研究探索了抓取区域和接触点的估计,但它们主要专注于特定任务和物体。协调和泛化这些模块到复杂环境中的多物体交互任务仍然是一个重大挑战。
最近,多模态大语言模型(MLLMs)的快速发展表明,它们在场景理解、物体特性理解以及跨多种场景和物体的泛化能力上表现出了强大的能力。这暗示了通过建立与物理世界交互的连接,能够更高效地设计智能系统。此外,虽然MLLMs擅长高层次场景理解,机器人系统则专注于精确的轨迹规划和执行。因此,代码可以作为概念知识与机器人低层次行为之间的符号桥梁。这种连接有望将MLLMs的高级认知处理与机器人控制和规划的需求相结合,可能会带来更基础且跨平台的机器人系统。
基于以上观察,本文提出了一种用于机器人代码生成的大型视觉语言模型框架,名为RoboCodeX,作为MLLMs与机器人控制系统之间的接口,将高层次语义和物理偏好转化为针对机器人的低层次动作。通过以代码表示这些计划和偏好,可以实现跨不同形态机器人的共享和转移。具体来说,RoboCodeX能够理解多样的感知输入,如视觉、深度数据和人类指令,并采用树状思维结构,将高层次的人类指令分解为多个通过文本代码注释定义的对象中心操作单元。每个单元作为一个节点,进一步分解为以下几个关键部分:
●通过对环境中物体的详细3D空间分析生成目标姿态建议。

●利用视觉启发和3D几何信息(如关节物体的平移或旋转轴约束)预测物体物理特性,确保生成现实且可行的运动计划。

●利用对环境和任务目标的多模态理解预测偏好,选择最佳的抓取位置和接近方向。

●通过规划算法生成安全、优化且符合物理约束的运动轨迹。
为了增强RoboCodeX在代码中表达物理机器人偏好和行为的推理能力,本文还构建了一个多模态推理数据集用于预训练,并引入了迭代自我更新的方法进行监督微调。
本文的主要贡献如下:
●提出了RoboCodeX,一个具备树状思维推理能力的大型视觉语言模型,用于机器人代码生成。它预测物理约束、偏好排名和目标位置建议,作为高层次概念知识与低层次机器人行为之间的接口。
●提出了一个专门的多模态推理数据集,并通过迭代自我更新的方法进行监督微调,以增强RoboCodeX将语义和物理偏好转化为特定机器人动作的能力。
●大量实验表明,RoboCodeX在模拟和实际机器人系统中的表现达到最先进水平,在四种不同的操作任务中相比于GPT-4V提升了17%的成功率,并在具身导航任务中表现出色。

在这里插入图片描述

如图1 所示,该方法的目的是利用一个大模型直接将人类的人机交互指令转换为机器人的动作,实现人机交互的端到端学习框架。该系统的输入为人类的指令和机器人的初始状态,随后系统将会利用大模型中的Encoder将这两个初始输入进行编码,随后推送到统一的特征空间。随后大模型内部的网络会将该特征分为不同的对象类型(Object)来进行学习,对象类型(Object)是通过预训练的模型获取的,基本能够涵盖人类指令中涉及的机器人交互对象。第三步是依据这些对象类型,为每一个对象类型生成一个对应的操作计划,并生成对应的轨迹,如图中的“Code for Motion Planning”部分,最终将所有的Motion串联在一起,形成机器人的最终动作轨迹。下面笔者将细节介绍整体框架实现。

▲图1|RobocodeX框架©️【深蓝AI】编译

■2.1 问题描述和设定
作者将长期操作问题视为一个高级的自由格式的人类指令,如“清洁桌子”。观察包含来自三个深度摄像头视角(左、右、顶部)的RGBD数据。由于直接为长期高层次指令生成整个轨迹较为困难,作者通过MLLMs的视觉推理采用树状思维方法,将整个任务分解为多个以物体为中心的独立单元。
本文研究的核心问题是如何生成一组运动轨迹。作者将轨迹表示为一系列密集的末端执行器路径点,由操作空间控制器执行。针对每个子任务,作者将其描述为一个优化问题,通过解决该优化问题来获得机器人的运动轨迹序列,进而完成整体任务。
■2.2 多模态树状思维代码生成
作者提出了一个用于合成机器人行为的新框架,结合了多视角的3D感知、多模态代码推理和运动规划,用于执行复杂的实际任务。首先通过获取三个不同视角的RGBD帧来捕获观察结果,避免由于单一视角导致的遮挡问题,并提供全面的3D信息。随后,这些数据被融合为一个统一的3D空间表示(截断有符号距离场,TSDF)。
截断有符号距离场(Truncated Signed Distance Field, TSDF)是计算机视觉和3D重建领域中的一种常用表示方法,通常用于描述物体的三维几何形状。TSDF通过在三维空间中描述每个点与物体表面的相对距离,能够有效地表示物体的几何形状,同时截断不重要的远距离信息来优化计算效率。这种方法对于实时3D重建和机器人感知非常有用。来自三个视角的RGB图像与自然语言指令一起输入到RoboCodeX模型中。RoboCodeX采用树状思维架构,围绕语义解析、上下文定位和目标导向分解展开视觉推理,直接将视觉特征与物体的交互偏好和物理约束关联起来。
对于每个物体单元,生成运动轨迹的过程受到语言指令和偏好的影响,最终输出包括末端执行器的运动轨迹和离散的抓取动作指令,该过程的流程如图2所示,左侧即为多模态代码生成的主体部分,和段落介绍的内容一致,右侧即为生成的代码示例,可以看到生成的代码还包含了一些详细的注释,提升了整体的可解释性。

在这里插入图片描述

▲图2|多模态树状思维代码生成图示©️【深蓝AI】编译

■2.3 视觉语言模型设计
该模型采用了BLIP2的基本架构,包括视觉变换器(Vision Transformer)、Q-Former和语言模型。在此架构中,Q-Former的作用是通过压缩视觉模态中的令牌数量,减少需要处理的视觉信息规模,从而降低对GPU内存的需求。为了进一步提高模型在处理视觉信息时的效率,研究团队还设计了一个高效的视觉适配器,该适配器能够聚合来自视觉变换器不同阶段的特征,捕捉层次化的视觉信息。这一设计使得模型能够提取更有用、更具细节性的视觉信息,并与文本信息一起进行编码处理。经过压缩的视觉序列令牌与文本令牌相结合,作为输入一同传入语言模型,最终支持复杂任务的代码生成。这一集成多模态信息的机制,确保了模型在应对不同任务时具有高度的灵活性和有效性。
为了弥补当前多模态模型在复杂推理能力上的不足,研究团队开发了一个多样化的机器人多模态代码生成数据集。该数据集通过借助GPT-4生成任务描述及相应的编程代码,模拟出多种机器人任务场景,并在仿真环境中执行这些任务,以建立一个覆盖广泛、类型多样的数据集。这一数据集不仅涵盖了不同的任务类型和环境,还包括多样化的物体和交互方式,确保了模型在推理和执行过程中能够处理丰富多样的场景和挑战。
此外,研究团队设计了一个监督微调过程,专门用于进一步精炼模型在机器人代码生成任务中的表现。通过这一微调过程,模型可以不断调整和优化其生成的代码质量,从而在不同的任务和场景中表现出更高的成功率。研究团队通过反复验证和优化,确保模型在实际应用中具备可靠性和适应性,能够满足复杂的机器人操作需求。

RoboCodeX的实验通过设计多样化的任务和环境来验证其方法的有效性,其采用了非常独特且新颖的实验设计,和以往的实验设计有很大区别,因此笔者这里先简单介绍一下实验部分使用的评估指标,实验通过以下几个标准来评估RoboCodeX的有效性:
●任务完成率:评估机器人在不同任务(如抓取、放置、开关抽屉等)中的成功率。任务的成功与否是评估模型生成的代码是否能够正确执行的直接指标。
●零样本学习能力:通过在未经过额外训练的机器人平台上直接执行任务,验证该框架的零样本泛化能力,说明它能够根据预先学到的知识适应新环境和新任务。
●机器人轨迹规划与执行的准确性:通过轨迹生成与实际执行的比较,评估该方法是否能够在给定的约束条件下生成安全、优化的运动轨迹,确保避障和物体操作的稳定性。
●代码生成的质量:通过观察生成的机器人控制代码的执行效果,评估其在操作复杂任务中的效率和可行性。
■3.1 跨平台的通用性测试
实验中使用了两个不同的机器人平台:Franka Emika和UR5。这两个机器人手臂的硬件配置和控制策略有所不同,但RoboCodeX通过代码生成和多模态推理方法,在不需要额外训练的情况下,能够执行零样本的操作任务。这展示了该框架的跨平台适应性,说明该方法能够在不同硬件平台上保持较高的通用性和可移植性。这对评估框架在不同机器人上的扩展性和实用性是至关重要的。
在这里插入图片描述

▲图3|跨平台的通用性测试实验©️【深蓝AI】编译

■3.2 任务复杂性的评估
通过实验任务设计——如多阶段的抓取和放置任务、将物体放入抽屉的任务,RoboCodeX被要求处理多个物体的操作和场景中的复杂物体交互。尤其是这些任务不仅需要视觉感知,还涉及路径规划、运动控制和抓取等多种操作技能。通过这些多样化的任务测试,验证了该方法能够有效地处理复杂任务,并能生成适合不同任务和场景的高质量操作代码。
这些任务从操作的精细程度(如打开/关闭抽屉)到多物体交互(如多个物体的抓取和放置),全面展示了RoboCodeX在面对复杂环境时的行为生成能力。

在这里插入图片描述

▲图4|多阶段抓取实验©️【深蓝AI】编译

■3.3 仿真任务的泛化能力
在Gazebo仿真环境中,RoboCodeX被测试于42种不同类别的物体(来自YCB和Google Scanned物体数据集),这些物体的形状、大小和材质各异。通过对这些物体执行抓取和放置任务,验证了该方法在处理不同物体类别时的泛化能力。
同时,操作来自PartNet-Mobility数据集的柜子,包括不同视角下找到相同的物体进行操作,进一步展示了RoboCodeX在面临多样化操作任务时的适应能力。这一部分实验展示了该方法对实际环境中的不同物体和任务的广泛适用性。

在这里插入图片描述

▲图5|仿真实验©️【深蓝AI】编译

■3.4 视觉感知与多模态推理的结合
RoboCodeX的一个关键特点是将视觉信息和语言指令整合到任务执行中。通过在实验中使用RGBD摄像头捕捉不同视角的图像,并将其融合为3D场景表示(TSDF),RoboCodeX能够准确理解物体的几何形状、物理属性以及任务需求。
这种多模态推理在实际任务中的表现,证明了该方法能够有效将视觉感知和语言描述转换为实际的操作行为,如图6中,提示词为“帮助玩具坐在车上”,这里的“坐”和“放”体现了玩具的不同姿态,机器人需要敏锐的区分这里的动词,并实现不同的抓取和放置,从图中来看最终玩具很好的“坐在”车上,而不是被“放在”车上,体现出了RoboCodeX的有益效果。
▲图6|视觉感知与多模态推理实验©️【深蓝AI】编译

在这里插入图片描述

本文提出了一种多模态代码生成框架,通过结合视觉与语言数据生成机器人执行代码,并提出了一种新型的树状思维方法来分解任务。此外,通过迭代微调与多模态数据集增强了模型的推理能力。通过涵盖真实世界机器人平台、仿真环境中的操作任务以及多模态信息处理的实验,全面验证了RoboCodeX框架的有效性。具体来说,实验展示了该方法在跨平台、任务复杂性、多样化物体操作及多模态信息处理中的优越表现,证明了该框架在具身智能应用中的实际应用潜力。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/57643.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

FPGA开发verilog语法基础1

文章目录 主体内容1.1 逻辑值1.2 数字进制格式1.3 数据类型1.3.1 寄存器类型1.3.2 线网类型1.3.3 参数类型1.3.4 存储器类型 参考资料 主体内容 1.1 逻辑值 1,逻辑0,表示低电平 2,逻辑1,表示高电平 3,逻辑X&#xff0…

网站安全问题都有哪些,分别详细说明

网站安全问题涉及多个方面,以下是一些常见的网站安全问题及其详细说明: 数据泄露 问题描述:数据泄露是指网站存储的用户敏感信息(如用户名、密码、信用卡信息等)被非法获取。黑客可能通过SQL注入、XSS攻击等手段窃取这…

学习分布式系统我来助你!【基本知识、基础理论、设计模式、应用场景、工程应用、缓存等全包含!】

基本知识 什么是分布式 分布式系统是一种通过网络连接多个独立计算机节点,共同协作完成任务的系统架构,具有高度的可扩展性、容错性和并发处理能力,广泛应用于大数据处理、云计算、分布式数据库等领域。 通俗来讲:分布式系统就…

git入门操作(2)

文章目录 git入门操作(2)git diff 查看差异git diff gitignore忽略文件1.在代码仓库创建这个文件2.添加对 log 文件过滤 连接远程仓库与ssh配置远程仓库和本地仓库关联步骤分支基本操作步骤命令: 合并冲突分支合并逻辑1.新建分支 dev&#xf…

网络安全威胁模型浅谈

威胁建模(Threat Modeling)是一种系统化识别和评估潜在安全威胁的方法,帮助设计和实施有效的安全策略。以下是一些常见的威胁建模方法: 1. **STRIDE**:这是微软开发的一种威胁建模方法,主要关注六种威胁类…

ONLYOFFICE 文档8.2版本已发布:PDF 协作编辑、改进界面、性能优化等更新

ONLYOFFICE 在线编辑器最新版本已经发布,其中包含30多个新功能和500多个错误修复。阅读本文了解所有更新。 关于 ONLYOFFICE 文档 ONLYOFFICE 是一个开源项目,专注于高级和安全的文档处理。坐拥全球超过 1500 万用户,ONLYOFFICE 是在线办公领…

164.最大间距

目录 题目解法1. 初始化步骤2. 创建桶3. 填充桶4. 计算最大间隔遍历桶: 最终结果结论 int minVal *min_element(nums.begin(), nums.end());这里为什么要带*号解释 * 号的作用:总结 题目 给定一个无序的数组 nums,返回 数组在排序之后&…

Tcp_Sever(线程池版本的 TCP 服务器)

Tcp_Sever(线程池版本的 TCP 服务器) 前言1. 功能介绍及展示1.1 服务端连接1.2 客户端连接(可多个用户同时在线连接服务端)1.3 功能服务1.3.1 defaultService(默认服务)1.3.2 transform(大小写转…

【Qt】qss 设置通过 addAction 添加的 QToolButton的图标

文章目录 1. 使用 QSS 和状态示例代码2. 使用 QSS 动态更改图标QSS 示例总结 在 Qt 中,QSS 不能直接用于为 QAction 设置图标,因为 QSS 主要用于样式和外观的设置,而不是用于数据(如图标)的设置。 不过,你…

HTB:Antique[WriteUP]

目录 连接至HTB服务器并启动靶机 1.After running an nmap scan on TCP ports we identify port 23 open. If we run another scan on UDP ports, which port do we find open? 2.What service is running on the UDP port that we identified in the previous question? …

HTTP Content-Type

HTTP Content-Type 概述 在HTTP协议中,Content-Type是一个非常重要的头部字段,它用于指示客户端请求的资源或服务器响应的内容的MIME类型。MIME(Multipurpose Internet Mail Extensions)类型是一种标准,用于标识文档…

Next.js14快速上手

文章目录 ***客户端***什么是Next项目在线地址官方文档项目创建查看项目目录结构app属于根目录 ***服务端***vercel数据库prisma 客户端 什么是Next Next.js 是一个用于构建全栈 Web 应用程序的 React 框架。您可以使用 React Components 来构建用户界面,并使用 Ne…

java实现日志按天打印

<?xml version"1.0" encoding"UTF-8"?> <configuration><!-- 应用名称&#xff1a;和统一配置中的项目代码保持一致&#xff08;小写&#xff09; --><property name"APP_NAME" value"mita-main"/><!--日…

京准电钟解读:NTP网络对时服务器助力厂区改造方案

京准电钟解读&#xff1a;NTP网络对时服务器助力厂区改造方案 京准电钟解读&#xff1a;NTP网络对时服务器助力厂区改造方案 1&#xff09;系统概述 时钟系统可通过网络进行管理及时间校对&#xff0c;为厂区提供高精度、全天时、全天候 的授时服务&#xff0c;统一全厂各种系统…

vue中使用 html2canvas绘制图片并下载

html2canvas 是一个非常流行的库&#xff0c;可以将 HTML 元素转换为 canvas 图像。 1. 安装 html2canvas 首先&#xff0c;你需要安装 html2canvas 库。你可以使用 npm 或 yarn 来安装&#xff1a; npm install html2canvas yarn add html2canvas 2. 在 Vue 组件中使用 h…

AudioSetCaps数据集:包含190万对来自AudioSet录音的音频-字幕对。

2024-10-21&#xff0c;由西北工业大学、西安联丰声学技术有限公司、南洋理工大学、萨里大学和中国科学院声学研究所创建了AudioSetCaps数据集&#xff0c;包含190万对来自AudioSet录音的音频-字幕对。这个数据集在音频-文本检索和自动音频字幕两项下游任务上展现了卓越的性能&…

百度翻译以及另外三款翻译工具推荐!!!

在这个全球化的时代&#xff0c;翻译工具已经成为我们生活中不可或缺的一部分。我们需要使用翻译工具来克服语言障碍&#xff0c;无论是出国旅行、商务谈判还是学术研究。那么&#xff0c;市场上有各种各样的翻译工具。有哪些好用的在线翻译软件呢&#xff1f;别担心&#xff0…

系统架构设计师教程 第2章 2.1-2计算机系统及硬件 笔记

2.1计算机系统概述 ★☆☆☆☆ 计算机系统 (Computer System) 是指用于数据管理的计算机硬件、软件及网络组成的系统。 一般指由硬件子系统和软件子系统组成的系统&#xff0c;简称为计算机。 将连接多个计算机以实现计算机间数据交换能力的网络设备&#xff0c;称为计算机网…

uniapp基础笔记

与html区别 uni-app简单来说是 vue的语法 小程序的api。 文件结构 html <!DOCTYPE html> <html><head><meta charset"utf-8" /><title></title><script type"text/javascript"></script><style t…

springboot配置文件占位符${},赋值方式

一&#xff1a;配置文件内部赋值 server:port: 48080 url: http://127.0.0.1:${server.port}这时url中的${server.port}48080 二&#xff1a;系统环境变量 有时我们在看到配置文件怎么没有找到占位符的变量的设置了&#xff0c;那就有可能调用了&#xff0c;系统的环境变量 …