个性化阅读
专注于IT技术分析

强化学习教程

本文概要

我们的强化学习教程会给你强化学习,包括MDP和Q学习的一个完整的概述。在RL教程中,你将学习以下主题:


什么是强化学习?

  • 强化学习是一种基于反馈的机器学习技术,在这种技术中,agent通过执行动作和观察动作的结果来学习在环境中的行为。对于每一个好的行为,代理得到正反馈,对于每一个坏的行为,代理得到负反馈或惩罚。
  • 在强化学习中,与监督学习不同的是,agent使用无任何标记数据的反馈自动学习。
  • 因为没有带标签的数据,所以agent只能通过自己的经验来学习。
  • RL解决特定类型的问题,其中决策是连续的,目标是长期的,如游戏、机器人等。
  • 代理与环境交互并自行探索它。agent在强化学习中的主要目标是通过获得最大的正报酬来提高性能。
  • agent通过hit和trial的过程来学习,并根据经验来学习如何更好的执行任务。因此,我们可以说“强化学习是一种机器学习方法,其中智能主体(计算机程序)与环境交互,并在其中学习行动。”机器狗如何学习手臂的动作就是强化学习的一个例子。
  • 它是人工智能的核心部分,所有的AI agent都是基于强化学习的概念。在这里,我们不需要预先编写代理程序,因为它在没有任何人工干预的情况下从自己的经验中学习。
  • 例如:假设在迷宫环境中有一个AI代理,他的目标是找到钻石。代理通过执行一些操作与环境进行交互,基于这些操作,代理的状态会发生变化,同时还会收到反馈的奖励或惩罚。
  • 代理继续做这三件事(采取行动,改变状态/保持相同的状态,并获得反馈),通过这些行动,他学习和探索环境。
  • 代理人知道什么行为导致积极的反馈或奖励,什么行为导致消极的反馈惩罚。作为一个积极的奖励,代理得到一个积极的点,作为一个惩罚,它得到一个消极的点。

在强化学习中使用的术语

  • 代理():可感知/探索环境,并就此采取行动的实体。
  • 环境():其中剂存在或通过包围的情况。在RL,我们假设随机环境,这意味着它在本质上是随机的。
  • 行动():行动是在环境中由代理采取的行动。
  • 国家():国家是由代理采取的每项操作后的环境恢复的情况。
  • 奖励():从环境恢复到代理评价药剂的作用的反馈。
  • 政策():政策是由代理基于当前状态的下一个动作应用的策略。
  • 值():预计长期与贴现因子和相对短期的奖励重新调整。
  • Q值():它基本上是类似的值,但它需要一个附加的参数作为当前动作(a)中。

强化学习的主要特点

  • 在RL,代理未指示对环境和将要采取的行动所需要的。
  • 它是基于命中和审判过程。
  • 该代理执行下一个动作,并根据以往的动作的反馈改变状态。
  • 代理可能会延迟奖励。
  • 环境是随机的,代理人需要探索它到达,以获得最大的回报阳性。

途径来实现强化学习

主要有三种方法来实现强化学习的ML,它们是:

  1. 基于价值:基于价值的方法是要找到最佳的价值功能,这是在任何政策的状态的最大值。所以,代理商希望在任何状态下(S)政策π的长期回报。
  2. 基于策略:基于策略的方法是寻找未来最大回报的最佳策略,而使用值函数。在这种方法中,代理程序将尝试以应用所执行的操作中的每个步骤有助于最大限度地提高未来回报这样的政策。所述基于策略的方法主要有两种类型的策略:确定性:相同的动作是通过在任何状态下的政策(π)制作。随机:在这个政策,概率确定所产生的动作。
  3. 基于模型:在基于模型的方法,对环境创建的虚拟模型,并代理探讨了环境去学习它。有没有具体的解决方案或算法的这种做法,因为该模型表示是为每个环境不同。

强化学习的要素

有强化学习,这是下面给出的四个主要因素:

  1. 政策
  2. 回报信号
  3. 价值函数
  4. 环境模型

1)策略:策略可被定义为一种方法如何在给定时间的试剂的行为。它映射环境,这些国家采取的行动的感知状态。策略是因为它本身并定义代理行为的RL的核心要素。在某些情况下,它可能是一个简单的函数或查找表,而对于其他情况下,可能会涉及搜索过程通用计算。这可能是确定的或随机的政策:

确定性政策:一个=π(S)为随机策略:π(A | S)= P [在= A | ST = S]

