BC-Z:利用机器人模仿学习进行零样本任务泛化

22年2月来自谷歌、Everyday Robots、伯克利分校和斯坦福的论文“BC-Z: Zero-Shot Task Generalization with Robotic Imitation Learning”。

本文研究如何使基于视觉的机器人操控系统推广到新任务,这是机器人学习中长期存在的挑战。从模仿学习的角度来应对这一挑战,旨在研究如何通过扩展和拓宽所收集的数据来促进这种推广。为此,开发一个交互式的灵活模仿学习系统,该系统可以从演示和干预中学习,并可以根据传达任务不同形式的信息进行调节,包括预训练的自然语言嵌入或人类执行任务的视频。当将真实机器人上的数据收集扩展到 100 多个不同的任务时,该系统可以执行 24 个未见过的操作任务,平均成功率为 44%,无需任何机器人演示过这些任务。

机器人技术的一大挑战是打造一个通用机器人,使其能够根据任意用户命令在非结构化环境中执行多种任务。这一努力的关键挑战是泛化:机器人必须应对新环境,识别和操纵从未见过的物体,并理解从未被要求执行的命令意图。从像素进行端到端学习,是建模此类通用机器人行为的灵活选择,因为对世界状态表示的假设很少。有了足够的现实世界数据,这些方法原则上应该能够使机器人在新的任务、物体和场景中进行泛化,而无需手工编码、特定于任务的表示。然而,实现这一目标通常仍然难以实现。

本文研究使机器人能够将零样本或少样本泛化到基于视觉操纵任务的新问题。使用模仿学习的框架来研究这个问题。先前的模仿学习研究已经展示了对新物体 [1、2、3、4、5] 和新物体目标配置 [6、7] 的单样本或零样本泛化。然而,对新任务的零样本泛化仍然是一个挑战,尤其是当考虑基于视觉的操作任务时,这些任务涉及各种物体的广泛技能(例如,擦拭、推动、拾取和放置)。实现这种泛化取决于解决与扩大数据收集和学习不同数据算法相关的挑战。

如图显示了模仿学习系统的概览。目标是训练一个可以解释 RGB 图像的条件策略,表示为 s,以及任务命令 w,这可能对应于语言字符串或某人的视频。不同的任务对应于完成不同的目标。收集包含 100 个不同操作任务的大规模数据集(25,877 个情节),并训练以任务语言字符串或人类视频为条件的 7-DoF 多任务策略。该图展示该系统产生的策略能够将零样本泛化到未见过的任务。

请添加图片描述

该策略使用通过 VR 远程操作装置收集的大规模数据集进行训练(见图左),结合直接演示和人-在-环共享自主性。在后者,训练好的策略部署在机器人上,当机器人犯错时,人类操作员进行干预以提供纠正。此过程类似于人类-门控 DAgger (HG-DAgger) 算法 [26, 29],并为学习的策略提供迭代改进,以及可用于跟踪策略性能的连续信号。

如下图显示了一些示例任务和相应的命令。该策略是从图像和命令到动作的映射,可以写成 μ : S × W → A,其中动作空间 A 由末端执行器的 6-DoF 姿势以及用于连续控制平行钳口夹持器的第 7 个自由度组成。图中显示用于评估零样本任务泛化的训练任务子集(上行)和保留任务子集(下两行)。左上图:给定从人类视频或文本计算出的预训练任务嵌入,BC-Z 充当任务嵌入的“动作解码器”。

请添加图片描述

策略架构分为一个编码器 q(z|w),将命令 w 处理为嵌入 z,以及一个控制层 π,处理 (s,z) 以产生动作 a,即 π : S × Z → A。这种分解如上图所示。它为方法提供了结合辅助监督的能力,例如预训练的语言嵌入,这有助于构建潜任务空间并促进泛化。在实验中可以看到其泛化到训练期间未见过的任务,包括动词和宾语的新组合。

数据收集从最初的专家阶段开始,在这个阶段,人类从头到尾提供任务的演示。在从专家数据中学习到初始的多任务策略之后,继续在“共享自主”模式下收集演示,在这种模式下,当前策略尝试执行任务,而人类则进行监督。在任何时候,人类都可以通过握住“超控”开关来接管,当策略即将进入不安全状态时,或者当人类认为当前策略无法成功完成任务时,人类可以短暂地完全控制机器人并执行必要的修正。此设置启用 HG-DAgger [29],其中干预数据随后与现有数据聚合并用于重训练策略。对于多任务操作任务,收集了 11,108 个初始策略的专家演示,然后收集了另外 14,769 个 HG-DAgger 演示,涵盖 16 次策略部署迭代,其中每次迭代都会部署在聚合数据集上训练的最新策略。这样一共有 25,877 个机器人演示。

