购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.1 强化学习

近年来,深度学习(Deep Learning,DL)作为机器学习的一个重要研究领域,得到了长足的发展,为强化学习(Reinforcement Learning,RL)提供了强有力的支撑,使RL能够解决以前难以处理的问题,例如学习直接从像素玩视频游戏。深度强化学习(Deep Reinforcement Learning,DRL)是DL和RL相结合的产物,有望彻底改变人工智能领域。人工智能领域的一个主要目标是生成完全自主的智能体(agent),这些智能体通过与环境的相互作用来学习最优行为。从可以感知和响应其所处环境的机器人到基于软件的与自然语言和多媒体进行交互的智能体,建立一个能够有效学习且实时响应的人工智能系统一直都是一项长期挑战。幸运的是,DRL的出现使我们朝着建立自主系统的目标迈出了更近的一步,因为DRL对自主系统有更高层次的理解。当然,DRL算法还有许多其他方面的应用,比如机器人控制技术,允许我们直接从现实世界中的摄像机输入来学习对机器人进行控制和操作的策略。在本节中,我们首先对RL的发展历史进行简要介绍,然后分别对RL和DRL的相关内容进行梳理。

1.1.1 强化学习的发展历史

在正式介绍RL之前,我们先来了解一下RL的发展历史。RL从统计学、控制理论和心理学等多学科发展而来,是一个基于数学框架、由经验驱动的自主学习方法。如图1.1所示,RL有3条发展主线,其中有两条主线具有重要的历史地位。一条是试错(trial-anderror)学习,其来源于动物学习过程中的心理学,在学习过程中通过不断地尝试各种(错误或正确)行为以最终学习到最优的正确行为,即通过试错的方式去学习。该方法贯穿了人工智能领域最早的一些工作,促进了20世纪80年代RL的复兴。另一条则使用值函数(value-function)和动态规划(Dynamic Programming,DP)的方法来解决最优控制问题,在大多数情况下这条主线不涉及学习。在与现代RL融合之前这两条主线彼此之间独立发展,相交甚少。虽然如此,但也有例外,即RL的第三条不太明显的发展主线——时间(序)差分(Temporal-Difference,TD)学习。20世纪80年代后期所有这三条主线汇集在一起,产生了现代RL领域。

图1.1 RL发展的历史主线

首先,我们先说一下最优控制方法。“最优控制”在20世纪50年代后期开始使用,用来描述通过设计控制器来最小化动态系统的行为随时间变化的测度问题,即控制动态系统在每一时刻都能根据外界环境的变化选出最优的行为。20世纪50年代中期,Bellman等人对Hamilton、Jacobi理论进行了扩展,提出了一个解决这类问题的方案。该方案使用动态系统的状态和值函数(或“最优返回函数”)的概念定义了函数方程,称之为Bellman方程。通过求解Bellman方程来解决最优控制问题的方法叫作DP。DP被认为是解决一般随机最优控制问题的唯一可行方法。虽然DP方法受到了“维度灾难”的限制,即它的计算量随着状态变量数目的增加呈指数级增长,但相比其他通用方法DP仍然更有效,更具有广泛的适用性。后来,Bellman还引入了最优控制问题的离散随机版本,称之为马尔可夫决策过程(Markov Decision Process,MDP)。1960年,Howard又设计了MDP的策略(policy)迭代方法。对于值函数、DP和MDP等概念,我们会在后面章节进行详细讲解。以上这些都是现代RL理论和算法的重要组成部分。

我们看一下RL发展的另一条重要的主线——试错学习。在早期人工智能独立于其他工程分支之前,一些研究人员就开始探索将试错学习作为工程原理。该方法始于动物学习过程中的心理学,其中的“强化”学习理论很常见。在20世纪60年代,术语“强化”和“强化学习”首次被用于工程文献中。Edward Thorndike第一个简洁表达了试错学习的本质,即每一次采取的动作尝试所引发的好的或坏的结果都会对之后的动作选择产生相应的影响。也就是在其他条件相同的情况下,对同一环境状态做出的若干响应中,那些符合或满足动物意愿的回应与环境状态具有更紧密的联系,于是,当该环境状态再次出现时,它们将更有可能重复这种响应。而那些不满足动物意愿的响应,则会减弱与该环境状态的联系,当再次遇到相同的环境状态时,会尽量避免采取这种响应。满意或不适感越大,联系的紧密或弱化程度越大。这种现象称为“效果定律”,它描述了强化事件对选择行为倾向的影响。效果定律涉及试错学习两个最重要的方面。首先,它是选择性的,意味着它可以尝试替代方案,并通过比较它们所产生的结果来进行选择。其次,它是关联性的,即通过选择找到的替代方案与特定的情况相关联。比如,进化过程中的自然选择是选择性的,但它不是关联性的;监督学习是关联性的,但不是选择性的。这两者的结合对效果定律和试错学习至关重要。还有一种说法是,效果定律是搜索和记忆的结合:在每一种环境状态下搜索从多个动作中进行选择和尝试的某种形式,从而记住哪些动作效果最好,再将它们关联起来。通过这种方式组合搜索和记忆对RL尤其重要。尽管有时也存在部分争议,但是在具有若干响应的时候,效果定律被广泛认为是一种明确的基本原则。

