谷歌具身智能最新进展:RT-H 机器人通用灵巧抓取

随着 GPT-4 等大型语言模型与机器人研究的结合愈发紧密,人工智能正在越来越多地走向现实世界,因此具身智能相关的研究也正受到越来越多的关注。在众多研究项目中,谷歌的「RT」系列机器人始终走在前沿(参见《大模型正在重构机器人,谷歌 Deepmind 这样定义具身智能的未来》)。

在这里插入图片描述

谷歌 DeepMind 去年 7 月推出的 RT-2:全球第一个控制机器人的视觉 - 语言 - 动作(VLA)模型。只需要像对话一样下达命令,它就能在一堆图片中辨认出霉霉,并送给她一罐可乐。

如今,这个机器人又进化了。最新版的 RT 机器人名叫「RT-H」,它能通过将复杂任务分解成简单的语言指令,再将这些指令转化为机器人行动,来提高任务执行的准确性和学习效率。举例来说,给定一项任务,如「盖上开心果罐的盖子」和场景图像,RT-H 会利用视觉语言模型(VLM)预测语言动作(motion),如「向前移动手臂」和「向右旋转手臂」,然后根据这些语言动作,预测机器人的行动(action)。

在这里插入图片描述

这个行动层级(action hierarchy)对于提高机器人完成任务的准确性和学习效率非常有帮助,使得 RT-H 在一系列机器人任务中的表现都优于 RT-2。

以下是论文的详细信息。

论文概览

论文标题:RT-H: Action Hierarchies Using Language

论文链接:https://arxiv.org/pdf/2403.01823.pdf

项目链接:https://rt-hierarchy.github.io/

语言是人类推理的引擎,它使我们能够将复杂概念分解为更简单的组成部分,纠正我们的误解,并在新环境中推广概念。近年来,机器人也开始利用语言高效、组合式的结构来分解高层次概念、提供语言修正或实现在新环境下的泛化。

这些研究通常遵循一个共同的范式:面对一个用语言描述的高层任务(如「拿起可乐罐」),它们学习将观察和语言中的任务描述映射到低层次机器人行动的策略,这需要通过大规模多任务数据集实现。语言在这些场景中的优势在于编码类似任务之间的共享结构(例如,「拿起可乐罐」与「拿起苹果」),从而减少了学习从任务到行动映射所需的数据。然而,随着任务变得更加多样化,描述每个任务的语言也变得更加多样(例如,「拿起可乐罐」与「倒一杯水」),这使得仅通过高层次语言学习不同任务之间的共享结构变得更加困难。

为了学习多样化的任务,研究者的目标是更准确地捕捉这些任务之间的相似性。

他们发现语言不仅可以描述高层次任务,还能细致说明完成任务的方法 —— 这种表示更细腻,更贴近具体动作。例如,「拿起可乐罐」这一任务可以分解为一系列更细节的步骤,即「语言动作(language motion)」:首先「手臂向前伸」,接着「抓紧罐子」,最后「手臂上举」。研究者的核心洞见是,通过将语言动作作为连接高层次任务描述与底层次动作之间的中间层,可以利用它们来构建一个通过语言动作形成的行动层级。

建立这种行动层级有几大好处:

它使不同任务之间在语言动作层面上能够更好地共享数据,使得语言动作的组合和在多任务数据集中的泛化性得到增强。例如,「倒一杯水」与「拿起可乐罐」虽在语义上有所不同,但在执行到捡起物体之前,它们的语言动作完全一致。

语言动作不是简单的固定原语,而是根据当前任务和场景的具体情况通过指令和视觉观察来学习的。比如,「手臂向前伸」并没具体说明移动的速度或方向,这取决于具体任务和观察情况。学习到的语言动作的上下文依赖性和灵活性为我们提供了新的能力:当策略未能百分百成功时,允许人们对语言动作进行修正(见图 1 中橙色区域)。进一步地,机器人甚至可以从这些人类的修正中学习。例如,在执行「拿起可乐罐」的任务时,如果机器人提前关闭了夹爪,我们可以指导它「保持手臂前伸的姿势更久一些」,这种在特定场景下的微调不仅易于人类指导,也更易于机器人学习。

在这里插入图片描述

