深度强化学习实践(原书第2版)
上QQ阅读APP看书,第一时间看更新

1.3 强化学习的形式

每一个科学和工程领域都有自己的假设和局限性。在前一节中,我们讨论了监督学习,其中的假设是输入输出对的知识。数据没有标签吗?你需要弄清楚如何获取标签或尝试一些其他的理论。这不是说监督学习好或坏,只能说它不适用于你的问题。

历史上有许多实践和理论突破的例子,都是在某人试图以创造性的方式挑战规则的时候出现的。但是,我们也必须要理解我们的局限性。了解和理解各种方法的游戏规则是很重要的,因为它能为你节省大量的时间。当然,RL也存在这样的形式,本书的其余部分将从不同的角度分析它们。

图1.2显示了两个主要的RL实体(智能体环境)以及它们之间的交互通道(动作奖励观察)。我们会在下面的几小节中详细讨论它们。

022-01

图1.2 RL实体和它们之间的交互通道

1.3.1 奖励

我们回到奖励的概念上来。在RL中,它只是从环境中周期性获得的一个标量。如前所述,奖励可正可负、可大可小,但它只是一个数字。奖励的目的是告诉智能体它表现得如何。我们不会定义智能体会多频繁地收到奖励——可能是每秒一次,也可能是一生一次。但为了方便,通常会将频率设为每固定时间戳一次或每与环境交互一次。在一生一次的奖励系统中,除了最后一次外,所有的奖励都是0。

正如我所说,奖励的目的是告诉智能体它有多成功,这是RL最核心的东西。强化(reinforcement)这个术语就出自此,即智能体获得的奖励应该正向或反向地强化它的行为。奖励是局部的,意味着它反映了智能体最近的行为有多成功,而不是从开始到现在累计的行为有多成功。当然,从某些动作中获得了巨大的奖励并不意味着之后不会因为这个决定而面临窘境。这就像抢银行——在你考虑到后果之前,它可能看起来是个“好主意”。

智能体试图在一系列动作中获取最大的累积奖励。若想更好地理解奖励,请参考以下具体示例:

  • 金融交易:对买卖股票的交易者来说,奖励就是收益的多少。
  • 国际象棋:奖励在游戏结束时以赢、输或平局的形式获得。当然,这也取决于平台。例如,对我来说,能与国际象棋大师打平就算巨大的奖励。实际上,我们需要指定奖励的具体值,但这可能会是一个相当复杂的表达式。例如,在国际象棋中,奖励可能与对手的强弱成比例。
  • 大脑中的多巴胺系统:大脑中有一块区域(边缘系统)会在每次需要给大脑的其他部分发送积极信号时释放多巴胺。高浓度的多巴胺会使人产生愉悦感,从而加强此系统认为好的行为。不幸的是,边缘系统比较“过时”,它会认为食物、繁殖和支配是好的,但这又是另外一个故事了。
  • 电脑游戏:玩家总是能得到很明显的反馈,即杀死敌人的数量或获得的分数。注意,在这个例子中,反馈已经被累积了,所以街机游戏的RL奖励应该是分数的导数,即新的敌人被杀时是1,其他时候都是0。
  • 网页浏览:存在一些有很高实用价值的问题,即需要对网页上可用的信息进行自动抽取。搜索引擎通常就是为了解决这个问题,但有时,为了获得正在寻找的数据,需要填一些表单,浏览一系列链接或输入验证码,而这对于搜索引擎来说是很困难的事。有一种基于RL的方法可以处理这些任务,奖励就是你想获得的信息或结果。
  • 神经网络(Neural Network,NN)结构搜索:RL已成功应用于NN结构优化领域,它的目标是通过一些手段在一些数据集中获得最佳性能,这些手段通常包括调整网络的层数或参数、添加额外的残差连接,或对NN结构做出其他改变。这种情况下,奖励就是NN的性能(准确性或其他能衡量NN预测是否精准的度量)。
  • 狗的训练:如果你曾训练过狗,就知道每次要求它做什么的时候,需要给它一些好吃的(但不要太多)。当它不听从命令时,施加一点惩罚(负向奖励)也是常见的手段,但最近的研究表明这不如正向奖励有效。
  • 学习成绩:我们都经历过!学习成绩就是一种奖励系统,旨在给学生提供学习反馈。

