近半年,随着Pi和Skild这类聚焦在具身大模型的北美公司逐步有成果出来,国内很多拥有类似能力的公司融资估值也快速拔高。Pi和Skild给国内的投资人展示了具身大模型的范式和空间,有了参考,回过头来看国内有哪些公司有这个能力,大家一目了然。这篇文章我肝了好几个周末和夜晚,听了Sergey在CoRL上的两个talk,每个talk都至少重复了两遍,整理出来以上的文字。我希望这些文字可以给行业带来一些更清晰的梳理,具身大模型公司是干什么的?目前典型的具身大模型结构是什么样的?Pi和 π0到底是啥?

这篇文章是Sergey Levine 在CoRL 2024的两个WorkShop上所作报告的笔记。两个Talk分别是在 Mastering Robot Manipulation in a World of Abundant Data这个workshop上题为 “Generalist Robot Policies” 的报告和 the 1st Workshop on X-Embodiment Robot Learning workshop上题为"How Real-World Cross-Embodiment Data Will Lead to Robotic Foundation Models" 的报告。

这两个报告介绍了什么是机器人基础模型,以及如何构建这种模型。Sergey Levine 特别强调了数据类型对于机器人基础模型的重要性,并提出真实世界数据在推动这些模型发展中的关键作用。他还提到了π0模型的构建,包括预训练和后训练阶段。

我觉得这些Sergey报告背后的思考非常重要,所以整理成文字我没有做太多归纳,尽量保留原汁原味。内容比较长,但非常非常非常推荐细读。 这一篇文章可以让你了解什么是目前主流的具身大模型框架,以及π0和Pi到底在干啥。以下万字长文,希望你有所收获!

1. 机器人学习领域面临的机会与挑战

人工智能系统以前是如何工作的?如果回到10到15年前,解决某个特定问题(如图像分割、分类或视觉问答)需要为该问题专门设置一个大型数据集。然后,我们会为这个特定任务训练一个专门的模型,希望能够取得良好的性能。然而,这种方法非常耗费人力,因为它需要大量数据——这些数据必须由专家为特定任务进行精确标注。

如今,情况发生了变化。我们不再为每个任务创建专门的数据集和模型,而是从网络上收集大量数据。这些数据通常没有强标注——可能只是原始文本或图像-文本的关联数据。然后,我们应用大规模自监督算法,比如下一词预测,来训练所谓的基础模型。这是一种通用模型,能够解决各种现实世界的任务。随后可以通过微调来解决具体的下游问题,甚至可以通过零样本提示(zero-shot prompting)直接执行这些任务。这种方法革新了人工智能,因为它消除了每个领域都需要大量手动标注数据集的需求,使我们能够在不同应用中共享单一的通用模型。

现在,我想说的是:在机器人领域,我们正在看到类似的转变。几年前,关于机器人学习的主流观点是,对于每个任务——无论是制作煎饼、拾取一个箱子还是其他任务——你需要为特定任务、机器人和应用单独训练一个模型。通常,这种训练是在受控的实验室环境中进行的,需要大量的数据,这成为部署机器人学习系统的一大障碍。

未来,机器人学习可能会完全不同。我们可以汇集来自许多不同机器人来源的数据,提供我们所需的大量数据。然后,这些数据可以用来训练一个大型的自监督或动作监督的基础模型。这种模型随后可以为具体的下游任务进行微调或提示。从宏观层面来看,这种方法非常吸引人,因为它解决了部署机器人学习系统的最大障碍之一:任务特定的数据收集和训练需求。

话虽如此,要实现这一愿景,我们仍需要解决一些重大挑战。例如,我们如何设计这些基础模型?数据从何而来?我们如何将来自不同来源的数据结合起来?我们如何有效地扩展这一过程?最后,我们如何调整和专门化这些模型以适应具体的下游任务?这些问题需要我们回答才能取得进展。

2. 关于机器人数据集OXE(Open X-Embodiment)
我想谈谈其中一个拼图的部分,那就是我们如何从许多不同的机器人收集数据来训练机器人基础模型。这一点非常关键,目前还没有一个“机器人数据的互联网”。对于任何给定的机器人来说,可能都没有大量的数据集。然而,通过汇集各种来源的数据,我们可以创造出类似于机器人互联网的东西。

我们在一个名为RTX的项目中探索了这一想法,该项目大约始于一年前。该项目不仅从网络上抓取数据,还积极联系了33个学术研究实验室,以及Google DeepMind,以收集他们的机器人操作数据。这一合作产生了一个多样性显著的数据集,包括各种机器人任务、相机视点和机器人本身。尽管所有的机器人都是单臂系统,配有平行抓取器,但任务和视点的多样性非常丰富。

