中文 EN

GR-MG: Leveraging Partially-Annotated Data via Multi-Modal Goal-Conditioned Policy

作者:Peiyan Li, Hongtao Wu, Yan Huang, Chilam Cheang, Liang Wang, Tao Kong

机构:CASIA / UCAS / ByteDance Research

发表信息:IEEE Robotics and Automation Letters;arXiv:2408.14368;论文标注为 2024 年 12 月接收,项目页引用为 2025 年 RA-L 论文

链接:arXiv | PDF | 项目主页 | 官方代码

1. 论文速览

一句话总结:GR-MG 用一个带任务进度条件的目标图像生成模型,把语言指令和当前观测转成中间目标图像,再让多模态目标条件策略同时看语言、目标图像、历史观测和机器人状态来预测动作,从而利用缺动作标签的视频和缺文本标签的机器人轨迹。

难度评级:★★★★☆。阅读需要熟悉语言条件模仿学习、goal-conditioned policy、diffusion image editing、Transformer policy、cVAE 动作轨迹预测,以及 CALVIN 长程评测。

关键词:Robot manipulationPartially annotated dataGoal image generationMulti-modal goal-conditioned policyTask progress

阅读定位项精简答案
论文要解决什么语言条件机器人操作需要同时有动作和文本标注的轨迹,但这种 fully-annotated 数据昂贵;论文要把“有文本无动作的视频”和“有动作无文本的机器人轨迹”都纳入训练。
作者的方法抓手把目标拆成两级:先用 InstructPix2Pix 风格的进度引导目标图像生成器产生 sub-goal image,再用同时条件于 text + goal image 的 GPT-style policy 预测动作轨迹、未来图像和任务进度。
最重要的结果CALVIN ABC→D 中 5 连续任务平均完成数从 3.35 提到 4.04;真实机器人 simple 设置从 68.7% 到 78.1%,generalization 平均从 44.4% 到 60.6%。
阅读时要注意的点核心不是单纯“生成好看的目标图”,而是进度条件、text+image 双条件 policy、两类部分标注数据分别进入两个模块的训练路径。

核心贡献清单

GR-MG overview
Fig. 1 / Overview:两个模块和两类部分标注数据的使用方式。

2. 动机

2.1 要解决什么问题

论文关注 language-conditioned visual robot manipulation。一个标准策略可写为:

策略用语言、历史图像和机器人状态直接预测当前动作轨迹。

$$\mathbf{a}_{t} = \pi(l, \mathbf{o}_{t-h:t}, \mathbf{s}_{t-h:t})$$
$l$自然语言任务指令。
$\mathbf{o}_{t-h:t}$从 $t-h$ 到 $t$ 的 RGB 观测序列,论文使用 static camera 和 wrist-mounted camera。
$\mathbf{s}_{t-h:t}$末端执行器 6-DoF 位姿和二值 gripper 状态序列。
$\mathbf{a}_{t}$当前要输出的动作轨迹,而不是单步动作。

难点在数据:fully-annotated trajectory 同时包含语言、图像、状态、动作,采集和标注成本都高。相反,text-annotated human activity videos 缺动作但容易从公开视频数据获得;robot trajectories without text labels 缺语言但可由机器人自主或半自主收集。GR-MG 的目标是把这两类数据都转成可训练信号。

2.2 已有方法卡在哪里

论文把已有路线分成两类:一类只利用缺某一种标签的数据,例如从视频学习表征或用无语言机器人轨迹训练;另一类用生成的目标图像/未来视频作为 policy 或 inverse dynamics 的条件。作者指出这些方法通常有两个问题:第一,goal generation 容易忽略任务进度,导致在“当前观测相同但阶段不同”的任务里生成错误目标;第二,如果 policy 只依赖生成图像,生成图一旦偏离语言指令,后续动作预测会变脆弱。

2.3 本文解决思路

GR-MG 的高层设计是“生成式目标 + 多模态条件策略”。生成器负责把语言和当前观测转成中间目标图像;策略不只看这个目标图像,也保留语言条件,因此生成图不准确时仍有文本信号约束动作预测。任务进度由 policy 在 rollout 中预测,再反馈给生成器形成闭环。

4. 方法详解

GR-MG architecture
Fig. 2 / Network Architecture:进度引导目标图像生成器与多模态目标条件策略的闭环。

