字节跳动机器人研究团队:用大规模视频数据训练GR-1,机器人轻松应对复杂任务

news2024/11/28 2:39:39

最近 GPT 模型在 NLP 领域取得了巨大成功。GPT 模型首先在大规模的数据上预训练,然后在特定的下游任务的数据上微调。大规模的预训练能够帮助模型学习可泛化的特征,进而让其轻松迁移到下游的任务上。

但相比自然语言数据,机器人数据是十分稀缺的。而且机器人数据包括了图片、语言、机器人状态和机器人动作等多种模态。为了突破这些困难,过去的工作尝试用 contrastive learning [1] 和 masked modeling [2] 等方式来做预训练以帮助机器人更好的学习。

在最新的研究中,ByteDance Research 团队提出 GR-1,首次证明了通过大规模的视频生成式预训练能够大幅提升机器人端到端多任务操作方面的性能和泛化能力。实验证明这种预训练方法可以大幅提升模型表现。在极具挑战的 CALVIN 机器人操作仿真数据集上,GR-1 在 1) 多任务学习 2) 零样本场景迁移 3) 少量数据 4) 零样本语言指令迁移上都取得了 SOTA 的结果。在真机上,经过视频预训练的 GR-1 在未见过的场景和物体的表现也大幅领先现有方法。

方法

GR-1 是一个端到端的机器人操作模型,采用了 GPT 风格的 transformer 作为模型架构。GR-1 首先在大规模视频数据上进行视频预测的预训练。预训练结束后,GR-1 在机器人数据上微调。微调的训练任务包含未来帧的预测和机器人动作的预测。

在这里插入图片描述

GR-1 用来自 Ego4D [3] 数据的 8M 图片来做视频生成式预训练。在预训练阶段,GR-1 的输入包括视频片段和描述视频的文字。文字信息用 CLIP [4] 的文字编码器编码。视频中的图片用 MAE [5] 编码,然后通过 perciever resampler [6] 来减少 token 的个数。输出端 GR-1 在每一个时间戳通过学习 [OBS] token 来输出未来帧的图片。[OBS] 对应的输出通过一个 transformer 来解码成图片。在预训练阶段,GR-1 采用了 mean squared error (MSE) 的损失函数。

在机器人数据微调阶段,GR-1 的输入包括任务语言指令,机器人状态和观测图片。其中机器人状态包括 6 维机器人位姿和夹抓的开闭状态。机器人状态通过 MLP 来编码。输出包括未来帧的图片和机器人动作。语言和图片的编码方式与预训练阶段相同。输出端 GR-1 通过学习 [ACT] token 来预测下一个时间戳机器人的动作。机械臂动作的损失函数采用 smooth L1 loss;夹抓动作的损失函数采用 binary cross entropy loss。

实验

作者在 CALVIN 仿真平台上做了大量实验来验证 GR-1 的性能。CALVIN 是一个极具挑战性的机器人多任务操作仿真平台。其中包括 34 个通过语言指令的操作任务和 A, B, C, D 四个不同的环境。
在这里插入图片描述

在 ABCD->D 实验中,机器人在来自 A, B, C, D 四个环境的数据上训练,并在 D 中测试。在 ABC->D 实验中,机器人在来自 A, B, C 三个环境的数据上训练,并在 D 中测试。这个实验旨在测试 GR-1 应对零样本场景迁移的能力。测试中,机器人需要连续完成 5 个任务。表中展示了不同方法在连续完成 1,2,3,4,5 个任务的成功率和平均完成的任务数量。GR-1 在两个实验中都超过了现有方法并在零样本场景迁移上大幅领先。

在这里插入图片描述

该工作还进行了小数据集的实验以理解 GR-1 在数据比较少的时候的表现。在 10% data 实验中,作者把 34 个任务中的每个任务的训练轨迹控制在 66 条。总轨迹数约为 ABCD->D 实验中的 10%。为了测试 GR-1 应对未知语言的能力,作者用 GPT-4 为每个任务生成了 50 条新的未见过的语言指令来测试。GR-1 在小数据集和未知语言指令的设置中都超越了现有方法。
在这里插入图片描述

GR-1 真机实验包括了移动物体和开关抽屉,如下图所示:
在这里插入图片描述