这些丰富的数据也带来了挑战——它是高度异质的。为了解决这个问题,我们需要能够跨不同机体工作并适应各种机器人系统的学习方法。然而,潜在的好处是巨大的。例如,我们用这些汇总的数据训练了一个模型,然后将其发送回贡献数据的实验室。每个实验室在他们自己的任务上测试了这一跨机体模型,并将其与他们的专用模型进行了比较。

结果令人振奋:在大多数情况下,跨机体模型的表现优于专用模型,平均成功率提高了50%。这与我们在语言模型中看到的现象相似,基于多样化数据集训练的通用模型往往在特定任务上胜过专用模型。

除了从多个机器人汇集数据之外,另一种利用丰富数据的方法是使用网络上的图像-语言数据。例如,我们可以采用大型语言模型,微调它们以处理图像观测,并将其转变为视觉-语言模型。这些模型在诸如图像描述或视觉问答等任务上进行训练,然后进一步微调以适应机器人任务。例如,如果机器人被问到“你应该如何拿起那个苏打罐?”答案会被编码为机器人应该采取的具体动作,基于它在图像中的观察。

这一概念在Google DeepMind开发的早期原型如PolyX和PALM-E中得到了测试。通过在多样化的跨机体数据集上微调这些视觉-语言模型(VLM),我们取得了令人印象深刻的结果。例如,即使训练数据中没有明确包含此类指令,该模型也能遵循像“将苹果放到罐子和橙子之间”这样的空间命令。这种能力源于模型在不同任务中学习到的模式,并能够有效地进行泛化。

有趣的是,跨机体模型的性能比仅在数据集中最多代表性的机器人上训练的基线模型高出三倍。这一结果突显了从多样化来源聚合数据以训练通用模型的强大潜力。然而,这些实验中的任务相对简单——更偏向学术测试,旨在评估语义理解能力,而非复杂的操作技能。

展望未来,还有很多工作要做。我们需要了解这些视觉-语言-动作模型(VLA)如何处理更复杂的任务。具体来说,我们必须设计专门针对机器人控制的架构,而不是依赖为语言输出设计的现成视觉-语言模型。此外,我们还需要调整这些模型以处理不同形态和动作空间的机器人,因为目前的大多数实验都集中在具有对齐动作空间的单臂系统上。

从整体来看,这项工作只是更大拼图的一部分。关于如何设计、扩展和调整机器人基础模型以充分发挥其潜力,还有许多悬而未决的问题。

3. 什么是机器人基础模型?
机器人基础模型是一种旨在执行多种机器人任务的模型,通常适用于多种不同的机器人。Octo 是早期机器人基础模型的实验之一。这个实验通过网络进行,模型托管在 Google DeepMind,而机器人则在加州大学伯克利分校运行。实验使用的模型是 RT-2 X-Embodied VLA模型,使用的模型训练数据集是OXE(Open X-Embodiment)

这个实验非常令人兴奋。它的重要意义在于,据我所知,这是首次通过网络 API 调用来实现机器人基础模型。这种VLA模型不仅可以处理文本,还可以接收视觉输入。模型的训练从语言模型开始,然后扩展到理解和解释视觉数据。这种训练通常利用网络规模的数据完成,例如问答和图像描述任务。之后,模型被微调以基于语言和视觉输入生成动作。

在这个实验中,模型进一步训练来回答类似“机器人应该如何完成这项任务?”的问题。模型的输出不是描述或答案,而是机器人应执行的动作,编码为Token。这些视觉-语言模型非常强大,因为它们从互联网规模的预训练中继承了语义理解能力。然而,它们的真正优势在于通过多样化和通用性的数据集训练出来的能力。

4. 为什么需要机器人基础模型?

那么,为什么我们需要机器人基础模型呢?有许多理由,但对我来说,最具说服力的是这些模型解决了机器人学习的最大限制。机器人学习是让机器人执行难以手工编程的任务的有效方法,但它有一个关键缺点:需要大量特定任务的数据。对此有几种解决方案。

一种方法是使用小型、高质量的数据集。一些研究重点使用小型领域特定的数据集展示方法。然而,对于实际应用而言,小型数据集的局限性很大。现实世界的范围广阔,一个覆盖小范围的数据集可能在特定领域表现出色,但无法让模型适应整个世界。

另一种选择是使用可能质量较低的大型数据集。例如,模拟环境中的大规模数据更易于收集,但它经常引入与真实环境的分布差异。模拟环境数据集可能很大,但测试分布,即机器人实际操作的环境,可能非常不同。这两种方法都有局限性。