鉴于语言动作存在以上优势,来自谷歌 DeepMind 的研究者设计了一个端到端的框架 ——RT-H(Robot Transformer with Action Hierarchies,即使用行动层级的机器人 Transformer),专注于学习这类行动层级。RT-H 通过分析观察结果和高层次任务描述来预测当前的语言动作指令,从而在细节层面上理解如何执行任务。接着,利用这些观察、任务以及推断出的语言动作,RT-H 为每一步骤预测相应的行动,语言动作在此过程中提供额外的上下文,帮助更准确地预测具体行动(图 1 紫色区域)。

此外,他们还开发了一种自动化方法,从机器人的本体感受中提取简化的语言动作集,建立了包含超过 2500 个语言动作的丰富数据库,无需手动标注。

RT-H 的模型架构借鉴了 RT-2,后者是一个在互联网规模的视觉与语言数据上共同训练的大型视觉语言模型(VLM),旨在提升策略学习效果。RT-H 采用单一模型同时处理语言动作和行动查询,充分利用广泛的互联网规模知识,为行动层级的各个层次提供支持。

在实验中,研究者发现使用语言动作层级在处理多样化的多任务数据集时能够带来显著的改善,相比 RT-2 在一系列任务上的表现提高了 15%。他们还发现,对语言动作进行修正能够在同样的任务上达到接近完美的成功率,展示了学习到的语言动作的灵活性和情境适应性。此外,通过对模型进行语言动作干预的微调,其表现超过了 SOTA 交互式模仿学习方法(如 IWR)50%。最终,他们证明了 RT-H 中的语言动作能够更好地适应场景和物体变化,相比于 RT-2 展现出了更优的泛化性能。

RT-H 架构详解

为了有效地捕获跨多任务数据集的共享结构(不由高层次任务描述表征),RT-H 旨在学习显式利用行动层级策略。

具体来说,研究团队将中间语言动作预测层引入策略学习中。描述机器人细粒度行为的语言动作可以从多任务数据集中捕获有用的信息,并可以产生高性能的策略。当学习到的策略难以执行时,语言动作可以再次发挥作用:它们为与给定场景相关的在线人工修正提供了直观的界面。经过语言动作训练的策略可以自然地遵循低水平的人工修正,并在给定修正数据的情况下成功完成任务。此外,该策略甚至可以根据语言修正数据进行训练,并进一步提高其性能。

如图 2 所示,RT-H 有两个关键阶段:首先根据任务描述和视觉观察预测语言动作,然后根据预测的语言动作、具体任务、观察结果推断精确的行动。

在这里插入图片描述

RT-H 使用 VLM 主干网络并遵循 RT-2 的训练过程来进行实例化。与 RT-2 类似,RT-H 通过协同训练利用了互联网规模数据中自然语言和图像处理方面的大量先验知识。为了将这些先验知识合并到行动层级的所有层次中,单个模型会同时学习语言动作和行动查询。

实验结果

为了全面评估 RT-H 的性能,研究团队设置了四个关键的实验问题:

Q1(性能):带有语言的行动层级是否可以提高多任务数据集上的策略性能?

Q2(情境性):RT-H 学得的语言动作是否与任务和场景情境相关?

Q3(纠正):在语言动作修正上进行训练比远程(teleoperated)修正更好吗?

Q4(概括):行动层级是否可以提高分布外设置的稳健性?

数据集方面,该研究采用一个大型多任务数据集,其中包含 10 万个具有随机对象姿态和背景的演示样本。该数据集结合了以下数据集:

Kitchen:RT-1 和 RT-2 使用的数据集,由 70K 样本中的 6 个语义任务类别组成。

Diverse:一个由更复杂的任务组成的新数据集,具有超过 24 个语义任务类别,但只有 30K 样本。

该研究将此组合数据集称为 Diverse+Kitchen (D+K) 数据集,并使用自动化程序对其进行语言动作标记。为了评估在完整 Diverse+Kitchen 数据集上训练的 RT-H 的性能,该研究针对八项具体任务进行了评估,包括:

1)将碗直立放在柜台上

2)打开开心果罐

3)关闭开心果罐

4)将碗移离谷物分配器

5)将碗放在谷物分配器下方

6)将燕麦片放入碗中

7)从篮子里拿勺子

8)从分配器中拉出餐巾

选择这八个任务是因为它们需要复杂的动作序列和高精度。

在这里插入图片描述

