
目录前言1. 引言2. 人类水平控制3. Google DeepMind4. 其他资源5. AlphaGo6. 电梯调度7. 总结结语参考前言学习 Steven Brunton 讲授的强化学习入门概述视频本篇文章记录第二讲深度强化学习用于学习控制律的神经网络记录下个人学习笔记和大家一起分享交流videohttps://www.youtube.com/playlist?listPLMrJAkhIeNNQe1JXNvaFvURxGY4gE9k741. 引言今天我们将继续深入讲解强化学习的相关内容在上一讲中我们介绍了强化学习的框架 — 如何通过经验学习与复杂环境进行交互今天我们将探讨深度强化学习或者说是由深度神经网络和一些先进计算架构推动的该领域的一些惊人进展。回顾一下在上一讲中我们介绍了这个概念智能体与环境智能体通过状态s ss来感知环境它根据策略采取某些动作与环境进行交互因此智能体基于当前状态采取行动并遵循一种控制策略它通过优化这一策略以最大化从环境中获得的未来奖励。从数学角度来看这种策略是概率性的因此智能体采用某种概率性策略与环境交互因为环境可能是随机或包含一定的随机性。同时存在一个价值函数用于告诉智能体在遵循当前策略π \piπ的情况下处于某个特定状态的价值有多大。那么今天我们要做的是通过引入深度神经网络来扩展这一框架例如用深度神经网络来表示策略因此现在假设我们已经用深度神经网络取代了原来的策略这个策略π \piπ由参数θ \thetaθ定义其中θ \thetaθ描述了该神经网络的参数同样地它将当前状态映射为在该环境下应采取的最佳概率性动作。因此整个任务的核心就是更新这一策略以最大化未来的奖励同样地这里有一个折扣率γ \gammaγ它表示近期的奖励比远期的奖励更有价值。OK再次提醒一下这些奖励大多数情况下是相对稀疏且不频繁的因为我们处于一个半监督学习框架中这些奖励只是偶尔出现因此很难确定哪些动作实际上导致了这些奖励这将是一个相对困难的优化问题即学习最佳策略以确定应采取哪些动作。实际上整个强化学习范式是受到生物学的启发本质上正是源于这一观察这里有一个概念叫做赫布学习Hebbian Learning你可能之前听说过有一句小口诀是“一起激活的神经元会连接在一起”这句话的基本意思是当神经元同时激活时它们之间的连接会得到加强这种机制在生物系统中也是如此。因此在这些深度强化学习框架中核心思想是偶尔获得的奖励信号应该以某种方式加强那些促进良好策略的连接当正确的策略被激活时当神经元以某种方式连接并促成了正确的策略同时你获得了奖励你就希望以某种方式强化这种架构实现这一点的方法有很多本质上可以通过反向传播等技术来实现。另一个在深度强化学习领域投入大量研究的方向被称为Q-Learning我们在上一讲中讨论过这一点其中 Q 函数或称为质量函数本质上将策略和价值结合在一起它同时告诉你当前状态下采取某个动作的好坏程度。假设我在所有未来的状态和动作中都采取最佳行动那么现在如果我处于状态s ss并采取动作a aa我可以根据在该状态下以及基于最佳策略所预期的未来价值为其分配一个质量值。有一种深度 Q 网络Deep Q-Networks通过学习这种质量函数一旦你掌握了它当你处于状态s ss时只需查找能为该状态带来最高质量的动作a aa。这非常合理这很像一个人学习下棋的方式他们会同时构建一种策略比如在这些情况下我该如何行动我愿意做出哪些交换同时他们也在构建一个价值函数用于评估不同棋盘位置的价值并根据当前状态衡量自己的优势和局面的强弱。因此这自然成为深度神经网络大展身手的领域因为这些函数可能是关于状态s ss和动作a aa的非常复杂的函数而这正是神经网络的强项如果你有足够的训练数据它们能够很好地表示非常复杂的函数。这就是我们在这里讨论的内容这些方法仍然面临常规强化学习中的所有挑战比如信用分配问题例如在象棋游戏中我可能只在最后才能获得奖励这使得很难判断哪些动作真正促成了这个奖励所以你会采取一些常规的做法比如使用奖励塑形reward shaping基于专家的直觉或指导提供中间奖励。此外还有许多其他策略比如事后经验回放hindsight replay等其核心理念是我们将沿用相同的强化学习架构并用策略网络或 Q 网络来替代策略或 Q 函数。2. 人类水平控制这一切之所以引起轰动是因为 2015 年《Nature》杂志上发表的论文《通过深度强化学习实现人类水平的控制》在这篇论文中DeepMind 的研究者们展示了他们构建的强化学习系统能够在多款经典的 Atari 电子游戏中超越人类水平的表现。例如上面这个游戏案例这个强化学习系统本质上是通过击碎所有这些砖块来最大化得分经过几个小时的训练后它突然领悟到了一个只有顶尖人类玩家才能发现的技巧它找到了游戏中的一个漏洞意识到如果它从一侧挖洞穿过去就能利用游戏中的物理机制让这些砖块自动全部碎裂这确实令人惊叹。因此它在短时间内就掌握了一种非常高级的策略而这种策略只有少数人类玩家最终才能领悟确实令人印象深刻。顺便说一句这篇论文非常精彩你应该去读一读这篇论文他们详细介绍了如何构建这些网络他们将屏幕的像素作为输入利用卷积层和全连接层最终决定摇杆的操作和应采取的动作。这与许多其他神经网络的应用非常相似正是这篇论文让强化学习和深度强化学习重新回到了人们的视野中心因为它展示了前所未有的性能表现这很像强化学习领域的 ImageNet这使它重新回到了前沿。所以谷歌以 5 亿美元收购了这家公司因为这预示着在通用人工智能方面迈出了一大步所谓通用人工智能就是一种能够擅长很多事情而不仅仅是某一项非常具体任务的人工智能系统各大公司在广义的强化学习以及深度强化学习方面投入了数十亿美元。在这篇最初的论文中他们展示了所测试的所有雅达利Atari游戏而在图中这条线之上的水平他们都达到了甚至超越了人类水平的表现只有少数几款游戏他们的表现低于人类水平。实际上我觉得仔细研究这些游戏并弄清楚为什么 DeepMind 无法攻克这些游戏是件相当有意思的事情这实际上是一个相当有趣的练习。需要指出的是这篇论文中的算法可以在其中一款游戏上进行训练并且会表现得非常非常出色但同样的学习算法即那个强化学习模型无法在不完全重新训练的情况下用于玩另一款游戏因此它离我们期望的目标还有一段距离。我们希望拥有一个学习系统能够学会玩所有这些游戏并且如果它学会了一款游戏就能更快更好地学会玩其他游戏就像人类一样。我们离这一目标还有一段距离但已有大量研究人员正在为此努力这是该领域中的一个重大挑战即通过强化学习实现迁移学习和通用人工智能。一个能够学习多种任务并能从经验中更快学习的学习系统至关重要这正是人类所擅长的你教一个孩子玩井字棋井字棋很简单他们学会了规则也掌握了如何避免输掉游戏接着你教他们玩跳棋跳棋稍微复杂一些但他们能记住之前学到的所有内容他们从井字棋中汲取经验从而很快地掌握了跳棋他们学会了如何避免失败。然后你教他们下国际象棋对于大多数人来说国际象棋是一种真正开放式的游戏掌握国际象棋需要一生的时间因此基于从井字棋和跳棋中学到的经验孩子会逐渐学会下国际象棋。你知道他们可以将这些经验迁移到其他领域然后进入现实世界学习许多其他技能而这些解决问题的技能也会随之迁移这正是我们最终希望计算机能够实现的。我们尚未完全实现这一目标但这是一个巨大的进步它让每个人都感到非常兴奋并且至今仍然发挥着重要作用。3. Google DeepMind下面这段视频来自《科技内幕》展示了大量强化学习算法是如何被用于训练的这是谷歌 DeepMind 的成果在人工环境中训练智能体如何行走、奔跑、跳跃、游泳或飞行这确实令人惊叹。这是一项非常复杂且困难的任务我们对此习以为常我们的身体天生就能以高效、敏捷且精准的方式运动但实现这一点实际上极具挑战性因此这些算法在虚拟环境中能够学会奔跑、行走、飞行和游泳对于机器人技术来说确实是一个充满希望的突破。我们最终的目标是让机器人系统学会这些技能使我们的机器人智能体更加独立和灵活而这实际上非常困难从虚拟世界迈向现实世界的这一步充满挑战。据我所知例如波士顿动力公司并未大量使用强化学习技术他们主要依赖于基于物理的建模和手动控制方法或许他们正在涉足强化学习领域但要在现实世界中实现这一目标还有很长的路要走。他们的成果依然令人印象深刻这是在训练双足行走机器人本质上是通过一代又一代的强化学习智能体最终实现目标智能体能够学习物理规律并掌握正确的控制策略。在这个例子中就是学会向前行走、保持平衡保持脖子和腿部的直立这是一个非常棒的演示。由于神经网络在表示能力上的巨大进步并且我们拥有了更多的训练数据它们现在能表达一些我们以前无法表达的函数我们能够训练这些模型是因为计算机的速度和性能得到了极大的提升。4. 其他资源同时开源软件的出现也使得构建这些神经网络表示变得异常简单如果你对现代强化学习有任何兴趣一定要去了解一下 OpenAI 的 GYM这是一个非常棒的开源开发框架你可以在各种不同的系统上尝试你的新强化学习算法包括 Atari 游戏模拟系统比如跑步和摆钟以及那些难以控制的非线性物理系统非常酷。你可以非常快速、轻松地在 OpenAI Gym 中上手这也是强化学习领域发展如此迅速的重要原因之一因为有这些出色的开源资源让人们能够快速尝试和原型设计。你还可以尝试所有这些 Atari 游戏看看能否构建一个能够用相同架构学习多种 Atari 游戏的强化学习模型这确实非常令人惊叹。5. AlphaGo另外我想指出的是这些成果已经变得相当引人注目了几乎所有人都听说过 AlphaGo以及它如何击败了世界顶级围棋选手李世石这位来自韩国的世界最佳围棋选手最终败给了 AlphaGo。这是由 Google DeepMind 开发的一种深度强化学习算法其唯一目的就是学习如何下围棋好的我想特别指出这一点强化学习在非常受限的环境中并且有充足时间尝试数百万甚至数十亿次不同的围棋对局时非常擅长学习游戏规则以及如何赢得比赛。因此它基本上是在与自己对弈不断变得越来越强。最初的 AlphaGo 算法基于卷积神经网络CNN并且通过大量的人工奖励塑形进行训练专家们为 AlphaGo 的学习过程设计了奖励机制使其无需等到游戏结束才能判断输赢因为那样会耗费大量时间。相反通过人工设计的奖励塑形AlphaGo 能够获得中间奖励从而加速学习过程并构建了一个更为密集的奖励体系。然而这种做法存在一定的局限性因为如果由人类引导学习过程AlphaGo 的性能上限可能会受到人类知识的制约毕竟它的学习本质上依赖于人类的经验因此几年后推出的下一代 AlphaGo Zero 表现更为出色令人印象深刻。它没有采用任何人类设计的特征也没有使用奖励塑形仅通过自我对弈进行学习AlphaGo Zero 不断与自己对战直至强大到能够击败全球所有对手包括其前代版本它的核心是基于残差网络架构这种架构具有跳跃连接使得通过反向传播训练变得更加容易。这些进展确实令人瞩目这实际上是一个重大突破证明了 ResNet 在神经网络架构领域中无疑是一个强有力的竞争者。同样值得注意的是该算法的能力仅限于此它无法将从围棋中学到的知识应用于其他领域以提升表现这一点值得深思这正是我们所需要的我们期望这些系统能够在精通某一游戏后将其所学迁移并应用于更广泛的领域。也就是说利用这些知识在其他领域也能表现出色这正是我们所擅长的也是我们的一大优势而且这个过程充满乐趣。下面是其他的一些例子这段视频来自斯坦福大学和苏黎世联邦理工学院他们正在利用强化学习训练飞行器 — 一架直升机和一架四旋翼无人机使其能够完成极具挑战性和高性能的飞行动作。因此我们正逐渐从模拟环境转向现实世界将强化学习应用于真实的机器人系统中但这极具挑战性这需要大量的训练和人工指导。6. 电梯调度目前真正实现机器人强化学习的案例仍然有限但实际上最早的强化学习应用之一是在电梯调度系统中在像超高层摩天大楼这样的大型建筑中通常配备了大量电梯和众多楼层如何高效调度这些电梯以避免拥堵并让人们尽快到达目的地是一个巨大的难题。这是一个组合复杂度极高的问题解决起来非常困难而强化学习正是早期用于解决这类近乎最优调度策略的算法之一。7. 总结下面我们简单做个总结。我们已经在上一讲和这一讲中总体上讨论了强化学习将其作为一种基于经验学习如何与复杂环境交互的框架这从根本上受到了生物学的启发它试图模仿我们如何学习、动物如何学习以及如何训练狗等行为。在过去的十年里由于深度神经网络的进步以及在这些架构和我们实际构建与优化这些强化学习者的方式上的重大进展我们已经朝着更强大、更通用的学习框架迈出了重要步伐这些框架能够学习如何与更复杂的环境交互例如在 AlphaGo 中击败人类或者以令人难以置信的方式操控真实的机器人系统然而我们还有很长的路要走。再次强调我们人类拥有身体并且我们充满好奇心我们通过探索、触摸和学习来认识世界众所周知孩子们充满好奇心他们不断地吸收知识并且当他们学会一件事后就能够运用它。凭借人类这种非凡的抽象能力孩子们能够将在一个场景中学到的知识完全应用到另一个截然不同的场景中这仍然是强化学习领域中一个完全未解的难题。或许不能说完全未解但现代强化学习中的一个紧迫且核心的挑战是如何将所学知识进行泛化如何退后一步利用在一个环境中的问题解决经验去解决另一个环境中的不同问题那将是真正意义上的通用人工智能。我们距离实现这一目标还有很长的路要走因此好消息是这一问题不会在五年或十年内得到解决这是一个需要数百年才能解决的问题但这确实令人兴奋因为这意味在强化学习领域还有许多重要且有趣的工作等待完成在如何改进这些系统、如何更快更好地学习方面我们还需要一生的时间去研究 — 不仅要从当前问题的学习过程和奖励结构中汲取经验还要从其他问题的解决中获取知识。结语本讲将第一讲的 RL 基础框架向前推进了一大步—引入深度神经网络开启了深度强化学习Deep RL的新篇章。核心思路简洁而强大用参数化的神经网络参数θ \thetaθ来替代传统 RL 中的策略函数π ( s , a ) \pi(s,a)π(s,a)或 Q 函数Q ( s , a ) Q(s,a)Q(s,a)借助神经网络强大的函数逼近能力去表示那些传统方法无法刻画的复杂策略和价值函数。这一讲的叙事脉络可以用三个里程碑事件串联起来1. DeepMind Atari2015—被誉为 RL 领域的 “ImageNet 时刻”。Deep Q-NetworkDQN以原始像素作为输入通过 CNN 全连接层直接输出控制动作在多数 Atari 游戏中达到甚至超越人类水平。最令人惊叹的是算法甚至自主发现了人类顶尖玩家才掌握的 “挖洞穿墙” 漏洞技巧。谷歌以 5 亿美元收购 DeepMind标志着 Deep RL 从学术走向产业的转折点也掀起了全球对通用人工智能AGI的狂热投入。2. AlphaGo → AlphaGo Zero—从依赖人类专家奖励塑形Reward Shaping的 CNN 架构到完全抛弃人类先验知识、仅靠自我对弈Self-Play的 ResNet 架构AlphaGo Zero 的进化恰恰说明了一个深刻的道理人类知识有时反而会成为智能体性能的天花板。这一跨越也是从 “监督引导” 走向 “自主涌现” 的缩影。3. Sim-to-Real模拟到现实—从虚拟环境中训练双足机器人行走、奔跑、游泳到斯坦福/ETH 用 RL 控制无人机完成高难度飞行动作Deep RL 正在艰难但坚定地跨越从仿真到物理世界的鸿沟。而最早的 RL 现实应用——电梯调度系统——也提醒我们RL 的价值远不止于游戏。然而贯穿整讲的 “未尽之问” 始终是泛化与迁移当前的 Deep RL 系统仍然是 “单任务专家”—一个在打砖块游戏中登峰造极的 DQN面对另一款 Atari 游戏时却需要从零重新训练。人类孩子学会井字棋后能更快掌握跳棋进而迁移到国际象棋——这种跨任务、跨领域的抽象与泛化能力正是通用人工智能AGI的核心也是 Deep RL 领域当前最紧迫、最根本的未解难题。正如 Brunton 在课程结尾所说这个问题不会在 5 年或 10 年内解决而是可能需要数百年的探索。但这恰恰是最令人兴奋的地方—Deep RL 是一片仍有无限可能性的沃土。借助 OpenAI Gym 等开源工具任何研究者都可以在这个领域快速实验和贡献。站在赫布学习Hebbian Learning的生物启发与深度神经网络的计算能力交汇处我们有理由相信未来几十年的 Deep RL 将不仅改变 AI更将深刻重塑我们与物理世界交互的方式 。下一讲我们将来学习如何利用深度强化学习解决传统流体力学中的难题敬请期待参考https://www.youtube.com/playlist?listPLMrJAkhIeNNQe1JXNvaFvURxGY4gE9k74