当前位置: 首页 > article >正文

GR2——在大规模视频数据集上预训练且机器人数据上微调,随后预测动作轨迹和视频(含GR1详解)

前言

上个月的24年10.9日,我在朋友圈看到字节发了个机器人大模型GR2,立马去看了下其论文(当然了,本质是个技术报告)

那天之后,我就一直想解读这个GR2来着

然,意外来了,如此文《OmniH2O——通用灵巧且可全身远程操作并学习的人形机器人(其前身H2O是HumanPlus的重要参考)》开头所说

由于我司「七月在线」自今年年初以来,一直在针对各个工厂、公司、客户特定的业务场景,做解决方案或定制开发,所以针对每一个场景,我们都会反复考虑“用什么样的机器人、什么样的技术方案”做定制开发

  1. 于此,便不可避免的追踪国内外最前沿的机器人技术进展,本来准备在上一篇博客《VLM驱动机器狗——从UMI on Legs到Helpful DoggyBot:分别把机械臂装到机器狗背上、夹爪装到机器狗嘴里》之后,解读今天上午看到的字节刚发的机器人大模型GR2

    当时,还发微博说,“头一次看paper不看正文,而是直奔其References:​看有没有我预想中的文献,说明咱看paper的能力相比去年强很多了
  2. 没想到晚上,一在上海一机器人公司的朋友,又发我了一个链接:OmniH2O: Universal and Dexterous Human-to-Humanoid Whole-Body Teleoperation and Learning,并说这个挺可以的

在字节机器人大模型GR2之前,故先解读这个OmniH2O及其前身H2O

  1. 可在解读OmniH2O的过程中,发现了MDM这个方法挺有用的,包括后续的RobotMDM,加之还有朋友私我UCSD的Exbody相关的问题,故又去写了这篇文章
    从MDM、RobotMDM到UCSD的Exbody——人体运动扩散模型:赋能机器人的训练
  2. 后来,再考虑到想阐述清楚GR2,则得先阐述好通过学习人类视频训练机器人的方法,于是又去写了下面这篇SeeDo(其实在SeeDo之前,我还写了篇对OpenAI o1的解读,我可太忙了,^_^)
    从视频中学习的SeeDo:VLM解释视频并生成规划、代码(含通过RGB视频模仿的人形机器人OKAMI、DexMV)
  3. 然机器人领域实在是发展太快了,我自己在视频号上看到了iDP3(且友人丁研究员也和我说了这个iDP3),于此便有了本文
    iDP3——改进3D扩散策略以赋能人形机器人的训练:不再依赖相机校准和点云分割(含DP3、Diff-Control、ControlNet详解)
  4. 再后来,又和友人丁研究员在交流UMI、fastumi的过程中,聊到了清华高阳团队的一篇论文
    于此,又有了这篇文章
    机器人领域中的scaling law:通过复现斯坦福机器人UMI——探讨数据规模化定律(含UMI的复现关键)
  5. 最后,昨天看到了UC伯克利的HIL-SERL,于此,又有了这篇对HIL-SERL的解读
    HIL-SERL——UC伯克利提出的通用灵巧机器人框架:结合视觉和人类示教与纠正的RL方法(可组装电脑主板和插拔USB)

真是疯狂的10月份

  • 一方面,我和项目组各种疯狂推进我司各个大模型项目的开发(继论文审稿、翻译、修订之后,正在推进论文对话、idea提炼,以及针对视频的字幕生成、视频总结、视频VLM问答)
  • 一方面,我疯狂解读各个机器人paper
    毕竟,无论想搞啥,比如机器人,当看了一个领域的100篇paper之后,算法上便基本没有太多秘密了,毕竟,很多是工程优化的问题
    当然了,为免歧义,秘密还是有的 只是没有太多了,所以得始终不断追最前沿paper

好在如今总算可以写字节的这个GR2

第一部分 GR-2:具备网络规模知识的生成式视频-语言-动作模型

1.1 GR1

之前的工作GR-1[5]中利用大规模文本-视频数据进行视频生成预训练。他们的动机是他们相信视频包含有关环境动态以及环境应如何根据文本描述演变的宝贵信息,而这些信息可以在下游策略学习中促进动作预测

与GR-1[5]相比,GR-2将预训练视频的数量从800万扩展到3800万,从而在各种未见过的场景中提升了泛化能力

// 待更

1.2 GR2的两阶段训练与其在真实机器人上的部署

1.2.1 GR2的两阶段训练:视频生成预训练和机器人数据微调

由于在视频生成上进行预训练可以有效地将视频中的有价值知识转移到策略学习中,从而提高动作预测能力