机器人基础模型弥合了这一差距。通过在大规模多样化数据集上预训练,模型可以获得通用知识。然后,可以用更窄的数据集对模型进行微调,使其更高效。预训练阶段确保了模型能够理解各种真实场景中的操作。

5. 如何获取机器人基础模型的所需的大规模数据?

这又引出了一个问题:我们如何获取预训练阶段所需的大规模高质量数据集?这仍然是一个关键挑战。虽然机器人基础模型在预训练阶段不需要高度专业化的数据,但仍需收集大量数据。互联网并不充斥着机器人数据,各界对数据来源也有不同看法。

一种方法是使用模拟来生成合成数据。另一种方法是使用互联网视频作为真实机器人数据的替代品,涵盖多种场景,为机器人特定数据的预训练提供基础。我所倡导的,也是我认为最有希望的方法,是使用真实世界数据。

首先,使用真实数据在过去表现良好。尽管模拟在训练感知系统等任务中发挥了重要作用,但实际中最有效的模型始终基于真实数据训练。这种方式使训练过程更能匹配真实世界的测试条件。但我认为还有一个更重要的原因:从长远来看,真实世界数据可能成为最简单、最便宜的选择。当机器人开始执行有用的任务时,它们存在于现实世界中的动力会很强。当机器人完成实际任务时,它们的数量可能会非常庞大,从而生成大量的数据。一旦我们克服了初期的启动难题,真实世界数据很可能成为最经济且最优的选择。

数据选择的关键问题

回到报告开头提出的核心问题:我们应该使用哪种数据?我的结论是,真实世界数据对于推动机器人基础模型至关重要。这并不意味着模拟或视频数据完全无用,但我相信从长远来看,真实世界数据更有前景——并非因为我们无法构建模拟器或弥合视频与真实数据之间的差距,而是因为真实世界数据蕴含了大量的实用信息。

为什么不是模拟数据?

模拟数据之所以吸引人,是因为你可以几乎免费生成它,主要的成本是计算资源。这种方式的吸引力在于你可以将计算能力直接转化为能力。例如,如果你想设计一枚火箭,可以写下运动方程,实施一个模拟器,然后使用强化学习算法有效地“逆向”模拟器,得出一条控制轨迹,指导火箭沿着期望的轨道飞行。然而,这种方法与机器学习的传统思路截然不同。事实上,这更像是经典控制理论,即通过方程建模系统,然后用代数推导出控制规律。

这种经典方法在系统可以完全表征时非常有效,通常使用封闭形式的运动方程。但在机器学习领域,我们放宽了这些要求。我们不一定需要封闭形式的方程,可以使用代码片段来模拟系统的动态。然而,本质上,这种“模拟到现实”的方法仍然是逆向已知的动态系统,尽管这可能涉及复杂的模拟或渲染算法。这种观点帮助我们理解了使用模拟数据的优劣。

某种程度上,模拟可以看作是传统基于模型的机器人智能方法的重新包装。然而,机器人领域的挑战不仅仅是逆向已知系统,而是学习人类难以精确形式化或编码到计算系统中的内容。例如,虽然你可能能推导出机器人折叠 T 恤的运动方程,但要写出机器人如何在酒店与客户互动的方程就很困难。人类行为非常复杂,难以模拟,而这是试图用模拟建模真实世界场景的一个基本问题。最终,无论模拟多么先进,都会与试图建模的真实现象产生偏差。

为什么不是视频数据?

视频数据提供了一种更直接且潜在实用的方法。你可以从网络中获取真实世界视频,省去了对机器人或模拟器的需求。这也是机器人领域以外的基础模型领域取得进展的地方,比如自然语言处理领域大量依赖网络规模的数据。但这也有缺点。依赖视频数据可能有点像“沙发土豆”的解决方案——坐在那儿看视频,希望通过被动地获取数据能够掌握运动技能。从这个角度看,这可能既是两者优点的结合,也是两者缺点的结合。

我的观点是,尽管视频数据可能非常有用,但过度依赖它可能是最差的解决方案。它和模拟一样存在分布偏移的问题,同时缺乏模拟器可以提供的高任务特定质量。此外,视频数据可能无法针对你要解决的特定机器人任务提供足够的专门性。

还有一种担忧,即视频数据的价值可能已被现有视觉预训练方法基本挖掘殆尽。计算机视觉领域已经非常擅长利用大规模视频和图像数据集进行训练。如果该领域继续改进其视觉预训练方法,很可能我们已经从网络规模的视频数据中榨取了大部分收益。在某种程度上,视频数据和视觉预训练之间的界限可能会模糊,但这也引发了一个问题:仅仅看视频是否能让人精通某项技能,比如网球?观看像 Roger Federer 这样的职业选手可能会教会你一些东西,但不会让你成为专业选手。这表明视频数据有用,但可能不足以单独实现机器人任务的性能和泛化。视频数据确实可能非常有用,但前提是它与大量的物理交互相结合——就像人类学习一样。

