模仿学习常用方法对比:2025最新评测与精选排行
模仿学习主流范式与技术全景
模仿学习(Imitation Learning, IL)绕开手工设计奖励函数的繁琐环节,直接从专家(人类或高水平策略)的演示数据中“照搬”行为策略。以下系统梳理各主流方法的原理与横向对比,辅助工程选型决策。
PART 01 行为克隆 (Behavior Cloning, BC)
BC 是最直接的思路——将模仿学习转化为监督回归问题。给定状态 s,拟合专家动作分布 π(a|s),最小化期望负对数似然。本质就是“抄作业”:用 (st, at) 配对直接训练策略网络做动作回归。
| 优势 | 劣势 |
|---|---|
| 实现最简单,逻辑直观 | 协变量偏移(Covariate Shift):训练/测试分布不一致,错误会逐步累积 |
| 训练稳定,收敛快速 | 泛化能力弱,无法应对未见过的状态 |
| 可任意使用离线专家数据 | 对数据质量高度敏感,错误标签直接导致策略偏差 |
| 适合数据充足、状态空间有限的简单任务 | 难以处理高维连续动作空间的长时序任务 |
PART 02 数据集聚合 (DAgger)
DAgger 采用迭代式“打标签→训练→收集新数据”来缓解分布偏移:当前策略 πi 采集轨迹 → 专家在策略轨迹的状态点上打标签 a* = πexpert(s) → 合并进训练集,训练新策略 πi+1。
核心思路在于:BC 仅在专家数据的状态分布上训练,而 DAgger 将专家的覆盖范围扩展到策略自身探索到的状态分布,理论上可以消除累积误差。
| 优势 | 劣势 |
|---|---|
| 理论上可消除累积误差 | 必须在线交互,无法纯离线使用 |
| 线性近似下收敛到最优策略 | 迭代中策略可能表现糟糕→引入标签噪声 |
| 适合长时序任务 | 需要专家全程在线标注,人力成本高 |
| 不依赖奖励函数设计 | 训练不稳定(策略分布漂移) |
代表工作:Ross & Bagnell 2010 (DAgger),核心引理:在 ε-贪婪专家假设下,BC 累积误差为 O(T²ε),DAgger 可降至 O(Tε)。
PART 03 生成对抗模仿学习 (GAIL)
GAIL 将生成对抗网络框架迁移到模仿学习:训练判别器 D(s,a) 区分专家数据与策略生成数据,策略 π 作为生成器试图混淆判别器。奖励信号从判别器推导:r(s,a) = -log(1-D(s,a)),本质是一种隐式奖励塑形。
| 优势 | 劣势 |
|---|---|
| 无需显式奖励函数 | 训练不稳定(模式坍塌、梯度消失等 GAN 常见问题) |
| 泛化能力优于 BC | 超参数敏感,调参难度大 |
| 探索能力比 BC 更强 | 判别器收敛不等于策略收敛,两者持续博弈 |
| 适合高维复杂任务(如图像观测) | 奖励信号间接,调试困难 |
PART 04 Q 函数类方法(逆强化学习 IRL)
逆强化学习另辟蹊径:先从专家轨迹反推奖励函数 rψ(s,a),再基于该奖励训练 RL 策略。核心假设是专家轨迹的概率正比于 exp(∑t r(st,at))(最大熵原理),通过最大化专家数据似然反推奖励。
| 优势 | 劣势 |
|---|---|
| 学习到可迁移的奖励函数 | 计算代价极高——需要内外双层循环(IRL + RL) |
| 奖励函数可解释性强 | 内层优化通常非凸,收敛缓慢 |
| 学得的策略更鲁棒 | 不适合大规模问题(网格搜索/神经网络逼近奖励均昂贵) |
| 可处理多专家数据 | 真实场景奖励往往未知,难以验证 |
PART 05 离线模仿学习 / Offline IL
针对无法在线交互、仅能使用固定离线数据集的场景,近年涌现出几种代表性方案:
Conditional IL (cIL):训练时对状态-动作条件分布建模,将状态作为额外输入,缓解分布偏移。当前 SOTA 离线 IL 如 IKL、Action Chunking Transformer 均属此类。
IQ-Learn / Implicit Q-Learning:不显式建模奖励,从隐式 Q 函数直接推导策略,绕开传统 IRL 的内外层嵌套问题。
Diffusion Policy(扩散策略):用扩散模型建模动作分布 at = Diffusion(st, noise),在机器人操作任务中表现突出。
PART 06 方法对比总览
| 方法 | 在线交互 | 显式 Reward | 训练稳定性 | 泛化能力 | 计算成本 | 典型场景 |
|---|---|---|---|---|---|---|
| BC | N | N | 稳定 | 差 | 极低 | 数据充足、状态分布稳定 |
| DAgger | 必需 | N | 需迭代 | 好 | 中等 | 能在线交互的机器人 |
| GAIL | 交互式 | N(隐式) | 不稳定 | 好 | 高 | 高维视觉/复杂任务 |
| MaxEnt IRL | 需RL | Y(反推) | 双层优化 | 好 | 极高 | reward 未知、需可解释 reward |
| Offline IL / cIL | N | N | 稳定 | 取决于数据 | 低-中 | 真实世界数据集、遥操作数据 |
| Diffusion Policy | N | N | 稳定 | 好 | 中-高 | 机器人操作、多模态动作 |
PART 07 工程选型建议
数据来源
├── 静态离线数据集 无在线能力
│ ├── 数据分布覆盖良好 → BC / cIL + behavior regularizer
│ └── 数据稀疏/分布狭窄 → Offline RL 思路(IQ-Learn)
│
├── 可在线交互 专家在线
│ ├── 短 horizon / 状态简单 → DAgger
│ └── 长 horizon / 高维视觉 → GAIL / Model-based IL
│
└── 有大量演示数据 目标可定义 reward
└── MaxEnt IRL(学习 reward 函数再执行 RL)
避坑提示:
- BC 是 baseline,不是终极方案——上生产前至少用 DAgger 或 offline IL 做一次对比验证
- GAIL 的训练不稳定性是工程陷阱,生产部署前务必设置 early stopping 并搭配离线评估策略
- 在真实机器人场景中,扩散策略 + 动作分块 (action chunking) 是目前工程落地最成熟的选择