农企新闻网

从监视式到 DAgger ,综述论文描画模拟学习全貌

发布者:金夕远
导读选自arXiv作者:Alexandre Attia、Sharone Dayan大众号/机器之心 编译 参与:Panda、黄小天、蒋思源模拟学习(Imitation Learning)面前的原理是是经过隐含地给学习器关于这个世界的先验信息,就能执行、学习人类行为。在模拟学习义务中,智能体(agent)为了学习到战略从而尽能够像人类专家那样执行一种行为,它会寻觅一种最佳的方式来运用由该专家示范的训练集

选自arXiv

作者:Alexandre Attia、Sharone Dayan

大众号/机器之心 编译 参与:Panda、黄小天、蒋思源

模拟 学习 (Imitation Learning)面前的原理是是经过隐含地给学习器关于这个世界的先验信息,就能执行、学习人类行为。在模拟学习义务中,智能体(agent)为了学习到战略从而尽能够像人类专家那样执行一种行为,它会寻觅一种最佳的方式来运用由该专家示范的训练集(输出-输入对)。

当智能体学习人类行为时,虽然我们也需求运用模拟学习,但实时的行为模仿本钱会十分高。与之相反,吴恩达提出的学徒学习(Apprenticeship learning)执行的是存粹的贪心/应用(exploitative)战略,并运用强化学习办法遍历一切的(形态和行为)轨迹(trajectories)来学习近优化战略。

它需求极难的计略(maneuvers),而且简直不能够从未察看到的形态复原。模拟学习可以处置这些未探究到的形态,所以可为自动驾驶这样的许多义务提供更牢靠的通用框架。在此论文中,作者首先引见了相关的通用框架,然后展现了一些次要的模拟学习算法和保证收敛的办法。最初,作者们在理想使用上实验了 DAgger 办法,并给出了却果。

论文:Global overview of Imitation Learning

从监督式到 DAgger ,综述论文描绘模仿学习全貌

论文地址:https://arxiv.org/abs/1801.06503

摘要: 模拟学习是学习器尝试模拟专家级行为从而获取最佳表现的一系列义务。近期,该范畴提出了数种算法。在此论文中,我们旨在给出这些算法的全体回忆,展现他们的次要特征并在功能和缺陷上做出比照。

3. 顶尖算法和收敛保证

从示范中学习(LfD,Learning from Demonstration)是一个从专家给出的轨迹中学习复杂行为的理论框架,即便十分少或许不精确。我们在上面列出并比照了模型学习中最常用到的一些算法,且在自动驾驶汽车上停止实验比照这些模型算法间的不同。上面这些算法的实际证明和直观定理展现在附录局部。

3.1 监视学习

处理模拟学习的首个办法是监视学习。我们有一个由专家给出的训练轨迹集合,其中单个训练轨迹包括察看后果的序列专家行为的序列。监视式模拟学习的面前动机是训练一个分类器基于察看来模拟专家的行为。

这是一种主动的办法,目的是经过主动的察看全部轨迹学习到一种目的战略。监视式模拟学习的目的是在专家的驱动下于一切形态上训练一个战略,而专家只要在求解该目的时才提供信息。此外,我们需求假不同轨迹中的专家行为是独立同散布的。

这种办法的次要成绩是它不能从失败中学习。假定该模型在某个工夫步骤衍生出最优化的轨迹,那就无法前往到专家看到过的形态了,因而就会生成错误。总的来说,该朴素算法难以泛化到未知场景,上面的这种办法矫正了这种成绩。

3.2 前馈训练

前馈训练算法是 2012 年由 Ross 和 Bagnell 提出,它在每个工夫步 t(t 属于全部工夫步 T)上训练一种战略 π_t。即在每个 t 上,选择机器学习战略 π_t 以模拟专家战略 π*。这种迭代性训练在以下算法 1 中有详细描绘:

从监督式到 DAgger ,综述论文描绘模仿学习全貌

在最蹩脚的状况中,我们与经典监视式学习有相反的收敛,但总体讲,收敛是次线性的(sublinear),并且专家战略成功恢复了模型战略的错误。因而,前馈训练算法应该比之前算法表现更好。

但是,前馈训练法的一个次要缺陷是它需求迭代一切的 T 周期,其中工夫范围 T 可以相当大。因而,假定战略是不波动的,算法将在实践使用中(T 过大或未定义)变得不实在际。后续的一些算法克制了这一成绩。

3.3 基于搜索的构造预测(SEARN)

