LIBERO 的核心作用

LIBERO 是一个基于 robosuite 框架构建的综合性基准测试平台,专门用于研究多任务和终身机器人学习中的知识迁移。它聚焦于机器人操作任务,要求智能体掌握两类关键知识:陈述性知识(物体与空间关系)以及程序性知识(运动与行为)。
核心原理与设计
任务生成与基准
系统内置程序化生成管道,理论上可生成无限数量的操作任务。目前包含 130 个任务,划分为四个套件,每个套件都引入了受控的分布偏移:
- LIBERO-Spatial/Object/Goal:侧重特定类型知识的迁移测试。
- LIBERO-100:包含 100 个需要迁移纠缠知识的操作任务。
学习框架与策略
由于任务奖励稀疏(仅完成任务时获得 +1),系统主要采用模仿学习,依赖高质量的人类遥操作演示数据。视觉运动策略网络实现了三种主流架构:
bc_rnn_policy:基于 RNN 的行为克隆。bc_transformer_policy:基于 Transformer 的行为克隆。bc_vilt_policy:基于视觉 - 语言 Transformer 的行为克隆。
配合五种终身学习算法,包括顺序微调基线、经验回放(ER)、弹性权重巩固(EWC)、PackNet 渐进式剪枝以及多任务学习基线。
任务套件详解
LIBERO 共含 130 个任务,分为四个主要部分:
- LIBERO-Spatial(10 个):涉及黑碗放置到盘子的不同空间位置变化。
- LIBERO-Object(10 个):将不同物体(如汤罐头、黄油、牛奶等)放入篮子。
- LIBERO-Goal(10 个):多样化的操作目标,如打开抽屉、放置酒瓶等。
- LIBERO-100(100 个):进一步细分为 LIBERO-90(预训练)和 LIBERO-10(下游测试)。
以 LIBERO-10 为例,这些任务来自客厅、厨房等不同场景,涉及复合操作,例如'将字母汤和番茄酱都放入篮子'或'打开炉子并将摩卡壶放上去'。系统还支持 21 种不同的任务顺序排列,用于评估算法在动态序列下的表现。
算法实现细节
终身学习算法
这里重点看几个核心算法的实现逻辑。
**顺序微调(Sequential)**是最基础的基线,按顺序在每个任务上训练,不防遗忘。
**经验回放(ER)**维护一个旧任务数据缓冲区,混合新旧数据训练以防止灾难性遗忘。
**弹性权重巩固(EWC)**则通过 Fisher 信息矩阵估计参数重要性,在损失函数中添加惩罚项保护重要参数。
PackNet 采用渐进式网络剪枝,为每个任务分配不同的网络子集,冻结已用权重后在剩余权重上学习。
神经网络架构
三种策略网络均继承自 BasePolicy 基类,统一接口但时序建模方式不同。
BCRNNPolicy 使用 LSTM 处理时序信息,结合图像、语言和关节状态编码器。
BCTransformerPolicy 引入自注意力机制,将额外模态转换为 token 输入时序 Transformer。
BCViLTPolicy 则采用双层 Transformer,分别处理空间编码(融合图像与语言)和时序编码,前向传播分两个阶段进行。
评估与挑战
LIBERO 旨在解决终身学习中的几个核心难题。首先是,通过受控分布偏移系统性研究不同类型知识的迁移能力。其次是,系统利用混淆矩阵跟踪在学习新任务 k 后对旧任务 p 的性能影响。此外,还计算指标,前者衡量学习速度(成功率 AUC),后者反映新任务对旧任务性能的冲击。


