2

我目前正在强化学习的背景下学习策略梯度下降。TL; DR,我的问题是:“奖励函数的限制是什么(在理论上和实践中),对于下面的案例,什么是好的奖励函数?”

详细信息:我想实现一个神经网络,它应该学习使用策略梯度下降来玩一个简单的棋盘游戏。我将省略 NN 的细节,因为它们无关紧要。据我所知,策略梯度下降的损失函数是负对数似然:loss = - avg(r * log(p))

我现在的问题是如何定义奖励r?由于游戏可能有 3 种不同的结果:胜利、失败或平局 - 似乎奖励 1 表示胜利,0 表示平局,-1 表示失败(以及导致这些结果的行动的一些折扣值)将是一个自然的选择。

但是,从数学上讲,我有疑问:

赢得奖励:1 - 这似乎是有道理的。这应该将概率推向 1,因为概率越接近 1,获胜所涉及的移动梯度越小。

抽奖奖励:0 - 这似乎没有意义。这只会抵消方程中的任何概率,并且不可能进行学习(因为梯度应该始终为 0)。

损失奖励:-1 - 这应该是一种工作。它应该将涉及损失的移动的概率推向 0。但是,与获胜案例相比,我担心梯度的不对称性。概率越接近 0,梯度越陡。我担心这会对避免损失的政策产生极其强烈的偏见——以至于获胜信号根本不重要。

4

1 回答 1

1

你在正确的轨道上。但是,我相信您将奖励与行动概率混淆了。在平局的情况下,它会在剧集结束时得知奖励本身为零。然而,在损失的情况下,损失函数是折扣奖励(应该是-1)乘以动作概率。因此,它将使您更倾向于以胜利和远离失败的行动而以平局结束的行动落在中间。直观地说,它与有监督的深度学习非常相似,只是附加了一个额外的加权参数(奖励)。

此外,我相信来自 Google DeepMind 的这篇论文会对您有用:https ://arxiv.org/abs/1712.01815 。他们实际上谈论使用 RL 解决国际象棋问题。

于 2018-06-29T18:05:01.787 回答