25年2月来自斯坦福的论文“Action-Free Reasoning for Policy Generalization”。
端到端模仿学习为训练机器人策略提供一种有前途的方法。然而,泛化到新环境(例如未见过的场景、任务和目标实例)仍然是一项重大挑战。尽管大规模机器人演示数据集已显示出诱导泛化的潜力,但它们的规模化需要大量资源。相比之下,人类视频数据丰富多样,提供一种有吸引力的替代方案。然而,这些人类视频数据集缺乏动作标签,使其在模仿学习中的使用变得复杂。现有方法试图提取扎实的动作表征(例如手势),但由此产生的策略难以弥合人类和机器人动作之间的具身差距。
本文提出一种替代方法:利用人类视频中的语言推理(这对于指导机器人动作至关重要)来训练可泛化的机器人策略。根据基于推理策略架构的最新进展,引入通过无动作数据进行推理 (RAD)。RAD 从机器人演示数据(带有推理和动作标签)和无动作人类视频数据(仅带有推理标签)中学习。机器人数据教会模型将推理映射到低级动作,而无动作数据则增强推理能力。此外,将发布一个与 Bridge V2 基准兼容的 3,377 人手演示的新数据集。该数据集包括思维链推理注释和手部跟踪数据,以帮助促进未来推理驱动的机器人学习工作。其实验表明,RAD 能够跨具身差距进行有效迁移,使机器人能够仅在无动作数据中执行见过的任务。此外,扩大无动作推理数据,可显著提高策略性能和对新任务的泛化能力。
如图所示:RAD 通过思维链推理从人类和机器人数据中学习。
通过模仿学习训练视觉运动策略,是机器人控制的一个有吸引力的范例。然而,当前端到端学习方法面临的一个突出挑战是泛化到训练数据之外的新环境,例如新场景、新任务指令和新目标实例。例如,如果机器人学会在实验室环境中拿起视频游戏控制器,但在办公室遇到同一个控制器,它仍然应该使用其先验知识来弥合不同环境之间的差距。推广到这些类型新场景的能力对于使基于学习策略在实践中发挥作用至关重要,因为现实世界通常呈现多样化和不可预测的场景。
实现可泛化策略的一种方法,是收集跨任务和实施方案的大规模机器人演示数据集,并在其上训练富有表现力的多任务策略 [15, 10, 16, 32]。虽然有迹象表明扩大数据集是解决方案,但还没有达到全面泛化所需的规模,有人可能会认为收集如此规模的数据实际上是不可行的。
另一方面,许多人认为,利用人类视频数据集(由人类直接执行任务而不是收集机器人数据)是解决问题的答案 [39, 35, 3]。这些数据收集成本低,并且已经大规模存在于互联网数据集中。然而,人类视频缺乏动作标签,这使得模仿学习等监督学习方法非常困难。一些研究通过从视频中提取扎实的动作类表征作为模仿学习的标签来应对这一挑战,例如手势或目标动作 [4, 24, 17, 38]。然而,从人类视频中提取扎实的动作通常会对场景和具身差距做出假设(例如,手势如何映射到机器人动作或依赖于配对的人-机器人数据),这可能会限制它们在实践中的实用性。
有一个问题:除了从视频中提取扎实的动作以及随之而来的限制性假设,还有其他行为信息(仍然直接影响机器人动作)可以从人类视频和更普遍的无动作数据中提取吗?答案是:人类视频包含大量指导机器人动作预测的高级推理,这些推理信息可以通过语言捕获。例如,如果任务是拿起一个杯子,人类的手可能会向杯子移动,然后抓住杯子,然后举起杯子。虽然先前的工作可能会学习一种输出手势变化的策略并希望将其迁移到机器人身上,但可以从人类视频中学习预测这种详细的推理本身,这在许多具身中是共享的。自回归预测推理每个阶段的策略——从高级语言预测到基本的机器人动作——表现出可操纵的行为,可以提高性能和泛化能力 [40, 2]。虽然这些先前的工作通常依赖于对机器人轨迹的推理,但关键思想是从无动作的人类视频中提取这种推理——显著扩大包含机器人动作的数据。
语言作为动作表示。语言通常用作模仿学习中的高级表示,用于调节特定指令的多任务策略 [30, 13, 5, 6, 16],或作为将高级、长视界指令分解为低级子任务指令的一种方式 [7, 11, 28]。最近,一些工作研究更细粒度的语言(例如“语言动作”)作为中间表示的作用,以预测 [2] 或明确推理语言,以及其他基于视觉的特征(例如边框)作为指导大型预训练策略的方式 [40]。
视觉-语言-动作模型。最近的研究探索使用预训练的视觉-语言模型 (VLM) 作为视觉-语言-动作模型 (VLA) 的主干,后者可直接预测低级机器人动作。例如,RT-2-X [10] 在 Open-X 实施数据集 [10] 上微调 55B 参数的 PaLI-X VLM [9]视觉语言数据上训练过的 VLM 的泛化之上。将 VLM 功能迁移到 VLA 的另一种方法,是利用它们的文本推理能力。例如,具身思维链 (ECoT) 通过对合成推理数据进行训练,在预测机器人动作之前使用了多个推理步骤 [40]。
从人类视频中学习。机器人模仿学习领域的大量先前研究,都侧重于从专家操作员通过遥操作收集的演示中学习。这种数据收集方法成本高昂,因此许多先前研究已经研究利用现有人类视频数据源来改进机器人策略学习的方法——例如,通过预训练视觉表征 [19, 36, 14]、学习奖励函数 [25, 8, 18]。然而,由于视频的具身差异和多样性,弥合人类视频和机器人动作之间的差距可能具有挑战性。一些研究从人类视频数据集和/或域内人类视频 [27, 1, 35, 17] 中学习先验知识,或对齐人类视频和机器人演示视频的配对/非配对示例 [26, 29, 37, 12] 或模拟 [23]。这些研究仍然受到机器人演示数量的根本限制。另一项研究利用中间表征来预测机器人的下游动作,但对人类手部行为做出了假设,而这不一定与机器人相同 [21, 4]。
RAD 涉及两个主要步骤。首先,使用语言推理注释无动作数据。其次,在包含动作和推理链的机器人演示数据与仅包含推理链的无动作数据组合上训练基于推理的策略。
问题:在无动作数据中学习推理
在多任务模仿学习中,得到一个数据集 D = {(o_1,a_1,g_1),…(o_N,a_N,g_N)},它由观察 o、动作 a 和任务规范 g 多元组组成,这些通常以语言形式表述。目标是学习以观察 o 和任务规范 g 为条件的专家动作分布 P (a | o, g)。
定义基于推理的多任务模仿学习目标。假设存在一些中间语言推理的 C 步链,将观察 o 和动作标签 a 联系起来,将其表示为 (l1, . . . , lC )。每个推理步骤 l_j 的分布仅取决于前面的推理步骤 (l1,…,lj−1) 以及 o 和 g。动作 a 的分布,取决于所有推理步骤 (l1,…,lC) 以及观察 o 和任务 g。将基于推理的多任务模仿学习问题目标,定义为学习专家联合推理和动作分布 P (a, l1, . . . , lC | o, g)。在这种情况下,D 中的每个元组 (o_i , a_i , g_i ) 都用推理链 (l_i1,…,l_i^C) 进行扩充。希望学习一个由 θ 参数化的分布 P_θ,最大化 D 中推理和动作数据的对数似然:
RAD 中的关键见解是,无动作数据集(例如人类视频数据,通常比机器人演示更容易收集)可以为联合动作推理分布 P_θ 提供额外的监督,从而有助于泛化。具体来说,假设可以访问一些无动作数据 D ̃,这些数据由 M 个样本(o ̃_i、g ̃_i、l_i1 · · · l_i^C_i)组成。这里,样本 i 包括语言推理前 C_i ≥ 1 个步骤,其中 C_i 可能因样本而异。例如,对于无动作数据的不同子集,对完整推理标注流水线的信心程度可能有所不同——例如,由于具身差距较大,某些样本可能只对较高级别的推理步骤(较低的 C_i)有信心,而其他样本可能具有高质量的较低级别推理(较高的 C_i)。重要的是,这种推理标注的灵活性可以使框架整合大量不同质量和具身推理的数据,独立于动作预测改进推理过程的每个步骤。
优化上述目标以及无动作数据的辅助目标 L ̃_reasoning(θ),其定义类似如下:
注:由于样本 i 包含前 C_i 个推理步骤,因此有足够的信息来根据先前的推理步骤、当前的观察和任务对每个 C_i 推理步骤进行建模。
RAD 中的推理步骤
虽然此设置原则上可以与不同的语言推理步骤公式一起使用,但用先前工作 [40] 中的以下推理步骤实例化算法:
• TaskPlan (l^1):描述要实现 g 的子任务列表。
• SubtaskReasoning (l^2):推理当前需要在规划中执行的子任务。
• Subtask (l^3):预测当前需要执行的子任务。
• MoveReasoning (l^4):推理在场景中完成子任务所需的运动。
• MovePrimitive (l^5):预测语言中的移动原语。
• GripperPosition (l^6):预测末端执行器的像素位置。
• VisibleObjects (l^7):预测场景中目标的边框坐标。
• 动作 (a):将低级机器人动作预测为末端执行器位置增量。
这些推理步骤通过越来越多的物理和空间基础信息进行追踪——从对任务和子任务的高级场景推理开始,过渡到对语言运动的推理,然后是关于夹持器和目标的空间信息,最后是低级机器人动作。如下利用这一事实,设计一个流程来标注无动作数据中的推理。
在无动作数据中标记推理
为了构建 D——观察、目标和无动作推理的数据集——需要从人类视频中为上述推理步骤生成标签。流程类似于具身思维链 (ECoT) [40] 用于生成机器人演示推理的自动化程序,并进行一些关键修改以处理人类视频。为了获得机器人演示的推理标签,ECoT 首先使用现成的目标检测器生成 GripperPositions 和 VisibleObjects 标签以获得边框 。然后,它使用自动启发式方法直接从动作中提取 MovePrimitive(例如“向左移动”)。在这些更扎实的推理步骤(l5、l6、l7)和图像观察 o 的基础上,它查询 Gemini [31] 以标记先前的推理步骤,从 TaskPlan 到 MoveReasoning(l1、…、l^4)。
在无动作设置中使用人类视频时,仍然可以使用 Gemini 提取高级推理,以及使用现成的目标检测器提取 VisibleObjects。然而,生成更多基于动作的推理步骤具有挑战性:无法再自动提取 MovePrimitives 或 GripperPositions,因为缺乏明确的动作标签。为了克服这个问题,用 HaMeR [22](一种手部关键点和姿势跟踪方法)提取 MovePrimitives 和 GripperPositions。根据这些预测,可以从手势信息变化中提取 MovePrimitives:首先,研究每帧手势变化的每个轴;然后,根据主要运动轴标记移动原语。这对于跟踪夹持器和位置运动原语非常有效,但对于检测旋转运动原语则不那么可靠。如图所示概述此标记过程:
在部分推理链上进行训练
为了在演示和无动作数据的混合上进行训练,用 ECoT 和 OpenVLA [40, 16] 架构,该架构训练具有 7B 个参数的预训练 VLM Transformer,以预测语言推理序列,然后预测动作tokens。该模型在互联网规模的视觉语言任务上进行预训练,例如边框检测或目标定位。因此,它受益于强大的视觉和语言先验。然后,借助 ECoT 和 OpenVLA,它针对机器人演示数据进行进一步训练,在 ECoT 的情况下,它会先预测语言推理tokens,然后再预测动作tokens。在 RAD 中,将此范例重新用于机器人演示数据,但对于新的无动作数据,用于训练的“标签”仅包含推理。
在实验的真实环境用 6-DoF WidowX 机械臂。
数据收集:主要人类视频数据收集是在 Bridge V2 Toy Sink 设置上进行的。根据原始 Bridge V2 场景对齐一台摄像机。还在 WidowX 夹持器的正后方设置第二台摄像机,以便更好地跟踪手部运动,如图所示。
示例任务如图所示。用 HaMeR 通过辅助摄像机视角跟踪手部。用 HaMeR 跟踪的拇指尖和食指尖点的平均位置作为夹持器位置。根据帧之间的增量夹持器位置,将每帧描述为“停止”、“向前移动”、“向后移动”、“向左移动”、“向右移动”、“向上移动”或“向下移动”运动基元。用拇指尖和食指尖之间的平均距离来确定“闭合夹持器”和“打开夹持器”基元。为了在人类视频上生成推理,遵循 [40] 的流程,但使用这种 HaMeR 跟踪代替本体感受和 SAM 来生成运动基元和夹持器位置。
数据混合:对于RAD-A 模型(只在一个泛化轴利用人类视频数据进行训练),为组合泛化数据集收集 392 个演示,为新目标数据集收集 304 个演示,为新场景数据集收集 280 个演示。完整的 RAD 模型以及 ECoT-GT 模型均在这三个数据集以及 640 个额外演示上进行训练,总共 1616 个演示。
跨环境迁移的训练数据是从两个桌面环境中收集的,如图所示。每个任务总共收集 40 个演示。
数据规模化(包括分布内 ID 和分布外 OOD 数据)是在 Toy Sink 设置中收集 100 个额外演示,用于“分布内 ID”评估。对于“分布外 OOD”数据,从 5 个不同的场景中收集 50 个演示,如图所示。
RAD 使用 Open-VLA [16] 的 Prismatic VLM [35] 架构,该架构融合用于视觉编码器的预训练 SigLIP [41] 和/或 DinoV2 [20] 特征,以及 LLaMA2 7B [33] 语言主干。所有模型都经过微调,以 2e-4 的学习率、LoRA 批处理大小 2 以及 2 到 8 个 GPU(L40 或 A40)收敛。ECoT-GT 基线的训练与 RAD 相同,只是省略停止 token 的损失项,还将查询提示从“机器人应该对 [任务] 采取什么行动?”调整为“机器人手位于图像中哪儿?”。
本文在 Bridge V2 [34] 中的玩具水槽设置上执行评估,以确保与现有的预训练模型进行公平比较。所有人类视频数据也是在玩具水槽设置(1616 个演示视频)中收集的,使用标准 Bridge V2 摄像头设置以及用于更好地进行手部跟踪的附加摄像头。值得注意的是,Bridge V2 设置主要由现实世界目标的微型玩具复制品组成,例如小厨房用品、积木和家居用品。因此,这里还试图评估 RAD 如何响应来自真实人类环境的数据,并学习与真实大小的目标交互。因此,在另外两个环境中收集数据:一个普通的桌面和一个杂乱的桌子,以及各种真实的家庭和厨房环境。这些数据用于评估 RAD 如何响应来自非结构化环境的数据。
实验通过各种泛化任务评估 RAD。这些任务包括三个主要的泛化轴:
- 组合泛化:在这个轴上,目标、任务和场景都在预训练数据(Bridge V2 数据)中可见,但不在这些特定配置中可见。例如,披萨和盐都存在于 Bridge V2 中,但盐从未放在披萨上。
- 新目标泛化:这个轴为已知行为引入未见过目标(例如,拿起杯子 → 拿起毛绒玩具)。
- 新场景泛化:这个轴需要泛化到新背景和干扰目标,以完成可见任务;例如,在背景中拿起一个已知目标,而锅在背景中。
如图所示组合新任务、目标和环境的例子:
注:组合泛化轴,测试模型插入训练数据的能力,而新目标和新场景轴,测试模型从训练数据中推断的能力。