强化学习-2021学习笔记

强化学习中文文档

强化学习

  • 第一章 简介
    • 1.1 强化学习
    • 1.2 例子
    • 1.3 强化学习的要素
    • 1.4 局限性和范围
    • 1.5 拓展例子:井子棋
    • 1.6 小结
    • 1.7 强化学习早期历史
  • 第一部分 表格解决方法
  • 第二章 多臂赌博机问题
    • 2.1 一个K臂赌博机问题
    • 2.2 行动价值方法
    • 2.3 10臂赌博机试验
    • 2.4 增量实现
    • 2.6 乐观的初始值
  • 第三章 有限马尔科夫决策过程
    • 3.1 个体环境接口
    • 3.2 目标和奖励
    • 3.3 回报和情节
    • 3.4 情节和持续任务的统一符号
    • 3.5 策略和价值函数
    • 3.6 最优策略和最优价值函数
    • 3.7 优化和近似
    • 3.8 总结
  • 第四章 动态规划
  • 第五章 蒙特卡洛方法
  • 第六章 时序差分学习
  • 第七章 N步引导方法
  • 第八章 表格方法规划和学习
  • 第三部分 深入研究

第一章 简介

当我们思考学习的本质时,我们首先想到的是通过与环境交互来学习。 当一个婴儿玩耍,挥动手臂或环顾四周时,他没有明确的老师,但他确实通过直接的感觉与环境联系。 他可以通过这种联系获得大量关于因果关系、动作的结果以及如何实现目标的信息。 在我们的生活中,这种交互无疑是环境和自身知识的主要来源。 无论我们是学习驾驶汽车还是进行交谈,我们都敏锐地意识到我们的环境如何响应我们的行为,并且我们试图通过我们的行为来影响所发生的事情。 从交互中学习是几乎所有学习和智能理论的基本思想。

在本书中,我们探索了一种从交互中学习的 计算 方法。 我们主要探索理想化的学习情境并评估各种学习方法的有效性,而不是直接理解人或动物的学习方式 [1] 。 也就是说,我们采用人工智能研究员或工程师的观点。 我们探索在解决科学或经济效益的学习问题方面有效的机器设计,通过数学分析或计算实验评估设计。 我们探索的方法称为 强化学习,更侧重于从交互中进行目标导向的学习,而不是其他机器学习方法。

1.1 强化学习

强化学习是一种学习如何将状态映射到动作,以获得最大奖励的学习机制。 学习者不会被告知要采取哪些动作,而是必须通过尝试来发现哪些动作会产生最大的回报。 在最有趣和最具挑战性的案例中,动作不仅可以影响直接奖励,还可以影响下一个状态,并通过下一个状态,影响到随后而来的奖励。 这两个特征 - 试错法和延迟奖励 - 是强化学习的两个最重要的可区别特征。

强化学习,就像许多名称以“ing”结尾的主题一样,例如机器学习和登山,同时也是一个问题,一类能够很好地解决问题的解决方法,以及研究这个问题及其解决方法的领域。 为所有三件事情使用单一名称是方便的,但同时必须保持三者(问题,方法,领域)在概念上分离。 特别的,在强化学习中,区分问题和解决问题的方法是非常重要的;没有做出这种区分是许多混乱的根源。

我们使用动态规划理论的思想来规范化强化学习的问题,具体地说,是不完全已知的马尔可夫决策过程的最优控制。 这种规范化的详细描述将在第3章,但是最基本的思想是:采样实际问题最重要的方面,训练一个个体多次与环境交互去达成一个目标。 个体必须能够在某种程度上感知其环境状态,并且能够采取动作影响环境的状态。 个体还必须具有与环境状态相关的一个或多个目标。 马尔科夫决策过程基本概念无差别地包含感知,动作和目标三个方面。 我们认为任何非常适合解决此类问题的方法都是一种强化学习方法。

强化学习不同于 监督学习。 监督学习是目前机器学习领域中研究最多的一种学习方式,它从知识渊博的教练所提供的有标记的训练集中学习。 每一个样例都是一种情况的描述,都带有标签,标签描述的是系统在该情况下的应该采取的正确动作,每一个样例用来识别这种情况应该属于哪一类。 这种学习的目的是让系统推断概括它应有的反馈机制,使它可以对未知样本作出正确回应。 这是一种重要的学习方式,但单凭它并不足以从交互中学习。 在交互问题中,找到期待的既正确又典型的样例通常都是不切实际的。 在一个未知的领域,若要使收益最大化,个体必须能够从自己的经验中学习。