SEARN 的想法来自 Daumé III et al. (2009) [3],其并没有学习一些全局模型与搜索(普通模型的规范设置),而是复杂地学习一个分类器以最优地搜索每一个决策。算法经过在每一步上遵照专家举动开端,迭代地搜集示范并应用它们训练新战略。依据之前一切训练战略以及专家举动的混合,它经过采取举动编译了新的 episodes。最初,它渐渐地学习遵照混合战略并中止依赖专家以决议其要采取的举动。

简言之,该算法试图学习一个分类器,引导我们经过搜索空间。它的运作是经过坚持以后战略以试图运用它生成新的训练数据,进而学习一个新战略(新分类器)。当学习了一个新分类器之后,我们用旧分类器停止插值。这一迭代如图 2 所示。

从监督式到 DAgger ,综述论文描绘模仿学习全貌

但是,这一基于搜索的构造预测能够过于悲观,并在理论中面临应战,这次要由于其初始化办法不同于最优战略。上面我们将详细描绘克制这一成绩的其他办法。

3.4 随机混合迭代学习(SMILe)

SMILe 异样由 Ross 和 Bagnell (2010)[2] 提出,以纠正前馈训练算法中的一些困难成绩。它是一个基于 SEARN 的随机混合算法,应用其优点可以使完成愈加复杂,而且与专家的交互要求也较低。它在屡次迭代中训练一个随机静态战略,接着应用训练战略的「几何」随机混合。

详细而言,我们从一个完全遵照专家举动的战略π_0 开端。在每次迭代中,我们训练一个战略π_i 以在以前的战略π_i-1 诱导的轨迹下模拟专家。接着,我们将新的训练战略添加到先前的几何折扣因子α(1 − α)^(i−1) 的战略混合中。因而,新的战略π_i 是 i 战略的混合,其中运用专家举动的概率为 (1 − α)^ i。算法 3 描绘了 SMILe 算法。

从监督式到 DAgger ,综述论文描绘模仿学习全貌

从监督式到 DAgger ,综述论文描绘模仿学习全貌

图 1:前馈训练和 SMILe 算法在自动驾驶汽车上的比照

这一办法的次要优势是我们可以随时中缀进程,以便不思索太大或未定义的工夫范围。不幸的是,由于其随机政策,模型并不波动。

3.5 基于归约(Reduction)的自动模仿学习(RAIL)

Ross et al. (2011) [4] 提出的 RAIL 面前的原理是对独立同散布 (i.i.d) 自动学习器 L_a 执行一个包括 T 次调用的序列。我们留意到在 T 次调用全部收回之前就很能够可以很好地找到一个有用的静态战略,这有助于缓解前向循环的缺陷。实践上,这种自动学习器可以在一个工夫点范围内提出查询恳求,我们估计在之前的迭代中学习到的战略能够可以在整个范围内都获得不俗的表现。

详细而言,RAIL 会以明显不同的方式执行 T 次迭代:在每次迭代中都学习一个新的可以使用于一切工夫步骤的静态战略。该模型的 t+1 次迭代会依据之前战略的形态散布学习一个新战略,这个新战略会在预测专家举措上完成较低的误差率。算法 4 给出了 RAIL 算法的描绘。

从监督式到 DAgger ,综述论文描绘模仿学习全貌

RAIL 是一种理想化的算法,其目的是用于完成实际目的的剖析。但是,次要由于在晚期迭代中运用了未标注的形态散布(可以与 d_π∗ 有很大的差别),这种算法在实践使用上能够有很多低效的中央。

3.6 数据集聚合(Dagger)

3.6.1 DAgger

Ross 和 Bagnell 在 2010 年提出了 DAgger [5] 算法来处理从示范中学习的成绩。DAgger 是一种迭代式的战略训练算法,运用了一种归约到在线(reduction to online)的学习办法。在每次迭代中,我们都在该学习器所遇到过的一切形态上重新训练次要分类器。DAgger 的次要优势是运用了专家(expert)来教学习器如何从过来的错误中恢复过去。这是一种基于 Follow-The-Leader 算法(每一次迭代都是一个在线学习示例)的自动式办法(我们需求读取专家自身)。

我们从完全由专家教授的第一个战略 π_0 开端,运转 π_0,看学习器拜访了什么配置。我们生成一个新的数据集,其中包括有关如何从 π_0 的错误中恢复的信息。由于我们希望同时有来自 π_0 和 π_1 的信息,所以我们结合运用起始的仅有专家的轨迹和重生成的轨迹来训练 π_1。我们在每次迭代进程中都反复这一进程。我们选择在验证测试上表现最好的战略。