为什么是真实数据?

在我看来,真实世界数据实际上是预训练和微调模型的一种非常实际的方法。尽管乍看起来似乎成本很高,但如果仅依赖于单个机器人的数据,它才会显得不切实际。这让我们回到此次研讨会的主题:一旦有许多机器人在真实世界中执行任务,数据收集会变得更加容易。每个机器人都会生成大量的数据,如果能从多个机器人中聚合数据,就不必担心某个机器人有限的部署范围。

跨形态训练是关键,因为它使我们能够从多种机器人中收集和使用数据。这与计算机视觉领域的大规模数据聚合和网络抓取的做法相似,在这些领域中,来自不同来源的数据被整合,用于构建强大的模型。在机器人领域,这种方法可能会产生类似的变革性效果。对于基础研究来说,重要的是解决具有长期潜力的问题,而不是专注于短期成本。如果我们对机器人的未来持乐观态度,可以预见到数百万甚至数十亿的机器人将被部署到全球各地。到那时,收集真实世界数据将变得既便宜又容易。

预训练阶段并不要求你的数据是完美的——只需多样化,涵盖多种情境即可。微调阶段则需要更专业、更高质量的数据,与机器人需要掌握的特定任务匹配。幸运的是,对于机器人基础模型来说,微调所需的数据远不及预训练那么多。后训练可能只需数十小时的数据,其中一些可以在几天内收集完毕。未来,甚至可能完全通过强化学习方法自动收集数据。

总的来说,使用真实世界数据,尤其是来自多机器人来源的数据,是改进预训练和微调过程的关键。随着跨形态训练的进步以及全球范围内更多机器人的部署,真实世界数据将成为推动机器人技术发展的高效且实际的资源。

6. π0
π0是我们开发的另一个机器人基础模型,专为高度灵活、复杂且需要长时间规划的任务设计。

π0在多种形态上训练,特别是设计用于执行如洗衣服等任务——从烘干机取出衣物,折叠每件物品等。

该模型在从各种机器人平台收集的多样化数据集上训练,包括RT-X数据集和其他公开可用的数据。与传统数据集不同,这个数据集包含了具有广泛配置的机器人——双臂系统、具有六或七自由度的机器人,以及具有不同动作空间的移动机器人。π0被设计用于处理这些多样性并执行更灵巧的任务,要求大约50赫兹的高频控制。

系统设计包括多个阶段。首先是预训练阶段(Pre-training),我们从数据集中所有的机器人收集数据。我们还使用了基于互联网规模的视觉-语言模型(VLM)预训练,并结合了整个跨机体RT-X数据集,这一过程训练了一个专门的基于流匹配的视觉-语言-动作模型(VLA)。接下来,该模型可以进行零样本(zero-shot)控制,接受文本命令完成未明确训练的任务。最后,在后训练阶段 (Post-training),该模型可以通过微调进行优化,类似于语言模型的微调,以对齐人类的偏好。这使得它能够执行诸如叠衣服或处理未包含在原始数据集中的全新任务等复杂任务。

我想强调的是,这不仅仅关乎模型架构。整个系统的各个方面都很重要——我们如何收集和结构化数据、如何预训练模型,以及如何微调它们。这些要素通常比模型架构的具体细节更为关键。

π0的模型结构

接下来,我将谈谈模型架构,因为我认为它非常有趣。该模型的设计采用了一种基于流匹配(flow matching)的方法,这是一种扩散(diffusion)的变体,用于生成动作。这种方法非常出色,因为它允许我们输出连续的动作,而无需对其进行离散化或标记化(discretize or tokenize)。它还能很好地处理复杂的多模态分布以及动作块(action chunks)。对于高频控制,输出动作块——在这种情况下,大约是一秒钟的动作序列——非常重要。此外,这种方法能够有效地处理多模态分布。

以下是该模型的工作原理:它包括一个编码器,初始化自PolyX,一个开源的视觉-语言模型(VLM)。编码器接收1到3张图像,具体数量取决于机器人的形态。有些机器人只有一个基础相机,而另一些机器人可能有多达三个相机——两个手腕相机和一个基础相机。模型还处理一个语言命令,该命令以标准方式进行标记化(Tokenize)

动作由我们称为动作专家(action expert)的组件生成。可以将动作专家视为视觉-语言模型(VLM)的扩展,它输出动作而不是语言标记。为了实现这一点,我们对对应于动作维度的标记应用了一种不同的损失函数。本质上,这就创造了一个基于扩散的初级视觉-语言模型

