模拟基因:合成示范基因
探索MimicGen:将200个人类演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示演示
导读NVIDIA的数据引擎,将200种人类远程操作的种子转化为5万多种合成轨迹,
利
| Metric | Value |
|---|---|
| Task coverage | 18 manipulation tasks across 4 embodiments |
| Robots | Franka Panda, Sawyer, UR5e, bimanual Panda (robosuite & Isaac Lab) |
| Modalities | Low-dim state, RGB (agent + wrist), object poses, subtask segmentation |
| License | NVIDIA Source Code License |
| Size | 50,000+ synthetic demos generated from ~200 human seeds |
| Built on | robomimic + robosuite + Isaac Lab |
什么是MimicGen?
模拟基因是一个系统,不仅仅是一个数据集. 由Ajay Mandlekar和NVIDIA和UT奥斯
发布的MimicGen数据集在18项任务和4种实施中提供了50,000个合成示例,包括接触丰富的操纵,如
基米基因已成为Robosuite生态系统的默认数据扩展配方.LIBERO,RoboCasa和许多后续论文使用MimicGen样式的生成,将其基准扩展到仅仅人类远程操作能够支持的范围之外,该方法正在转移到艾萨克实验室进行大规模的GPU平行生成.
如何下载和加载
发布的合成数据集是标准的Robomimic格式的HDF5文件,这意味着任何与Robomimic兼容的算法都可以在没有修改的情况下训练它们:
# Install MimicGen and its dependencies
git clone https://github.com/NVlabs/mimicgen.git
cd mimicgen && pip install -e .
# Also install robomimic and robosuite
pip install robomimic robosuite
# Download the pre-generated datasets (~60 GB)
python mimicgen/scripts/download_datasets.py --dataset_type core --tasks all
# Train Diffusion Policy on a MimicGen dataset
python -m robomimic.scripts.train \
--config configs/diffusion_policy.json \
--dataset datasets/mg_square_d1/image_v141.hdf5
# Or generate your own synthetic demos from a seed
python mimicgen/scripts/generate_dataset.py \
--config mimicgen/exps/templates/robosuite/square.json \
--n_trajectories 1000 \
--seed_data datasets/square/ph/low_dim_v141.hdf5
常见使用情况和模型配对
- ** 扩展模仿学习.** MimicGen是最快的方法,
- 扩散政策. MimicGen数据的扩散政策在原始机械种子上持续超过了15-25分.
- **双手任务研究.**双手任务是模拟中唯一的大型双手模仿数据集.
- ** 基准扩展.** LIBERO 和 RoboCasa 都在内部使用MimicGen样式的生成来扩展其评估套件.
基准和排名表
基因基因通常通过将生成配方固定并对数据尺度 (10, 100, 1K, 10K演示) 中下游行为克隆性能进行比较来评估. CoRL 2023 论文和后续报告在同一评估协议中仅针对人类的基线方面进行了20-30 分的改善.
技术深度潜水:子任务分解
模米基因背后的核心算法理念是,一个示范可以切成对象中心的子任务细节,每个细节都被场景中的特定对象的姿势对象化. 根据一个源示范,MimicGen识别每个子任务的活物体,将最终效应物体轨迹转化为该物体的框架,并重新应用到一个新的样本物体姿势中.在Robosuite或Isaac Lab中进行物理重播,然后检查适应的轨迹是否仍然成功.
这种技巧是有效的,因为大多数操纵子任务实际上都是对象中心的:你执行的运动取决于杯的姿势,而不是桌子的姿势. 在这些情况下,MimicGen将定义自定义子任务的
生成管道是
已知限制
- **仅模拟.**MimicGen在物理模拟器内生成示范.MimicGen本身不处理Sim-to-real转移,需要单独的随机化或域调整步骤.
- 需要一个任务 XML.* 每个目标任务都必须被定义为一个robosuite或Isaac Lab场景. 只有现实世界任务是无法实现的.
- **子任务分类是手动的.**种子演示必须注释子任务界限.这通常是每一个新基准30分钟的任务,但不是自动的.
- **极端域转移下失败模式.**当重新样本的对象姿势离种子分布太远时,重播失败,演示被丢弃.在种子范围大约2倍以上的姿势分布时,成功率急剧下降.
常见问题
我可以使用MimicGen来实践数据吗? 不直接.重播机制需要物理模拟器.但是,你可以使用MimicGen生成的模拟数据作为预训练,然后在一个小的实践数据集上进行细节调整.
**MimicGen与DAgger或使用噪音注射对行为克隆的比较是如何?**MimicGen生产更大的多样性但在政策上相当的数据量,而DAgger需要在线专家.对于离线模仿学习,MimicGen更有效地使用数据.
MimicGen是否与双手任务工作? 是的







