我现在正在阅读一本名为Hands-On Reinforcement Learning with Python的书,作者解释了 Reinforcement Learing 中用于折扣未来奖励的折扣因子,内容如下:
仅考虑直接奖励,折扣因子为 0 永远不会学习;同样,折扣因子 1 将永远学习寻找未来的奖励,这可能导致无穷大。因此折扣因子的最佳值介于 0.2 到 0.8 之间。
作者似乎不打算进一步解释这个数字,但我读过的所有教程和解释都写出了 0.9 到 0.99 之间的最佳(或至少广泛使用的)折扣因子。这是我第一次看到如此低的折扣系数。
作者对折扣因素所做的所有其他解释与我目前所读到的相同。
作者在这里是正确的还是取决于案例?如果是这样,那么我应该将折扣系数设置为这样的数字低什么样的问题和/或情况?
编辑
我刚刚在 Quora 找到了以下答案:
当然。折扣因子为 0 将永远不会学习,而接近 1 的因子将仅考虑最后一次学习。等于或大于 1 的因子将导致算法不收敛。通常使用的值是 [0.2, 0.8]
编辑:这是学习因素。折扣因素仅影响您使用奖励的方式。为了更好的解释:
状态-动作-奖励-状态-动作-维基百科
见变量的影响。
我不知道问题中写了什么,因为它在 Quora 中不可见,但似乎 0.2 到 0.8 的数字用于学习因素,而不是折扣因素。也许作者对此感到困惑......?不过,我不确定学习因素是什么。