下表给出了在 Diverse+Kitchen 数据集或 Kitchen 数据集上训练时 RT-H、RT-H-Joint 和 RT-2 训练检查点的最小 MSE。RT-H 的 MSE 比 RT-2 低大约 20%,RTH-Joint 的 MSE 比 RT-2 低 5-10%,这表明行动层级有助于改进大型多任务数据集中的离线行动预测。RT-H (GT) 使用 ground truth MSE 指标,与端到端 MSE 的差距为 40%,这说明正确标记的语言动作对于预测行动具有很高的信息价值。

在这里插入图片描述

图 4 展示了几个从 RT-H 在线评估中获取的上下文动作示例。可以看到,相同的语言动作通常会导致完成任务的行动发生微妙的变化,同时仍尊重更高级别的语言动作。

在这里插入图片描述

如图 5 所示,研究团队通过在线干预 RT-H 中的语言动作来展示 RT-H 的灵活性。

在这里插入图片描述

该研究还用比较实验来分析修正的作用,结果如下图 6 所示:

在这里插入图片描述

如图 7 所示,RT-H 和 RT-H-Joint 对场景变化明显更加稳健:

在这里插入图片描述

实际上,看似不同的任务之间具备一些共享结构,例如这些任务中每一个都需要一些拾取行为来开始任务,并且通过学习跨不同任务的语言动作的共享结构,RT-H 可以完成拾取阶段而无需任何修正。

在这里插入图片描述

即使当 RT-H 不再能够泛化其语言动作预测时,语言动作修正通常也可以泛化,因此只需进行一些修正就可以成功完成任务。这表明语言动作在扩大新任务数据收集方面的潜力。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

实现React组件之间的数据共享:使用React Redux

实现React组件之间的数据共享:使用React Redux 在复杂的React应用中,组件之间的数据共享是必不可少的。为了解决这个问题,可以使用React Redux来管理应用的状态,并实现组件之间的数据共享。在本文中,我们将介绍如何使…

修改网站源码,给电子商城的商品添加图片时商品id为0的原因

修改网站源码,给电子商城的商品添加图片时商品id为0的原因。花了几个小时查找原因。后来,由于PictureControl.class.php是复制CourseControl.class.php而来,于是对比了这两个文件,在CourseControl.class.php找到了不一样的关键几条…

Svg Flow Editor 原生svg流程图编辑器(三)

系列文章 Svg Flow Editor 原生svg流程图编辑器(一) Svg Flow Editor 原生svg流程图编辑器(二) Svg Flow Editor 原生svg流程图编辑器(三) 实现对齐辅助线 在 logicFlow 中,辅助线的实现是通…

SpringCloudGateway之高性能篇

SpringCloudGateway之高性能篇 背景 在公司的开放平台中,为了统一管理对外提供的接口、处理公共逻辑、实现安全防护及流量控制,确实需要一个API网关作为中间层。 场景 统一接入点: API网关作为所有对外服务的单一入口,简化客户端对内部系统…

基于python+vue渔船出海及海货统计系统的设计与实现flask-django-php-nodejs

当今社会已经步入了科学技术进步和经济社会快速发展的新时期,国际信息和学术交流也不断加强,计算机技术对经济社会发展和人民生活改善的影响也日益突出,人类的生存和思考方式也产生了变化。传统渔船出海及海货统计采取了人工的管理方法&#…

2024.3.22 使用nginx在window下运行前端页面

2024.3.22 使用nginx在window下运行前端页面 使用nginx可以在本地运行前端程序,解决本地前后端程序跨域问题,是个前期编程及测试的好办法。 nginx下载 直接在官网下载 本次选择了1.24版本(stable version) nginx安装 解压后…

低压MOS在无人机上的应用-REASUNOS瑞森半导体

一、前言 无人机的结构由机身、动力系统、飞行控制系统、链路系统、任务载荷等几个方面组成的。 无人机动力系统中的电机,俗称“马达”,是无人机的动力来源,无人机通过改变电机的转速来改变无人机的飞行状态。即改变每个电机的速度&#xf…

vue+element 前端实现增删查改+分页,不调用后端

前端实现增删查改分页&#xff0c;不调用后端。 大概就是对数组内的数据进行增删查改分页 没调什么样式&#xff0c;不想写后端&#xff0c;当做练习 <template><div><!-- 查询 --><el-form :inline"true" :model"formQuery">&l…

牛客NC403 编辑距离为一【中等 模拟法 Java,Go,PHP】