正如前面的示例所示,奖励的概念是对智能体性能如何的一个非常普遍的指示,它也能被人为地注入我们周围的许多实际问题中。

1.3.2 智能体

智能体是通过执行确定的动作、进行观察、获得最终的奖励来和环境交互的人或物。在大多数实际RL场景中,智能体是某种软件的一部分,被期望以一种比较有效的方法来解决某个问题。前面示例中的智能体如下:

  • 金融交易:决定交易如何执行的交易系统或交易员。
  • 国际象棋:玩家或计算机程序。
  • 大脑中的多巴胺系统:大脑本身,它根据感官数据决定是否是一次好的经历。
  • 电脑游戏:玩游戏的玩家或计算机程序。(Andrej Karpathy曾发过推特说:“我们曾说应该让AI做所有的工作,我们自己只用玩游戏就行了。但是现在是我们在做所有的工作,而AI在玩游戏!”)
  • 网页浏览:告诉浏览器点哪个链接、往哪动鼠标、输入哪些文本的软件。
  • NN结构搜索:控制NN具体结构的软件。
  • 狗的训练:你会决定选择什么动作(投食/惩罚),所以你就是智能体。
  • 学习成绩:学生。

1.3.3 环境

环境是智能体外部的一切。从最一般的意义来说,它是宇宙的剩余部分,但这有点过分了,甚至超出了未来的计算能力,所以我们通常遵循一般的意义。

智能体和环境的交互仅限于奖励(从环境中获得)、动作(由智能体执行并馈入环境)以及观察(智能体从环境中获得的除奖励之外的一些信息)。奖励已经讨论过了,是时候讨论动作和观察了。

1.3.4 动作

动作是智能体在环境中可以做的事情。例如,动作可以是基于游戏规则(如果是游戏的话)的一次移动,也可以是做作业(在学校的场景下)。它们可以像将小兵向前移动一格一样简单,也可以像为明天早晨填写纳税申报表这么复杂。

在RL中会区分两种类型的动作——离散动作和连续动作。离散动作构成了智能体可以做的互斥的有限集合,例如向左移动或向右移动。连续动作会涉及数值,例如汽车转动方向盘的动作在操作上就涉及角度和方向的数值。不同的角度可能会导致一秒后的情况有所不同,所以只转动方向盘肯定是不够的。

1.3.5 观察

对环境的观察形成了智能体的第二个信息渠道(第一个信息渠道是奖励)。你可能会奇怪为什么我们需要这个单独的数据源。答案是方便。观察是环境为智能体提供的信息,它能说明智能体周围的情况。

观察可能与即将到来的奖励有关(例如,看到银行的付款通知),也可能无关。观察甚至可以包含某种模糊的奖励信息,例如电脑游戏屏幕上的分数。分数只是像素,但我们可以将其转换成奖励值。对于现代DL来说,这并不是什么难事。

另一方面,奖励不应该被视为次要的或不重要的事情,而应该被视为驱动智能体学习的主要力量。如果奖励是错误的、有噪声的或只是稍微偏离主要目标,那么训练就有可能朝着错误的方向前进。

