On-policy v.s. Off-policy

On-Policy方式指的是用于学习的agent与观察环境的agent是同一个,所以参数θ始终保持一致。
Off-Policy方式指的是用于学习的agent与用于观察环境的agent不是同一个,他们的参数θ可能不一样。
比如下围棋,On-Policy方式是agent亲历亲为,而Off-Policy是一个agent看其他的agent下棋,然后去学习人家的东西。
Proximal Policy Optimization (PPO)详解

将On-policy变为Off-policy

我在之前的博客里写的Policy gradient用的是On-Policy,现在我们要将其变为Off-policy,那么为什么要变呢?看下图蓝线画的部分,表示的是在某个actor的情况下,或者说是某个参数θ的情况下,随机取样出来不同的┏的期望(可以看看我的这篇博客大致学习一下Policy Gradient详解)然后我们利用梯度上升更新θ,但是θ只要一更新,这个期望就会变,也就是说当theta更新时,我们又必须重新计算期望了。这就导致了想找到一个好的θ太慢了。那么我们使用Off-Policy能解决这个问题,我们使用Πθ‘去和环境做互动,我们可以得到在θ’下所随机取出的样本的期望,然后让Πθ去利用这个这些样本去训练θ,现在,我们介绍一下Importance Sampling.
下图的importance sampling中,那个Ex~p(f(x))表示x从p中取的情况下,f(x)的期望是多少?很明显约等于1/N∑f(xi),但是我们现在规定不准从p中取x,只能从q中取x,那么就有如下的式子转换:蓝框圈的部分是权重,p与q不能相差太多。
Proximal Policy Optimization (PPO)详解
上面的那种做法有一个问题,虽然他们的期望可能相等或者相近,但经过证明,最后方差的式子是不一样的,多了红框圈出的部分,再次说明p与q不能差距太大。
Proximal Policy Optimization (PPO)详解
看下面这张图,先看等式左半边,在p里面取x,那么p的左半边被取的机率很高,然后左半边又都是正的,然后代入f(x),但是f(x)的左边都是负的,所以整个期望是负的。然后再看等式右边,在q里面取,q在右边被取得几率大,然后q大于p,所以p\q小于1,然后f(x)又是正得,所以为正,但事实果真如此吗?如果我现在sample到了一个左边的点,f(x)就为负了,而且p\q>1,这将影响整个右边的结果,可能为负,所以只有在取更多样本时,下面这个式子才越准确。
Proximal Policy Optimization (PPO)详解然后我们将On-policy转换为Off-policy,如下图所示,注意画蓝线的地方,我们是从θ‘sample的样本,然后我们可以使用θ’的样本去多次训练θ。
Proximal Policy Optimization (PPO)详解

Proximal Policy Optimization (PPO)详解那个A就是advantage function,我这篇博客里有这个函数的简介(可以看看我的这篇博客大致学习一下Policy Gradient详解
Proximal Policy Optimization (PPO)详解

PPO算法/TRPO算法

PPO算法是一种新型的Policy Gradient算法,Policy Gradient算法对步长十分敏感,但是又难以选择合适的步长,在训练过程中新旧策略的的变化差异如果过大则不利于学习。PPO提出了新的目标函数可以再多个训练步骤实现小批量的更新,解决了Policy Gradient算法中步长难以确定的问题。
Proximal Policy Optimization (PPO)详解Proximal Policy Optimization (PPO)详解

Proximal Policy Optimization (PPO)详解
Proximal Policy Optimization (PPO)详解

PPO2

Proximal Policy Optimization (PPO)详解Proximal Policy Optimization (PPO)详解Proximal Policy Optimization (PPO)详解

Proximal Policy Optimization (PPO)详解

Proximal Policy Optimization (PPO)详解

总结

Proximal Policy Optimization (PPO)详解

相关文章:

  • 2021-05-05
  • 2021-12-04
  • 2021-05-18
  • 2021-09-17
  • 2021-11-23
  • 2021-12-12
  • 2021-08-21
  • 2021-07-17
猜你喜欢
  • 2021-06-07
  • 2021-12-05
  • 2022-01-07
  • 2021-08-06
  • 2021-11-20
  • 2021-11-05
  • 2021-09-05
相关资源
相似解决方案