4.1 数据形式与训练信号分配

fully-annotated trajectory 被写成:

$$\tau = \{ l, (\mathbf{o}_{1}, \mathbf{s}_{1}, \mathbf{a}_{1}), \ldots, (\mathbf{o}_{T}, \mathbf{s}_{T}, \mathbf{a}_{T}) \}$$

其中语言 $l$、观测 $\mathbf{o}$、状态 $\mathbf{s}$、动作 $\mathbf{a}$ 都可用。GR-MG 把数据按标签缺失方式拆给不同模块:

数据类型包含什么用于训练哪个模块训练时如何使用
fully-annotated robot trajectories语言、图像、状态、动作两个模块生成器用当前帧、语言、未来帧、进度;policy 用语言、真实目标图、历史观测/状态和动作。
data w/o action labels有文本的视频,无动作goal image generation model不需要动作,只要从视频中采样当前图和未来目标图即可。
data w/o text labels有动作的机器人轨迹,无文本multi-modal goal-conditioned policy用 null string 作为文本条件,先训练 policy,再用 fully-annotated 数据 finetune。

4.2 Progress-guided Goal Image Generation Model

生成器基于 InstructPix2Pix,一个 diffusion-based image-editing model。输入是当前观察图像、文本任务描述和任务进度,输出是 $N$ steps 之后的 sub-goal image。作者沿用 Susie 的 sub-goal 思路,不直接生成最终状态,而是定期更新中间目标。

实现要点:progress 不是新增一个专门结构,而是拼进文本,例如 “pick up the red block. And 60% of the instruction has been completed.”,再由 T5-Base 编码。训练时进度从视频/轨迹 timestep 计算;推理时由 policy 预测。

附录 Data / Generation Model 给出复现细节:图像先 resize 到 $256\times256$;训练样本为 $(l, o_t, o_{t+k}, p)$;goal image 由未来 $k_\mathrm{min}$ 到 $k_\mathrm{max}$ 范围内的帧采样;latent diffusion 使用 VAE image encoder、U-Net denoising、text cross-attention 和 classifier-free guidance;推理 denoising steps 为 50。

数据集$k_\mathrm{min}$$k_\mathrm{max}$说明
CALVIN2022仿真基准。
Something-Something-V21114文本标注人类活动视频。
RT-156真实机器人数据,用于扩展生成器训练。
Real3035本文真实机器人数据。

4.3 Multi-modal Goal-Conditioned Policy

policy 继承 GR-1 的 GPT-style Transformer 结构,但做了三处关键改动:

附录 Multi-modal Goal Conditioned Policy 进一步说明:每张图先编码成 196 个 patch tokens 和 1 个 global token;196 个 patch tokens 经 Perceiver Resampler 降到 9 个 token;语言用 CLIP 编码;机器人状态用线性层编码;所有 token 通过线性层对齐到 GPT hidden size。GPT hidden size 为 384,12 heads,12 layers。

Algorithm: GR-MG inference loop
Input: text instruction l, observation/history o, robot state s
progress p = 0
Every n steps:
  prompt = l + " And {p}% of the instruction has been completed."
  goal_image = ProgressGuidedGenerator(current_image, prompt)
Each policy step:
  tokens = [MAE(goal_image), CLIP(l), MAE(o_{t-h:t}), Linear(s_{t-h:t}), [PROG], [OBS], [ACT]]
  action_trajectory, future_images, progress = GPTPolicy(tokens)
  execute first part of action_trajectory
  feed predicted progress back to generator at next goal update

4.4 训练目标

goal image generation model 按 DDPM 噪声预测方式训练;policy 则同时预测动作、未来图像和进度。policy loss 为:

这不是单一行为克隆损失,而是动作、图像预测、VAE 正则和进度回归共同约束。

$$L = l_\mathrm{arm} + 0.01 l_\mathrm{gripper} + 0.1 l_\mathrm{img} + l_\mathrm{kl} + l_\mathrm{prog}$$
$l_\mathrm{arm}$机械臂动作预测损失。
$l_\mathrm{gripper}$夹爪动作预测损失,权重 0.01。
$l_\mathrm{img}$未来图像预测损失,权重 0.1,沿用 GR-1 训练信号。
$l_\mathrm{kl}$cVAE 的 KL divergence。
$l_\mathrm{prog}$任务进度预测损失,输出被反馈给生成器。

