GAN+增强学习, 从IRL和模仿学习, 聊到TRPO算法和GAIL框架, David 9来自读者的探讨,策略学习算法填坑与挖坑

如果你想成为大师,是先理解大师做法的底层思路,再自己根据这些底层思路采取行动? 还是先模仿大师行为,再慢慢推敲大师的底层思路?或许本质上,两种方法是一样的。 — David 9

聊到强人工智能,许多人无疑会提到RL (增强学习) 。事实上,RL和MDP(马尔科夫决策过程) 都可以归为策略学习算法的范畴,而策略学习的大家庭远远不只有RL和MDP:

来自:https://www.slideshare.net/samchoi7/recent-trends-in-neural-net-policy-learning

我们熟知的RL是给出行为reward(回报)的,最常见的两种RL如下

1. 可以先假设一个价值函数(value function)然后不断通过reward来学习更新使得这个价值函数收敛。价值迭代value iteration算法和策略policy iteration算法就是其中两个算法(参考:what-is-the-difference-between-value-iteration-and-policy-iteration)。之前David 9也提到过价值迭代:NIPS 2016论文精选#1—Value Iteration Networks 价值迭代网络

来自:https://www.youtube.com/watch?v=CKaN5PgkSBc

2. 可以先假设一个policy没有价值函数 ),从这个policy抽样一连串的行为,

得知这些行为的reward后,我们就可以由此更新policy的参数。这就是DPL(Direct Policy Learning)(参考:Whats-the-difference-between-policy-iteration-and-policy-search

以上两种方法最后都是为了学习到一个好的policy(策略,即状态->行为的映射),所以这些函数都可以归为策略学习算法。

除了这些,还有一种更有意思策略学习问题:如果没有reward(回报)的给出,只有专家(或者说大师)的一系列行为记录,是否能让模型模仿学习到大师的级别?(当然就目前的技术,我们需要大量的大师行为记录)。

这种类似模仿学习的问题就叫IRL(Inverse Reinforcement Learning或者逆向强化学习)。所以请再仔细看一下这些方法的区别:

来自:https://www.slideshare.net/samchoi7/recent-trends-in-neural-net-policy-learning

了解了这些大类,我们在回到RL,现在进入我们的正题TRPO算法(Trust Region Policy Optimization)。之前提到的DPL算法(也叫policy gradient)和policy iteration算法,看似是两个算法,其实是有内在联系。

TRPO一方面指出这两者联系,另一方面提出一种更general的算法:

来自:https://arxiv.org/pdf/1502.05477.pdf

算法一方面通过抽样,找到更好的policy,这个policy要比旧的policy有优势Aπi,即可一定程度保证更新的policy更优。另一方面TRPO要求新的policy π 要和旧的policy π足够相似,即用KL divergence来约束:DKL(π,π

文章认为,如果不加KL divergence的约束,其实TRPO算法本质上是policy iteration算法(不保证更新的policy和旧的相似);而加了KL divergence的约束只要对reward函数LπKL约束稍加修改,其实就是常见的policy gradient算法

所以总之,TRPO是一个general的RL优化算法。

如何把TRPO用在IRL领域呢?我们就需要看下这篇论文:Generative Adversarial Imitation Learning

IRL逆向强化学习领域中是没有reward(回报)给出的。在这种情况下我们还要去效仿“大师”,就需要假设一个价值函数 。有了这个假设的价值函数,我们就可以直接套用TRPO的RL算法了。但是这个价值函数不能随便假设,这就回到了我们题目说的GAN+增强学习,没错,用GAN的判别器去判断两个“智能体”(agent)的行为是不是底层逻辑属于同一个价值函数,下面就是具体GAILGenerative Adversarial Imitation Learning)算法:

来自:Generative Adversarial Imitation Learning

(17)就是GAN判别器的更新方法,(18)就是用TRPO更新生成器,其实这里的生成器就是学习“大师行为”的学生算法,即,最后模仿出来的近似策略。(只是这里的TRPO算法的优化目标变为了对抗判别器的预测结果Dw+1)

希望这次David 9 把GAN+RL, IRL和模仿学习串起来讲能够给大家启发,

另外,值得注意的是我们这次讲的都是model free的算法,在RL/IRL领域还有一种model based算法。。。期待下次David 9再和大家分享。

参考文献:

  1. Trust Region Policy Optimization
  2. Generative Adversarial Imitation Learning
  3. what-is-the-difference-between-value-iteration-and-policy-iteration
  4. Whats-the-difference-between-policy-iteration-and-policy-search
  5. End-to-End Differentiable Adversarial Imitation Learning
  6. recent-trends-in-neural-net-policy-learning
  7. https://www.youtube.com/watch?v=CKaN5PgkSBc
  8. rl-trust-region-policy-optimization-trpo-explained

本文采用署名 – 非商业性使用 – 禁止演绎 3.0 中国大陆许可协议进行许可。著作权属于“David 9的博客”原创,如需转载,请联系微信: david9ml,或邮箱:yanchao727@gmail.com

或直接扫二维码:

发布者

David 9

David 9

邮箱:yanchao727@gmail.com 微信: david9ml

发表评论

电子邮件地址不会被公开。 必填项已用*标注