强化学习也与机器学习研究人员所谓的 无监督学习 不同,后者通常是用于寻找隐藏在未标记数据集合中的结构。 监督学习和无监督学习这两个术语似乎对机器学习范式进行了详尽的分类,但事实却并非如此。 尽管人们可能会试图将强化学习视为一种无监督学习,因为它不依赖于正确行为的样例,但强化学习试图最大化奖励信号而不是试图找到隐藏的结构。 在个体的经验数据中揭示结构确实对强化学习特别有用,但是它本身并没有解决最大化奖励信号的强化学习问题。 因此,我们认为强化学习是除监督学习和无监督学习之外的第三种机器学习范式,也许还有其他范式。

在强化学习中出现而在其他类型学习中未出现的挑战之一,是如何权衡探索(Exploration)与利用(Exploitation)之间的关系。 为了获得大量奖励,强化学习个体必须倾向于过去已经尝试过并且能够有效获益的行动。 但是要发现这样的行为,它必须尝试以前没有选择过的行为。 个体必须充分 利用 它既有经验以获得收益,但它也必须 探索,以便在未来做出更好的动作选择。 困境在于,任何探索和利用都难以避免失败。 个体必须尝试各种动作,逐步地选择那些看起来最好的动作。 在随机任务中,每一个动作必须经过多次尝试才能得到可靠的预期收益。 几十年来,数学家一直在深入研究探索利用困境,但仍未得到解决。 就目前而言,在监督和无监督的学习中,至少在这些范式的最纯粹的形式中,完全平衡探索和利用的项目尚未出现。

强化学习的另一个关键特征是它明确地考虑了目标导向的个体与不确定环境相互作用的 整个 问题。 这与许多考虑子问题但没有解决它们如何融入更大的图景的方法形成对比。 例如,我们已经提到很多机器学习研究都关注监督学习而没有明确说明这种能力最终如何有用。 其他研究人员已经发展了具有总体目标的规划理论,但没有考虑规划在实时决策中的作用,也没有考虑规划所需的预测模型来自何处。 尽管这些方法已经产生了许多有用的结果,但它们一个重要的限制在于过多关注孤立子问题。

强化学习采取相反的策略,它具有一个完整的、交互式的、寻求目标(goal-seeking)的个体。 所有强化学习个体都有明确的目标,可以感知环境的各个方面,并可以选择影响其环境的动作。 此外,尽管个体面临的环境有很大的不确定性,通常从一开始就假设个体必须采取动作。 当强化学习涉及规划时,它必须解决规划和实时动作选择之间的相互作用,以及如何获取和改进环境模型的问题。 当强化学习涉及监督学习时,它要确定决定哪些能力是关键的,哪些是不重要。 为了学习研究以取得进步,必须隔离和研究重要的子问题,即使不能体现所有完整的细节,它们也应该是在完整的、交互式的、寻求目标的个体中有明确功能的子问题。

一个完整的、交互式的、寻求目标的个体,并不总是意味着像是一个完整的有机体或机器人。 这里有许多明显的例子,但是一个完整的、交互式的、寻求目标的个体也可以是更大行为系统的一个组成部分。 在这种情况下,个体直接与较大系统的其余部分交互,并间接与较大系统的环境交互。 一个简单的例子是一个监控机器人电池的充电水平并向机器人的控制架构发送命令的个体。 这个个体的环境是机器人的其余部分以及机器人的环境。 人们的眼光应超越最明显的个体及其环境的例子,才能理解强化学习框架的普遍性。

现代强化学习最激动人心的一个方面是与其他工程和科学学科的实质性和富有成效的交互。 强化学习是人工智能和机器学习领域长达数十年的一个趋势,它与统计学、最优化和其他数学学科更紧密地结合在一起。 例如,某些强化学习方法学习参数的能力解决了运筹学与控制论中的经典“维数灾难”问题。 更有特色的是,强化学习也与心理学和神经科学有着紧密的联系,双方均有获益。 在所有形式的机器学习中,强化学习最接近人类和其他动物所做的学习,而强化学习的许多核心算法最初都受到生物学习系统的启发。 通过动物学习的心理模型返回更符合经验数据的结果,以及通过一部分大脑奖励系统的有影响力的模型,强化学习也得到了反馈。 本书正文介绍了与工程和人工智能相关的强化学习的思想,并在第14章和第15章中总结了与心理学和神经科学的联系。

