Reinforcement Learning 2

1. 两种Policy

Policy Based的强化学习有两种训练方法:

  • On-policy,要学的Agent边学边玩
  • Off-policy,要学的Agent看别人玩

前文讲解的Policy Gradient其实是On-policy的做法,这理解起来很直观:

∇ R ˉ θ = E τ ∼ P θ ( τ ) [ R ( τ ) ∇ l o g ( P θ ( τ ) ) ] \nabla\bar{R}_\theta = E_{\tau\thicksim P_\theta(\tau)}[R(\tau)\nabla log(P_\theta(\tau))] Rˉθ=EτPθ(τ)[R(τ)log(Pθ(τ))]

  • 使用 π θ \pi_\theta πθ来收集数据。当 θ \theta θ被更新之后,必须重新采样数据。故Policy Gradient需要大量的时间去训练数据

而Off-Policy得目标是:使用 π θ ′ \pi_{\theta^{'}} πθ收集得样本来训练 θ \theta θ,由于 π θ ′ \pi_{\theta^{'}} πθ是固定的,故可以反复使用它采集数据。

2. Importance Sampling

  • 在Policy Gradient中,玩一轮游戏可能得全局期望为:

    E x ∼ p [ f ( x ) ] ≈ 1 N ∑ i = 1 N f ( x i ) E_{x\thicksim p}[f(x)] \approx \frac{1}{N}\sum_{i=1}^Nf(x^i) Exp[f(x)]N1i=1Nf(xi)

    • x i x^i xi p ( x ) p(x) p(x)中采样,取平均值近似期望。
  • 这里的 p ( x ) p(x) p(x)即为某一个 τ \tau τ出现的概率,当充分采样时,其概率近似 1 N \frac{1}{N} N1

  • 那么假设不从 p ( x ) p(x) p(x)中采集数据,而是从 q ( x ) q(x) q(x)中采集数据且 q ( x ) q(x) q(x)可以是任意得形式,那么可否用从 q ( x ) q(x) q(x)中采集的数据训练 p ( x ) p(x) p(x)下的模型,从而避免多次和环境交互的过程呢?理论上是可行的,涉及到的方法就是重要性采样:

    E x ∼ p [ f ( x ) ] = ∫ f ( x ) p ( x ) d x = ∫ f ( x ) p ( x ) q ( x ) q ( x ) d x = E x ∼ q [ f ( x ) p ( x ) q ( x ) ] E_{x \thicksim p}[f(x)] \\ = \int f(x)p(x)dx \\ = \int f(x)\frac{p(x)}{q(x)}q(x)dx \\ = E_{x \thicksim q}[f(x)\frac{p(x)}{q(x)}] Exp[f(x)]=f(x)p(x)dx=f(x)q(x)p(x)q(x)dx=Exq[f(x)q(x)p(x)]

    • 通过巧妙地转换,使得从从 q ( x ) q(x) q(x)中采集的样本获得总期望和 p ( x ) p(x) p(x)下的相等,只是 f ( x ) f(x) f(x)多了一个权重 p ( x ) q ( x ) \frac{p(x)}{q(x)} q(x)p(x)
    • 所以即使不能从 p ( x ) p(x) p(x)中采样数据,也可以通过从 q ( x ) q(x) q(x)中采样来获取期望
  • 理论上, q ( x ) q(x) q(x)可以采用任何形式的分布,但实际上 q ( x ) q(x) q(x)不能和 p ( x ) p(x) p(x)相差太多,否则还是会出现问题,我们可以通过比较两个期望的方差来得到这一结论

    • 我们通过重要性得到如下等式:

      E x ∼ p [ f ( x ) ] = E x ∼ q [ f ( x ) p ( x ) q ( x ) ] E_{x \thicksim p}[f(x)] = E_{x \thicksim q}[f(x)\frac{p(x)}{q(x)}] Exp[f(x)]=Exq[f(x)q(x)p(x)]

    • 那么,我们现在计算它们的方差,方差的计算公式为: V a r ( x ) = E ( x 2 ) − [ E ( x ) ] 2 Var(x) = E(x^2) - [E(x)]^2 Var(x)=E(x2)[E(x)]2

      • V a r x ∼ p [ f ( x ) ] = E x ∼ p [ f ( x ) 2 ] − ( E x ∼ p [ f ( x ) ] ) 2 Var_{x \thicksim p}[f(x)] = E_{x \thicksim p}[f(x)^2] - (E_{x \thicksim p}[f(x)])^2 Varxp[f(x)]=Exp[f(x)2](Exp[f(x)])2
      • V a r x ∼ q [ f ( x ) p ( x ) q ( x ) ] = E x ∼ q [ ( f ( x ) p ( x ) q ( x ) ) 2 ] − E x ∼ q [ f ( x ) p ( x ) q ( x ) ] 2 = E x ∼ p [ f ( x ) 2 p ( x ) q ( x ) ] − ( E x ∼ p [ f ( x ) ] ) 2 Var_{x \thicksim q}[f(x)\frac{p(x)}{q(x)}] = E_{x \thicksim q}[(f(x)\frac{p(x)}{q(x)})^2] - E_{x \thicksim q}[f(x)\frac{p(x)}{q(x)}]^2 = E_{x \thicksim p}[f(x)^2\frac{p(x)}{q(x)}] - (E_{x \thicksim p}[f(x)])^2 Varxq[f(x)q(x)p(x)]=Exq[(f(x)q(x)p(x))2]Exq[f(x)q(x)p(x)]2=Exp[f(x)2q(x)p(x)](Exp[f(x)])2
    • 通过对比可以发现,上面两个公式的第二项是相同的,所以最影响方差的出现在第一项的。当 p ( x ) p(x) p(x) q ( x ) q(x) q(x)的差距很大时,会导致第一项中的权重系数 p ( x ) q ( x ) \frac{p(x)}{q(x)} q(x)p(x)变化剧烈,这就导致方差严重不同。

    • 所以,当从 p ( x ) p(x) p(x) q ( x ) q(x) q(x)采样次数足够多时,那么 E x ∼ p [ f ( x ) ] = E x ∼ q [ f ( x ) p ( x ) q ( x ) ] E_{x \thicksim p}[f(x)] = E_{x \thicksim q}[f(x)\frac{p(x)}{q(x)}] Exp[f(x)]=Exq[f(x)q(x)p(x)]还是成立的;但当采样次数不够多的时候,由于从 p ( x ) p(x) p(x)采样和从 q ( x ) q(x) q(x)采样方差相差过大,那么等式相等难以成立。

  • 让我们举一个通俗易懂的例子来解释这件事,如下图
    在这里插入图片描述

    • 图中,黑线横轴上方 f ( x ) f(x) f(x)值为正,下方为负。 p ( x ) p(x) p(x) q ( x ) q(x) q(x)都是长尾分布,所以直观上它们本身的方差就很大
    • 当从 p ( x ) p(x) p(x)中采样时,高概率采集的样本 f ( x ) f(x) f(x)都是在黑线横轴下方的,故期望值应该为负数;而从 q ( x ) q(x) q(x)中采样时,高概率采集的样本 f ( x ) f(x) f(x)值为正,故期望值应该为正数。
    • 这就说明如果 p ( x ) p(x) p(x) q ( x ) q(x) q(x)相差过大,那么重要性采样在采样不充分的情况下会导致 E x ∼ p [ f ( x ) ] = E x ∼ q [ f ( x ) p ( x ) q ( x ) ] E_{x \thicksim p}[f(x)] = E_{x \thicksim q}[f(x)\frac{p(x)}{q(x)}] Exp[f(x)]=Exq[f(x)q(x)p(x)]不成立。