移动物体实验指令包括将物体移动到盘子 / 桌面上。训练数据中包括移动一个茄子、西兰花和彩椒(如上图最左所示)。作者首先在这些训练数据中见过的物体上做实验。在这个设置下,作者还测试了加入了干扰物和背景变化的实验。

在这里插入图片描述

作者还在训练数据中未见过的物体上做了实验。未见的物体包括未见过的物体实例(一组在训练数据中未见过的茄子、西兰花和彩椒)和未见过的物体种类(西红柿和黄桃)。

在这里插入图片描述

以下为开关抽屉的实验:
在这里插入图片描述

如下表所示,GR-1 在真机实验中大幅领先对比的现有方法。

在消融实验中,作者对比了去掉未来帧预测和保留未来帧预测但去掉预训练的模型的能力。结果表明预测未来帧和预训练两者都对 GR-1 学习鲁棒的机器人操作起到了关键作用。在预测动作的同时加入未来帧的预测能帮助 GR-1 学习根据语言指令来预测未来场景变化的能力。这种能力正是机器人操作中需要的:根据人的语言指令来预测场景中应用的变化能够指导机器人动作的生成。而大规模视频数据的预训练则能帮助 GR-1 学习鲁棒可泛化的预测未来的能力。

结论

GR-1 首次证明了大规模视频生成式预训练能帮助机器人学习复杂的多任务操作。GR-1 首先在大规模视频数据上预训练然后在机器人数据上进行微调。在仿真环境和真机实验中,GR-1 都取得了 SOTA 的结果,并在极具挑战的零样本迁移上表现出鲁棒的性能。

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

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

相关文章

k8s yaml文件pod的生命周期

Pod是k8s中最小限额资源管理组件,也是最小化运行容器化的应用的资源管理对象。 Pod是一个抽象的概念,可以理解为一个或者多个容器化应用的集合。 在一个pod当中运行一个容器是最常用的方式。 在一个pod当中同时运行多个容器,在一个pod当中…

微软最新研究成果:使用GPT-4合成数据来训练AI模型,实现SOTA!

文本嵌入是各项NLP任务的基础,用于将自然语言转换为向量表示。现有的大部分方法通常采用复杂的多阶段训练流程,先在大规模数据上训练,再在小规模标注数据上微调。此过程依赖于手动收集数据制作正负样本对,缺乏任务的多样性和语言多…

王中阳Go赠书活动第一期:《TVM编译器原理与实践》

文章目录 前言TVM编译器的实现过程关于《TVM编译器原理与实践》编辑推荐内容简介作者简介图书目录书中前言/序言《TVM编译器原理与实践》全书速览入手《TVM编译器原理与实践》传送门:结束语参加抽奖 前言 随着人工智能的发展,计算机视觉、自然语言处理和…

算法第4版 第2章排序

综述:5个小节,四种排序应用,初级排序、归并排序、快速排序、优先队列 2.1.初级排序 排序算法模板,less(), exch(), 排序代码在sort()方法中; 选择排序:如升序排列,1.找到数组中最小的元素&am…

2024年R1快开门式压力容器操作证模拟考试题库及R1快开门式压力容器操作理论考试试题

题库来源:安全生产模拟考试一点通公众号小程序 2024年R1快开门式压力容器操作证模拟考试题库及R1快开门式压力容器操作理论考试试题是由安全生产模拟考试一点通提供,R1快开门式压力容器操作证模拟考试题库是根据R1快开门式压力容器操作最新版教材&#…

【IPC通信--消息队列】

消息队列(也叫做报文队列)是一个消息的链表。可以把消息看作一个记录,具有特定的格式以及特定的优先级。对消息队列有写权限的进程可以向消息队列中按照一定的规则添加新消息;对消息队列有读权限的进程则可以从消息队列中读走消息…

优秀案例 | 嘉吉动物营养虚拟人IP“小嘉”, 虚拟动力提供常态化高效率短视频制作工具

在流量见顶的时代 品牌宣传逐渐精细化 塑造一个具备亲和力及创新感的虚拟IP 可以持续扩大品牌影响力 与挖掘品牌更多可能性 「嘉吉动物营养」紧随营销趋势,通过广州虚拟动力「虚拟人运营套装」,将虚拟人IP运营与品牌宣传相结合,带动品牌形…

从音乐“卷”到直播,涨价也救不了腾讯音乐