动作专家的独特之处在于,它对负责生成动作的网络部分使用了单独的权重参数,同时保持了模型的其他部分的层数一致。动作专家的每一层都与视觉-语言模型的所有层进行注意力交互。这种架构并不是传统的编码器-解码器设置,而实际上是一个单解码器模型,注意力从视觉-语言模型流向动作专家。尽管两者的权重不同,但它们协同工作得非常流畅。

你可以粗略地将其理解为一种专家混合(mixture-of-experts)模型,一个专家负责生成动作,另一个负责处理图像和语言。该设计使得模型能够在保持高效性的同时处理复杂任务并具有良好的适应性。

关节角度直接输入到动作专家中,可以将动作专家理解为专门处理连续性内容的组件。与之相对,模型的另一部分则专注于处理与图像和文本相关的内容。模型生成的动作块跨度大约50个时间步,每个时间步的维度最多可达24,具体取决于机器人。生成过程本身使用的是基于流匹配的方法,这种方法可以粗略地理解为扩散的变体。

π0的训练方法

接下来,我们谈谈训练方法。我们从一个预训练数据集开始,其中包含了所有内容——总计约10,000小时的数据。据我们所知,这可能是除自动驾驶领域以外,任何人用于训练机器人模型的最大数据集。利用这些数据,我们可以训练一个通过提示完成任务的模型。然而,我们也可以为具体的下游任务专门化这一模型,这通常需要1到20小时的后期训练数据,具体取决于任务的复杂性。

对于复杂任务,比如叠衣服或组装一个盒子,后期训练可能需要大约20小时的数据。而对于简单任务,只需1到5小时的数据就可以达到良好的性能。这些数据量是可控的——你可以在一两天内实际收集到。例如,对于叠衣服任务,预训练阶段已经包含了大量的数据,因此20小时的后期训练数据只是添加了高质量、任务特定的例子。另一方面,对于诸如组装盒子这类任务,由于没有预训练数据,所有相关训练数据都来自后期训练阶段。

预训练(Pre-training)和后训练(Post-training)的区别在于它们的关注点:

  • 预训练数据更广泛,但质量较低,帮助模型学习多种策略并从错误中恢复

  • 后期训练数据更集中,但质量更高,教会模型如何通过一致的策略完成任务

如果只使用高质量的后期训练数据,机器人可能无法学会如何处理意外情况或从错误中恢复。然而,当将其与预训练结合时,你可以获得两全其美的结果:预训练阶段的广泛知识和后期训练阶段的任务特定专业技能。这类似于语言模型,在预训练阶段捕获通用知识,而在后期训练阶段使模型针对特定应用进行专门化。

将完整的π0模型(预训练和后期训练)与仅使用后期训练数据训练的模型进行比较,突显了预训练的重要性。虽然仅靠后期训练对于简单任务(如装鸡蛋)有效,但在更复杂的任务上效果不佳。预训练为从错误中恢复提供了策略,大大改善了复杂任务的表现。

π0的预训练(Pre-training)
预训练这种方法的一个令人兴奋的成果是其处理高度复杂和灵活任务的能力。例如,在 Physical Intelligence,我们开发了π0模型,它采用类似的预训练和后训练方法以实现高性能。该模型在包括双臂和移动操作器在内的多种机器人平台上进行了预训练。它可以执行相当复杂的任务,比如从烘干机中取出衣物、将其放入篮子、将篮子移到桌上并折叠衣物。虽然机器人并非完全无误,有时会犯错,但其多样化的预训练使其能够以令人印象深刻的效率处理各种任务。

我们还从实验中获得了有关完成这些任务所需数据量的有用见解。例如,π0模型可以应对折叠箱子这一极具挑战性的任务——任务要求机器人在折叠箱子时固定住部分箱子。通过后训练,机器人学会如何解决这一难题。预训练阶段为其提供了物理知识的基础,而后训练阶段则专注于执行任务所需的特定策略。

在实验中,机器人通过首先将箱子顶在桌子上进行稳定,然后有条不紊地折叠每个边。这种细致的操作表明预训练阶段赋予了机器人广泛的物理原则理解,而后训练阶段则细化了其处理更复杂任务的能力。

π0的后训练(Post-training)
机器人在执行诸如折叠箱子或组装汽车仪表盘等复杂任务方面的能力,展示了结合真实世界数据的预训练和后训练的强大潜力。π0模型通过一般性预训练能够处理相对简单的任务,而后训练阶段则进一步提升其技能,使其能够应对更复杂、精细的挑战。例如,当折叠箱子时,如果一个边滑出,机器人会重新尝试并纠正自己。在足够多的尝试后,机器人能够显著提高其可靠性和精度。