最后,强化学习也在某种程度上符合人工智能回归简单的一般性原则的大趋势。 自20世纪60年代后期以来,许多人工智能研究人员认为普遍性的原则是不存在的,而智能则归因于拥有大量特殊用途的技巧,过程和启发式方法。 有人说,如果我们能够将相关的事实充分地提供给一台机器,比如一百万或十亿,那么它就会变得聪明起来。 基于一般性原则(如搜索或学习)的方法被定性为“弱方法”,而基于特定知识的方法被称为“强方法”。 这种观点在今天仍然很普遍,但并不占优势。 从我们的观点来看,这只是一个不成熟的过程:寻找一般性原则的努力太少,以至于没有结论。 现代人工智能现在包括许多寻找在学习,搜索和决策方面的一般性原则的研究。 目前还不清楚钟摆会摆动多远,但强化学习研究肯定是摆向更简单和更少的人工智能一般原则的钟摆的一部分。

1.2 例子

理解强化学习的一个好方法是思考指导其发展的一些例子和可能的应用。

  • 国际象棋大师落子。落子决定既通过规划 - 期待的回复和逆向回复 (anticipating possible replies and counterreplies),也出于对特定位置和移动及时直觉的判断。
  • 自适应控制器实时调节炼油厂操作的参数。控制器在指定的边际成本的基础上优化产量/成本/质量交易,而不严格遵守工程师最初建议的设定。
  • 一头瞪羚在出生后几分钟挣扎着站起来。半小时后,它能以每小时20英里的速度奔跑。
  • 移动机器人决定是否应该进入新房间以寻找和收集更多垃圾来,或尝试回到充电站充电。 它根据电池的当前电池的充电水平,以及过去能够快速轻松地找到充电站的程度做出决定。
  • 菲尔准备他的早餐。仔细检查,即使是这个看似平凡的行动,也会发现一个复杂的条件行为网和互锁的目标-子目标关系: 走到橱柜,打开它,选择一个麦片盒,然后伸手去拿,抓住并取回盒子。 拿到碗,勺子和牛奶盒也需要其他复杂的,调整的,交互的行为序列来完成。每个步骤都涉及一系列眼球运动,以获取信息并指导到达和移动。 它们需要对于如何拿住物品或者在拿其他物品之前将它们中的一些运送到餐桌上做出快速判断。 每个步骤都以目标为指导并为其他目标服务,例如抓起勺子或走到冰箱,比如一旦麦片准备好就拿勺子吃以最终获得营养。 无论他是否意识到这一点,菲尔都在获取有关他身体状况的信息,这些信息决定了他的营养需求,饥饿程度和食物偏好。

这些例子共同的特征非常基础,以至于很容易被忽略。 所有这些都涉及积极的决策个体与其环境之间的 交互,个体于存在不确定性的环境中寻求实现 目标。 个体的行为能影响未来的环境状态(例如,下一个国际象棋位置,炼油厂的水库水位,机器人的下一个位置以及其电池的未来充电水平),从而影响个体之后可以采取的动作和机会。 正确的选择需要考虑到动作的间接延迟后效应,因此可能需要预见或规划。

同时,在所有这些例子中,动作的效果都无法被完全预测;因此,个体必须经常监控其环境并做出适当的反应。 例如,菲尔必须观察他倒入麦片的碗中的牛奶以防止溢出。 所有这些例子都涉及明确的目标,即个体可以根据其直接感知的内容判断完成目标的进度。 国际象棋选手知道他是否获胜,炼油厂控制员知道生产了多少石油,瞪羚小牛知道它何时倒下,移动机器人知道它的电池何时耗尽,菲尔知道他是否正在享用他的早餐。

