来源:投稿 作者:橡皮
编辑:学姐
论文链接:https://arxiv.org/abs/2403.19578
项目主页:https://www.robot-learning.uk/keypoint-action-tokens
摘要:
我们表明,现成的基于文本的 Transformer 无需额外训练即可执行小样本上下文视觉模仿学习,将视觉观察映射到模仿演示者行为的动作序列。我们通过将视觉观察(输入)和动作轨迹(输出)转换为标记序列来实现这一点,文本预训练的 Transformer (GPT-4 Turbo) 可以通过我们称为关键点动作标记 (KAT) 的框架提取和生成这些标记序列。尽管只接受了语言方面的训练,但我们表明这些 Transformer 擅长将标记化的视觉关键点观察转化为动作轨迹,在一系列现实世界的日常任务中,在低数据环境下的表现与最先进的模仿学习(扩散策略)相当甚至更好。KAT 并非像通常那样在语言领域运行,而是利用基于文本的 Transformers 在视觉和动作领域运行,以学习演示数据中的一般模式,从而实现高效的模仿学习,这表明将自然语言模型重新用于具体任务是有希望的新途径。
1 引言
机器人能够通过少量演示学习新技能,这被称为小样本模仿学习,这对于可扩展的机器人学习非常重要。然而,学习能够推广到演示期间未见过的条件的强大技能非常具有挑战性。虽然模仿学习方面最近的成功表明,扩大行为克隆有时可以实现这种推广,但这需要收集涵盖各种对象和条件的大量演示数据集,而且我们仍然缺乏有效的方法,无法通过少量演示学习全新的技能。
图1. 我们引入了关键点动作标记 (KAT),这是一种重新利用现成的大型文本预训练 Transformer 进行高效模仿学习的方法,通过将观察和动作序列表示为基于关键点的标记序列,转换为文本并添加到提示中。KAT 只需 10 次演示即可学习一般行为,而且由于无需训练,因此可以在演示后立即部署所学技能。
与此同时,最近的研究已经证明了 Transformers 在从少数例子中学习序列到序列模式方面表现出色。有趣的是,最近一个引人注目的观察结果是,即使在对来自截然不同领域的数据进行预训练的情况下,Transformers 也可以有效地学习模仿模式,因此可以充当通用模式机器。特别是,对文本进行预训练的大型 Transformers 已经展示了快速学习序列到序列模式的能力,远远超出了基于文本的推理任务。基于这一观察,在本文中,我们现在研究以下内容:我们能否重新利用现成的大型 Transformers(在数据丰富的语言上进行预训练),将其用作数据稀缺的机器人技术中的少样本模仿学习机器?
我们通过将模仿学习建模为序列到序列的预测问题来研究这一点,其中输入序列是来自演示的观察和动作,加上机器人的当前观察,输出是机器人应执行的动作序列。然而,这里的一个关键挑战是将基于文本的 Transformers 应用于视觉,以便这些代表视觉观察和末端执行器动作的序列可以表示为语言标记。因此,我们引入了关键点动作标记 (KAT),这是一个利用现成的视觉 Transformers 和基于文本的大型 Transformers 创建机器人动作低级语言的框架。通过将观察和动作序列转换为标记序列,我们表明,大型Transformer虽然只对文本进行了预训练,但可以仅从几个示例演示(≤ 10)中学习模拟复杂的物理行为。
我们通过一系列真实世界的实验研究了关键点动作标记,深入了解了它在各种少样本学习挑战中的表现,例如空间泛化、泛化到新物体、学习多模态行为以及学习使用 6DoF 动作空间执行轨迹。我们表明,借助关键点动作标记,现成的文本预训练 Transformers 能够在日常任务中执行少样本学习,并且与当前最先进的模仿学习(扩散策略)相当或更胜一筹。据我们所知,这是第一项提出全面方法从视觉执行模仿学习的研究,该方法使用现成的大型文本预训练 Transformer 作为核心模仿学习算法,无需额外训练。我们工作的一个重要贡献是,有力地证明了
大型预训练 Transformer 能力的逐步发展正在导致越来越多通用且高效的模式学习机器的出现,这些机器可以直接用于现成的序列到序列模仿学习,而无需对任何机器人数据进行训练。
重新利用在数据丰富的语言领域训练的大型网络的能力,是解锁数据稀缺的机器人领域前所未有的学习效率的有希望的途径。
图 2:我们的流程图。KAT 将视觉观察转换为关键点标记序列。从中,经过文本预训练的 Transformer (LLM) 预测动作标记,然后将其作为姿势轨迹执行。
2 相关工作
少量模仿学习。
少量模仿学习是机器人学习的主要要求之一,更广泛地说,是机器学习的主要要求之一。行为克隆是指在来自专家演示者的观察-动作对数据集上训练神经网络,通常需要数百次费力的演示才能学习任务。多年来,已经提出了许多方法来解决这个问题。有的工作提出训练一个网络明确地将演示作为输入,并输出遵循演示行为的动作。有的工作提出在相同行为的演示对上学习孪生网络,以学习针对一次性或少量学习的任务特定嵌入。有的工作提出训练几个不完善的动力学模型来训练策略以有效地适应现实世界的数据。然而,所有这些方法仍然依赖于收集大量的交互数据。我们建议使用仅在文本上预训练的大型 Transformers 的新兴模式完成能力,其中不使用机器人数据对其进行预训练或微调。
微调大型预训练模型。
最近的研究出现了一种有效的范例,即首先在庞大的、与任务无关的数据集上预训练大型模型,然后使用代表当前任务的小型数据集进行微调。此类模型称为基础模型。虽然在计算机视觉和自然语言处理领域取得了巨大成功,但缺乏大量机器人数据集阻碍了机器人特定基础模型的创建。虽然一些工作通过在机器人数据上微调大型视觉语言模型展示了有希望的结果,但学习新任务仍然效率低下且费力。使用关键点动作标记,我们表明不需要微调,因此我们可以实现高效的上下文学习。
在机器人技术中使用大型语言模型作为规划器。
文本预训练的 Transformer 或大型语言模型 (LLM) 在解释和推理文本方面的能力呈指数级增长,从而产生了大量利用此类模型的机器人技术。有很多工作使用 LLM 作为高级规划器,以语言形式获得解决任务的步骤列表。一些工作利用 LLM 将自然语言中任务的高级描述映射到轨迹优化器可以使用的奖励中。虽然这些方法很有效,但它们依赖 LLM 为外部优化器生成高级计划或指导,因此需要额外的技术将这些输出付诸行动。在我们的工作中,我们不将 LLM 用于自然语言,而是利用它们的模式学习能力直接处理观察序列并生成可执行的低级轨迹。因此,我们阐明了一种违反直觉的现象:在机器人学习中,法学硕士 (LLM) 最有效的用途之一是在输入和输出中无需使用自然语言。
输出机器人动作的语言模型。
先前工作使用语言注释演示形式的机器人数据对视觉语言模型进行微调。因此,他们获得了一个可以接收语言指令作为输入的模型,并且可以像我们的方法一样输出可由机器人直接执行的动作。然而,主要的区别在于 1) 我们不需要微调,而是使用现成的模型,2) 虽然他们的模型接收语言指令,但我们的方法可以在低级演示上执行上下文学习,因此可以充当通用模仿学习机器。还有的工作展示了 LLM 直接输出可执行操作轨迹而不是高级文本计划的能力。然而,这只能根据语言指令生成和执行轨迹,因此无法从演示中学习。最早展示 LLM 一般模式学习能力的作品之一展示了 LLM 能够自回归地完成作为输入的部分轨迹,从而学习超出人类语言的模式。然而,与他们的工作不同,我们提出了一个完整的模仿学习框架,该框架接收复杂的视觉输入并复制许多日常任务中的专家行为,这带来了一系列独特的挑战,我们将在后面讨论。据我们所知,我们是第一个提出完整框架的人,该框架可以使用现成的文本预训练 Transformers 从以视觉观察和动作序列形式呈现的演示中学习。
情境学习。
扩大大型 Transformer 的训练规模,尤其是在语言数据上,导致了情境学习的出现。虽然对这种现象的解释尚不完全清楚,但最近的研究已经调查了它在简单设置中的出现。一些工作研究了情境学习(一种没有权重更新的纯前馈自适应机制)与梯度下降之间的相似之处,假设 Transformer 学会通过注意力头隐式地应用梯度更新。这些观察启发了这项工作,以及将 Transformer 及其情境学习能力用作通用模仿学习机器。请注意,Transformer 并不是获得情境学习的唯一方法。还有的工作训练了一个图神经网络,以情境学习的方式在少数演示的条件下学习对象对齐。然而,他们将模仿学习表示为学习最佳物体对齐,而我们将策略完全表示为一系列机器人姿势,提出一种新的输入输出表示(关键点和动作标记)和使用预训练语言模型作为上下文模仿学习机器。
3 方法
我们将小样本模仿学习公式化为一个序列到序列问题。令
表示机器人接收到的观察序列,
表示末端执行器动作序列 - 在我们的例子中,SE(3) 姿势
的轨迹在世界框架
中表示。令
表示人类专家给出的演示序列,每个
表示给定特定观察序列所需的动作序列。我们的目标是找到一个有效的模仿学习机
,其中
是一个新的输入序列,
是预测的动作序列,可以有效模拟
中隐含的专家行为。
在这项工作中,机器人在情节开始时记录一个视觉观察
。因此,对于每个演示
,机器人都会收集一个观察
和一系列动作
。部署后,机器人的任务是记录一个新的观察
并计算一系列动作
,以模拟在
中观察到的专家行为。流程如图 2 所示。记录和使用单个视觉观察是这项工作的设计选择,而不是我们方法的固有限制,它可以每T步接收一个新的视觉观察,并计算每次调节的新动作轨迹。
当前文献通常将问题分解为两个步骤:首先,
的输出是在
上训练的策略网络 πθ;其次,动作序列计算为
。然而,我们证明这种分解不是必要的:我们可以利用预训练 Transformer 的上下文学习能力将
和
输入网络,然后计算
以模拟在
中观察到的模式。
更具体地说,上下文学习通常指某些网络无需更新参数即可进行少量学习的能力。网络以几个示例数据点和新输入为条件,根据示例中表达的行为计算输出,形式为
。虽然并非完全专属于它们,但最近的文献表明,这种能力来自经过训练的大型 Transformer,用于在庞大的数据集上执行自回归模式完成,最成功的案例是语言。
这项工作的核心发现是不需要使用机器人数据进行预训练或微调,我们可以
重新利用完全基于文本数据进行预训练的大型 Transformer
(大型语言模型),而无需任何额外的微调,它可以充当极其高效的模仿学习机器
。
为了解锁这些能力,我们首先需要将
和
转换为一种数据格式,以便由文本预训练的 Transformer(用于提取文本)进行解释。在这项工作中,标记化是指将观察和操作转换为可以作为文本预训练的 Transformer/大型语言模型的输入的形式,我们将在稍后更详细地描述这一点。
我们的目标是将
和
表示为一系列标记,找到一种能够有效表示观察和动作的语言。为此,我们引入了**关键点动作标记 (KAT)**。我们的框架转换:
将视觉观察到的一系列 3D 视觉关键点,然后将其标记为字符串:我们将其定义为
关键点标记
(图 3)。
将 SE(3) 姿势的末端执行器轨迹分解为末端执行器框架中固定的 3D 点序列,这些点也被标记为字符序列:我们将其称为
动作标记
(图 4)。
我们现在将更详细地描述这两个过程。
A. 关键点tokens
机器人收到的观测数据为自上而下的 RGBD 图像
,尺寸为 (512, 512, 4),在每次回合开始时由经过校准的 RGBD 相机拍摄。为了加速学习过程,我们旨在从像素序列中提取低维数据。具体来说,我们从每个图像
中提取一系列视觉关键点
,如图 3 所示。为此,我们利用了最近的 Vision Foundation 模型:在大量图像数据集上进行预训练的大型视觉网络。我们使用 DINO Vision Transformers (DINO-ViTs),这是一组网络,已被证明能够从图像中提取信息丰富的描述符,表示图像中存在的语义和几何信息。我们遵循在中提出的方法:首先通过将每个图像输入到 DINO-ViT 中,从
中演示期间收集的每个图像计算形状为 (H, W, 6528) 的密集描述符张量 E(其中 H, W < 512 且取决于所选的补丁大小)。然后,我们通过最佳伙伴最近邻方法提取一系列 K 个描述符,例如,形状为 (1, 1, 6528) 的一维向量,对应于 H × W 补丁和相应描述符中的一张演示图像中的特定补丁。直观地讲,提取的描述符表示图像中所有收集到的观察结果所共有的部分,因此编码了特定的语义或几何结构(例如,杯子的把手、瓶子的盖子)。这个过程完全是自主的。一旦我们获得了这 K 个描述符,我们就可以从测试时间观察中提取视觉关键点。为此,我们从
中提取密集描述符张量
,并通过最近邻搜索找到与 K 个存储描述符最接近的描述符,从而获得 K 个 2D 空间位置
。这些表示图像中的 2D 关键点。通过校准的 RGBD 相机,我们可以首先获得 2D 像素的深度分量,使其成为 3D,然后将它们从相机坐标转换为世界框架 W 坐标。此过程的最终输出是世界坐标中的 3D 视觉关键点序列。通过将这些数字表示为字符,我们获得关键点标记 k,然后将其用作输入序列
。
B. 动作tokens
给定输入
,人类专家提供一系列动作
,即末端执行器姿势的轨迹,可展示所需的行为。在我们的工作中,我们将末端执行器姿势表示为以米为单位的 3D 虚拟点三元组
= [0.05, 0.0, 0.0],
= [−0.05, 0.0, 0.0],
= [0.0, 0.1, 0.0],统称为
,在末端执行器框架 E 中定义。然后,每个末端执行器姿势表示为世界框架中的三元组点
,其中
是通过机器人的正向运动学获得的。映射是唯一且可逆的:每个姿势都可以唯一地表示为三元组 eW,反之亦然,我们可以从每个三元组恢复相应的姿势。补充材料中提供了更多详细信息。
请注意,将 SE(3) 姿势表示为 3D 点的三元组在数学上是多余的。我们为什么选择这种冗余?原因是,这样,每个 3D 点都位于 3D 关键点标记的相同欧几里得空间中,因此有助于模式识别。另一方面,使用旋转表示(如角轴、欧拉角或四元数)虽然需要较少的数字,但需要隐式学习从欧几里得空间到不同流形的映射。在我们的实验部分,我们将通过经验证明这些好处。在图 4 中,我们展示了末端执行器将瓶子直立的轨迹,显示了在空间中移动的三元组点。每个三元组
由 9 个数字表示,我们可以将其表示为字符以获得动作标记 a。因此,轨迹 A 表示为一系列
动作标记
。
图 4:动作标记的图示,在本研究中用于表示 SE(3) 末端执行器姿势。
虽然从演示中计算出的动作标记总是形成具有预定义形状的三角形,但这些标记是在测试时独立预测的,因此这种几何约束可能并不总是成立。因此,我们通过最小平方误差方法找到最接近的三角形,并据此计算末端执行器的姿势。
为了表示夹持器的状态,我们在表示姿势的数字 9 上添加了一个额外的数字 δg,如果 δg = 0 则表示夹持器打开,如果 δg = 1 则表示夹持器闭合。在测试时,我们将可能有噪声的预测四舍五入为
,以及
。在我们稍后将介绍的所有基线中,此夹持器表示以相同的方式使用。
这种表示类似于在研究抓取的有效表示中提出的表示,但它是在像素空间中运行的:它们在视觉观察上绘制一个三元组像素,表示末端执行器将移动到的位置。然后,它们对这些三元组的可能像素位置进行采样,并使用学习网络来验证这是否会导致成功抓取。我们的表示是在 3D 世界框架欧几里得坐标中,我们输出一系列这样的姿势来执行抓取以外的任务。
C. 通过预训练的Transformer进行情境模仿学习
在文本数据集上训练以执行语言建模的 Transformer(称为大型语言模型)接收提示 pi 作为输入,即一系列标记,并自回归计算一个新的标记序列
,以最大化似然
。虽然最初训练的目的是完成文本提示,因此在给出模拟数据中出现的自然语言概率分布的提示时,这些 Transformer 会生成连贯的新文本,但据观察,这些 Transformer 获得了执行超出自然语言领域的一般模式补全的新兴能力。在每次训练中,机器人都会收集专家演示者记录的视觉观察和动作轨迹:观察结果被转换成关键点标记序列,动作被转换成我们选择的三元组表示,即动作标记序列。在测试时,机器人收集观察结果,并将其转换成新的标记序列。因此,当接收到这些关键点和动作标记序列作为提示 pi 时,Transformer 将根据新的关键点标记序列输出一个新的动作标记序列,该序列模仿专家在 D 中表现出的行为。然后,动作标记(即三元组
)将被转换为末端执行器的 SE(3) 姿势并按顺序执行。
因此,在这项工作中,我们解决了序列到序列的少样本模仿学习问题,首先将 D 中的所有序列转换为关键点动作标记
,将每个标记附加到作为 Transformer 输入给出的标记列表 pt。我们还将当前任务的新观察 ot 表示为关键点标记序列 kt,并将其附加到
。然后,机器人将在
处执行预测动作标记序列,其中