这一过程的效率尤其令人关注——只需几十小时的数据,比预训练阶段所需的数据少得多,就足以对机器人的特定任务性能进行微调。这使得即使是小众应用领域的数据收集也变得实际可行。通过类似于 Paul Z. 和他的团队展示的自动化后训练方法,机器人可以自主收集数据,并在新环境中实现专精。例如,利用视觉模型(VM)提出任务和目标图像,机器人可以自主生成有用的数据,从而在收集数据的领域中实现 2 倍的性能提升。

π0的效果

让我们看一个例子,叠衣服,这是一项复杂且精细的任务。衣服从篮子里拿出来时皱成各种形状,机器人必须处理它们遇到的每一种形状。它将每件衣服铺平,整齐地折叠,并将折叠好的衣物堆放在桌子的右上角。这个过程适用于各种衣物、不同的初始配置,甚至是移动机器人。偶尔,机器人会失败,但它会坚持重试直到成功。

我们还测试了另一个与衣物相关的任务:从干衣机中取出衣服。在这个任务中,机器人走近干衣机,打开门,并取出所有衣物。这个任务展示了预训练的重要性。虽然后期训练使用不到20小时的高质量数据,但预训练包括了大量质量较低的衣物操作尝试。这样的广泛预训练有助于机器人从错误中恢复,因为衣物可能以不可预测的方式堆放。

为了评估机器人的恢复能力,我们故意引入干扰。例如,Michael在任务中途向桌子上扔了一件衬衫以干扰机器人。尽管机器人最初有些困惑,但很快决定将衬衫移到一边,然后继续正常折叠。即使Michael多次干预,机器人仍能成功适应并回到任务中。这些示例突显了机器人适应和恢复的能力,展示了预训练在构建通用策略中的关键作用以及后期训练在掌握特定任务中的重要性。

7. 关于机器人基础模型的预训练
现在,让我们深入探讨预训练。许多人可能对类似 RT-x 项目中展示的预训练概念很熟悉,该项目展示了如何使用来自多个机器人来源的数据进行预训练。数据集的多样性至关重要,因为它表明即使数据中存在相当大的变异性,也可以训练出表现良好的模型。事实上,令人兴奋的部分是,基于多样化数据训练出的通用模型可能比每个领域的专用模型表现更好。然而,早期工作的任务相对简单,例如将胡萝卜放进锅中或打开抽屉,且研究中使用的机器人相对类似,通常是单臂机器人或配有末端执行器的平行夹持器。

我们正在探索如何通过结合更多样化的数据源来扩展这一方法,例如将移动机器人、移动操作器和机械臂的数据结合起来。这里的关键问题是,当你组合这些多样化的数据源时,是否能实现正迁移。斯坦福大学的 Jonathan Yang 与加州大学伯克利分校的 K. Glossop 和 Archon Boar 合作的一项研究探讨了导航数据是否能够帮助操作任务。

实验涉及不同类型的动作表示,包括用于 3D 运动跟踪的腕部摄像头。研究中,我们对不同数据组合的训练数据集进行了比较。一种数据集仅使用操作数据,另一种将操作数据与多机器人的人行道导航数据(G&M 数据集)结合,还有一种加入了自动驾驶数据。结果表明,在不同的操作任务中,来自多个领域的数据组合提供了显著的优势。这表明来自移动机器人和自动驾驶汽车等多样化数据源可以显著促进训练更稳健和强大的机器人模型。

导航数据的加入(包括 G&M 数据集)以及进一步的驾驶数据改进尤其值得关注。你可能不会预期导航数据对操作任务有重大提升,但事实证明它确实有帮助。原因在于导航数据可以帮助机器人理解基本的几何和物理原则,例如距离和物体大小之间的关系。例如,当靠近一个物体(比如草莓)时,物体看起来更大且更近,而这对于机器人试图拾取物体时非常关键。这种跨形态学习使机器人能够继承基本的空间推理能力,这些能力适用于不同的机器人系统,即使机器人本身在物理结构上差异很大。

最近,我们进一步推动了这一想法,开发了可以处理更广泛形态的模型。这些模型在诸如导航、操作甚至四足机器人腿部控制等多种任务上进行训练。一个名为 CrossForer 的模型,由 Ria 和她的团队开发,利用了一个大型 Transformer 网络,并为每种类型的机器人设计了独立的输出头。这种方法使模型能够从各种机器人类型的数据中学习,从移动操作器到四足机器人。结果令人印象深刻:CrossForer 的性能优于单一形态训练的模型,并超越了早期方法。

8. 关于机器人基础模型的监督微调与强化学习的微调

