枢纽
机器人机械臂(仿真 MuJoCo)
数据集LIBERO (130 任务 4 suite)
输入模态vision,language,proprioception

LIBERO:给「机器人终身学习」立一面镜子

Bo Liu, Yifeng Zhu, Chongkai Gao, Yihao Feng, Qiang Liu, Yuke Zhu, Peter Stone(UT Austin + 清华 + Sony AI)。NeurIPS 2023 Datasets & Benchmarks。 项目页 · imitationlifelong learningbenchmark

🧠 一句话心智模型:让机器人一个接一个地学 130 个抓放任务,且学新任务时不能再看旧任务的数据——这是「终身学习」最直接的考题。LIBERO 不提出新算法,而是把考场搭好:分四个任务套把「空间 / 物体 / 目标」三种知识迁移分开测,再给所有任务配上人类遥操演示。结果跑出来好几个反直觉的结论,把当时的 lifelong learning 圈打脸了。

🎯 为什么重要:决策里的「终身学习」之前根本没考场

终身学习(lifelong / continual learning)在图像和文本领域已经研究得很透,MNIST split、CIFAR split、GLUE 一类基准成型。但搬到机器人决策上有两个新麻烦:

核心矛盾:机器人任务里要迁移的不只是「陈述性知识」(juice 是什么、冰箱在哪),还有「程序性知识」(怎么开冰箱、怎么抓瓶子)。前者是概念,后者是动作。这两类知识在 lifelong learning 里以前没有被分开评测过,所以一出问题——是忘了概念还是忘了动作?——根本说不清。

更麻烦的是,当时的 lifelong learning 算法(EWC、PackNet、ER 等)几乎都在图像分类上验证,到底在机器人决策里好不好使?没人系统测过。LIBERO 就是来填这个坑的。

💡 核心思想:四个任务套,把三种知识迁移「解耦」测

LIBERO 用一条程序化生成管线从 Ego4D 人类活动语言模板里抽任务描述,配合 Robosuite 仿真器生成场景与目标(PDDL 描述)。理论上能产无限多任务;为了基准对比,固定 130 个任务,分成四个套件:

Ego4D 人类活动 3000 小时第一人称视频 语言模板抽取 "open the top drawer..." PDDL 目标 + 场景 Robosuite 初始化 130 任务 + 演示 50 demo / 任务 LIBERO-Spatial 10 任务 同样的物体 不同的空间布局 迁移:空间关系 LIBERO-Object 10 任务 同样的布局 不同的物体 迁移:物体概念 LIBERO-Goal 10 任务 同样的物体+布局 不同的目标 迁移:任务目标 LIBERO-100 100 任务 物体/布局/目标 全部混在一起 迁移:混合知识 3 种架构 × 5 种 lifelong 算法 × 6 个研究问题 ResNet-RNN / ResNet-T / ViT-T × {SeqL, ER, EWC, PackNet, MTL}
图 1:LIBERO 的程序化生成与四套任务设计。前三个套件各自孤立一种迁移维度,LIBERO-100 是混合的真实长 horizon 场景。

评测的三个指标也很到位:FWT(前向迁移,新任务学得多快)、NBT(负向后向迁移,旧任务忘得多少)、AUC(综合)。三个指标把「学新 / 忘旧 / 总体」分开了,避免了只看一个数的盲区。

🛠️ 三个让它成为「社区标准」的关键设计

设计心智为什么必要
① 把迁移维度解耦前三套任务各只改一个变量(空间 / 物体 / 目标),其余保持一致出错了能定位是「忘了概念」还是「忘了动作」。混合测试(LIBERO-100)只能告诉你「整体不行」,分轴测试才能告诉你「哪里不行
② 50 条人类遥操演示 / 任务不靠稀疏 reward RL,每个任务都给 50 条 Spacemouse 高质量演示,统一用 BC 训稀疏 reward RL 太耗算力,会盖过 lifelong 算法本身的差异。BC 让算力集中在「lifelong」这个问题上
③ 程序化生成管线从 Ego4D 抽语言模板 → 选场景 → PDDL 描述目标,理论上能生成无限任务基准不能是「死」的 130 个任务,得能扩展。后续工作(LIBERO-Object-Unlocked、LIBERO-Goal-Long 等)正是基于这条管线扩出来的
🔮 直觉:为什么「解耦迁移维度」是 benchmark 设计的点睛之笔?
假设新算法在 LIBERO-100 上赢了基线——为什么赢?是更会泛化物体?还是更不容易忘目标?你看不出来。LIBERO-Spatial/Object/Goal 三套对应「只动一个轴」,赢家在哪个轴上赢一目了然。这就是为什么 LIBERO 不只是「130 个任务的数据集」,而是一个诊断工具

