首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >模仿学习常用方法对比

模仿学习常用方法对比

作者头像
索旭东
发布2026-06-01 18:06:36
发布2026-06-01 18:06:36
930
举报
文章被收录于专栏:具身小站具身小站

模仿学习 (Imitation Learning, IL) 的核心是 从专家(人类/高水平策略)的演示数据中学习策略 ,绕过直接探索 reward 的难题。以下是主流方法的原理与横向对比。

PART 01

行为克隆 (Behavior Cloning, BC)

原理 :把模仿学习当作监督回归问题 — 给定状 态 $s$,拟合专家动作分布 $\pi(a|s)$,最小化 $E_{(s,a) \sim D}[-\log \pi_\theta(a|s)]$。

本质是"抄答案":数据是 $(st,at)$ 配对,直接让策略网络做动作回归。

优势

劣势

实现最简,逻辑清晰

协方差偏移 (Covariate Shift):训练/测试分布不同,错误会累积

训练稳定,收敛快

泛化能力差,无法应对未见状态

可用任意离线专家数据

对数据质量敏感,错误标签直接学偏

适合数据充足的简单任务

难以处理高维连续动作空间的长时序任务

PART 02

数据集聚合 (DAgger)

原理 :迭代式"打标签→训练→收集新数据"循环:

  1. 用当前策略 \pi_i采集数据
  2. 专家在策略轨迹状态上打标签 a^*=\pi_{expert}(s)
  3. 合并到训练集,训练新策略 \pi_{i+1}

核心思想 :BC 的问题是只在专家数据的状态上训练,DAgger 把专家的覆盖范围扩展到策略自己的状态分布。

优势

劣势

理论上可消除累积误差

需要在线交互,无法纯离线使用

收敛到最优策略(线性近似下)

迭代中策略可能很差→引入标签噪声

适合长时序任务

需要专家全程在线标注,成本高

不依赖 reward 设计

训练不稳定(策略分布漂移)

代表工作 :Ross & Bagnell 2010 (DAgger), 核心引理: $\epsilon$ -贪婪专家下,BC 累积 误差 $O(T^2\epsilon)$,DAgger 可到 $O(T\epsilon)$。

PART 03

生成对抗模仿学习 (GAIL, Generative Adversarial Imitation Learning)

原理 :用 GAN 框架 训练一个判别器 $D(s,a)$, 区分 专家数据 vs 策略生成数据,策略 $\pi$ 作为生成器试图欺骗判别器。

奖励信号 从判别器推导:$r(s,a)=-\log(1-D(s,a))$,相当于隐式 reward shaping。

优势

劣势

不需要显式 reward 函数

训练不稳定(GAN 的 mode collapse、梯度消失)

泛化能力强于 BC

对超参数敏感,调参难度大

探索能力比 BC 强

判别器收敛≠策略收敛,两者相互博弈

适合高维复杂任务

奖励信号间接,难以调试

PART 04

Q 函数类方法(逆强化学习 IRL)

原理 :先从专家轨迹反推 reward 函数 $r_\psi(s,a)$, 再基于该 reward 训练 RL 策略。

核心假设: 专家轨迹的概率正比于 $\exp(\sumt r(st,a_t))$ (最大熵原理),通过最大化专家数据似然反推 reward。

优势

劣势

学习到可迁移的 reward 函数

计算代价极高 — 需要内外层循环(IRL + RL)

reward 可解释

IRL 内层优化通常非凸,收敛慢

学到的策略更鲁棒

不适合大规模问题(网格搜索/NN 逼近 reward 都贵)

可处理多专家数据

真实场景 reward 往往未知,无法验证

PART 05

离线模仿学习 / Offline IL

针对 无法在线交互、只有固定离线数据集 的场景:

Conditional IL (cIL)

训练时对状态-动作条件分布建模,加上状态作为额外输入,解决分布偏移。当前 SOTA 离线 IL 如 IKL、Action Chunking Transformer 都属此类。

IQ-Learn / Implicit Q-Learning

不显式建模 reward,从隐式 Q 函数推导策略,避免了传统 IRL 的内外层嵌套问题。

Diffusion Policy (扩散策略)

用扩散模型建模动作分布 $at=\text{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

工程选型建议

代码语言:javascript
复制
数据来源
├── 静态离线数据集 + 无在线能力
│   ├── 数据分布覆盖好 → 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) 是目前工程落地最成熟的组合
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2026-05-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 具身小站 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档