返回Learn

机器人学习模仿:从行为克隆到传播政策

模仿学习的明确介绍 行为克隆,分布转移,DAgger,行动分量和传播政策

[←学习]

了解机器人如何从人类示范中获得技能,为什么天真模仿失败,以及现代算法如何克服其核心挑战.

模仿学习是什么?

模仿学习 (IL) 是一种教导机器人从专家示范中学习行动的算法. 形式上,我们有一个示范数据集T0,其中T1是时代状态 (传感器读数) T2T3是专家采取的行动.目标是学习一个政策T4,将状态映射到行动.

对于人类来说,比手工设计奖励函数或写动作原始的操作更容易.

行为克隆:基本线

行为克隆 (BC) 是最简单的IL算法.它把这个问题视为监督学习:给定状态T5,预测操作T6.你通过减少预测和专家操作之间的平均平方错误来训练神经网络.

简单的训练,易于实施,并且对短视野任务工作非常好.一个标准的BC管道可以在一个下午内运行:收集50个示范,训练一个ResNet+MLP100个时代,部署.

** 关键限制:** 组合错误. 在训练期间,网络只看到在示范中出现的状态.在测试时,即使是小小的预测错误也将机器人移动到一个略有不同的状态它从未见过的状态. 随后的预测变得不太准确,错误会越来越大,

分配变化问题

分配转移是模仿学习的核心挑战.培训分布T7 (示范期间看到的状态) 和测试分布T8 (受过学习的政策访问的状态) 是不同的.由于BC最小化了培训分布上的错误,它没有提供任何证据对测试分布的行为.

对于一个在T10步的视界内每步错误的政策,预期的总错误增加为T11. 翻倍任务长度将复合错误增加四倍.这就是为什么BC为5秒任务工作,但没有特殊处理的30秒任务失败.

:固定分量转移

数据集集 (DAgger) 解决了分布转移的反复:

  • 第一步: 根据原始示范,制定一个初步的BC政策.
  • **步骤2:**将所学到的政策部署在现实环境中.
  • 让一个人专家在每个国家都做出正确的行动,
  • 步骤4: 将这些 (状态,纠正行动) 对添加到数据集中.
  • **第5步:**重复对总结数据集的政策.从第二步重复.

经过几轮训练,训练分布与实际访问的国家紧密相匹配,并大幅减少了复合错误.

现代算法:ACT,传播政策和IBC

机器人模仿学习的最新技术主要由三个算法来控制.

  • ACT 动作与变压器的分组: ACT 没有在每一步都预测一个单一的动作,而是同时预测了未来的 T12 动作的分组 (通常在50Hz时K=100,因此运动的2秒).机器人执行了分组,然后重新规划.这打破了复合错误周期. ACT使用CVAE编码器来处理多模式示范数据,并使用变压器解码器来生成行动序列.
  • 散政策: 模型行动分布作为一个指标散播过程.而不是预测一个单一的行动,散政策学习以反复将随机噪音归类为可行的行动轨迹.这自然处理了 multi-modality 案例,在给定的状态中存在多个有效的行动 (例如,从左或右抓). 一个单一的BC网络将平均这些解决方案,预测一些不有效的东西; 扩散政策可以代表两种模式.
  • IBC 隐含行为克隆: 训练一个能量函数 T13而不是直接行动预测器. 推理通过梯度下降或MCMC样本测试来最小化能量的作用. 强大的多模式分布,但在推理时更昂贵.

算法比较

Algorithm Handles Multi-Modal Action Horizon Training Speed Inference Speed Best For
Behavior Cloning No (averages modes) Single step Very fast Very fast Short tasks, simple grasps
DAgger No Single step Fast per iter Very fast Tasks where expert can correct live
ACT Partial (CVAE) Chunk (K steps) Fast Fast Bimanual, contact-rich tasks
Diffusion Policy Yes Horizon (T steps) Slow Moderate Complex, multi-modal tasks
IBC Yes Single step Moderate Slow Research; multi-modal with energy landscape

对于初步的实践者来说:开始使用BC来验证您的数据管道和硬件设置.一旦您需要解决更长视野或接触丰富的任务,就转向ACT或扩散政策.ACT和扩散政策的选择取决于您的任务结构而不是原始性能.