在DQN、Actor-Critic或A3C中选择奖励值时,是否有选择奖励值的通用规则?
正如我简单地听说的,(-1 ~ +1)奖励是非常有效的选择。
你能告诉我什么建议和原因吗?
发布于 2018-08-15 03:05:05
理想情况下,您希望标准化您的奖励(即0均值和单位方差)。在您的示例中,奖励在-1到1之间,这满足此条件。我认为原因是因为它在更新神经网络的参数时加快了梯度下降的速度,而且它还允许RL代理更有效地区分好的和坏的动作。
例如:假设我们试图构建一个过街的代理,如果它过了街,它会获得1的奖励,如果它被汽车撞到,它会得到-1的奖励,每一步都会得到0的奖励。从百分比上看,成功的奖励远远高于失败的奖励(被车撞到)。
但是,如果我们为成功穿越道路的代理奖励1,000,000,001,并为其被汽车撞到而奖励999,999,999 (此场景和上面的场景在标准化后是相同的),则成功不再像以前那样明显。此外,如果你对如此高的奖励打折扣,这将使这两种情况的区别更加难以识别。
这在DQN和其他函数逼近方法中是一个特别的问题,因为这些方法概括了状态,动作和奖励空间。因此,奖励-1和1有很大的不同,然而,如果我们使用一个函数来推广它,奖励1,000,000,001和999,999,999基本上是相同的。
https://stackoverflow.com/questions/51814505
复制相似问题