演员评论算法中演员的目的是什么?

人工智能 强化学习 演员批评方法 探索-开发-权衡
2021-11-13 01:51:30

对于离散的动作空间,actor-critic 算法中actor的目的是什么?

我目前的理解是,critic 估计给定一个动作的未来奖励,那么为什么不采取最大化估计回报的动作呢?

我对答案的初步猜测是探索-开发问题,但还有其他更重要/更深层次的原因吗?还是我低估了探索与利用作为一个问题的重要性?

在我看来,如果你能准确估计价值函数,那么你就解决了 RL 挑战。

1个回答

对于离散的动作空间,Actor-Critic 算法中的 actor 的目的是什么?

简而言之,就是策略函数π(a|s). 评论家(一个状态动作函数vπ(s)) 不用于派生策略,并且在“香草”中,Actor-Critic 根本不能以这种方式使用,除非您拥有 MDP 的完整分布模型。

在我看来,如果你能准确估计价值函数,那么你就解决了 RL 挑战。

通常情况就是这样,这就是 Q-learning 的工作方式,其中价值函数更准确地说是动作价值函数,q(s,a).

连续或非常大的动作空间在这里可能会导致问题,因为最大化它们是不切实际的。如果您有类似的问题要解决,通常表明您应该使用策略梯度方法,例如 Actor-Critic。但是,您在这里明确询问了“离散动作空间”。

你的陈述“如果你能准确地估计价值函数”的主要问题是你隐含地假设学习是完整的。您正在查看算法收敛后的最终输出,并询问为什么不只使用其输出的一半。虽然在 RL 算法之间进行选择通常与它们的学习方式、学习效率以及它们在学习过程中的行为方式有关。

我目前的理解是,critic 估计给定一个动作的未来奖励,那么为什么不采取最大化估计回报的动作呢?

批评者是vπ(s)所以不考虑动作。你当然可以学习qπ(s,a)取而代之或同样——一些策略梯度方法估计动作值,例如 Advantage Actor-Critic。

主要区别在于从经验中收集的数据如何应用于改变政策。回想一下强化学习期间的任何步骤,所有估计都是基于对当前目标策略值的最佳猜测。策略梯度方法直接改进策略,而基于值的方法具有基于相同学习值函数的隐含策略。argmaxaq(s,a)Q-learning 或 SARSA 中使用的方法给出了从值到策略的简单但粗略的映射,这意味着在比较策略梯度方法和基于值的方法时,学习时通过策略空间的轨迹是不同的。

以下是影响基于策略的方法和基于值的方法之间性能的显着差异:

  • 策略梯度方法倾向于在每一步对策略进行微小的更改,策略变化平滑,少量调整不同动作选择之间的概率。这反过来意味着估计值函数的目标变化缓慢。相比之下,当基于值的方法找到新的最大化动作时,它可以对策略进行重大更改,从而使所需的更新变得不那么平滑。

  • 策略梯度方法可以学习平衡随机策略,而基于价值的方法假设确定性策略。因此,如果您遇到像纸、剪刀石头游戏这样的情况,其中理想的策略是动作之间的随机选择,您应该使用策略梯度。这有点小众,但值得注意。

  • 函数逼近器(通常是神经网络)更容易在更简单的目标函数上训练。政策功能π(a|s)和动作价值函数q(s,a)对同一个问题有完全不同的看法,可能是一种形式简单而另一种形式更复杂。这可以在哪些算法学习最快方面产生很大的实际差异。

对于较小的离散动作空间,策略梯度和基于价值的方法之间并不总是有明确的选择。您可以使用其中任何一个,并且可能值得做一个实验来为某些类别的问题找到最有效的算法。