继6月大规模涨价之后,腾讯音乐娱乐集团(下称“腾讯音乐”,01698.HK)旗下QQ音乐会员再次涨价。 「不二研究」据腾讯音乐三季报发现:在会员数这一关键指标上,腾讯音乐在三季度的月活跃用户从去年同期的6.20亿…

STM32深入系列02——BootLoader分析与实现

文章目录 1. STM32程序升级方法1.1 ST-Link / J-link下载1.2 ISP(In System Programing)1.3 IAP(In Applicating Programing)1.3.1 正常程序运行流程1.3.2 有IAP时程序运行流程 2. STM32 Bootloader实现2.1 方式一:Boo…

开启Android学习之旅-2-架构组件实现数据列表及添加(kotlin)

Android Jetpack 体验-官方codelab 1. 实现功能 使用 Jetpack 架构组件 Room、ViewModel 和 LiveData 设计应用;从sqlite获取、保存、删除数据;sqlite数据预填充功能;使用 RecyclerView 展示数据列表; 2. 使用架构组件 架构组…

HarmonyOS4.0系统性深入开发16进程模型概述

进程模型概述 HarmonyOS的进程模型: 应用中(同一包名)的所有UIAbility运行在同一个独立进程中。WebView拥有独立的渲染进程。 基于HarmonyOS的进程模型,系统提供了公共事件机制用于一对多的通信场景,公共事件发布者…

「网络安全术语解读」SARIF详解

引言:什么是SARIF?它的产生背景是什么?SARIF主要包含哪些内容?使用SARIF有哪些好处? 1. SARIF简介 SARIF(Static Analysis Results Interchange Format ,静态分析结果交换格式)是一…

PTA——猴子吃桃问题

一只猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个;第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半加一个。到第N天早上想再吃时,见只剩下一个桃子了…

BOM介绍

文章目录 1、简介主要作用 2、BOM的组成2.1 窗口对象window2.1.1 window对象特点2.1.2 window作用域2.1.3 window对象常见方法**第一类:系统对话框**第二类:控制浏览器窗口方法第三类:与定时器有关的方法 1、简介 BOM(Browser Ob…

docker安裝gocd-server,并配置gitlab授权登录

gocd的地址:Installing GoCD server on Windows | GoCD User Documentation gocd文档:GitHub - gocd/docker-gocd-server: Docker server image for GoCD 一、docker拉取gocd镜像 #拉取server镜像 docker pull gocd/gocd-server:v21.1.0docker pull g…

3的幂00

题目链接 3的幂 题目描述 注意点 无 解答思路 不断除以3直到除数或余数为0为止,判断除完后的数字是否为1 代码 class Solution {public boolean isPowerOfThree(int n) {while (n / 3 ! 0) {if (n % 3 ! 0) {return false;}n n / 3;}return n 1;} }关键点 …

springmvc内嵌tomcat、tomcat整合springmvc、自研国产web中间件

springmvc内嵌tomcat、tomcat整合springmvc、自研国产web中间件 这是由于公司老项目转化springboot存在太多坑,特别是hibernate事务一条就坑到跑路,你又不想搞没听说过的国产中间件兼容,又不想搞weblogic、WebSphere等中间件的适配&#xff…

【蓝桥杯软件赛 零基础备赛20周】第7周——二叉树

文章目录 1 二叉树概念2 二叉树的存储和编码2.1 二叉树的存储方法2.2 二叉树存储的编码实现2.3 二叉树的极简存储方法 3 例题4 习题 前面介绍的数据结构数组、队列、栈,都是线性的,它们存储数据的方式是把相同类型的数据按顺序一个接一个串在一起。简单的…

MPL3115A2大气压温度采集芯片的工作原理与特点详解

目录 一、引言 二、MPL3115A2主要特点和功能 三、主要优势 3.1 内部自动补偿 3.2 FIFO 四、硬件原理图 4.1 硬件连接 五、软件配置 六、资料获取 一、引言 MPL3115A2是一款高精度的大气压力传感器,能够测量大气压力、海拔高度和温度。它采用了MEMS&#xf…

Redis内存策略:「过期Key删除策略」+ 「内存淘汰策略」

Redis之所以性能强,最主要的原因就是基于内存存储,然而单节点的Redis其内存大小不宜过大,否则会影响持久化或主从同步的性能。 Redis内存满了,会发生什么? 在Redis的运行内存达到了某个阈值,就会触发内存…