Q 函数使用(当前和未来)状态来确定获得最高奖励的动作。
但是,在随机环境中,当前动作(处于当前状态)并不能确定下一个状态。
Q learning 如何处理这个问题?Q 函数是否仅在训练过程中使用,未来状态是已知的?如果是这样的话,Q函数是否还在使用?
Q 函数使用(当前和未来)状态来确定获得最高奖励的动作。
但是,在随机环境中,当前动作(处于当前状态)并不能确定下一个状态。
Q learning 如何处理这个问题?Q 函数是否仅在训练过程中使用,未来状态是已知的?如果是这样的话,Q函数是否还在使用?
Q learning 如何处理这个问题?Q 函数是否仅在训练过程中使用,未来状态是已知的?如果是这样的话,Q函数是否还在使用?
博学的-function 不仅在训练期间使用,而且在训练之后也使用(在我们可以称为“部署”的情况下,当我们期望训练有素的代理根据它所学的内容行事时)。
但是,对未来状态的依赖只存在于训练期间,不再需要部署。
在训练期间,我们使用以下-学习更新规则:
在哪里是我们执行后达到的状态在. 在这里,部分是我们依赖未来知识的部分. 这在训练中可用,因为我们可以简单地选择, 执行, 观察,然后才触发我们的更新步骤。
在训练之外(实际上也在训练期间),我们还依赖于我们的用于选择动作的功能。我们通常选择一个动作根据; 我们选择动作最大化在我们目前的状态. 这里要注意的重要一点是,没有在我们如何选择动作的描述中使用术语:我们不需要知道我们未来的状态。
注意:在我的回答中,我决定按字面意思回答这个问题,即我正在解释如何-learning 仍然可以在所描述的设置中进行操作对未来达到的状态没有任何影响。
在实践中,我永远不会建议实际使用- 在这样的环境中学习,而是参考 Neil Slater 关于上下文多臂强盗算法可能提供更好解决方案的评论。