他们在一个广泛的视频数据集上对GR-2进行了预训练,该数据集涵盖了不同背景下(家庭、户外、工作场所、休闲等)的多样化日常人类活动

主要的预训练目标很简单:给定一个文本描述和一个视频帧,模型根据文本预测后续帧。通过掌握这一自回归预测任务,可以让模型用于捕捉关键的时间动态和语义信息

如下图所示,GR-2 经过两个训练阶段:视频生成预训练和机器人数据微调

最终,通过对机器人轨迹的微调,GR-2展示了学习多种操作任务并适应新场景的能力,包括新的背景、环境、物体和任务。值得注意的是,GR-2能够高效地从仅有5,000条轨迹的数据集中学习超过100项任务(平均每项任务50条轨迹)

且R-2基于GR-1 [5]进行了几个关键改进

  1. GR-2在3800万条文本-视频数据(超过500亿个token)上进行了预训练,能够完成超过100项操作任务,并执行超过100个物体的抓取任务。它显著扩大了预训练数据和任务的数量
  2. 开发了一种新颖的模型架构,使得从预训练中获得的知识可以无损地无缝转移到下游微调。该模型在处理多任务和具有挑战性的泛化环境中表现出强大的可扩展性
  3. 为了在真实机器人上进行部署,他们引入了一种全身控制WBC)算法,该算法结合了轨迹优化和实时运动跟踪

具体来说,他们希望训练一个通用策略\pi,它将语言指令l、环境观察序列\mathbf{O}_{t-h: t}和机器人状态序列\mathbf{S}_{t-h: t}作为输入,该策略以端到端的方式输出一个动作轨迹\mathbf{a}_{t: t+k}

\mathbf{a}_{t: t+k}=\pi\left(l, \mathbf{o}_{t-h: t}, \mathbf{s}_{t-h: t}\right)

其中,hk分别表示观测历史和动作轨迹的长度

1.2.2 模型与训练:先预训练、后微调,最后通过CVAE生成动作轨迹

如之前所述,GR-2是一种以语言为条件的GPT风格视觉操作策略模型(包含230M个参数,其中95M是可训练的),训练过程分为两个阶段:

  • 视频生成预训练
    在预训练阶段,在一个精心挑选的大规模视频数据集上训练GR-2
  • 机器人数据微调
    之后,在机器人数据上微调GR-2,以同时预测动作轨迹和视频

\pi\left(l, \mathbf{o}_{t-h: t}, \mathbf{s}_{t-h: t}\right) \rightarrow \mathbf{o}_{t+1}, \mathbf{a}_{t: t+k}

但在预训练之前,需要先解决数据输入的问题

GR-2的输入包括语言指令、一系列视频帧和一系列机器人状态,过程中,他们

  1. 对于语言指令
    使用一个冻结的文本编码器 [Learning transferable visual models from natural language supervision,说白了,就是CLIP,关于CLIP的介绍详见此文的第一部分] 来对语言指令进行tokenize
  2. 对于视频中的图像帧
    使用 VQGAN [7,即Taming transformers for high-resolution image synthesis] 将每个图像转换为离散的token
    VQGAN 在大量互联网数据以及领域内的机器人数据上进行训练,并在训练过程中保持冻结。这种方法有助于快速训练并支持生成高质量的视频
  3. 对于机器人状态
    其包含末端执行器的位置和旋转,以及二元夹持器状态。这些状态通过线性层进行编码,这些层在微调阶段是可训练的

解决了输入的问题之后,接下来便可以做两阶段训练:即先预训练,后微调

  • 在预训练阶段的目标是让GR-2具备预测未来视频的能力。这使得模型能够建立一个强大的先验知识,用于预测未来事件,从而提高其进行准确动作预测的能力

    该模型基于GPT风格的Transformer构建,接受经过tokenized的文本和图像序列作为输入,并输出未来图像的离散token,未来的图像则通过VQGAN解码器从这些token中解码出来

    其中的预训练数据集包括常用的人类活动公共数据集,例如Howto100M、Ego4D、Something-Something V2、EPIC-KITCHENS和Kinetics-700
    且,为了将预训练数据定制化用于机器人操作任务,他们精心建立了一个数据处理流程,包括手动过滤和重新标注

    此外,还包含了公开可用的机器人数据集,例如RT-1和Bridge。总共用于预训练的视频片段数量为3800万,相当于大约5000亿个token
    下图便是他们整理的预训练数据集中的示例视频和动词分布。底部图表的 y 轴是高频词的对数频率

  • 随后,GR-2可以在大规模预训练后无缝微调机器人数据
    与预训练数据中的视频只有单一摄像头视角不同,机器人数据通常包含多个视角。GR-2被设计为优雅地处理多视角

    它的
    \rightarrow  输入包括tokenized的语言指令、从多个视角捕获的图像序列以及机器人状态序列
    \rightarrow  输出包括每个视角的未来图像和一个动作轨迹

    动作轨迹是通过条件变分自编码器CVAE生成的
    通过实验证明,生成动作轨迹而不是单步动作对于轨迹平滑和实时性能都至关重要

