行为克隆与 DAgger
行为克隆把模仿当作监督学习,但误差沿轨迹复合,偏离专家分布后无法恢复。DAgger 通过在学习者的状态分布上查询专家修复这一点。本章分析复合误差的 界与 DAgger 的 改进。
行为克隆:模仿当作监督学习
Section titled “行为克隆:模仿当作监督学习”行为克隆(Behavior Cloning, BC)把模仿问题直接变成监督学习:给定专家轨迹数据集 ,学一个映射 ,损失就是标准的监督损失(交叉熵、均方误差)。实现最简单——不需要环境交互、不需要奖励、不需要 RL。
BC 的根本缺陷是分布偏移:策略只在专家的状态分布上被训练,但它部署时面对的是自己的状态分布。一步小误差进入下一步的状态,下一步面对"专家从没见过的状态",再犯一步更大的错——误差沿轨迹复合。
Ross & Bagnell (2010) 的界:BC 的次优性上界为 ,其中 是单步决策的平均误差、 是轨迹长度。 的来源:每一步的误差都以概率进入"偏离专家分布"的状态,而偏离后的状态误差更大,二者复合。
直觉:开车时方向盘偏一度没人在意,但偏了之后看到的路况已经不对,修正后的下一度误差更大——偏差滚雪球。
DAgger:在学习者的状态上问专家
Section titled “DAgger:在学习者的状态上问专家”DAgger(Dataset Aggregation, Ross et al., 2011)的修复思路:训练分布必须等于部署分布。循环:
- 用当前策略 与环境交互,收集轨迹;
- 把轨迹上的状态交给专家,标注专家会怎么做(专家只需给动作,不需重新开车);
- 把新数据 聚合进训练集,重新训练;
- 重复。
关键:数据的状态分布来自学习者(部署分布),标注来自专家——监督学习在正确的分布上进行。次优性界从 降到 :复合被打破。
代价:需要可交互的专家——在学习者到达的任意状态上都能查询专家。这个前提限制了 DAgger 的适用范围(专家是人时查询昂贵,专家是黑箱 API 时可能不可行)。
BC 的定位:弱但在崛起
Section titled “BC 的定位:弱但在崛起”- 数据充足、任务简单时,BC 依然是强基线:模仿学习竞赛与机器人任务中,BC 常常出乎意料地强,是所有方法必须比过的底线;
- 复合误差被规模压制:数据量大、轨迹质量高、任务短时, 的系数 可以压得很小;
- 大规模 BC 重新流行:机器人基础模型(如 VPT 用视频数据、RT-X 用跨机构数据集)本质上是超大规模 BC——当模仿数据多到"偏离分布的概率足够小",BC 的缺陷被数据的广度覆盖(→ 机器人)。
BC 的另一个用途是预处理:先 BC 到一个不错的水准,再用 RL 微调(离线 RL、RLHF 的 SFT 阶段本质都是 BC,→ RLHF 全流程)。
- BC 在数据充足、任务简单时依然是强基线
- DAgger 需要可交互的专家
- 大规模 BC(机器人基础模型)重新流行