深度强化学习课程文档

什么是基于策略的方法?

Hugging Face's logo
加入 Hugging Face 社区

并获得增强的文档体验

开始使用

什么是基于策略的方法?

强化学习的主要目标是找到能最大化预期累积奖励的最优策略π\pi^{*}。因为强化学习是基于奖励假设的:所有目标都可以被描述为最大化预期累积奖励。

例如,在一场足球比赛中(你将在两个单元中训练智能体),目标是赢得比赛。我们可以在强化学习中将这个目标描述为:最大化射入对手球门的进球数(当球越过球门线时),以及最小化自己球门的失球数

Soccer

基于价值、基于策略和 Actor-Critic 方法

在第一个单元中,我们看到了两种方法来寻找(或在大多数情况下,近似)这个最优策略π\pi^{*}.

  • 基于价值的方法中,我们学习一个价值函数。

    • 其思想是,一个最优的价值函数会导出一个最优的策略。π\pi^{*}.
    • 我们的目标是最小化预测值与目标值之间的损失,从而近似真实的动作价值函数。
    • 我们有一个策略,但它是隐式的,因为它是直接从价值函数中生成的。例如,在 Q-Learning 中,我们使用了 (epsilon-) 贪心策略。
  • 另一方面,在基于策略的方法中,我们直接学习近似π\pi^{*}而无需学习一个价值函数。

    • 其思想是对策略进行参数化。例如,使用神经网络πθ\pi_\theta,这个策略将输出一个关于动作的概率分布(随机策略)。
    • stochastic policy
    • 然后,我们的目标是使用梯度上升来最大化这个参数化策略的性能
    • 为了做到这一点,我们控制参数θ\theta它将影响在某个状态下动作的分布。
Policy based
  • 下次,我们将学习 Actor-Critic 方法,这是一种结合了基于价值和基于策略的方法。

因此,得益于基于策略的方法,我们可以直接优化我们的策略πθ\pi_\theta来输出一个关于动作的概率分布πθ(as)\pi_\theta(a|s)从而获得最佳的累积回报。为此,我们定义一个目标函数J(θ)J(\theta),即预期累积奖励,并且我们希望找到能够最大化这个目标函数的 θ\theta

基于策略和策略梯度方法的区别

策略梯度方法,即我们将在本单元学习的内容,是基于策略方法的一个子类。在基于策略的方法中,优化过程通常是同策略 (on-policy) 的,因为每次更新时,我们只使用最新版本的πθ\pi_\theta.

这两种方法的区别在于我们如何优化参数θ\theta:

  • 基于策略的方法中,我们直接搜索最优策略。我们可以通过最大化目标函数的局部近似来间接优化参数θ\theta ,使用的技术包括爬山法、模拟退火或进化策略。
  • 策略梯度方法中,由于它是基于策略方法的子类,我们也是直接搜索最优策略。但我们通过对目标函数的性能执行梯度上升来直接优化参数θ\thetaJ(θ)J(\theta).

在深入探讨策略梯度方法的工作原理(目标函数、策略梯度定理、梯度上升等)之前,让我们先研究一下基于策略方法的优缺点。

< > 在 GitHub 上更新