最后,我们讨论一下TD学习的发展历史。TD学习方法部分起源于动物学习过程中的心理学,特别是辅助强化学。TD学习的方法由同一时间内进行的连续估计之间的差异所驱动,在该方面其是独特的,比如,在棋类游戏中获胜的概率。虽然TD学习比其他两条主线要小,但是它在RL领域发挥了特别重要的作用,似乎是RL的新特性。1972年,Klopf提出了“广义强化”的概念,即每个组成部分(每个神经元)都以强化的角度来看待所有的输入,比如,作为奖励的兴奋性输入和作为惩罚的抑制性输入。Klopf通过这一想法将试错学习与TD学习的重要组成部分结合起来,同时将其与动物学习心理学的大量经验数据库联系起来。不过,这与我们现在所知的TD学习有所不同。后来Sutton进一步发展了Klopf的思想,特别是在与动物学习理论的联系方面,描述了由在时间上连续预测的变化所驱动的学习规则。虽然TD学习的早期研究受到了Klopf和动物学习理论的强烈影响,但是,1981年,人们开发了一种在试错学习过程中使用TD学习的方法,称为actor-critic架构,也有人叫作行动者-评论者架构,其中actor是行动者,负责动作的选择和执行,critic是评判者,负责评价actor所选动作的好坏。这时,研究者又发现了1977年Witten最早出版的TD学习规则,也就是我们现在所谓的表格TD(0)方法,用作解决MDP自适应控制器的一部分。这种方法跨越了RL研究的主要思路——试错学习和最优控制,它对早期TD学习的发展做出了显著的贡献。1989年,Watkins将TD学习和最优控制完全融合在一起,发明了Q-learning,这项工作扩展并整合了先前RL研究三条主线的所有工作。

1.1.2 强化学习简介

在讨论深度神经网络对RL的贡献之前,我们先来介绍一下RL的一般领域。RL的本质是互动学习,即让智能体与其外界环境进行交互。智能体根据自己每次感知到的外界环境状态来选择相应的动作,以对环境进行响应,然后观测该动作所造成的结果(或好或坏,结果的评判来自某种特殊的奖励管控机制),并根据结果来调整自身动作选择机制,最终让智能体可以对外界环境达到最优的响应,从而获得最好的结果(智能体针对外界环境采取一系列动作后获得的最大奖赏值,也称为累积奖赏值、预期回报)。所以,RL的目标是使智能体在与环境的交互过程中获得最大的累积奖赏值,从而学习到对自身动作的最优控制方法。正如上一小节所述,这种试错学习的方法源于行为主义心理学,是RL的主要基础之一。另一个关键基础是最优控制,它提供了支撑该领域的数学形式,特别是DP。

为了便于对RL模型结构的理解,我们首先对RL模型中最关键的三个部分进行描述。

(1)状态(state):如图1.2所示,状态其实就是智能体所处的外界环境信息,该图中描述的状态就是一个石板铺成的具有间隔的桥面。而环境状态的具体表现形式可以有很多种,例如多维数组、图像和视频等。外界环境的状态需要能够准确地描述外界环境,尽可能将有效信息包括在内,通常越充足的信息越有利于算法的学习。状态要着重体现出外界环境的特征。

(2)动作(action)或行动:如图1.3所示,动作就是智能体(多关节木头人)在感知到所处的外界环境状态后所要采取的行为,如跳跃、奔跑、转弯等,是对外界环境的一种反馈响应。当然,动作的表现形式既可以是离散的,也可以是连续的。

图1.2 外界环境状态示意图

图1.3 智能体动作响应示意图

(3)奖励(reward):智能体感知到外界环境并采取动作后所获得的奖赏值。奖赏值来源于根据实际场景定义的某种奖励机制,包括正向奖励和负向奖励。正向奖励会激励智能体趋向于学习该动作,负向奖励与之相反。在图1.3中,当智能体从一块石板成功跨过障碍到达下一块石板上时,应该给予其相应的正向奖励,比如得分加1。当智能体未能成功跨过障碍(从石板上掉落)到达下一块石板时,应该给予其惩罚(负向奖励),比如得分减1。