题目 题目链接&#xff1a; https://www.nowcoder.com/practice/0b4b22ae020247ba8ac086674f1bd2bc 思路 注意&#xff1a;必须要新增一个&#xff0c;或者删除一个&#xff0c;或者替换一个&#xff0c;所以不能相等1.如果s和t相等&#xff0c;返回false,如果s和t长度差大于1…

全栈的自我修养 ———— uniapp中加密方法

直接按部就班一步一步来 一、首先创建一个js文件填入AES二、创建加密解密方法三、测试 一、首先创建一个js文件填入AES 直接复制以下内容 /* CryptoJS v3.1.2 code.google.com/p/crypto-js (c) 2009-2013 by Jeff Mott. All rights reserved. code.google.com/p/crypto-js/wi…

HTML_CSS学习:表格、表单、框架标签

一、表格_跨行与跨列 1.相关代码 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>表格_跨行与跨列</title> </head> <body><table border"1" cellspacing"0&qu…

5 线程网格、线程块以及线程(1)

5.1 简介 英伟达为它的硬件调度方式选择了一种比较有趣的模型&#xff0c;即SPMD(单程序多数据Single Program&#xff0c;Multiple Data)&#xff0c;属于SIMD(单指令多数据)的一种变体。从某些方面来说&#xff0c;这种调度方式的选择是基于英伟达自身底层硬件的实现。并行编…

GPT-5可能会在今年夏天作为对ChatGPT的“实质性改进”而到来

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

代码随想录算法训练营第十六天|104.二叉树的最大深度、559.n叉树的最大深度、111.二叉树的最小深度、222.完全二叉树的节点个数

代码随想录算法训练营第十六天|104.二叉树的最大深度、559.n叉树的最大深度、111.二叉树的最小深度、222.完全二叉树的节点个数 104.二叉树的最大深度 给定一个二叉树 root &#xff0c;返回其最大深度。 二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数…

为什么物联网网关需要边缘计算能力?边缘计算应用场景有哪些?

【前言】本篇为物联网硬件系列学习笔记&#xff0c;分享学习&#xff0c;欢迎评论区交流~ 什么是边缘计算&#xff1f; 边缘计算&#xff08;Edge Computing&#xff09;是一种分布式计算范式&#xff0c;旨在将计算和数据存储功能放置在接近数据源或终端设备的边缘位置&#…

OSError: We couldn‘t connect to ‘https://huggingface.co‘ to load this file

想折腾bert的同学&#xff0c;应该也遇到这个问题。 一、报错信息分析 完整报错信息&#xff1a;OSError: We couldnt connect to https://huggingface.co to load this file, couldnt find it in the cached files and it looks like google/mt5-small is not the path to a…

扶贫惠农推介系统|基于jsp技术+ Mysql+Java+ B/S结构的扶贫惠农推介系统设计与实现(可运行源码+数据库+设计文档)

推荐阅读100套最新项目 最新ssmjava项目文档视频演示可运行源码分享 最新jspjava项目文档视频演示可运行源码分享 最新Spring Boot项目文档视频演示可运行源码分享 2024年56套包含java&#xff0c;ssm&#xff0c;springboot的平台设计与实现项目系统开发资源&#xff08;可…

GPT-5揭秘:Lex Fridman与Sam Altman播客热议,AGI时代的新变革即将来临!

嘿&#xff0c;朋友们&#xff0c;你们知道吗&#xff1f;Lex Fridman和Sam Altman又聚在一起了&#xff0c;这次是在播客上。 在播客中&#xff0c;他们聊了很多&#xff0c;包括董事会的幕后故事、Elon Musk的诉讼案&#xff0c;甚至还提到了Ilya、Sora这些名字。 但真正让…

3.21作业

1、使用sqlite3实现简易的学生管理系统 #include<myhead.h>//封装添加学生信息函数 int do_add(sqlite3 *ppDb) {//准备sql语句int add_numb 0;char add_name[20] "";double add_socre 0;printf("输入学号:");scanf("%d",&add_num…

React 系列 之 React Hooks(一) JSX本质、理解Hooks

借鉴自极客时间《React Hooks 核心原理与实战》 JSX语法的本质 可以认为JSX是一种语法糖&#xff0c;允许将html和js代码进行结合。 JSX文件会通过babel编译成js文件 下面有一段JSX代码&#xff0c;实现了一个Counter组件 import React from "react";export defau…