谷歌RT-1模型让一个机器人干几份活,700条指令成功率达97%
来源:51CTO.COM
时间:2023-05-01 20:06:22 124浏览 收藏
本篇文章主要是结合我之前面试的各种经历和实战开发中遇到的问题解决经验整理的,希望这篇《谷歌RT-1模型让一个机器人干几份活,700条指令成功率达97%》对你有很大帮助!欢迎收藏,分享给更多的需要的朋友学习~
机器学习 (ML) 研究的多个子领域(如计算机视觉和自然语言处理)的许多最新进展,都是建立在利用大型、多样化的数据集和能够有效吸收所有数据的表达模型。
但这种高性能模型方法在机器人技术领域的应用却相对较少。
原因很简单,首先缺乏大规模和多样化的机器人数据,限制了模型吸收广泛机器人经验的能力。
其次,缺乏可从此类数据集中学习并有效泛化的表达力强、可扩展且速度足够快的实时推理模型。
而这次,谷歌推出的Robotics Transformer 1 (简称RT-1)是一种多任务模型,它可以标记机器人输入和输出动作(例如,相机图像、任务指令和电机命令)以在运行时实现高效推理,并使实时控制成为可能。
RT-1吸收了大量数据,让机器人胜任不同环境下的多种任务,从而提升机器性能和泛化能力
简单来说,就是让一个机器人同时干几份活。
该模型是在一个包含130k个episode的大型真实世界机器人数据集上训练的,该数据集涵盖700多项任务,使用Everyday Robots (EDR) 的13台机器人在17个月内收集而成。
结果表明,与现有技术相比,RT-1可以显著改进对新任务、环境和对象的零样本泛化。
Github链接小编也贴心地放在下面啦,有兴趣的小伙伴赶紧去看看。
https://github.com/google-research/robotics_transformer
RT-1模型具体原理
RT-1建立在Transformer架构上,它能从机器人的相机中获取图像历史记录并以自然语言表达的任务描述作为输入,同时直接输出标记化的动作。
RT-1的架构类似于仅解码器序列模型(decoder-only sequence model)的架构,该模型针对具有因果掩蔽的标准分类交叉熵目标进行训练。
该模型将文本指令和一组图像作为输入,通过预训练的 FiLM EfficientNet 模型将它们编码为标记,并通过 TokenLearner 对其进行压缩,然后经Transformer输出动作标记。
其主要功能包括:图像词元化(Image Tokenization)、动作词元化(Action Tokenization)和词元压缩(Token Compression )。
- 图像tokenization:我们通过在 ImageNet 上预训练的 EfficientNet-B3 模型传递图像,然后将生成的 9×9×512 空间特征图展平为81个标记。图像分词器以自然语言任务指令为条件,并使用初始化为身份的 FiLM 层在早期提取与任务相关的图像特征。
- 动作tokenization:机器人的动作维度是手臂运动的 7 个变量(x、y、z、滚动、俯仰、偏航、夹具打开),3 个基本运动变量(x、y、偏航),以及一个额外的离散变量在三种模式之间切换。
- Token压缩:该模型自适应地选择图像Token的软组合,这些组合可以根据它们对使用元素注意模块TokenLearner 进行学习的影响进行压缩,从而使推理速度提高2.4倍以上。
我们使用人类通过远程操作提供的演示,并用机器人执行指令的文本描述对每一集进行注释。
而这个机器人执行任务靠的是,「7个自由度的手臂、一个两指夹持器和一个移动底座」。
数据集中表示的一组高级技能包括拾取和放置物品、打开和关闭抽屉、将物品放入和取出抽屉、将细长的物品直立放置、将物体打翻等操作。
整合异质数据源
为进一步推动RT-1,我们使用从另一个机器人收集的数据对其进行训练,以测试 (1) 模型在出现新数据源时是否保持其在原始任务上的性能,以及 (2) 模型是否在泛化方面得到提升具有新的和不同的数据。
我们转换收集的数据以匹配我们使用EDR收集的原始数据集的动作规范和边界,并用任务指令标记每个数据集。
然后在每个训练批次中将Kuka数据与EDR数据以1:2的比例混合,以控制原始EDR技能的回归。
图为从多个机器人收集数据时的训练方法
结果表明,RT-1能够通过观察其他机器人的经验来获得新技能。
当RT-1在Kuka的垃圾箱拣选数据和机器人教室的现有EDR数据上进行训练时,仅使用 EDR 数据进行训练时的22% 「准确率跃升了近2倍」,达到39%。
当单独使用来自Kuka的拣选数据训练RT-1,并使用来自EDR机器人的拣选数据对其进行评估时,准确率为0%。
实验结果
为更好地理解RT-1的泛化能力,我们针对三个基线研究了它的性能:Gato、BC-Z和BC-Z XL(即与 RT-1 具有相同数量参数的 BC-Z)。
并将其分为四个类别:
图为测试环境下RT-1与对照组的表现
- 可见任务表现(Seen tasks performance):在训练期间观测的任务表现;
- 不可见任务表现(Unseen tasks performance):在看不见的任务上的表现,其中技能和对象在训练集中是分开的;
- 稳健性(Robustness):在干扰因素介入期间的性能和背景变化(新厨房、照明、背景场景)的性能表现
- 远景场景(long-horizon scenarios):真实厨房中SayCan类自然语言指令的执行
RT-1 的高性能和泛化能力可以通过SayCan实现远距离、移动操作任务。
SayCan的工作原理是将语言模型置于机器人可供性中,并利用少量提示将以自然语言表达的长期任务分解为一系列低级技能。
我们在两个真实厨房中使用RT-1和其他两个基线(SayCan with Gato 和 SayCan with BC-Z)评估SayCan。
下面,“Kitchen2”构成了比“Kitchen1”更具挑战性的泛化场景。用于收集大部分训练数据的模拟厨房是在 Kitchen1 之后建模的。
可以看到,SayCan with RT-1在 Kitchen1中的执行成功率为 67%,优于其他基线。
由于新的看不见的厨房带来的泛化困难,SayCan with Gato 和 SayCan with BCZ 的性能下降,但RT-1的成功率并没有因此下降。
以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于科技周边的相关知识,也可关注golang学习网公众号。
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
334 收藏
-
357 收藏
-
443 收藏
-
202 收藏
-
274 收藏
-
358 收藏
-
330 收藏
-
380 收藏
-
104 收藏
-
236 收藏
-
302 收藏
-
314 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 508次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 497次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 484次学习