强化学习中的Q,V(值函数)和奖励之间到底有什么区别?

时间:2018-12-06 22:29:02

标签: machine-learning deep-learning reinforcement-learning q-learning

在Double Q或Deuling Q Networks的背景下,我不确定是否完全了解其中的区别。特别是对于V。V(s)到底是什么?国家如何具有内在价值?

如果我们在交易股票的背景下考虑这一点,那么我们将如何定义这三个变量?

1 个答案:

答案 0 :(得分:2)

  • 无论网络怎么说,奖励都是环境的固有组成部分。这是代理在执行操作后的整个生命周期内收到的信号(实际上是 only 信号)。例如:下棋的坐席在游戏结束时只获得一个奖励,+1-1,而其他所有时间的奖励均为零。

    在此示例中,您会看到一个问题:奖励非常稀疏,仅给出一次,但是游戏中的状态显然有很大不同。如果座席处于皇后状态而对手刚刚失去皇后状态,则获胜的机会非常高(稍微简化一下,但您会有所想法)。这是一个良好状态,代理商应该努力到达那里。另一方面,如果一个特工丢掉了所有棋子,这是一个坏状态,则很可能会输掉比赛。

  • 我们想量化什么是好状态或坏状态,这就是值函数 V(s)。给定任何状态,它都会返回一个数字,无论大小。通常,正式定义是对给予特定政策以行事的未来折扣的期望(有关政策的讨论,请参见this question)。这完全有道理:一种好的状态就是这样,将来的+1奖励很有可能;糟糕的情况恰恰相反-当未来-1很有可能发生时。

    重要说明:价值功能取决于奖励,而不仅限于一种状态,对于许多情况也是如此。请记住,在我们的示例中,几乎所有州的奖励都是0。值函数将所有未来状态及其概率考虑在内。

    另一个说明:严格来说,国家本身没有价值。但是,根据我们在环境中的目标,我们已经为它分配了一个,即最大化总回报。可以有多个策略,每个策略都会引发不同的价值功能。但是(通常)有一个最优策略和相应的最优值函数。这就是我们想要找到的!

  • 最后,Q函数Q(s, a)动作值函数是对给定策略在特定状态下特定动作的评估。当我们讨论最优策略时,行动价值函数通过 Bellman最优性方程与价值函数紧密相关。这是有道理的:一个动作的值完全由采取该动作后的可能状态的值决定(在国际象棋游戏中,状态转换是确定性的,但总的来说,它也是概率性的,这就是为什么我们讨论所有可能的状态)。

    再一次,行动价值函数是未来奖励的衍生。这不仅仅是当前的奖励。即使立即获得的奖励是相同的,有些动作也可能比其他动作好或坏。


以股票交易为例,主要困难是为代理商定义策略。让我们想象最简单的情况。在我们的环境中,状态只是一个元组(current price, position)。在这种情况下:

  • 仅当代理商实际担任职位时,奖励才为非零;当它退出市场时,就没有回报,即为零。这部分或多或少容易。
  • 但是价值和行动价值功能非常重要(请记住,它仅考虑未来的回报,而不是过去的回报)。说,AAPL的价格为100美元,考虑到未来的回报,它是好是坏?您应该购买还是出售它?答案取决于政策 ...

    例如,一个代理商可能以某种方式得知,每当价格突然跌至40美元时,它很快就会恢复(听起来太傻了,这只是一个例证)。现在,如果一个代理商按照 this 的政策行事,则40美元左右的价格是一个很好的状态,它的价值很高。同样,$ 40左右的操作值Q对于“买入”来说是高的,对于“卖出”来说是低的。选择其他策略,您将获得不同的价值和行动价值功能。研究人员试图分析库存历史并提出明智的政策,但没人知道最佳政策。实际上,甚至没有人知道状态概率,只有估计值。这就是使任务真正困难的原因。