1.2.3 真实机器人系统与部署

他们的真实机器人系统由一个7自由度的Kinova Gen3机械臂和一个Robotiq 2F-85夹爪组成

此外,他们使用了两台摄像头:一个静态头部摄像头提供工作空间的概览;另一台安装在末端执行器上的摄像头提供夹爪与环境之间交互的特写视图

  1. GR-2在笛卡尔空间中生成一个动作轨迹
    为了确保机器人手臂准确地跟随这一轨迹,且他们开发了一种全身控制WBC算法,该算法采用轨迹优化来进行运动跟踪 [20]
    生成的轨迹首先经过优化,以提高其平滑性和连续性
  2. 随后,WBC算法将笛卡尔轨迹转换为低级关节动作,并以200 Hz的频率在真实机器人上执行。此过程将碰撞约束和可操作性整合到优化框架中

1.3 实验与效果论证:现实世界中的多任务学习

1.3.1 微调数据集:5000条轨迹、每个任务大约50条轨迹

他们通过远程操作收集了105个桌面任务的人类演示。这些任务涵盖了8种不同的技能,即拾取、放置、打开盖子、盖上盖子、打开、关闭、按压和倒液,如下图所示

总共,他们收集了大约40,000条轨迹,平均每个任务有400条轨迹。在经过精心挑选的大规模视频数据集上预训练的模型基础上,他们进一步使用该数据集微调了GR-2

  1. 此外,为了评估在数据稀缺情况下的性能,使用大约1/8的完整数据集训练GR-2(即5000条轨迹),这相当于每个任务大约50条轨迹

    为了更好地推广到未见过的场景,他们在微调期间通过在场景中添加新物体和/或更改背景来进行数据增强
    \rightarrow  且为了将新物体插入场景,他们还训练了一个扩散模型 [22],该模型结合了自收集的物体数据集和开放图像数据集 [23]。该模型使我们能够在指定区域插入特定物体
    \rightarrow  为了更改背景,利用了Segment Anything Model (SAM) [24]来提取与背景对应的区域
  2. 最后,使用了一个视频生成模型 [25,即 Latte: Latent diffusion transformer for video generation,详见此文的第一部分 Sora爆火之前,上海人工智能实验室一团队推出Latte],该模型依赖于原始视频和修复后的帧来生成增强视频,同时保留机器人的运动
    Finally, we employ a video generation model [25] that conditions on the original video and the inpainted frame to producean augmented video while preserving the robot motion

1.3.2 基本设置、泛化设置、及实验结果

在基本设置上,如下图最左侧所示

首先在两个基本设置下评估GR-2:简单和干扰。在简单设置中,测试环境与训练数据相似。在干扰设置中,在场景中添加了一些干扰物。这变得具有挑战性,因为1)干扰物,尤其是那些与目标物体颜色和/或形状相似的干扰物,可能会使机器人产生混淆,以及2)环境变得更加杂乱,有时需要避免碰撞以完成任务

在泛化设置上,如上图右侧的三个部分所示。为了进一步研究GR-2在未见场景中的能力,他们引入了三个更具挑战性的设置:未见背景、未见环境和未见操作

  • 在未见背景中,通过添加两块与训练数据集中原始简单背景非常不同的桌布来改变背景,如上图图3所示
  • 对于未见环境,在两个未见的厨房环境中进行评估。除了改变背景,这些环境还包含场景相关干扰项
  • 最后,对于未见过的操作,指示机器人执行在其训练数据中未见过的操作。这包括操控未见过类别的物体和未见过的物体实例。由于机器人在训练数据中从未见过这些物体,这种设置极具挑战性。而且,针对未见过类别物体的操作指令进一步增加了难度

定性结果如下图左侧所示

