深度强化学习课程文档
两种基于值的方法
并获得增强的文档体验
开始使用
两种基于值的方法
在基于值的方法中,我们**学习一个价值函数**,它将**状态映射到处于该状态的预期价值。**

状态的价值是代理在**该状态下开始并按照我们的策略行动**所能获得的**预期折扣回报**。
请记住,**强化学习代理的目标是拥有一个最优策略 π*。**
为了找到最优策略,我们学习了两种不同的方法:
- 基于策略的方法:**直接训练策略**来选择在给定状态下采取什么行动(或在该状态下行动的概率分布)。在这种情况下,我们**没有价值函数。**

策略将状态作为输入,并输出在该状态下要采取的行动(确定性策略:给定状态输出一个行动的策略,与输出行动概率分布的随机策略相反)。
因此,我们**不会手动定义策略的行为;它的定义将由训练来完成。**
- 基于值的方法:**通过训练一个价值函数间接地**,该函数输出状态或状态-行动对的价值。给定这个价值函数,我们的策略**将采取行动。**
由于策略没有经过训练/学习,**我们需要指定其行为。**例如,如果我们想要一个策略,在给定价值函数的情况下,它将采取总是导致最大奖励的行动,那么我们将**创建一个贪婪策略。**

因此,无论你使用哪种方法来解决你的问题,你**都将拥有一个策略**。在基于值的方法中,你不需要训练策略:你的策略**只是一个简单的预设函数**(例如,贪婪策略),它使用价值函数给出的值来选择其行动。
所以区别在于:
- 在基于策略的训练中,**最优策略(表示为 π*)是通过直接训练策略来找到的。**
- 在基于值的训练中,**找到一个最优价值函数(表示为 Q* 或 V*,我们将在下面研究其区别)将导致拥有一个最优策略。**

事实上,在大多数情况下,在基于值的方法中,你会使用**一个 Epsilon-贪婪策略**来处理探索/利用的权衡;我们将在本单元第二部分讨论 Q-学习时谈到这一点。
如上所述,我们有两种基于值的函数:
状态价值函数
我们这样写策略 π 下的状态价值函数:

对于每个状态,状态价值函数输出代理在**该状态下开始**并随后永久遵循策略(如果你愿意,可以在所有未来时间步长)的预期回报。

行动价值函数
在行动价值函数中,对于每个状态和行动对,行动价值函数会**输出预期回报**,即代理在该状态下开始,采取该行动,然后永久遵循策略。
在状态下采取行动的价值在状态在策略下是


我们看到区别在于
- 对于状态价值函数,我们计算**状态 的价值**
- 对于行动价值函数,我们计算**状态-行动对 ( ) 的价值,因此是该状态下采取该行动的价值。**

无论哪种情况,无论我们选择哪种价值函数(状态价值函数或行动价值函数),**返回的值都是预期回报。**
然而,问题在于,**要计算状态或状态-行动对的每个价值,我们需要将代理在该状态下开始可以获得的所有奖励相加。**
这可能是一个计算成本高昂的过程,而这正是**贝尔曼方程帮助我们的地方。**
< > 在 GitHub 上更新