深度强化学习课程文档

解决强化学习问题的两种主要方法

Hugging Face's logo
加入 Hugging Face 社区

并获取增强的文档体验

开始

解决强化学习问题的两种主要方法

既然我们已经学习了强化学习框架,我们该如何解决强化学习问题呢?

换句话说,我们如何构建一个强化学习智能体,使其能够选择能够最大化其预期累积奖励的动作?

策略 π:智能体的大脑

策略 π我们智能体的大脑,它是一个函数,告诉我们在给定状态下应该采取什么动作。 因此,它定义了智能体在特定时间的行为

Policy
将策略视为我们智能体的大脑,这个函数将告诉我们在给定状态下要采取的动作

这个策略是我们想要学习的函数,我们的目标是找到最优策略 π*,即当智能体根据该策略行动时,能够最大化预期回报的策略。我们通过训练来找到这个 π*。

有两种方法来训练我们的智能体以找到这个最优策略 π*

  • 直接地, 通过教导智能体学习在给定当前状态下应该采取哪个动作:基于策略的方法。
  • 间接地,教导智能体学习哪个状态更有价值,然后采取导致更有价值状态的动作:基于价值的方法。

基于策略的方法

在基于策略的方法中,我们直接学习策略函数。

这个函数将定义从每个状态到最佳对应动作的映射。 或者,它可以定义该状态下可能动作集合上的概率分布。

Policy
正如我们在这里看到的,策略(确定性)直接指示每一步要采取的动作。

我们有两种类型的策略

  • 确定性:在给定状态下的策略将始终返回相同的动作。
Policy
动作 = 策略(状态)
Policy
  • 随机性:输出动作上的概率分布。
Policy
策略(动作 | 状态) = 给定当前状态下动作集合上的概率分布
Policy Based
给定初始状态,我们的随机策略将输出该状态下可能动作的概率分布。

如果我们回顾一下

Pbm recap Pbm recap

基于价值的方法

在基于价值的方法中,我们学习一个价值函数,而不是学习策略函数,这个价值函数将状态映射到处于该状态的预期价值。

一个状态的价值是智能体如果从该状态开始,然后根据我们的策略行动,可以获得的预期折扣回报。

“根据我们的策略行动” 只是意味着我们的策略是“前往具有最高价值的状态”。

Value based RL

在这里我们看到我们的价值函数为每个可能的状态定义了价值。

Value based RL
由于我们的价值函数,在每一步我们的策略都会选择价值函数定义的最大价值的状态:-7,然后 -6,然后 -5(依此类推)以达到目标。

由于我们的价值函数,在每一步我们的策略都会选择价值函数定义的最大价值的状态:-7,然后 -6,然后 -5(依此类推)以达到目标。

如果我们回顾一下

Vbm recap Vbm recap < > GitHub 上更新