定量结果如下图右侧所示

  1. 在简单设置下,GR-2在105个任务中达到了97.7%的成功率,展示了其强大的多任务学习能力。它还能稳健地处理干扰因素,并正确关注目标对象
  2. 在所有设置中,它提高了GR-1的成功率。值得注意的是,它在未见过的背景和未见过的环境中分别达到了71.4%和71.7%的成功率,是GR-1的两倍。通过引入数据增强,GR-2w/ DA能够实现更具竞争力的泛化性能,在未见过的环境中取得了87.0%的成功率

    并在所有三个泛化设置中获得了74.7%的平均成功率。在每个任务仅用50条轨迹进行训练时,GR-2在简单设置下仍能实现73.9%的成功率
  3. 在所有三种泛化设置中,GR-2的表现均优于GR-1。这展示了GR-2在高效适应新任务和环境方面的强大潜力。最终,GR-2在未见过的操作中达到了55.8%的成功率

    典型的失败情况包括1) 未能拾取新形状的未见过的物体,以及2) 在被指示拾取未见过的物体时错误地选择了错误的物体

1.3.3 CALVIN基准测试

CALVIN是一个模拟基准,旨在针对长时间跨度的语言条件下的机器人操作[21]。它包括34个任务,并结合了不受限制的语言指令

作者在ABCD-D分割上进行实验,该分割包含超过20,000个针对34种不同操作任务的专家演示。根据[21],对1,000个独特的指令链序列进行评估

对于每个序列,GR-2被指示连续执行5个任务。下图图10显示了连续完成1、2、3、4和5个任务的成功率以及平均长度

  1. 平均长度是一个综合评价指标,显示了机器人在1,000个评估序列中能够按顺序完成的任务的平均数量
    他们与五种最先进的基线方法进行了比较:RT-1 [15]、MT-ACT [26]、HULC [27]、RoboFlamingo [28]和GR-1 [5]

    \rightarrow  RT-1 [15]是一种语言条件多任务策略,通过FiLM层对语言条件进行编码
    \rightarrow  MT-ACT [26]同样使用FiLM层注入语言条件,并利用动作分块transformer解决动作数据中的多模态问题
    \rightarrow  HULC [27]是一种分层方法,首先在潜在空间中预测计划,并使用预测的计划生成动作
    \rightarrow  RoboFlamingo [28]在机器人数据上微调了一个大型预训练视觉语言模型,以执行语言条件操控

    最终,GR-2建立了新的技术标准。它在成功率和平均长度方面优于所有比较的基线方法。它将GR-1的1个任务成功率从94.9%提高到98.6%,5个任务成功率从73.1%提高到85.9%。平均长度从4.21增加到4.64

1.3.4 自回归视频生成

GR-2在大量多样化的视频上进行了预训练,使其能够预测图像空间内的未来状态。因此,这种视频生成能力可以有效地作为动作生成的规划器

也就是说,在生成视觉轨迹之后,可以基于视觉轨迹推断出动作轨迹

为了进一步研究这一设计的有效性,对视频预测结果进行了可视化,并与相应的实际展开进行了比较。他们展示了多任务学习「比如下图图12,其中体现了视频预测 (Pred) 和真实值 (GT) 的展示 13」、端到端箱子拾取(图14 15)和CALVIN(图16 17)的展开可视化

GR-2能够生成高质量的视频及其对应的动作。作者强调生成的视频能够忠实地与真实世界中的展开过程保持一致。这表明预测的动作正在尝试“重现”预测视频中的轨迹。这个特性带来了一个简单的方法,通过迭代改进视频生成来持续改进动作预测

// 待更


http://www.kler.cn/a/380286.html

相关文章:

  • 你知道Mac也能拥有丰富的右键菜单栏吗?
  • 特殊矩阵的压缩存储
  • RESTful风格
  • Linux curl命令下载显示时间/速度/大小
  • 用ChatGPT提升工作效率:从理论到实际应用
  • 2024年9月电子学会青少年软件编程Python等级考试(四级)真题试卷
  • 【Linux系列】Linux 和 Unix 系统中的`set`命令与错误处理
  • Qt Modbus 2 通信实现
  • Ubuntu桌面环境下没有网络配置图标,只有显示VPN设置
  • 网络:IP分片和组装
  • 考取无人机“飞手”执照,进入部队、电力、铁路、石油企业抢占优势
  • 前端Nginx的安装与应用
  • 电脑如何不断网切换IP:实用方法与注意事项‌
  • Android -- [SelfView] 自定义圆盘指针时钟
  • qt QStatusBar详解
  • k8s 查看cpu使用率最高的pod
  • Hive自定义函数—剔除周日周六(小时级别)
  • 爬虫学习4
  • Vue中ref、reactive、toRef、toRefs的区别
  • IoTDB时序数据库使用
  • R 环境安装
  • 103 - Lecture 2 Table and Data Part 1
  • 初识JDBC
  • 深度学习基础知识-全连接层
  • Spring Cloud OpenFeign:基于Ribbon和Hystrix的声明式服务调用
  • python之正则表达式总结