【RL】8.Imitation Learning

RL-Ch8-Imitation Learning

要使Agent有人的智慧有两种手段:

  • 强化学习(Reinforcement Learning)

  • 模仿学习(Imitation Learning)

    模仿学习,又称Learning by demonstration/apprenticeship(学徒) learning。为何会出现模仿学习呢?

  • 与环境互动,却难以明确reward的数值

  • 一些任务难以定义reward

  • 人工设定的reward可能导致agent一些不可控的行为(撞死人)

模仿学习的方法:

  • Behaviour Cloning
  • Inverse Reinforcement Learning(IRL)

Behaviour Cloning

此时BC等效于监督学习,在确定的状态 s i s_i si下要输出 a i a_i ai逼近专家的经验值 a i ^ \hat{a_i} ai^。而这会出现以下问题:

  1. 面对突发情况,无应变能力。最后训练出来的agent在面对未采样过的状态s’时,则难以给出针对性的动作a。
  2. 对被模仿者的行为,将完全仿照。而这其中一部分是重要的,一部分是次要的,记忆存储单元容量有限,可能产生无效学习的现象。

第一种问题可以使用Dataset Aggression的方法进行解决。具体做法是:面对错误的数据,不进行在线修改(即单步修正),专家对错误数据给出标签,在回合结束后,本轮训练数据成为新的训练数据。

  1. Mismatch。监督学习中,训练数据与测试数据符合同分布,而在behaviour cloning中,训练时使用的策略是专家的 π ^ \hat{\pi} π^,使用的数据是(s,a);而测试时使用的时actor的 π ∗ \pi^* π,使用的数据是(s’,a’)。若 π ^ = π ∗ \hat{\pi}=\pi^* π^=π,则采样到的(s’,a’)与(s,a)属于同分布,反之,则s’与s的分布可能会不一样,监督学习也就无从谈起了。

Inverse Reinforcement Learning(IRL)

传统的RL可表达为下图1

在这里插入图片描述

IRL可表达为下图1

在这里插入图片描述

通过专家的引入,反学习出奖励函数,以此学习最优的actor(agent的policy)。并且由于奖励函数更容易建模,而简单的奖励函数有时可以促成复杂的策略。IRL具体的操作流程如下图1

在这里插入图片描述

IRL vs. GAN

可以看出IRL与GAN有很大的相似之处,我们简单来列举下相似点1

IRL GAN
Actor Generator
Reward Function Discriminator
在这里插入图片描述 在这里插入图片描述

新的研究热点

Third Person Imitation Learning

第一人称视角,手把手教导;第三人称视角,看着学。

Sentence Generation

以往的句子生成模型均是使用极大似然(maximum likelihood),缺乏创造性,使用IRL技术的SeqGAN则是更好的一种方法。


  1. http://speech.ee.ntu.edu.tw/~tlkagk/courses/MLDS_2018/Lecture/IRL%20(v2).pdf ↩︎ ↩︎ ↩︎ ↩︎