5. 实验

Experimental settings
Fig. 3 / Experiments:CALVIN 34 个任务与真实机器人 58 个任务示例。

5.1 实验设置

实验组数据与设置评测问题
CALVIN ABC→D在 Env A/B/C 训练,Env D 测试;约 18k fully-annotated trajectories;评测 1000 条 5-task chains。多任务与 unseen environment 泛化。
CALVIN data scarcity只用 10% fully-annotated 数据,约 1.8k trajectories / 0.1M frames;同时用 Env A/B/C 中 1M frames 的无文本轨迹先训练 policy。缺 fully-annotated 数据时,data w/o text labels 是否有帮助。
真实机器人Kinova Gen-3 + Robotiq 2F-85 + static/wrist cameras;18k demonstrations,37 个训练任务;训练生成器时加入 SSV2 和 RT-1。simple、unseen distractors、unseen instructions、unseen backgrounds、unseen objects 的泛化。
few-shot novel skills从 37 个任务 hold out 8 个任务,其中 7 个为 novel skills;先在 29 个任务/15k trajectories 训练,再用每任务 10 或 30 条轨迹 finetune。新技能少样本学习能力。

5.2 CALVIN 主结果

方法1 task3 tasks5 tasksAvg. Len.
3D Diff Actor93.8%66.2%41.2%3.35 ± 0.04
GR-MG w/o image91.0%67.8%47.7%3.42 ± 0.28
GR-MG w/o text91.8%68.9%48.1%3.46 ± 0.04
GR-MG w/o progress94.1%75.2%56.3%3.76 ± 0.11
GR-MG96.8%81.5%64.4%4.04 ± 0.03

主表最关键的读法是看 long-horizon 指标:单任务成功率从 93.8% 到 96.8% 的提升不大,但 5 连续任务从 41.2% 到 64.4%,平均完成长度从 3.35 到 4.04,说明误差累积下的鲁棒性提升更明显。w/o text 和 w/o image 性能相近且都低于完整模型,支持论文关于 text + image 双条件互补的结论。

5.3 数据稀缺与部分标注数据

方法fully-annotated datapartially-annotated data1 task5 tasksAvg. Len.
GR-110%67.2%6.9%1.41 ± 0.06
GR-MG w/o part. ann. data10%82.4%19.7%2.33 ± 0.04
GR-MG10%90.3%37.5%3.11 ± 0.08

在只给 10% 完整标注数据时,额外 1M frames 的无文本轨迹显著提高 policy 能力。作者观察到 w/o part. ann. data 往往能生成正确目标图,但 policy 跟随目标图能力不足,因此无文本机器人轨迹主要补强的是 policy,而不是生成器。

5.4 进度条件消融

方法MSE ↓PSNR ↑SSIM ↑CD-ResNet50 ↑
GR-MG w/o progress965.34718.8210.7210.945
GR-MG903.13919.1210.7300.946

这组实验把“progress condition 是否只是额外 prompt 装饰”变成可检验问题。四个目标图相似度指标都改善;定性图显示 w/o progress 可以生成视觉质量较高但与语言不一致的目标图,而完整模型更接近 ground truth。

Generated goal image comparison
Fig. 4 / Generated goal images:进度信息和额外部分标注视频对目标图准确性的影响。

5.5 真实机器人结果

Real robot success rates
Fig. 5 / Success rates:真实机器人 simple 与四类 generalization setting。

真实机器人共评估 58 个任务。论文报告 GR-MG 在 simple 设置中把平均成功率从 68.7% 提到 78.1%,在四类 generalization 平均中从 44.4% 提到 60.6%。作者还逐一解释了 baseline 的典型失败:OpenVLA 的离散动作空间与缺少历史/腕部相机输入影响抓取与开合夹爪时机;Octo 有历史和 proprioception,但 unseen backgrounds / objects 泛化较弱;GR-1 在 unseen objects 中容易选错对象。对比 w/o part. ann. data 时,作者把改进归因于额外缺动作标签视频提升语言语义理解和 OOD 鲁棒性。

5.6 Few-shot Novel Skills