在所有这些例子中,个体可以使用其经验来改善其性能。 国际象棋选手改进了他用来评估位置的直觉,从而改善了他的发挥;瞪羚提高了它的活力;菲尔学会精简他的早餐。 个体在任务开始时所具有的知识 - 无论是之前的相关任务经验还是通过设计或演变带来的 - 都会影响有用或易于学习的内容, 但与环境的交互对于调整行为以利用任务的特性至关重要。

1.3 强化学习的要素

在个体和环境之外,强化学习系统一般有四个要素:策略,奖励信号,价值函数,和可选的环境 模型。

策略: 定义了学习个体在给定时间内的行为方式。 简单来说,策略是从感知的环境状态到在这些状态下要采取的行动的映射。 它对应于心理学中所谓的一组刺激-反应规则或关联。 在某些情况下,策略可以是简单的函数或查找表格,而在其他情况下,它可能涉及广泛的计算,例如搜索过程。 策略是强化学习个体的核心,因为它本身就足以确定行为。一般来说,策略对指定每个动作的概率而言可以是随机的。

奖励信号: 定义了强化学习问题的目标。 在每个时间步骤,环境向强化学习个体发送的单个数字称为 奖励。 个体的唯一目标是最大化其长期收到的总奖励。 因此,奖励信号定义了相对个体而言的好和坏。 在生物系统中,我们可能会认为奖励类似于快乐或痛苦的经历。 它们是个体所面临的问题的直接和明确的特征。 奖励信号是改变策略的主要依据,如果策略选择的动作之后是低奖励,则可以更改策略以在将来选择该情况下的某些其他动作。 通常,奖励信号可以是环境状态和所采取的动作的随机函数。

虽然奖励信号表明了直接意义上的好处,但 价值函数 指定了长期收益。 粗略地说,一个状态的价值是个体从该状态开始在未来可以预期累积的收益总额。 虽然奖励决定了环境状态的直接,内在的价值,但价值表明了在考虑了可能遵循的状态和这些状态下可获得的奖励之后各状态的 长期 价值。 例如,一个状态可能总是会产生较低的即时奖励,但仍然具有较高的价值,因为其他状态经常会产生高回报。 或者与此相反。 以人类作类比,奖励有点像快乐(如果是高的奖励)和痛苦(如果是低的奖励),而价值则对应于我们对环境处于特定状态的高兴或不满的更精确和更有远见的判断。

奖励在某种意义上是主要的,而作为奖励预测的价值是次要的。 没有奖励就没有价值,估算价值的唯一目的就是获得更多回报。 然而,在制定和评估决策时,我们最关心的是价值。 行动选择基于价值判断。 我们寻求带来最高价值状态的行动,而不是最高奖励状态的行动,因为从长远来看,这些行动会为我们带来最大的回报。 不幸的是,确定价值要比确定奖励要困难得多。 奖励基本上由环境直接给出,但必须根据个体在其整个生命周期中所做的观察序列来估计和重新估计价值。 事实上,我们考虑的几乎所有强化学习算法中最重要的组成部分是一种有效估计价值的方法。 价值估计的核心作用可以说是过去六十年中有关强化学习的最重要的事情。

一些强化学习系统具有第四个也是最后一个要素,即环境 模型。 这是对环境的模拟,或者更一般地说,它对环境的行为做出推断。 例如,给定状态和动作,模型可以预测结果的下一状态和下一个奖励。 模型用于 规划,我们指的是在实行动前对未来进行预判。 使用模型和规划解决强化学习问题的方法被称为 基于模型 的方法,而不是更简单的 不基于模型 方法, 不基于模型方法几乎被看作是规划的 反面,它通过试错进行学习。 在第8章中,我们将探索强化学习系统,它们通过试错来学习,学习环境模型,并使用模型进行规划。 现代强化学习已经从低级的、试错学习跨越到高层次的、有计划的学习。

1.4 局限性和范围

强化学习在很大程度上依赖于状态的概念 - 作为策略和价值函数的输入,以及模型的输入和输出。 非正式地,我们可以将状态视为向个体传达某种特定时间“环境如何”的信号。 我们在这里使用的状态的正式定义由第3章中提出的马尔可夫决策过程的框架给出。 然而,更一般地,我们鼓励读者遵循非正式意义并将状态视为个体对其环境所能获得的任何信息。 实际上,我们假设状态信号是由某些预处理系统产生的,而预处理系统是个体环境的一部分。 在本书中,我们没有讨论构造、改变或学习状态信号的问题(除了第17.3节中的简要说明)。 我们采用这种方法并不是因为我们认为状态不重要,而是为了完全关注决策问题。 换句话说,我们在本书中的关注不是设计状态信号,而是设计行为函数以应对各种状态。