在RL环境中,由机器学习算法控制的自主智能体在时间步t从其环境观察状态s t 。智能体通过在状态s t 中执行动作a来对环境进行响应。当智能体执行完动作时,环境和智能体将根据当前的状态和所选的动作转换到新的状态s t+1 。状态是对环境的充分统计,包括智能体选取最优动作的所有必要信息,也可以包括智能体自身的一些部分(例如制动器和传感器的位置)。

最优的动作顺序由环境提供的奖励决定。每次环境转换到新状态时,它还会向智能体提供标量奖励r t+1 作为反馈。智能体的目标是学习一种策略(控制策略)π:S→A,以使得预期回报(累积折扣奖励)最大化,其中S为外界环境状态的集合S={s 1 ,s 2 ,…,s t ,s t+1 ,…},A为动作的集合A={a 1 ,a 2 ,…,a k }。给定状态,智能体根据策略返回要执行的动作,最优策略是最大化环境预期回报的任何策略。在这方面,RL旨在解决与最优控制相同的问题。然而,与最优控制不同,RL中的挑战是智能体需要通过试错学习的方法来了解在环境中采取某种动作后所产生的结果,因此,智能体无法获得状态转换的动态模型。智能体与环境的每次交互都会产生相应的信息,然后利用这些信息来更新其自身的知识。这种感知-动作-学习循环如图1.4所示。

图1.4 感知-动作-学习循环结构

通过智能体与环境进行交互来感知环境、依靠策略π选择动作,从而获得最大累积奖赏值。在时间t,智能体从环境感知状态s t ,然后使用其策略选择动作a t 。一旦执行了动作,环境就会转换到下一个状态,并提供下一个状态s t+1 和奖励r t+1 作为新的反馈。智能体以序列(s t ,a t ,s t+1 ,r t+1 )的形式使用状态转换的知识来学习和改进其策略。如果RL系统中的某种行为能够获得正的奖励,那么系统便会加强产生该动作的趋势,称之为正反馈;反之,系统便会减弱产生该动作的趋势,称之为负反馈。

在深度神经网络融入RL之前,虽然RL在过去取得了一定的进展,但是之前的RL方法缺乏可扩展性,并且在本质上仅限于维度相当低的问题。存在这些限制的主要原因是之前的RL算法与其他算法具有相同的复杂性,比如,存储器复杂性、计算复杂性,以及在机器学习算法情况下的样本复杂性。因此,之前的RL算法只是适用于比较少的领域,例如,过程控制、调度管理和机器人控制等,并没有得到广泛的应用。

幸运的是,随着DL的兴起,深度神经网络为我们克服这些问题提供了新的工具。深度神经网络具有强大的函数逼近和表示学习特性,使我们解决高维、复杂场景下的RL问题成为可能。

1.1.3 深度强化学习简介

近年来,DL作为一大热点研究方向对机器学习的许多领域都产生了重大影响,大大提高了对象检测、语音识别和语言翻译等任务的技术水平。DL最重要的一个特性是深度神经网络可以自动找到高维数据(例如图像、文本和音频)的低维表示(特征)。通过将归纳偏差制作成神经网络架构,特别是层次化表示,机器学习从业者在解决维度灾难方面取得了有效进展。DL方法擅长对事物的感知和表达,RL方法擅长学习解决问题的策略。为了更好地发挥DL和RL的优势,谷歌人工智能研究团队DeepMind创造性地将具有强大感知力的DL方法和具有优秀决策力的RL方法相结合,在RL中使用DL算法定义了DRL领域。深度神经网络的引入让我们能够以更加具有创新性的方式来实现对自主智能体的开发。

DRL是DL领域中迅猛发展起来的一个分支,目的是解决计算机从感知到决策控制的问题,从而实现通用人工智能。以Google DeepMind为首,基于DRL的算法已经在视频、游戏、围棋、机器人等领域取得了突破性进展。2015年,Google DeepMind在《自然》杂志上发表的“Human-level control through deep reinforcement learning”论文,使得DRL受到了广泛的关注。2016年,DeepMind推出的AlphaGo围棋系统使用蒙特卡罗树搜索与DRL相结合的方法让计算机的围棋水平达到甚至超过了顶尖职业棋手,引起了世界性的轰动。借此案例,我们来简单了解一下蒙特卡罗树搜索和DRL的相关过程。如图1.5所示,蒙特卡罗树搜索的每个循环包括以下4个步骤。

