返回 强化学习 思维导图
中文·English
🎮 强化学习ID: behavioral-cloning

行为克隆 BC

Behavioral Cloning
🎯核心定义
行为克隆 (Behavioral Cloning, BC) 是最直接的模仿学习:把专家轨迹当有标签数据,对 (s,a)(s,a) 对做监督学习,最小化 minπE(s,a)πE[logπ(as)]\min_\pi \mathbb{E}_{(s,a) \sim \pi_E}[-\log \pi(a|s)],即最大似然拟合专家策略。
💡使用场景
有高质量专家演示、奖励难设计时的快速起点——自动驾驶数据驱动、机器人遥操作示教;LLM 的 SFT (监督微调) 本质就是 BC。
解决的核心痛点
简单直接,但有两个致命局限: (1) 复合误差 (Compounding Error)——若每步独立犯错概率为 ϵ\epsilon,偏差沿轨迹累积:第 tt 步期望偏移约 O(tϵ)\mathcal{O}(t\epsilon),总回报损失 t=1TO(tϵ)=O(T2ϵ)\sum_{t=1}^{T} \mathcal{O}(t\epsilon) = \mathcal{O}(T^2 \epsilon) 随时间平方放大;更糟的是训练只见到专家分布内的状态 (i.i.d. 假设),部署时却要处理自己犯错导致的偏移状态分布 (协变量偏移); (2) 因果混淆 (Causal Confusion)——模型学到的可能是『结果』而非『原因』,如自动驾驶 BC 学会用自车横向偏移量 (自身转向动作的后果) 来修正方向,训练分布里专家总能纠正,部署时反馈环路失效、表现断崖下跌。
🎯5 个高频面试考点 (Exam Points)
1
BC 的复合误差为什么是 O(T2)\mathcal{O}(T^2)?给出推导直觉:每步独立误差 ϵ\epsilon 如何沿轨迹平方累积?
2
因果混淆 (Causal Confusion) 是什么?举一个自动驾驶/机器人例子,并说明如何缓解。
3
BC 与 DAgger 的区别?DAgger 如何解决协变量偏移 (covariate shift)?
4
为什么 BC 训练时表现良好、部署时错误连环发生?i.i.d. 假设如何失效?
5
BC 与 GAIL/逆向 RL 的对比:分别适合什么模仿学习场景?
更新于 2026-08-12
🎯
检验攻克程度:针对「行为克隆 BC」专属刷题排雷
做单选排雷题、推导选项机制,答错自动收录进专属错题本。
🚀 开始本考点专项刷题
上一个知识点Offline 分布偏移下一个知识点GAIL 与逆向 RL

🔗 更多 强化学习 知识点卡片

Actor-Critic 框架上下文老虎机思维链与推理强化CQL 保守 Q 学习