方法10-shot30-shot
OpenVLA0.0%2.5%
Octo0.0%0.0%
GR-12.5%22.5%
GR-MG w/o part. ann. data10.0%27.5%
GR-MG17.5%37.5%

few-shot 部分的一个重要观察是:目标图生成器在少样本 finetune 后能生成较准确目标图,但 policy 仍是主要瓶颈。这个观察和结论中的 future work 对应,即进一步扩大 policy 的真实世界无文本轨迹训练。

6. 复现审计

6.1 代码与资源

已公开:官方 GitHub 为 bytedance/GR-MG。README 中给出 goal image generation model 与 multi-modal goal-conditioned policy 的安装脚本、训练脚本和 CALVIN 评估脚本,并提供 policy checkpoint、goal generation checkpoint、InstructPix2Pix、MAE 和 CALVIN 数据下载入口。

依赖较重:官方 README 标注测试环境为 CUDA 12.1 + Python 3.9;goal generation 与 policy 分别安装依赖。复现不仅需要 CALVIN,还涉及 Ego4D pretraining checkpoint 或自行预训练。

6.2 关键超参数

项目Goal Image Generation ModelMulti-modal Goal-Conditioned Policy
batch size1024512
learning rate8e-51e-3
optimizerAdamWAdamW
weight decay1e-20
Adam beta1 / beta20.95 / 0.9990.9 / 0.999
epochs5050

附录 Training:生成器在 16 张 NVIDIA A100 80GB 上训练 50 epochs,CALVIN 约 18 小时,真实机器人约 30 小时;policy 在 32 张 NVIDIA A800 40GB 上训练 50 epochs,CALVIN 约 17 小时,真实机器人约 7 小时。生成器训练使用 CenterCrop、ColorJitter,EMA 对稳定性能很关键。

6.3 复现路径

  1. 准备官方环境:分别安装 goal_gen/install.shpolicy/install.sh 所需依赖。
  2. 下载 InstructPix2Pix 权重到 resources/IP2P/,下载 MAE encoder 到 resources/MAE/,准备 CALVIN 数据。
  3. 训练目标图生成器:修改 goal_gen/config/train.json 后运行 bash ./goal_gen/train_ip2p.sh ./goal_gen/config/train.json
  4. policy 预训练:可使用作者提供的 Ego4D-pretrained checkpoint,也可用 bash ./policy/main.sh ./policy/config/pretrain.json 自行预训练。
  5. 训练 policy:设置 /policy/config/train.json 中的 pretrained model path,运行 bash ./policy/main.sh ./policy/config/train.json
  6. CALVIN 评估:运行 bash ./evaluate/eval.sh ./policy/config/train.json,并在脚本中指定 goal generation model 与 policy checkpoint。

7. 分析、局限与边界

7.1 这篇论文最有价值的地方

从论文自己的实验设计看,价值集中在“把两种不同缺失标签的数据分别接入不同模块”这一点。缺动作标签的视频不适合直接监督 action,但适合训练“当前图 + 语言 + 进度 → 未来目标图”;缺文本标签的机器人轨迹不适合训练语言理解,但适合训练 goal image conditioned policy 如何把视觉目标转成动作。这种模块分工让 partially-annotated data 的使用路径比较清楚。

7.2 结果为什么站得住

论文不是只给单一主表,而是用多组互相对应的证据支撑核心设计:CALVIN 主表验证完整 GR-MG 的 long-horizon 提升;w/o text、w/o image 验证双模态条件;w/o progress 与目标图相似度指标验证进度条件;10% data scarcity 验证无文本机器人轨迹对 policy 有用;真实机器人 w/o part. ann. data 和生成图可视化验证缺动作标签视频对生成器和 OOD 目标理解有帮助。few-shot 部分还指出 policy 是瓶颈,和结论里的扩展方向一致。

7.3 作者自述的局限与未来方向

7.4 适用边界

GR-MG 适用于能从视觉中表达中间目标状态的操作任务,并假设生成器可以定期生成对 policy 有用的 sub-goal image。对于目标无法通过单张 RGB sub-goal 表达、深度/接触信息关键、或 policy 对真实执行动力学要求极高的任务,论文没有给出充分覆盖。真实机器人实验虽包含非 pick-and-place 任务与多类 OOD 设置,但仍是在作者自建平台、相机配置和任务集合内验证。