📊 结果:四个反直觉发现,把 lifelong 圈打脸

编号发现关键数字(来自 PDF)
F1架构和算法一样重要ResNet-T / ViT-T 全面碾压 ResNet-RNN(AUC 0.32 vs 0.08 in LIBERO-Long);ViT-T 在物体多时(LIBERO-Object)更好,ResNet-T 在程序性知识为主时更好
F2顺序微调(SeqL)的前向迁移反而最好LIBERO-Long FWT:SeqL 0.54 > ER 0.48 > PackNet 0.22 > EWC 0.13。意味着所有 lifelong 算法都拖累了新任务学习
F3语言 embedding 几乎没差BERT / CLIP / GPT-2 / 甚至 "Task ID" embedding 在 AUC 上无统计显著差异(0.30~0.35),说明 sentence embedding 此时只是「bag-of-words 当任务 ID」
F4朴素的监督预训练反而伤害下游 lifelong 学习在 LIBERO-100 的 90 个短 horizon 任务上预训练 50 epoch,再迁移到 LIBERO-Long,5 种组合里大多不如从零训
F5任务顺序对算法影响显著同一算法在 5 种任务顺序下表现方差大;PackNet 的方差甚至统计显著
关键洞察:LIBERO 没提出新算法,但跑出来的结果让整个领域重新校准方向——「naive 监督预训练会拖后腿」「最简单的顺序微调反而迁移最好」「语言没用对」这三件事,直接催生了后续一大批工作(better pretraining、better language grounding、better forward-transfer algorithms)。

🌐 在领域中的位置

MetaWorld / RLBoost(多任务基准) ContinualWorld(CW-MetaWorld lifelong 化) LIBERO(声明性+程序性解耦)⭐ CALVIN(长 horizon 语言条件) / VLA 时代的 lifelong 评测

LIBERO 是机器人 lifelong learning 的「MNIST split」。它把 lifelong 这个含混的概念落到了一组可诊断、可扩展、配演示的任务上。在 VLA 时代,它也是「单任务 BC 微调」最常用的基准之一(Diffusion Policy、OpenVLA、π0 都在 LIBERO 上跑过)。关联线索:T05 模仿学习谱系

❓ 常见误区

LIBERO 是模仿学习还是强化学习基准?

两者都支持,但默认配 BC 演示。论文为了把算力集中在 lifelong 算法上、不被稀疏 reward RL 拖累,主推 BC 路线。后续工作里也有人用 RL 跑 LIBERO,但主流是 imitation。

「SeqL 最好」是不是说明 lifelong learning 算法都白做了?

不能这么简单读。SeqL 的 FWT 最好但 NBT 最差(忘得最多)——「学新任务快」是不带任何约束换来的。AUC 上 ER 和 PackNet 反而更高。这告诉我们:「快」和「不忘」是 trade-off,要综合看。

为什么预训练反而拖后腿?

论文没给死因,但推测是「预训练任务分布和下游不匹配」+「容量被预训练锁死在错误子空间」。这正是后来 better pretraining(如 Voltron、R3M 之争、Robotic Control via VLA 的预训练策略)的导火索。

LIBERO 的任务套是不是太「合成」了,离真实机器人远?

是局限。任务都是 Robosuite 里的 Franka Panda + 简化物体。但作为受控诊断工具,「合成」反而是优点——你能定位问题。真实泛化要靠 BEHAVIOR-1K、RoboCasa 等后继工作来补。