2)回报信号:强化学习的目标是由回报信号定义。在每个状态中,环境发送即时信号到学习代理,并且该信号被已知作为奖励信号。这些奖励是根据良好的和由代理采取的行动,不好给出。代理的主要目标是最大限度地为良好行为的奖励的总数。奖励信号可以改变政策,如如果由代理导致低的奖励中选择的动作,那么策略可以改变以选择在未来其他动作。

3)值功能:价值功能提供了有关代理如何能够很好的形势和作用,又有多少报酬期待信息。奖励表示每个好的和坏的行动直接信号,而价值函数指定对未来的良好状态和行动。值函数依赖于作为奖励,无偿,有可能是没有价值的。估计值的目标是要实现更多的回报。

4)型号:强化学习的最后一个元素是模型,环境这模仿行为。随着模型的帮助下,一个可以对环境将如何表现的推论。如,如果一个状态和动作中给出,则模型可以预测下一个状态和奖励。

该模型被用于规划,这意味着它提供了一种通过实际体验这些情况下,才考虑未来所有的情况下采取行动的过程。为解决与模型的帮助下,RL问题的方法是称为基于模型的方法。相比之下,没有使用模型的方法被称为无模型的方法。


如何强化学习工作?

要理解RL的工作过程中,我们需要考虑两两件事:

  • 环境:它可以是任何东西,如一个房间,迷宫,足球场等。
  • 剂:一个智能代理,如AI机器人。

让我们的代理需要探索迷宫环境的一个例子。考虑下面的图片:

另外,在上述图像中,所述试剂是在迷宫的非常第一个块。迷宫是由一个S6块,这是一个壁,S8火灾坑和S4金刚石块。

代理不能穿过S6块,因为它是一个实心壁。如果主体到达S4块,然后得到+1的奖励;如果达到了火坑,然后得-1奖励积分。它可以采取四个动作:向上,向下移动,向左移动,并向右移动。

代理可以采取以到达终点的任何路径,但他需要让尽可能少的步骤。假定代理人认为路径S9-S5-S1-S2-S3,所以他会获得+ 1奖励积分。

代理将设法记住前面的步骤,它已采取到达最后一步。记住的步骤,它分配1个值到每个前一步骤。考虑下面的步骤:

现在,代理已成功存储在前面的步骤分配1个值给每个先前块。但是,如果将他开始从块,这对双方值1块移动代理吗?请看下图:

这将是代理他是否应该上升或下降,因为每个块具有相同值的困难条件。所以,上述方法不适合于该试剂到达目的地。因此,要解决这个问题,我们将使用Bellman方程,这是强化学习背后的主要概念。


贝尔曼方程

贝尔曼方程是由数学家理查德·欧内斯特贝尔曼在1953年推出,因此它被称为一个Bellman方程。它与动态规划相关联,并使用包括以前状态的值在某一点来计算决策问题的值。

它是在动态编程或环境计算值的函数的方式,导致现代的强化学习。

在贝尔曼等式中使用的键元件是:

  • 由代理执行的动作被称为“一”
  • 国发生的执行行动是“S”。
  • 每个好的和坏的行动中获得的回报/反馈是“R”
  • 折算因子是伽玛“γ”。

贝尔曼方程可以表示为:

V(s) = max [R(s,a) + γV(s`)]

哪里,

V(S)=在特定点处计算出的值。

R(S,A)=通过执行动作奖励在特定状态s。

γ=折扣系数

V(s`)=在先前状态下的值。

在上述公式中,我们所走的完整价值最大,因为代理尝试总能找到最佳的解决方案。

所以,现在,使用Bellman方程,我们将在给定环境的每个状态中发现价值。我们将从块,这是下一个目标块开始。

对于1号地块:

V(S3)= MAX [R(S,A)+γV(s`)],这里V(S’)= 0,因为没有进一步状态移动。

V(S3)= MAX [R(S,A)] => V(S3)= MAX [1] => V(S3)= 1。

对于2号地块:

V(S2)= MAX [R(S,A)+γV(s`)],这里γ= 0.9(允许),V(S’)= 1,和R(S,A)= 0,因为没有在这种状态奖励。

V(S2)= MAX [0.9(1)] => V(S)= MAX [0.9] => V(S2)= 0.9

对于第三块:

V(S1)= MAX [R(S,A)+γV(s`)],这里γ= 0.9(允许),V(S’)= 0.9,和R(S,A)= 0,因为没有在这种状态下也奖励。

V(S1)= MAX [0.9(0.9)] => V(S3)= MAX [0.81] => V(S1)= 0.81

对于4号地块:

V(S5)= MAX [R(S,A)+γV(s`)],这里γ= 0.9(允许),V(S’)= 0.81,和R(S,A)= 0,因为没有在这种状态下也奖励。

V(S5)= MAX [0.9(0.81)] => V(S5)= MAX [0.81] => V(S5)= 0.73

对于5块:

V(S9)= MAX [R(S,A)+γV(s`)],这里γ= 0.9(允许),V(S’)= 0.73,和R(S,A)= 0,因为没有在这种状态下也奖励。

V(S9)= MAX [0.9(0.73)] => V(S4)= MAX [0.81] => V(S4)= 0.66

考虑下面的图片:

现在,我们将进一步转移到第六块,这里剂可能会改变路线,因为它总是试图寻找最优路径。所以,现在,让我们从块考虑火坑旁。

现在,代理有三个选项中移动;如果他移动到蓝色方块,然后他会觉得一个凸起,如果他移动到火坑,那么他将获得奖励-1。但在这里,我们正在采取积极的只奖励,所以对于这一点,他将移动到向上只。完整的块值将使用该公式来计算。考虑下面的图片:


强化学习的类型

主要有两种类型的强化学习,它们是:

  • 积极强化
  • 负强化

积极强化:

正强化学习手段增加一些,以增加预期将再次发生的行为倾向。它积极的代理行为的影响,并增加了行为的力量。

这种类型的加固可以维持很长一段时间的变化,但过多的正强化可能导致状态的过载,可以降低的后果。

负强化:

负强化学习是相对积极的强化,因为它增加了具体的行为将被避免不利的情况再出现的趋势。

它可以比根据情况和行为的积极强化更有效,但它只能满足最低限度的行为提供了增强。

如何代表座席状态?

我们可以代表使用包含从历史所需的所有信息马尔科夫状态的座席状态。国家圣是如果按照给定的条件马尔科夫状态:

P[St+1 | St ] = P[St +1 | S1,......,St]

马尔科夫状态遵循马尔科夫特性,它说,未来是独立于过去的,只能用本定义。该RL工作在充分观察到的环境中,代理可以观察环境和行为的新状态。完整的过程称为马尔科夫决策过程中,这将在下面解释:


马尔科夫决策过程

马尔科夫决策过程或MDP,用于形式化强化学习的问题。如果环境是完全可观,那么它的动态可以被建模为一个马尔可夫过程。在MDP中,代理不断地与环境和执行动作相互作用;在每一个动作,环境进行响应,并生成一个新的状态。

MDP是用来描述为RL的环境中,几乎所有的RL问题可以使用MDP正规化。

MDP含有四个元素(S,A,PA,镭)的元组:

  • 一组有限的国家的S
  • 一组有限的操作A的
  • 转换从状态S为状态S”时,由于动作的后接收到的奖励。
  • 概率霸。

MDP利用马尔可夫性,并更好地了解MDP,我们需要了解它。

马氏性:

它说,“如果代理是存在于当前状态S1,执行一个动作A1并移动到状态S2,从S1到S2随后状态转换只取决于当前状态和未来的行动和状态不依赖于过去行动,奖励,或状态。”

或者,换句话说,按照马氏性,目前的状态转换不依赖于任何过去的动作或状态。因此,MDP是一个RL的问题,满足马尔可夫性。如在国际象棋游戏中,玩家只着眼于目前的状态,并不需要记住过去的动作或状态。

有限MDP:

一个有限MDP是当有有限的国家,有限的报酬,和有限的行动。在RL,我们只考虑有限的MDP。

马尔可夫过程:

马尔可夫过程是随机的状态序列无记忆过程S1,S2,…,圣使用该马氏性。马尔可夫过程也被称为马尔可夫链,这是对状态S和转换函数P.这两个分量(S和P)的元组(S,P)可以定义系统的动态特性。


强化学习算法

强化学习算法主要用于AI应用和游戏应用。主要使用的算法是:

  • Q-学习:Q-学习是一个关政策RL算法,用于时间差分学习。的时间差的学习方法是比较时间上连续的预测方式。它学习的价值函数Q(S,A),该装置好如何采取行动“一”在特定状态的“S”。下面的流程图说明Q-学习的工作:
  • 国家行动回报国家行动(SARSA):SARSA代表国家行动回报国家行动,这是一项长期的政策时间差学习方法。上的策略控制的方法对于每个状态选择动作,同时使用特定的策略学习。 SARSA的目标是计算所选择的现行政策π将qπ(S,A)和所有对(S-A)。 Q学习和SARSA算法之间的主要区别是,不像Q学习,不需要用于更新表中的Q值的下一个状态的最大奖励。在SARSA,新的行动和奖励都使用相同的政策,确定了最初的动作来选择。该SARSA被命名,因为它使用的五元组Q(S,A,R,S’,一个’)。其中,S:原始状态:原始动作R:在跟随状态S’和’奖励观察:新的状态,动作对。
  • 深Q神经网络(DQN):顾名思义,DQN是Q学习的神经网络。对于一个大国的空间环境,这将是一个充满挑战和复杂的任务定义和更新的Q表。为了解决这样的问题,我们可以使用一个DQN算法。其中,代替限定Q-表,神经网络近似于每个动作和状态的Q值。

现在,我们将扩大Q-学习。

Q-学习说明:

  • Q学习是一种基于Bellman方程一个流行的免费模式,强化学习算法。
  • Q学习的主要目的是学习,可以告知哪些应采取行动以最大化在什么情况下奖励的代理政策。
  • 这是一个离政策RL,试图找到拿在当前状态最好的行动。
  • 在Q学习代理的目标是最大限度地问:价值
  • Q学习的值可以从Bellman方程导出。考虑下面给出的Bellman方程:

在公式中,我们有各种组件,包括奖励,折扣因子(γ),概率和最终状态s’。但没有任何Q值给出所以首先考虑下面的图片:

另外,在上述图像中,我们可以看到有谁具有三个值的选项的试剂,V(S1),V(S2),V(S3)。由于这是MDP,所以代理只关心当前的状态和未来状态。代理可以去任何方向(上,左,或右),所以他需要决定去哪里最佳路径。这里剂将采取举措按照概率基地和改变的状态。但是,如果我们想要一些具体的动作,所以对于这一点,我们需要在Q值方面的一些变化。考虑下面的图片:

Q-表示每个国家的行动的质量。因此,而不是在每一状态使用值,我们将使用一对状态和动作,即,Q(S,A)的。 Q-value指定哪个动作是比其他人更润滑,并根据最佳Q值,代理把他的下一步行动。贝尔曼方程可以用于导出Q值。

要执行任何操作,代理将得到奖励R(S,A),同时他最终会在某个状态,所以将q – 值公式为:

因此,我们可以说,V(S)= MAX [Q(S,A)]

上述公式被用于估计在Q学习的Q值。

什么是“Q”的Q学习?

在Q代表在Q学习,这意味着它指定由代理所采取的动作的质量品质。

Q-表:

A Q-表或矩阵,同时执行Q学习被创建。表所示的状态和动作对,即,[S,A],并初始化值为零。每次操作后,该表被更新时,和q的值存储在表内。

所述RL代理使用该Q表作为参考表中选择基于所述q值的最佳行动。


强化学习与监督学习之间的区别

强化学习和监督学习的都是机器学习的一部分,但是这两种类型的学习收获的远远彼此相反。该RL代理与环境互动,探索它,采取行动,并获得奖励。而监督学习算法,从标记数据集中学习和培训的基础上,预测的输出。

RL和监督学习之间的差异表中给出如下:

强化学习监督学习
RL通过与环境交互工作。监督学习在现有的数据集上工作。
该RL算法的工作原理就像人做一些决策时,大脑的工作。监督学习就像一个人在向导的监督下学习一样。
没有标记的数据集标记的数据集是否存在。
学习代理之前没有接受过任何培训。对算法进行训练,使其能够预测输出。
RL有助于顺序作出决定。在监督学习中,决策是在输入信息时做出的。

强化学习应用

  1. 机器人:RL在机器人导航,机器人足球,步行,杂耍,等使用
  2. 控制:RL可用于自适应控制诸如厂工艺中,在电信准入控制,和直升机飞行员是强化学习的例子。
  3. 玩游戏:RL可以在玩游戏,如井字棋,象棋等使用
  4. 化学:RL可用于优化化学反应。
  5. 经营范围:RL现在用于企业战略规划。
  6. 制造业:在不同的汽车生产企业,机器人利用深层强化学习挑货,并把它们在某些容器中。
  7. 财经界:RL在金融部门目前用于评估交易策略。

结论

从上面的讨论,我们可以说,强化学习是机器学习的最有趣和最有用的部分之一。在RL,代理通过探索它没有任何人为干预的探索环境。它是人工智能使用的主要学习算法。但也有一些情况下,它不应该被使用,比如,如果你有足够的数据来解决,那么其他ML算法可以更有效地利用的问题。与RL算法的主要问题是,一些参数可能会影响学习,速度,比如延迟反馈。


赞(0)
未经允许不得转载:srcmini » 强化学习教程

评论 抢沙发

评论前必须登录!