前几天听到一声广告语:只要你愿意,从现在开始努力,最坏的结果不过是大器晚成。好了,既然我们决定要努力,要怎么做呢?我们要有自己的一套方法论,如何得到自己的方法论呢?最简单的方法就是从成功者的身上去学习,在学习的基础上,结合自身的情况和经验,不断完善形成自己的一套方法论,进而取得成功。这其实就是我们今天要介绍的反向强化学习方法(Inverse Reinforcement Learning)的基本思想。同时,也作为辞旧迎新的话语,激励自己和大家在新的一年里,不断努力,砥砺前行。
本文首先将介绍反向强化学习的基本概念和实现思路;随后将介绍其中一种结合GAN思想的反向强化学习方法:GAIL;最后,将介绍一下GAIL的代码实现思路。
1、反向强化学习基础
反向强化学习也称为模仿学习(Imitation Learning)或学徒学习(Apprentice Learning)。
在强化学习中,我们的基本思路是通过agent与环境的交互,根据环境对于agent在某一状态下所采取动作的回报,对agent的策略进行更新,从而获得最大化的长期期望收益。也就是说,强化学习通常是在回报已知的情况下求出值函数和策略。但是如果回报我们无法获得呢?反向强化学习使用了逆向思维,我们不通过回报求策略,而是反过来,根据策略求回报。
这听上去有点荒谬,我们想通过交互获得回报,就是为了求解更好的策略,现在有了策略,我们