教会机器人在现实环境中解决各种复杂任务,一直是机器人控制领域的关键研究课题。近来随着具身智能的快速发展,机器人代理已经被要求拥有自主路径规划和对任务进行推理的能力。但是现有的方法仍然需要大量高质量的特定任务数据来训练代理模型,这使得机器人很难在一个陌生的环境中正常运作。本文介绍一篇发表在机器人顶级会议RSS 2023的论文,作者团队来自卡内基梅隆大学,本文提出了一种名为结构化意图世界模型 (Structured World Models for Intentionality,SWIM)的方法,SWIM仅使用few-shot的方式来从现实世界交互数据中学习,就可以高效的驱动机器人完成各种复杂任务。
文章链接:
https://arxiv.org/abs/2308.10901
项目主页:
https://human-world-model.github.io/
受到计算机视觉和自然语言领域大规模数据集学习成功的启发,本文作者认为,人类本身具有多样性的交互技能,如果能使机器人利用来自互联网中的人类视频数据进行学习,可以极大的提升机器人的控制性能。SWIM通过构建一个结构化的、以人为中心的动作空间,并从各种人类交互视频中捕获通用结构,训练得到一个高效的机器人世界模型,该模型可以尽在30分钟以内的交互数据上学习各种复杂环境中的各项操作技能,上面视频展示了SWIM学习到的一些具体交互示例,例如挑选蔬菜、拿起刀、打开柜子、拉抽屉、拉开洗碗机和操作垃圾桶。
一、引言
目前较为流行的机器人学习范式是基于模拟学习,或者在现实环境中部署强化学习框架,通过工程奖励的方式来训练机器人代理,但是这种方式训练得到的代理几乎是不可扩展的,其很难迁移到具有不同目标的新任务上。因此本文的目标是建立一个世界模型来解决这一问题,由于人类在日常生活中执行的诸多任务之间存在共性,这导致即使在不同的环境中,一些交互行为在环境动力学方面具有相似的结构,因此构建一个高效的世界模型,实现跨任务的未来交互预测,从而可以使智能体能够学习这种共享的行为结构。但是如何收集用来训练世界模型的数据呢,本文作者想到能否直接利用互联上的人类运动视频来对世界模型进行训练?
如上图所示,本文作者提出了一种结构化世界模型SWIM,其构建了一个既适用于人类视频领域又适用于机器人的动作空间,例如我们考虑一个“拿起杯子的任务”,从人类视频中提取到的运动信号与机器人实际执行时的运动信号完全不同,这导致操作层面的预测模型无法直接训练。如果能够提前在动作空间中对目标动作姿态和杯子把手的方向进行预测,并抽象出低级控制路径,那么人类使用的目标姿势也可以被机器人直接利用,因此SWIM要求在实际环境信息的介入下,学习一个形态不变的高级结构化动作空间来完成复杂的交互过程。
二、 本文方法
本文提出的SWIM框架主要分为三个阶段:(1)使用人类视频数据对世界模型进行预训练,(2)使用机器人特定任务的数据进行无监督微调,(3)将世界模型部署在特定的目标任务上。下图展示了前两个阶段的主要操作流程,下面我们将详细介绍其中的一些细节。
2.1 世界模型预训练
SWIM框架仍然遵循谷歌大脑和DeepMind联合提出的Dreamer范式[1],该文发表在ICLR2020上,其将世界模型定义为一个紧凑的状态空间,可以对传感器捕获的高维数据进行理解并产生控制信号,并且将中间状态信息进行保存,从而实现有效的预测和规划。在本文中,作者仍然使用Dreamer中的世界模型结构和训练过程,它具有以下组件:
2.2 使用机器人数据进行微调
2.3 在特定任务上部署模型
三、 实验效果
为了全面的评估本文提出的SWIM世界模型的性能,作者使用了两个机器人在6项现实任务上进行了实验。在室内场景,作者使用带有末端执行器控制的Franka Emika手臂进行实验,该机器人可以在厨房环境中运行来完成一些细粒度的控制任务,例如操作刀具。对于室外场景,作者使用Hello-Robot的Stretch RE-1移动机械臂,这是一款协作机器人,设计有一组轴对齐的关节,并将吸盘作为操作头,其可以完成垃圾桶相关的任务,该任务极具挑战性,因为在垃圾桶内部,机器人抓握的区域非常小,下图中展示了一些具体的实验场景示例。
下表展示了对SWIM各个组件的消融实验结果,作者重点考察了以下几个方面:
(1)构建世界模型对于机器人操作代理是否必要
(2)使用人类视频数据训练世界模型是否有助于性能提升?
(3)基于人类视觉的结构化动作空间有多重要?
从表中我们可以看出,当在SWIM中使用世界模型后,机器人在各种任务中的平均成功率可以达到80%,当SWIM只针对单个任务进行训练时,其平均成功率也可以达到75%。
除此之外,SWIM框架的一大优势是它可以同时处理不同来源的数据,SWIM-single是仅使用单个任务训练得到的模型,从上表的最后两行我们可以看到,使用多个任务共享训练得到的SWIM在整体性能方面有很大的提升,作者认为,这是由于SWIM可以捕获不同任务中的一些相似结构。
为了分析人类视频预训练步骤的效果,作者在上图中进行了可视化对比,使用世界模型输出的图像特征进行图像重建,与未进行预训练的方法相比,SWIM可以使世界模型快速的了解机器人所处环境的显著特征,这对于精确执行任务至关重要。
四、总结
本文提出了一种新型的机器人世界模型SWIM,SWIM主要分为三个阶段:1)利用人类交互的互联网视频来预训练模型,2)使用无奖励数据对模型进行微调以适应机器人的任务设置,3)在特定任务上部署世界模型。为了克服机器人与第一人称视角人类视频之间的形态差距,本文作者构建了一个基于以人类为中心功能可见性的结构化动作空间,这使得SWIM能够以无监督方式收集的机器人数据进行微调。通过大量的实验证明,SWIM仅需要30分钟以内的视频数据就可以实现快速的任务泛化效果。
参考
[1] Danijar Hafner, Timothy Lillicrap, Jimmy Ba, and Mohammad Norouzi. Dream to control: Learning behaviors by latent imagination. arXiv preprint arXiv:1912.01603, 2019. 2, 3
[2] Dima Damen, Hazel Doughty, Giovanni Maria Farinella, Sanja Fidler, Antonino Furnari, Evangelos Kazakos, Davide Moltisanti, Jonathan Munro, Toby Perrett, Will Price, and Michael Wray. Scaling egocentric vision: The epic-kitchens dataset. In ECCV, 2018. 4, 5, 6, 12, 13
作者:seven_