我们在本书中所考虑的大部分强化学习方法都是围绕估计价值函数构建的,但它对于解决强化学习问题而言并不是必须的。 例如,诸如遗传算法,遗传规划,模拟退火和其他优化方法的解决方法已被用于研究强化学习问题,而不必求助于价值函数。 这些方法应用多个静态策略,每个策略在较长时间内与单独的环境实例进行交互。 获得最多奖励的策略及其随机变化将延续到下一代策略,并重复该过程。 我们称这些方法为进化方法是因为它们的行为类似于生物进化方式,这种方式产生具有熟练行为的生物,即使它们在个体生命期间内不学习。 如果策略空间足够小,或者容易被构造,或者如果有大量的时间可用于搜索,那么进化方法可能是有效的。 此外,进化方法在学习个体不能感知环境的完整状态的问题上具有优势。

我们的重点是强化学习方法,这些方法在与环境交互时学习,而进化方法则不然。 在许多情况下,能够利用个体行为交互细节的方法比进化方法更有效。 进化方法忽略了对大量的强化学习问题有用的结构:他们没有利用策略是从状态到行动的映射这一事实;他们并没有注意到个体生命周期中所经历的状态和采取的行动。 在某些情况下,这些信息可能会产生误导(例如,当状态不确定的时候),但更经常的是它能使搜索更有效率。 虽然进化和学习有许多共同的特性并且自然地协同工作,但我们并不认为进化方法本身特别适合强化学习问题,因此,我们不在本书中讨论它们。

1.5 拓展例子:井子棋

1.6 小结

强化学习是一种理解和自动化目标导向学习和决策的计算方法。 它与其他计算方法的区别在于它强调个体通过与环境的直接交互来学习,而不需要示范监督或完整的环境模型。 我们认为,强化学习是第一个认真解决从与环境交互中学习以实现长期目标时出现的计算问题的领域。

强化学习使用马尔可夫决策过程的正式框架来定义学习个体与其环境之间在状态,行为和奖励方面的交互。 该框架旨在表示人工智能问题的基本特征。 这些特征包括因果性,不确定感和不确定性(a sense of uncertainty and nondeterminism),以及明确目标的存在。

==价值和价值函数的概念是我们在本书中考虑的大多数强化学习方法的关键。 ==我们认为价值函数对于在策略空间中高效搜索非常重要。 价值函数的使用将强化学习方法与在整个策略评估指导下直接搜索策略空间的进化方法区分开来。

1.7 强化学习早期历史

第一部分 表格解决方法

在本书的这一部分中,我们以最简单的形式描述了强化学习算法的几乎所有核心​​思想:状态和动作空间足够小,可以将近似值函数表示为数组或者 表格。 在这种情况下,这些方法通常可以找到精确的解决方案,也就是说,它们通常可以找到最佳的价值函数和最优策略。 这与本书下一部分中描述的近似方法形成对比,后者只能找到近似解,但它可以有效地应用于更大的问题。

本书这一部分的第一章描述了强化学习问题特殊情况的解决方法,其中只有一个状态,称为赌博机问题。 第二章描述了我们在本书的其余部分 - 有限马尔可夫决策过程 - 中处理的一般问题公式及其主要思想,包括贝尔曼方程和价值函数。

接下来的三章描述了解决有限马尔可夫决策问题的三种基本方法:动态规划,蒙特卡洛方法和时序差分学习。 每类方法都有其优点和缺点。动态规划方法在数学上得到了很好的发展,但需要一个完整而准确的环境模型。 蒙特卡洛方法不需要模型,并且在概念上很简单,但不适合逐步增量计算。 最后,时差方法不需要模型,完全是增量的,但分析起来更复杂。这些方法在效率和收敛速度方面也有不同的几种方式。

剩下的两章描述了如何将这三类方法结合起来以获得每种方法的最佳特征。 在一章中,我们描述了蒙特卡洛方法的优势如何通过多步自举方法与时间方法的优势相结合。 在本书这一部分的最后一章中,我们将展示如何将时序差分学习方法与模型学习和规划方法(如动态规划)相结合,以获得表格强化学习问题的完整统一解决方案。