对于监督微调,你可能只需要数十小时的数据,而强化学习可能需要的时间更少。这是一个我们期待未来研究能够进一步提升的领域,类似于语言模型在后训练阶段的快速进步。随着社区对优化这一过程的关注,我们可能会在未来几年看到机器人基础模型的诸多突破。

微调数据量最小化的重要性在需要高鲁棒性和效率的任务中尤为突出,例如 SERL 项目。通过强化学习(RL),该项目展示了如何通过真实世界训练获得高度精确且鲁棒的行为,即使在复杂环境中,例如电子装配。系统在短时间内取得显著进步——仅需 30 分钟的 RL 训练即可在任务(例如将电缆插入卡扣中)中实现高成功率,而进一步的数据收集可将时间延长至两小时,结果显著优于模仿学习,即使两者使用相同量的数据。

这些研究表明,结合真实世界预训练和后训练的机器人能够高效地学习并微调复杂行为。这种自主数据收集和持续改进的方法不仅提高了性能,还使得部署机器人以较少的人类干预执行日益复杂的任务成为可能。随着技术的不断发展,这些方法将使机器人学习更具实用性和可扩展性,适用于广泛的真实世界应用场景。

9. 强化学习(RL)+真机
我这里想特别提到的一个话题是如何通过真实环境中的强化学习(RL)来改进机器人策略。目前,这一阶段尚未引入视觉-语言-动作(VLA)模型,而是使用较小的模型进行训练。然而,我相信在未来,将RL与VLA模型结合起来会释放更快、更高效的策略的潜力。

