深度强化学习,解决稀疏奖励的ICM详解

Intrinsic Curiosity Module (ICM)

1 简介

内在好奇心模块ICM是发表在ICML2017中的一篇经典论文,讲的是将内在好奇心(intrinsic motivation)和深度强化学习结合起来,提升算法的探索效率。
已知标准的强化学习算法在奖励稀疏的环境中表现不佳。举例来讲,假如您正在尝试学习如何在一个迷宫般的大超市里找到您想要买的东西。标准的强化学习会随机执行前后左右动作,很容易原地打转。而人类通常的做法是利用好奇心,走进陌生的产品区,从而找寻想要的东西。

Intrinsic Curiosity Module (ICM)结构

作者提出了Intrinsic Curiosity Module(ICM)来估计一个状态的新颖性(novelty)大小,并给予相应的内在奖励(intrinsic reward)。ICM网络结构如下图(黑方框内)。

ICM包含三个部分:

Encoder,Forward Model和Inverse Model

  • Encoder是把state s转换为feature ϕ ( s ) \phi (s) ϕ(s)
  • Forward Model是给定current state feature ϕ ( s t ) \phi (s_{t}) ϕ(st) 和action a t a_{t} at ,来估计next state feature ϕ ( s t + 1 ) \phi(s_{t+1}) ϕ(st+1)
  • Inverse Model是给定current state feature ϕ ( s t ) \phi (s_{t}) ϕ(st) 和next state feature ϕ ( s t + 1 ) \phi (s_{t+1}) ϕ(st+1) ,给出action的估计。

首先理解Forward Model,如果智能体真的了解环境,那么给出一个state和所做的action,它应该能很准确的预测出next state是什么。当预测的next state和真实的next state不同时,该状态对agent来说是陌生的,会激发智能体的好奇心(会有内在奖励),则智能体会探索它好奇的区域。

但是Forward Model 会存在白噪音问题,即如果探测过程中遇到随机出现画面的电视时,观察者无法对下一个state做出预测,按照刚才的方法,给的内在奖励就非常大,会导致观察者很上瘾,一直盯着电视看。如下图
深度强化学习,解决稀疏奖励的ICM详解_第1张图片

现在我们来分析一下状态包含一些什么信息。

  1. 可以被智能体控制的部分;
  2. 不能被智能体控制但是可以影响智能体的部分;
  3. 既不能被控制也不能影响智能体的部分;

一个好的表示应该包含前两项的信息,而不包含后两项的信息。举个例子,假设我们在看一场足球赛,我们观察中国队球员射门,突然因为转播信号不好,我们失去了两秒钟的画面,当重新看到画面的时候中国队正在庆祝。那么我们能够做出的推测就是中国队进球了。如果画面切回时我们看到中国队员双手叉腰,低头吐痰再抬头望天,我们也可以猜到射门偏了。 注意,帮助我们做出推断的并不是看台上的观众或者场下的广告牌,也不是蓝天,白云,绿茵场,虽然它们也出现在了画面里面。最重要的信息是足球,球员,球门等等。我们的大脑一定是对这些信息进行了编码才做出了准确的推断。
原文链接:https://blog.csdn.net/triplemeng/article/details/84912694

为了克服这个问题,作者引入了Inverse Model。Inverse Model是根据两个相邻的state来推断智能体所选的action a ^ t \hat{a}_{t} a^t,也称为inverse dynamic prediction。然后利用inverse prediction error ( a ^ t \hat{a}_{t} a^t a t a_{t} at 之间的差距)来训练Encoder。让Encoder输出的表征限于智能体能控制、改变的空间里。例如Noisy TV problem中的雪花屏,观察者并不能通过action来改变,那么Encoder就不在意两个不同的噪音的差别,也就不会提供novelty奖励了。

ICM中inference和backpropagation的方向如下图所示。注意,Forward Model的Prediction error只用来训练forward model,而不用于训练Encoder;Inverse Model的Inverse prediction error既用来训练Inverse model,也用来Encoder。同时Forward Model的Prediction error也当做intrinsic reward来训练Q network。
深度强化学习,解决稀疏奖励的ICM详解_第2张图片

参考文章:https://zhuanlan.zhihu.com/p/161948260

你可能感兴趣的:(强化学习,深度学习,计算机视觉,人工智能)