IL:Imitation Learning
具身模仿学习完整工程链路(动捕 / 遥操作数采 → 训练 → 仿真 → 真机部署)
主线大方向是:数据采集 → 策略训练 → 仿真验证 → 真机部署推理 。但这是简化版。工业 / 实验室完整闭环是迭代循环,中间还有大量容易被忽略的环节,而且真机部署后还有评估、安全调优、数据回流 。下面把全链路按顺序拆成【主流程 + 配套环节 + 迭代闭环】,区分离线阶段、仿真阶段、真机阶段、数据回流,同时标注哪些是必选、哪些是可选,以及对应的动作主干(MLP/TCN/LSTM/Transformer/Mamba)。
前置说明:这里是动捕采集人类示教数据的模仿学习流程(BVH 人体动捕、全身 / 灵巧手动作捕捉),不是纯遥操作手柄采集。
一、完整全流程
阶段 1:示教数据采集与数据治理(动捕 - 数采)【离线】
「动捕 - 数采」就在这一步,不只是录 BVH
- 场景标定 & 软硬件标定
动捕相机标定、相机内参 / 外参、手眼标定、机器人 URDF 标定、坐标系对齐;标定传感器延迟、关节零位。 - 人类示教采集
光学动捕 / 惯性动捕采集人体 / 人手轨迹,输出 BVH;同步录制机器人本体观测(RGB、深度图、关节角度、力矩);同步录制指令文本 / 目标图片(VLA 任务)。
可选:混合采集,动捕 + 遥操作手柄补充困难样本。
- 原始数据清洗、过滤
剔除跳点、Marker 丢失、采集卡顿、无效 demo;滤波(卡尔曼 / 指数滤波)去除动捕抖动;剔除碰撞超限、奇异位姿样本。 - 轨迹重投影 & 运动学映射
人体动捕是人体骨骼,不能直接喂给机器人:需要逆运动学 IK 映射,把人体骨骼姿态映射成机器人关节目标轨迹;做运动学裁剪、关节限位检查、自碰撞检测,把人体动作适配机器人形态。 - 数据集构建、格式转换、数据增强
转 HDF5/Zarr/ LeRobot 格式;时序切片、窗口采样、动作下采样;图像增强、时序噪声注入、时间轴扰动;划分训练集 / 验证集。 - 数据集质量评估
统计 demo 成功率、轨迹分布、动作多样性;检查动作多模态是否充足(避免全部是单一轨迹,造成策略均值坍缩)。
产出:清洗对齐后的示教数据集
阶段 2:策略训练与模型调优【离线】
- 策略选型 & 模型搭建
选择主干网络:MLP /1D-TCN / LSTM / Transformer (ACT/DiT) / Mamba;定义观测空间、动作空间、预测 horizon、动作 chunk 长度。 - 训练配置
优化器、学习率调度、损失函数;动作归一化、观测归一化;CVAE / 扩散模型的噪声调度等。 - 离线训练 + 验证集评估
在 GPU 集群训练;每轮在验证集计算损失、动作预测误差、时序轨迹可视化;做早停,防止过拟合。 - 离线仿真前的模型静态评估
可视化预测动作序列;看预测轨迹是否平滑、是否超出关节限位;分析分布偏移(预测动作和示教动作的分布差异)。
产出:训练好的策略权重文件(.pt/.pth)
到此:离线训练完成,但模型只见过历史 demo,没有和环境交互。
阶段 3:仿真环境测试 & 域随机化
仿真不是只跑一遍看能不能动,是一套闭环验证
- 仿真环境搭建
MuJoCo / Gazebo / IsaacSim,导入机器人 URDF/SDF,重建任务场景、物体模型;物理参数(质量、摩擦、阻尼)配置。 - 策略仿真部署,开环测试
把训练权重加载进仿真,输入仿真虚拟传感器,输出动作,跑 demo 任务;开环验证轨迹形态。 - 闭环仿真评估 + 大规模批量评测
滚动时域推理(Receding Horizon,ACT/Diffusion/Mamba 都要用),多次随机种子跑大量 episode;统计成功率、轨迹误差、碰撞次数、完成时长。 - 域随机化 Domain Randomization(非常关键)
随机化物体质量、摩擦、相机噪声、光照、关节噪声、传感器延迟;测试策略鲁棒性,缩小「仿真 - 真机」的域差距(Sim2Real)。 - 仿真故障挖掘 + 策略迭代
收集仿真失败案例:卡住、碰撞、目标偏移;分析失败原因:数据不足、过拟合、动作分布问题;回到阶段 1 补充困难样本,重新训练。
可选:仿真世界模型预评估(Mamba/Transformer 世界模型,预测未来状态)
产出:仿真验证通过的模型;失败样本集
阶段 4:真机安全预测试(独立环节,很多工程方案会单独拎出来,不能直接上全闭环)
⚠️ 仿真没问题 ≠ 真机能跑。真机有硬件安全,这一步是仿真到真机之间的过渡,容易被忽略
- 安全限位配置
软件关节限位、力矩阈值、碰撞检测急停、速度限幅;安全监控线程独立于 AI 策略(硬安全,AI 崩溃也能触发急停)。 - 真机开环回放测试
固定机器人,只执行预测轨迹不做视觉闭环,回放整条动作序列;看关节运动、奇异位姿、力矩是否超限,不做环境交互。 - 低速度、简化场景小范围闭环测试
降低运动速度,简化场景,少量 episode 小批量测试,人工全程监护。
产出:安全校验通过的策略,确认不会损坏硬件
阶段 5:真机部署推理 + 真机在线评估
- 模型部署优化
模型量化、ONNX 导出、TensorRT / TorchRT、算子适配;Mamba 还要特殊 CUDA 算子;搭建推理服务(ROS2/FastAPI);构建观测推理流水线:相机采集→图像编码→时序观测缓存→策略推理→动作输出给控制器。 - 真机闭环推理实验
滚动时域执行策略,机器人和真实环境交互,执行任务。 - 真机指标评估
任务成功率、动作完成度、轨迹平滑度、接触力矩、推理延迟、抖动情况;记录各类真机失败案例(物体滑动、相机反光、动捕 / 视觉噪声带来的域偏移)。
产出:真机实验日志、视频、失败样本
阶段 6:在线数据回流 & 迭代闭环(长期持续,具身项目核心)
模仿学习不是一次性训练完就结束,是持续自迭代闭环
- 真机失败案例采集
采集真机上策略失败的轨迹(视觉、本体、动作);也可以用自助示教、干预学习(Human-in-the-loop):策略快要失败时,人介入遥控修正动作,保存修正后的轨迹。 - 新增样本合并进数据集
把真机新采集样本合并到原始数据集,再次回到【阶段 1 数据清洗】,重新训练模型。
经典范式:Dataset → Train → Sim → Real → Collect new demo → Dataset
二、可选的高级环节(视项目目标选择,不是必选)
- 离线 RL 微调 / 对抗模仿(GAIL/AMP)
只用 BC 容易分布偏移;可以在 BC 预训练之后,在仿真中做 AMP/GAIL/PPO 微调,进一步优化策略,适配物理交互。 - 世界模型预训练
用 Mamba/Transformer 预先学习环境动力学,在想象世界里做预训练,减少真机试错。 - A/B 消融实验
对比不同主干网络、不同 horizon、不同数据增强方案的性能差异,论文 / 投标项目常用。 - 策略蒸馏
大模型(Transformer/Mamba)蒸馏成轻量 MLP / 小 TCN,降低推理延迟用于硬件。 - 鲁棒性压力测试
主动加入传感器噪声、遮挡、物体位置扰动,做边界 case 测试。
三、极简主线 vs 完整闭环总结
- 最简学术小 demo 链路(你说的那条)
动捕数采 → 数据集处理 → 策略训练 → 仿真测试 → 真机部署推理
适合快速验证 idea,不考虑硬件安全、迭代。
- 工程落地完整闭环链路(产品级)
标定 → 动捕示教采集 → 数据清洗 + IK 映射 → 数据集构建增强 → 策略训练 + 离线评估 → 仿真测试 + 域随机化 → 真机安全预测试 → 真机部署推理 + 评估 → 失败样本回流,循环迭代
四、常见坑点
- 动捕数据IK 映射和坐标系对齐是第一位,很多项目训练 loss 很低、仿真正常,真机完全跑偏;
- 仿真和真机存在 Sim2Real gap,仿真完美,真机容易失败;
- 时序缓存管理:LSTM/Transformer/Mamba 都要维护时序窗口 / 隐状态,真机推理时序管理 bug 非常多;
- 安全层必须独立,AI 策略不能负责硬件安全。