区分环境的状态和观察也很重要。环境的状态可能包括宇宙中的所有原子,这让测量环境中的所有东西变得不可能。即使将环境的状态限制得足够小,在大多数情况下,也要么无法得到关于它的全部信息,要么测量的结果中会包含噪声。不过,这完全没有问题,RL的诞生就是为了处理这种情况。我们再一次回到那些示例,来看看这两个概念之间的差异:

  • 金融交易:在这里,环境指整个金融市场和所有影响它的事物。这涵盖非常多的事情,例如最近的新闻、经济和政治状况、天气、食物供应和推特趋势。甚至你今天决定待在家里的决定也可能会间接影响世界的金融系统(如果你相信“蝴蝶效应”的话)。然而,我们的观察仅限于股票价格、新闻等。我们无法查看环境中的大部分状态(是它们使金融交易变得如此复杂)。
  • 国际象棋:这里的环境是你的棋盘加上你的对手,包括他们的棋艺、心情、大脑状态、选择的战术等。观察就是你看到的一切(当前棋子的位置),但是,在某些级别的对决中,心理学的知识和读懂对手情绪的能力可以增加你获胜的概率。
  • 大脑中的多巴胺系统:这里的环境是你的大脑、神经系统、器官加上你能感知的整体世界。观察是大脑内部的状态和来自感官的信号。
  • 电脑游戏:这里的环境是你的计算机的状态,包括所有内存和磁盘数据。对于网络游戏来说,还包括其他计算机以及它们与你的计算机之间的所有互联网基础设施[1]。观察则只是屏幕中的像素和声音。这些像素信息并不是小数量级的(有人计算过,取中等大小图片(1024×768)的像素进行排列组合,其可能结果的数量明显大于我们星系中的原子数量),但整个环境的状态的数量级肯定更大。
  • 网页浏览:这里的环境是互联网,包括我们的工作计算机和服务器计算机之间的所有网络基础设施,包含了数百万个不同的组件。观察则是当前浏览步骤中加载的网页。
  • NN结构搜索:在本例中,环境相当简单,包括执行特定NN评估的工具集和用于获取性能指标的数据集。与互联网相比,它就像个玩具环境。观察则不同,它包括关于测试的一些信息,例如损失函数的收敛状态或者能从评估步骤中获得的其他指标。
  • 狗的训练:在本例中,环境是狗(包括它那难以观察到的内心反应、心情和生活经历)和它周围的一切,以及其他狗,甚至是躲在灌木丛中的猫。观察则是你的感官信号和记忆。
  • 学习成绩:这里的环境是学校本身、国家的教育体系、社会和文化遗产。观察则是学生的感官和记忆。

这是我们会接触到的场景,本书其余部分都会围绕着它进行。你可能已经注意到,RL模型非常灵活、通用,能被用到各种场景中去。在深入研究RL模型之前,我们先看看RL与其他领域的关联。

有许多领域都与RL有关。最重要的一些领域如图1.3所示,其中包括6个在方法和特定主题方面都有大量重叠的大型领域,它们都与决策相关(显示在灰色圆圈内)。

026-01

图1.3 RL中的不同领域

这些科学领域虽然相关但不同,而RL就处在它们的交汇处,它十分通用和灵活,可以从这些不同的领域中借鉴最有用的信息:

  • ML:RL是ML的分支,它从ML借鉴了许多机制、技巧和技术。基本上,RL的目标是在给定不完整观察数据的情况下,学习智能体的最优行动。
  • 工程学(尤其是最优控制):帮助RL识别如何采取一系列最优动作来获得最佳结果。
  • 神经科学:以多巴胺系统为例,说明人脑的行为和RL模型很类似。
  • 心理学:心理学研究在各种条件下的行为,例如人们对环境的反应和适应方式,这与RL的主题很接近。
  • 经济学:经济学的一个重要主题是,如何在知识不完善以及现实世界不断变化的条件下,最大化奖励。
  • 数学:适用于理想化的系统,同时也致力于运筹学领域中最优条件的寻找和实现。

本章的下一部分将介绍RL的理论基础,这是开始使用RL方法来解决问题的第一步。接下来的部分对于理解本书的其余部分来说很重要。


[1]包括路由器、交换机、光纤等。——译者注