如图所示:用于 100 项任务操作任务的目标。目标集 1(左)用于收集 21 项训练任务的数据,目标集 2(右)用于收集 79 项训练任务的数据。为了进行评估,在目标集 2 中的目标之间生成了 4 个任务,并且 24 个保留任务使用了两个集合中的目标。使用了这些目标的几个实例,偶尔会有细微差别。例如,目标集 1 中的陶瓷碗在图中是红色的,但数据也是用涂成绿色或蓝色的陶瓷碗收集的。

请添加图片描述

对于每个任务 i,该数据集包含专家数据 (s, a) 、人类视频数据 wh 和一个语言命令 wl。以下介绍如何使用这些数据来训练编码器 q(z|w) 和控制层 π(a|s, z)。

编码器 q(z|w) 以语言命令 wli 或人类视频 wh 作为输入,并生成任务嵌入 z。如果命令是语言命令,使用预训练的多语言句子编码器 [46]作为编码器,为每个任务生成一个 512 维语言向量。尽管很简单,但这些编码器在实验中效果很好。

当任务命令是人类执行任务的视频时,使用卷积神经网络来生成 z,特别是基于 ResNet-18 的模型。受之前研究 [2、3] 的启发,以端到端的方式训练这个网络。收集 18,726 个人类视频的数据集,这些视频在各种家庭和办公室位置、摄像机视点和目标配置中执行每个训练任务。使用配对示例人类视频 whi 和相应的演示 {(s, a)}i,对人类视频 zi ∼ q(· | whi ) 进行编码,然后将嵌入传递到控制层 π(a|s,zi),再将行为克隆损失的梯度反向传播到策略和编码器参数。

这种端到端方法本身倾向于过拟合初始目标场景,学习较差的嵌入,并表现出较差的任务泛化能力。为了帮助更语义地对齐视频嵌入,进一步引入辅助语言回归损失。具体来说,这个辅助损失训练视频编码器使用余弦损失预测任务语言命令的嵌入。最终的视频编码器目标如下:
请添加图片描述
由于机器人演示可作为任务的视频,还训练编码的机器人视频以匹配语言向量。这种语言损失对于学习更有条理的嵌入空间至关重要。
给定一个固定的任务嵌入,通过 XYZ 和轴-角预测的 Huber 损失以及夹持器角度的对数损失来训练 π(a|s, z)。在训练期间,图像被随机裁剪、下采样并进行标准光度增强。

开环辅助预测。该策略预测机器人将采取的操作,以及如果以开环方式运行,策略将采取的、接下来 10 个操作的开环轨迹。在推理时,策略闭环运行,仅根据当前图像执行第一个操作。开环预测赋予一个辅助训练目标,并提供一种以离线方式视觉地检查一个闭环规划质量的方法。

状态差作为动作。在标准的模仿学习实现中,演示时采取的动作直接用作要从状态预测的目标标签。但是,以 10Hz 的频率克隆专家动作,会导致策略学习非常小的动作以及抖动行为。为了解决这个问题,将动作定义为未来 N > 1 步目标姿势的状态差,使用自适应算法根据手臂和夹持器移动多少来选择 N。

用深度神经网络对策略进行建模,如图所示。策略网络使用 ResNet18“主干”[48] 处理头戴式摄像头的相机图像,其从最后一个均值池化层分支出多个“动作头”。每个头都是一个多层感知器,具有两个大小为 256 的隐藏层和 ReLU 激活,并模拟部分末端执行器动作,特别是 XYZ 增量、轴-角增量和标准化夹持器角度。该策略通过 FiLM 层 [47] 以 512 维任务嵌入 z 为条件,根据从语言 wl 或视频 wh 计算的任务嵌入 z 来调节架构。按照 Perez [47] 的方法,任务条件被线性投影到 4 个 ResNet 块中每个通道的通道缩放和移位。
请添加图片描述
最后,总结一下视频编码器和BC-Z的训练算法如下:

请添加图片描述
请添加图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值