HI-SERL主要由UC伯克利的Jianlan Luo和Charles Xu开发,集中于诸如电子装配的任务。我们大约在一年前开始这一研究,开发了一种从少量演示(通常为15到30次)开始的高样本效率的RL算法,以优化真实环境中的训练。这种方法使机器人能够在短至30分钟到两小时的时间内学习诸如电子装配的任务。对于简单任务,仅需30分钟就能实现非常成功的策略。事实上,仅用15分钟,机器人就可以开始稳定地插入部件,例如芯片,而不会损坏像引脚这样的精密部件。(关于真机+强化,可以参考对话罗剑岚:强化学习+真机操作可以很Work

我们评估了多项任务,包括插入微芯片、布线电缆和重新定位物体。为了比较,我们为模仿学习(IL)基线提供了与RL相同数量的数据——通常是30分钟到两小时,具体取决于任务。在某些情况下,我们甚至为IL提供了更多的演示以公平竞争。然而,RL始终取得了显著更好的结果。这主要是因为这些任务需要高度精确的操作,而RL策略的循环时间也显著更短,比IL快了两到三倍。

现在,想象一下将这些RL方法与大型机器人基础模型结合。这种集成可能会带来更有效和更强大的解决方案。对于更复杂的任务,例如双臂操作,我们将强化学习(RL)扩展到像组装汽车仪表板这样的挑战。这项任务需要精确对齐和插入塑料销。训练过程大约耗时两小时,最终成功率达到100%。在训练完成后,机器人能够可靠地执行这项任务。

我们还探索了其他任务,包括使用鞭子移除积木(虽然实用性较低,但操作精巧)、组装传动带(涉及可变形物体)、翻鸡蛋以及组装宜家家具。尽管机器人目前还无法使用螺丝刀,但它成功对齐了所有销钉和组件。

强化学习策略的鲁棒性也值得一提。例如,在组装传动带的过程中,Charles故意干扰传动带,但机器人成功恢复。这些恢复能力并非源自预训练,而是来自于RL策略本身,在训练过程中经历了多样化的场景。如果未来将RL与预训练结合,可能会产生更为强大的系统。

一个特别有趣的例子是主板装配任务,其中涉及多个电子组件的组装。每个组件——例如RAM条、SATA驱动器和USB插头——都是单独训练的策略,但这些策略被结合在一起,实现了无缝执行。我要求学生证明RL过程不会损坏电脑。装配完成后,他们启动了电脑,结果显示它成功启动,证明了该过程的可靠性。

10. Sergey talk总结

总的来说,我们看到机器人基础模型的训练方法正在向大型语言模型(LLM)的训练方法靠拢。在LLM领域,有一个成熟的结构:通过大规模多样化数据集的预训练阶段,使用灵活的架构处理这些数据,然后通过高质量的微调或强化学习进行后期训练,使模型与人类偏好对齐。对于机器人,我们正在开发类似的训练方法,包括多样化的预训练数据、专门设计的架构以处理这些多样性,以及微调流程以专门化模型以适应具体任务。

目前的方法旨在将预训练阶段的所有知识浓缩到模型中,随后进行后期训练。这通常通过监督微调实现,但也可以采用例如链式思维推理的指令微调。展望未来,后期训练可能还会利用强化学习。

有趣的是,我们正在形成一种用于机器人基础模型的训练配方,这与大型语言模型的训练方式非常相似。然而,具体的组成部分——如数据、架构和微调方法——都针对机器人的独特需求量身定制。

11. 一些问题

Q:是否可以将视觉-语言组件的预训练和后训练并行进行,而不是先完成视觉-语言的训练再进行机器人任务的训练?
A:从实际角度来看,我们在 Pi Zero 模型上没有实施这一点,因为我们使用的是已经预训练好的现成模型。然而,我怀疑并行进行两种训练会更有效。这可能帮助我们避免一些视觉-语言模型中可能出现的遗忘问题,同时还可以让我们尝试更适合机器人任务的后训练方法。因此,我确实认为这是一个值得尝试的好想法,尽管设置起来可能会更复杂,但总体而言绝对值得一试。

Q:您提到数据过滤和清理是重要的。这种方法如何应用于机器人模型?
A:这是一个尚未完全解决的开放性问题。尽管研究方法和算法是重要的讨论主题,但实际上让模型正常工作的关键挑战通常集中在数据管理上。在这里,我可以分享我们的方法。对于这个案例,预训练阶段的数据筛选比后训练阶段的要宽松得多。

对于后训练,你希望数据中操作员完成任务时表现良好——策略一致、有效率且没有大的延迟或停顿。你需要选择能很好展示任务的正确完成方式的数据。

而对于预训练,重点不在于“完美”数据,而是广覆盖的数据集。事实上,包括一些错误数据可能会有所帮助——并不是为了教会机器人犯错,而是为了让它学习如何从错误中恢复。这种更广泛的覆盖可以帮助机器人学会如何处理多种状态并从次优情境中恢复。

Q:是否可以通过强化规划进一步加速后训练过程,例如在训练期间引入实时的人类反馈?
A:这是一个很好的想法。实时人类反馈能够为强化学习过程提供重要的指导。在短时间内运行这些方法非常实际,因此让人类监督训练过程是可行的。这种监督可能显著加速学习进程。虽然我们在研究中已经尝试引入人类干预,但仍有改进算法的空间,以更高效地利用这种方法。

Q:您提到真实世界数据是最便宜的选择。为什么您认为它比例如精心策划的数据集更便宜?同时,为什么不直接用模拟数据完成预训练阶段?

A:在整体层面上,真实世界数据可以被认为是便宜的,尽管需要考虑隐私等实际问题。一旦这些问题得到解决,真实世界数据就像网络中的数据一样,可以免费获取。

这并不意味着我们应该完全放弃模拟数据。我猜测,在机器人领域,我们会面临类似于计算机视觉领域的情况。尽管模拟数据有用,但真实世界数据的丰富性和可获取性将使其成为主要焦点。

然而,在某些特定领域中,模拟数据可能是更好的选择。例如,对于像火箭飞行这样的任务,生成真实世界数据既困难又昂贵,因此模拟可能是首选。但对于模拟不是最自然或最高效的选项的领域,真实世界数据可能是更实际的解决方案。

12. 一些想法

最近也会有人问我,作为一个投资人,做这种前沿技术科普的目的是啥?更直白的,你采访了一堆人,这波头部的也没投中哪个。虽然直接,但我觉得是很好的问题。最初我只是自己在学习这些东西,希望梳理出来,记录形成习惯。但回过头来看,我还坚持在做这件事情,并且有意放大的核心目的是:首先,我自己好奇,看不懂paper,需要导读,内容本身可以形成闭环,我自己懂了,写出来可以让更多人懂,对这些前沿工作也是一种宣传,对行业的发展有那么一丢丢的微不足道的贡献;其次,自媒体,其实也是某种程度的创业,创业的魅力在于你去推进一些事情的时候,未知的缘分会自动找上门来。有些事情的坚持,并不着眼于短期ROI。最近看了20VC,也更加鼓舞我坚持下去。

References:

the 1st Workshop on X-Embodiment Robot Learning workshop, CoRL 2024.

https://www.youtube.com/live/ELUMFpJCUS0?t=16866s

CoRL 2024 Workshop on Mastering Robot Manipulation in a World of Abundant Data.

https://www.youtube.com/live/GhwCIjEEBBs

本文转自 https://mp.weixin.qq.com/s?__biz=MzkwNDMxMzg1NA==&mid=2247485299&idx=1&sn=902672eef9417a18a1a91dfaa16b5b9b&scene=21#wechat_redirect,如有侵权,请联系删除。

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