第二章 多臂赌博机问题

区分强化学习与其他类型学习的最重要特征是,它使用训练信息来 评估 所采取的行动,而不是通过给予正确的行动来 指导。 这就是为了明确寻找良好行为而产生积极探索的需要。 纯粹的评价反馈表明所采取的行动有多好,但不表明它是最好还是最坏的行动。 另一方面,纯粹的指导性反馈表明采取的正确行动,与实际采取的行动无关。 这种反馈是监督学习的基础,包括模式分类,人工神经网络和系统识别的大部分。 在它们的纯粹形式中,这两种反馈是截然不同的:评价反馈完全取决于所采取的行动,而指导性反馈则与所采取的行动无关。

在本章中,我们在简化的环境中研究强化学习的评价方面,该方法不涉及学习如何在多种情况下行动。 这种 非关联性 设置是大多数先前涉及评估反馈的工作已经完成的,并且它避免了完整强化学习问题的大部分复杂性。 研究这个案例使我们能够最清楚地看到评价性反馈如何与指导性反馈的不同,但可以与之相结合。

我们探索的特定非关联评价性反馈问题是k臂赌博机问题的简单版本。 我们使用这个问题来介绍一些基本的学习方法,我们将在后面的章节中对其进行扩展,以应用于完全强化学习问题。 在本章的最后,我们通过讨论当赌博机问题变为关联时会发生什么,即在不止一种情况下采取行动,这种情况更接近完整的强化学习问题。

2.1 一个K臂赌博机问题

强化学习-2021学习笔记_第1张图片
如果你保持对动作价值的估计,那么在任何时间步骤中至少有一个其估计值最大的动作。我们把这些称为 贪婪 行为。 当你选择其中一个动作时,我们会说你正在 利用 你当前对动作价值的了解。 相反,如果你选择了一个非常规动作,那么我们就说你正在 探索,因为这可以让你提高你对非行动动作价值的估计。 利用是在一步中最大化预期的奖励的最好的方法,但从长远来看,探索可能会产生更大的总回报。 例如,假设贪婪行为的价值是确定的,而其他一些动作估计几乎同样好,但具有很大的不确定性。 不确定性使得这些其他行动中的至少一个实际上可能比贪婪行动更好,但你不知道哪一个。 如果你有很多时间步骤可以选择行动,那么探索非贪婪行动并发现哪些行动比贪婪行动可能会更好。 在短期内,奖励在探索期间较低,但从长远来看更高,因为在你发现更好的行动之后,你可以多次利用 它们。 因为无法探索和利用任何单一行动选择,人们通常会提到探索和利用之间的“冲突”。

2.2 行动价值方法

强化学习-2021学习笔记_第2张图片

2.3 10臂赌博机试验

强化学习-2021学习笔记_第3张图片
强化学习-2021学习笔记_第4张图片
强化学习-2021学习笔记_第5张图片

2.4 增量实现

强化学习-2021学习笔记_第6张图片
强化学习-2021学习笔记_第7张图片
强化学习-2021学习笔记_第8张图片

2.6 乐观的初始值

强化学习-2021学习笔记_第9张图片

第三章 有限马尔科夫决策过程

3.1 个体环境接口

强化学习-2021学习笔记_第10张图片
强化学习-2021学习笔记_第11张图片
强化学习-2021学习笔记_第12张图片

3.2 目标和奖励

3.3 回报和情节

强化学习-2021学习笔记_第13张图片
强化学习-2021学习笔记_第14张图片
强化学习-2021学习笔记_第15张图片

3.4 情节和持续任务的统一符号

3.5 策略和价值函数

强化学习-2021学习笔记_第16张图片
强化学习-2021学习笔记_第17张图片

3.6 最优策略和最优价值函数

强化学习-2021学习笔记_第18张图片
强化学习-2021学习笔记_第19张图片

3.7 优化和近似

3.8 总结

第四章 动态规划

第五章 蒙特卡洛方法

第六章 时序差分学习

第七章 N步引导方法

第八章 表格方法规划和学习

第三部分 深入研究

你可能感兴趣的:(科研,机器学习,强化学习)