如何在策略梯度方法中选择操作?

数据挖掘 政策梯度
2021-10-11 16:54:38

据我了解,在强化学习中,基于值的方法和策略梯度方法之间的一个很大区别在于如何选择下一个动作。

在 Q-learning(基于价值的方法)中,每个可能的动作都会得到一个分数。然后我们选择下一个得分最高的动作,随机选择任何其他动作的可能性很小。

策略梯度方法如何决定一个动作?我们不再被允许选择得分最高的动作,因为这将给我们留下一个不可区分的策略,这是无法改进的。这些动作仍然有分数 - 我们是否随机选择它们......使用“累积分布函数”?另外,我是否使用了正确的术语?

换句话说,得分越高的动作是否占据更多空间并且更有可能被选中?

编辑:有一个关于政策毕业生的非常棒的讲座。不幸的是,该视频是故意不公开的,因此普通人无法真正了解它-但我是免费教育的,所以这里是: CS294-112 9/6/17

1个回答

你在正确的轨道上。我们不再选择我们认为可以最大化分数的动作。相反,我们预测要采取的最佳行动是什么。这在大型或连续状态空间中非常有效,在这些空间中,对所有可能的动作取一个 argmax 的分数会非常昂贵。

我们的策略网络计算采取行动的概率,并且在训练期间我们从网络中采样行动。这种情况一直持续到我们收到一个奖励信号,我们将其乘以预测的对数概率,以通过网络将错误传播回导致该奖励的过去动作。这将倾向于向下调整过去行动的预测概率以获得更多负面奖励,并向上调整以获得更多积极奖励。

当然,并不是所有导致必要奖励的行为都会导致好的或坏的奖励,但在许多训练迭代中,好的行为往往会导致更多的积极奖励,而消极的行为会导致更多的消极奖励。

有关更多讨论,请参阅 Andre Karpathy 的博文Deep Reinforcement Learning: Pong from Pixels and RL Course by David Silver - 第 7 讲:策略梯度方法