模仿学习(Imitation Learning)背后的原理是是通过隐含地给学习器关于这个世界的先验信息,就能执行、学习人类行为。在模仿学习任务中,智能体(agent)为了学习到策略从而尽可能像人类专家那样执行一种行为,它会寻找一种最佳的方式来使用由该专家示范的训练集(输入-输出对)。当智能体学习人类行为时,虽然我们也需要使用模仿学习,但实时的行为模拟成本会非常高。与之相反,吴恩达提出的学徒学习(Apprenticeship learning)执行的是存粹的贪婪/利用(exploitative)策略,并使用强化学习方法遍历所有的(状态和行为)轨迹(trajectories)来学习近优化策略。它需要极难的计略(maneuvers),而且几乎不可能从未观察到的状态还原。模仿学习能够处理这些未探索到的状态,所以可为自动驾驶这样的许多任务提供更可靠的通用框架。
[描述来源:机器之心 URL:https://www.jiqizhixin.com/articles/2018-01-28-4]
我们将在马尔可夫决策过程(MDP)的框架下介绍模仿学习。 MDP由元组(tuple)<S,A,B,R,I>定义,其中:S是状态集合,A是动作的有限集合,B(s,a,s^')是转换函数,R(s,a )是在状态s中执行动作a的回报(∈[0,1]),I是初始状态分布。 我们将N表示为epoch的次数。 我们使用的策略可以是平稳的(马尔可夫)π=(π,...,π)或非平稳的π=(π_{0},...,π_{T}),其中T是时间范围。 它表示在状态s和时间t采取的行动。 我们将确定性专家策略表示为π*并使用以下符号:
J(π)表示从初始状态I开始的轨迹的预期总回报
d_{\pi}=1/T \sum_{t=1}^T d_{\pi}^t表示在每个时间区间的状态分布的实证平均值
C_{\pi}(s)=E_{a~\pi(s)}[R(s,a)]表示在T步轨迹中的总奖励
l(s,\pi)表示观察到的替代损失
我们的目标是最大化以下函数,即最大化预期总回报:
[描述来源:Attia, A.; Dayan, S. (2018). Global overview of Imitation Learning. arXiv:1801.06503]
让系统观察人类驾驶员如何根据汽车摄像头的画面来操作汽车来学习驾驶策略,即是一个典型的模仿学习任务。
发展历史
最初用于解决模仿学习的方法是监督学习,这是一种被动的方法,目的是通过被动的观察全部轨迹学习到一种目标策略。但这种方法的不能从失败中学习。假设该模型在某个时间步骤衍生出最优化的轨迹,那就无法返回到专家看到过的状态了,因此就会生成错误。2009年Hal Daumé III等人提出了SEARN的想法,其并没有学习一些全局模型与搜索(一般模型的标准设置),而是简单地学习一个分类器以最优地搜索每一个决策。算法通过在每一步上遵循专家行动开始,迭代地收集示范并利用它们训练新策略。根据之前所有训练策略以及专家行动的混合,它通过采取行动编译了新的 episodes。最后,它慢慢地学习遵循混合策略并停止依赖专家以决定其要采取的行动。
2010年Stephane Ross和 Drew Bagnell 提出了两种替代监督学习的模仿学习算法——前馈训练算法和随机混合迭代学习(SMILe)算法。前馈训练算法在每个时间步 t(t 属于全部时间步 T)上训练一种策略 π_t。即在每个 t 上,选择机器学习策略 π_t 以模仿专家策略 π*。SMILe是一个基于 SEARN 的随机混合算法,利用其优点可以使实现更加简单,而且与专家的交互要求也较低。它在多次迭代中训练一个随机静态策略,接着利用训练策略的「几何」随机混合。同年,他们提出了 DAgger 算法来解决从示范中学习的问题。DAgger 是一种迭代式的策略训练算法,使用了一种归约到在线(reduction to online)的学习方法。Stephane Ross等学者于2011年提出 RAIL,对独立同分布 (i.i.d) 主动学习器 L_a 执行一个包含 T 次调用的序列。由于使用 DAgger 时,策略空间可能与学习策略空间相距甚远,这会限制学习能力,也可能无法根据状态推断得到信息。为了防止出现这种情况,HHH Daumé III 等人在 2012 年提出了 DAgger by coaching 算法。
2013年Doina Precup等人提出了APID,主要关注专家示范很少或不是最优的情况。这是一种使用近似策略迭代(API)方法正则化过的 LfD,其关键思想是使用专家的建议来定义线性约束,这些线性约束可以引导 API 所执行的优化。2014年Stephane Ross和 Drew Bagnell对他们DAgger 算法进行了扩展,提出了AggreVaTe,其可以学习选择动作以最小化专家的 cost-to-go(总成本),而不是最小化模拟其动作的 0-1 分类损失。
[描述来源:从监督式到DAgger,综述论文描绘模仿学习全貌|机器之心]
主要事件
年份 | 事件 | 相关论文/Reference |
2009 | Hal Daumé III等人提出了SEARN的想法 | Daumé III, H.;Langford, J. and Marcu, D.(2009). Search-based structured prediction. CoRR, abs/0907.0786. |
2010 | Stephane Ross和 Drew Bagnell 提出了两种替代监督学习的模仿学习算法——前馈训练算法和随机混合迭代学习(SMILe)算法 | Ross, S. and Bagnell, D. (2010). Efficient reductions for imitation learning. Proceedings of the Thirteenth International Conference on Artificial Intelligence and Statistics. |
2010 | Stephane Ross和 Drew Bagnell提出了 DAgger 算法来解决从示范中学习的问题 | Ross, S.; Gordon, G. J. and Bagnell, J. A. (2010). No-regret reductions for imitation learning and structured prediction. CoRR, abs/1011.0686. |
2011 | Stephane Ross等学者提出 RAIL | Judah, K.; Fern, A. and Dietterich, T. G. (2012). Active imitation learning via reduction to I.I.D. active learning. CoRR, abs/1210.4876. |
2012 | HHH Daumé III 等人提出了 DAgger by coaching 算法 | He, H.; Daumé, III, H.; and Eisner, J. (2012). Imitation learning by coaching. Proceedings of the 25th International Conference on Neural Information Processing Systems. 2: 3149-3157. |
2013 | Doina Precup等人提出了APID | Kim, B.; Farahmand, A.; Pineau, J. and Precup, D.(2013). Learning from limited demonstrations. Proceedings of the 26th International Conference on Neural Information Processing Systems. 2:2859-2867. |
2014 | Stephane Ross和 Drew Bagnell对他们DAgger 算法进行了扩展,提出了AggreVaTe | Ross, S. and Bagnell, J. A. (2014). Reinforcement and imitation learning via interactive no-regret learning. CoRR, abs/1406.5979. |
发展分析
瓶颈
模仿学习需要人类专家提供数据,而这往往是耗时又昂贵的,并且若使用深度学习算法训练模型,对数据量的要求会更高;此外,当所学习的行为比较复杂时,提供相关的行为数据很困难。
未来发展方向
模仿学习是目前备受关注的一个研究方向,通过这种学习方式,能够帮助我们在通往通用人工智能的过程中取得重要进展,如增强机器人的适应能力,在不同的任务中都保持稳定的工作水平。
Contributor:Yuanyuan LI