1)选择:从根节点开始,选择连续的子节点向下至叶子节点。后面给出了一种选择子节点的方法,让游戏树向最优的方向扩展,这是蒙特卡罗树搜索的精华所在。

2)扩展:除非任意一方的输赢使得游戏在叶子节点结束,否则创建一个或多个子节点并选取其中一个子节点。

3)仿真:从选取的子节点开始,用随机策略进行游戏,又称为playout或者rollout。

4)反向传播(backpropagation):使用随机游戏的结果,更新从选择的子节点到根节点的路径上的节点信息。

每一个节点的内容代表胜利次数/游戏次数。

图1.5 蒙特卡罗树搜索过程

对于DRL来说,目前的算法都可以包含在actor-critic框架下。actor-critic属于TD学习方法,其用独立的内存结构来明确地表示独立于值函数的策略。策略结构被称为actor,因为它用于选择动作;而估计值函数被称为critic,因为它评价actor所做的动作。对于actorcritic框架,我们会在后面章节详细讲解,现在我们重点探讨DRL,如图1.6所示。

图1.6 DRL的actor-critic框架

把DRL的算法视为智能体的大脑,那么这个大脑包含两个部分:actor行动模块和critic评判模块。当然,这两个模块都是由深度神经网络构成的,也正是DRL中“深度”一词的由来。其中actor行动模块是大脑的动作执行机构,输入外部的环境状态s,然后输出动作a。而critic评判模块则可被认为是大脑的价值观,根据历史信息及回馈r进行自我调整,然后对整个actor行动模块进行相关的更新指导。这种基于actor-critic框架的方法非常类似于人类自身的行为方式。在actor-critic框架下,Google DeepMind相继提出了DQN、A3C和UNREAL等DRL算法,取得了非常不错的效果,大大推动了DRL的发展和应用。

2017年DeepMind又推出了更强大的围棋系统AlphaGo Zero,通过自我对弈,AlphaGo Zero不再受限于人类认知,在三天内以100比0的成绩战胜了AlphaGo Lee,花了21天达到AlphaGo Master的水平,用40天超越了所有的旧版本,与之前版本相比,其棋法更像人类。如图1.7~图1.9所示,AlphaGo Zero在使用DRL算法学习到3小时的时候,就能够像人类围棋新手一样,不注重考虑长期战略,而只专注于尽可能多地吃掉对手的棋子。然后,当其继续学习到19小时的时候,AlphaGo Zero就已经领悟到一些高级围棋策略的基础性知识,例如,生死、每一步的影响和棋盘布局等。最终当使用DRL算法学习70小时的时候,AlphaGo Zero的棋艺已经超过了人类顶级水平。

图1.7 AlphaGo使用DRL算法学习3小时效果示意图

DRL算法由于能够基于深度神经网络实现从感知到决策控制的端到端自学习,因此具有非常广阔的应用前景,比如在机器人控制、自然语言处理和计算机视觉等领域都取得了一定的成功,它的发展也将进一步推动人工智能的革命。图1.10展示了DRL的部分应用领域。其中,图1.10a是DRL技术在电子游戏方面的应用,其利用DRL技术学习控制策略为游戏主体提供动作,在某些游戏方面其能力已经超过了人类顶级水平。图1.10b是机器人足球比赛,利用机器人观察到的周边环境,通过DRL模型给出具体的动作指令,控制足球机器人之间的竞争和协作。图1.10c是无人车领域,根据汽车传感器获得的环境信息,利用DRL技术对汽车的行为进行控制,比如加速、刹车和转向等。图d)是无人机或无人机群,DRL控制模型可以控制每个无人机对环境的自身行为响应,也可以为无人机群的协作任务提供自主控制策略。

如今,DRL算法得到了更深层次的发展,可以分为基于值函数(value-based)的DRL、基于策略(policy-based)的DRL、基于模型(model-based)的DRL和基于分层(hierarchical-based)的DRL等。在后面的章节中,我们会逐渐揭开RL的神秘面纱,并着重对一些较为前沿的DRL算法和应用进行分析和讲解,从而让读者能够熟练地掌握DRL算法并知道如何在实际场景中使用DRL算法。

图1.8 AlphaGo使用DRL算法学习19小时效果示意图

图1.9 AlphaGo使用DRL算法学习70小时效果示意图

图1.10 DRL算法的部分应用领域 lIRWTM+cNNiciDrYyE7JY6GJVgW+FLI0ztmPrRPXmQ3uuL69z2ZwDsJLVA/urglB

点击中间区域
呼出菜单
上一章
目录
下一章
×