3. On Policy to Off-Policy

在On policy的形式下,原始的策略梯度形式为:

∇ R ˉ θ = E τ ∼ P θ ( τ ) [ R ( τ ) ∇ l o g ( P θ ( τ ) ) ] \nabla\bar{R}_\theta = E_{\tau\thicksim P_\theta(\tau)}[R(\tau)\nabla log(P_\theta(\tau))] Rˉθ=EτPθ(τ)[R(τ)log(Pθ(τ))]

那么在加入了重要性采样的方法后,该策略梯度就变成了Off policy的形式,如下:

∇ R ˉ θ = E τ ∼ P θ ′ ( τ ) [ P θ ( τ ) P θ ′ ( τ ) R ( τ ) ∇ l o g ( P θ ( τ ) ) ] \nabla\bar{R}_\theta = E_{\tau\thicksim P_{\theta^{'}}(\tau)}[\frac{P_\theta(\tau)}{P_{\theta^{'}}(\tau)}R(\tau)\nabla log(P_\theta(\tau))] Rˉθ=EτPθ(τ)[Pθ(τ)Pθ(τ)R(τ)log(Pθ(τ))]

这里让 θ ′ \theta^{'} θ作为Actor与环境做互动,给 θ \theta θ做榜样,从而帮助 θ \theta θ采集大量的训练数据。在Off Policy下,当前训练的Actor就无需时刻与环境做互动从而获得训练数据,可通过 θ ′ \theta^{'} θ所代表的Actor与环境做互动拿到的数据更新 θ \theta θ即可。

参考资料:台大李宏毅强化学习。推荐本文和宝可梦大师的现场教学一起食用,效果更佳~

本文为作者原创,转载需注明出处!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
强化学习(第二版)》是一本关于强化学习的书籍。强化学习是一种机器学习方法,通过与环境的交互,学习如何在给定环境中做出最优决策。这本书是Richard S. Sutton和Andrew G. Barto的经典著作,第二版对第一版进行了更新和扩展。 这本书从强化学习的基本概念开始介绍,包括马尔科夫决策过程、值函数、策略以及贝尔曼方程等。然后,书中详细介绍了不同的强化学习算法,包括动态规划、蒙特卡洛方法、时序差分学习和函数逼近等。此外,书中还对探索与利用、强化学习的近似方法、政策梯度等内容进行了深入讲解。 第二版对第一版的改进在于增加了新的材料和案例研究,以反映出强化学习领域的最新发展。这本书的重点是理论和算法,深入解释了强化学习中的核心思想和方法。此外,书中还涵盖了一些应用案例,如棋类游戏、机器人控制等,以帮助读者更好地理解和应用所学内容。 这本书不仅适用于计算机科学和人工智能领域的学生和研究人员,也适合对强化学习感兴趣的读者。它以清晰的语言和直观的例子讲解了复杂的理论和算法,让读者能够轻松地理解和应用强化学习的方法。 总之,《强化学习(第二版)》是一本权威且全面的强化学习参考书籍,通过对基础理论和算法的深入讲解,帮助读者获得强化学习的深入理解,并能够在实际应用中灵活运用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值