从监督式到 DAgger ,综述论文描绘模仿学习全貌

SEARN [3] 和 DAgger 之间的次要算法差别是每次迭代进程中分类器的学习以及将它们组分解一个战略方面。DAgger 可以组合在一切迭代中取得的训练信号,与之相反,SEARN 仅在第 i 次迭代上训练,即不聚合数据集。SEARN 是第一种适用的办法,之后是 DAgger。DAgger 对复杂成绩和复杂成绩都适用;当搜集的数据越多时,它的效果就越好,但仅需大批迭代就无效果。所以对手写辨认和自动驾驶等很多使用而言,DAgger 都很有用。

3.6.2 DAgger by coaching

运用 DAgger 时,战略空间能够与学习战略空间相距甚远,这会限制学习才能,也能够无法依据形态推断失掉信息。为了避免呈现这种状况,HHH Daumé III 等人在 2012 年提出了 DAgger by coaching 算法 [6]。运用这一算法,我们可以执行易于学习的举措,即在学习器的学习才能范围内。当举措太难时,教练(coach)会降低目的然后渐进地教授。

算法 5 描绘了 DAgger 算法和 DAgger by coaching 算法。

从监督式到 DAgger ,综述论文描绘模仿学习全貌

图 2:在自动驾驶汽车义务上的 DAgger 算法图示

从监督式到 DAgger ,综述论文描绘模仿学习全貌

图 3:在手写字符辨认义务上的 DAgger、SMILe、SEARN 和监视式办法的表现比拟。基准只是一个独立预测每个字符的支持向量机(SVM)。α=1(相当于纯战略迭代办法)和 α=0.8 的 SEARN 和 DAgger 在这一义务上表现更好(来自 DAgger 原论文 [5])。

3.7 运用示范的近似战略迭代(APID)

关于之前的算法,我们都假定专家能表现出最优行为并且它们的示范是充沛足够的。在真实世界中,这些假定并不总是无效的;为理解决这一困难成绩,我们将专家数据和交互数据结合到了一同(即混合 LfD 和 RL)。因而,APID(2013)[7] 尤其关注专家示范很少或不是最优的状况。这是一种运用近似战略迭代(API)办法正则化过的 LfD,其关键思想是运用专家的建议来定义线性约束,这些线性约束可以引导 API 所执行的优化。

详细来说,我们设置一个 API 的环境,然后运用专家提供的额定信息(虽然这些信息很少或不精确)。V^π 和 Q^π 表示 π 的价值函数和举措-价值函数,V∗ 和 Q∗ 表示最优战略 π∗ 的价值函数和举措-价值函数。我们有一个交互数据集 
 辨别对应一个专家示例集合 
,也就是一个包括 n 个示例的(形态,举措)对样本辨别对应于一个包括 m 个示例的(形态、示范举措)对。为了编码专家的次优性,我们为举措-价值最优战略添加了一个变量,以允许偶然违背约束条件。最初,我们失掉一个有约束的优化成绩。在这种办法中,我们不用获取确切的 Bellman 算子 T^π,只需求样本即可,由此我们可以运用 Projected Bellman 误差。

3.8 聚合值以停止模仿(AggreVaTe)

Ross 和 Bagnell (2014) [8] 提出的 AggreVaTe 是 DAgger 算法的一种扩展,可以学习选择举措以最小化专家的 cost-to-go(总本钱),而不是最小化模仿其举措的 0-1 分类损失。第一次迭代中,我们经过察看执行该义务的专家来主动地搜集数据。在每个轨迹中,在一个分歧的随机工夫 t,我们探究形态 s 中的举措 a,并察看执行该举措后专家的 cost-to-go Q。

我们运用
表示在形态 s 执举动作 a 的希冀将来 cost-to-go,之后再执行 t-1 个步骤的战略 π。

和 DAgger 算法完全一样,AggreVaTe 经过与学习器交互来搜集数据,方式如下:

  • 在每次迭代中,我们都运用以后学习器战略 π_i 来执行义务,在一个分歧的随机事情 t 中缀,探究以后形态 s 中的举措 a,之后将控制回过去提供应专家,持续直抵达到工夫范围 T。
  • 后果在以后战略 π_i 所拜访过的形态散布下,失掉专家 (s, t, a, Q) 的 cost-to-go 的新示例。
  • 然后我们聚合数据集,并在所衔接的数据集上训练战略 π_(i+1)。

下图是对此算法的完好描绘:

从监督式到 DAgger ,综述论文描绘模仿学习全貌