编译 | Mr Bear
校对 | 维克多
DeepMind官方博客在一篇文章“Fast reinforcement learning through the composition of behaviours”中,针对强化学习中的“从头学习”问题给予了解决方案。文章中表示,人类处理一些新任务时候,例如做菜,往往能够利用之前学过的知识、技能。而强化学习中的智能体往往需要从头学习。
针对上述挑战,DeepMind的研究员们采用了一种名为“后继特征”特征的方案,其效果是:智能体可以将一个问题分解为更小的、更易于管理的子任务,而不是将其作为一个单一的、整体的任务来处理。研究员在博客中表示,其能够提供了一种学习灵活解决问题的新方法,能够赋予 RL 智能体利用从之前的任务中学到的知识的能力。
以下是原文,AI科技评论做了不改变原意的编译。
1 智能的组合特性
对于人类而言,一旦我们学会了烹饪的基本功,当我们想要学做一道新菜时,就并不需要从头学习如何切菜、削皮。然而,在许多机器学习系统中,智能体在遇到新的挑战时,往往不得不完全从头开始学习。很明显,人类学习的方式要比这种机器学习的方式高效得多:人类可以组合之前学习到的能力。就像我们可以使用有限的单词词典,将这些单词重新组合成有意义的句子。
在自然界中,当动物为了获取食物和其它的「奖励」而进行探索并与其环境进行交互时,会产生一些学习行为。这也正是强化学习(RL)所遵循的学习范式:与环境的交互会以最终得到的奖励(或惩罚)为依据强化或抑制某些特定行为。
RL 的一个缺点是:现在的 RL 方法需要大量的训练数据。例如,为了训练AI“熟练”玩 Atari 游戏,通常需要使用人类数星期在游戏中产生的数据。由 MIT和哈佛大学的研究人员进行的一项研究「Human Learning in Atari」表明,在相同的情况下,人类可以在仅仅玩了 15 分钟游戏后,就可以达到与上述 RL 智能体相当的水平。
造成这种现象的一种可能的原因是:与人类不同,RL 智能体面对新的任务时,往往会从头开始学习。我们希望智能体能够利用从之前的任务中学到的知识,从而更快地学习新的任务 。这就好比厨师会比没有做过菜的人更容易学做一道新菜。在近期于美国国家科学院院刊(PNAS)上发表的论文「Fast reinforcement learning with generalized policy updates」中,来自 DeepMind 的研究人员展示了一种新的框架,该框架旨在赋予 RL 智能体这种利用从之前的任务中学到的知识的能力。
Fast reinforcement learning with generalized policy updates
https://www.pnas.org/content/early/2020/08/13/1907370117
2 表征世界的两种方式
本文将以「工作通勤」的例子说明这种 RL 方法。读者不妨想象以下的场景:一个智能体每天需要从家里通勤到办公室,它在上班路上经常会买一杯咖啡。如图 1 所示,在智能体的家到办公室之间有两个咖啡店,其中一家的咖啡非常棒但是路程较远,另一家的咖啡马马虎虎但是路程较近。智能体会考虑咖啡的质量和它在某一天有多么赶时间,选择着两条路径中的一条(图 1 中黄色的路径和红色的路径)。
通常而言,RL 算法可以被分为两大类:「基于模型的智能体」和「模型无关的智能体」。如图 2 所示,一个基于模型的智能体会构建关于环境的诸多层面的表征。此类智能体可能知道不同的地点之间的连接情况、每家咖啡店咖啡的质量,以及任何我们认为与任务相关的信息。如图 3 所示,模型无关的智能体对其环境的表征就要紧凑简单地多。
例如,基于值的模型无关智能体会为每一条可能的离开家的路线赋予一个相应的数值,我们将该数值称为每条路线的「值」,它反映了咖啡质量与通勤路线长度的具体权值。以图 1 中蓝色的路径为例,假设此路径的长度为 4,智能体沿此路径买到的咖啡评级为 3 星。如果智能体对通勤距离的关注程度比它对咖啡质量的关注程度高 50%,则该路径的值为 (-1.5 x 4) + (1 x 3) = -3(其中,我们为距离赋予负的权值,以此表示并不希望通勤距离更长)。
与图 1 相比,图 2 只包含与智能体相关的细节信息。然而,这种模型使用的表征要比图 3 所示的模型无关的智能体使用的表征复杂得多。
图 3:模型无关的智能体表征世界的方式。智能体会为每个地点赋予一个与每一种可能的动作相对应的数值。该数值是智能体的每一种可选方案的「值」。在一个给定的地点中,智能体会查看可以获得的值,并仅仅基于该信息作出决策(右图显示了在地点「家」处的决策情况)。相对于基于模型的表征而言(如图 2 所示),此时信息是以一种非空间的方式存储的,即地点之间没有连接。
我们可以将咖啡质量和通勤距离的相对权值看做智能体的「偏好」。对于任意固定的偏好集合,模型无关的智能体和基于模型的智能体将会选择同样的路线。那么既然最终的结果是相同的,为什么我们还要使用对世界更复杂的表征(例如,基于模型的智能体使用的表征)?如果智能体最终喝到的咖啡是一样的,为什么还要对环境进行大量的学习?
实际上,偏好可能时刻都在变化:在规划去买咖啡的路径时,智能体可能会考虑他有多么饿,或者他是否会在某个会议上迟到。模型无关的智能体处理该问题的方法是,学习与每一组可能的偏好相对应的最佳路线。由于学习所有可能的偏好组合将会耗费大量的时间,这种方式并不理想。如果与所有可能的偏好集合相对应的路线是无穷的,我们也不可能对其进行学习。
相较而言,通过「想象」出所有可能的路线并且思考这些路线对当前倾向的满足程度,基于模型的智能体可以在无需学习的条件下,适应于任意偏好集合。首先,「在思维中」生成并评估所有可能的动作轨迹是需要计算的。其次,在复杂的环境下,构建整个世界的模型可能是十分困难的。
模型无关的智能体学习得更快,但是对于环境变化较为脆弱。基于模型的智能体更加灵活,但是其学习过程十分缓慢。我们是否能找到一种折中的解决方案呢?
3「后继特征」:一种折中方案
2017 年,DeepMind 于 Nature 子刊《自然-人类行为》上发表的有关行为科学和神经科学的论文「The successor representation in human reinforcement learning」指出,在特定情况下,人类和动物会基于一种在模型无关方法和基于模型的方法之间折中的算法模型。我们假设人也会像模型无关智能体一样,以数值的形式计算出可选策略的值。但是,人类并不是概括出一个单一的数值,而是概括出许多描述周围世界的数值,这令人回想起了基于模型的智能体。
The successor representation in human reinforcement learning
https://www.nature.com/articles/s41562-017-0180-8
我们可以赋予一个 RL 智能体同样的能力。在本例中,这样的智能体在每一条路线中,会使用一个数值表征对咖啡质量的期望,使用另一个数值表征到办公室的距离。智能体还可以用到一些其它事务相对应的值,这些事务并不是智能体故意要优化的,但是可以用来作为未来的参考(例如,每个咖啡店的食品质量)。有时,我们将智能体关心并追踪的世界中某些方面的因素称为「特征」。因此,这种对于世界的表征被称为「后继特征」(在最初提出这一概念的论文中被称为「后继表征」)。
后继特征可以被看做模型无关和基于模型的表征之间的一种折中方案。与基于模型的表征相类似,后继特征会概括许多不同的值,从不止单个值的层面上表征世界。然而,它也与模型无关的表征相类似,智能体追踪的这些值都是一些简单的统计量,它们概括了智能体所关心的特征。这样一来,后继特征就好比一种「拆开」的与模型无关智能体。图 4 说明了一个使用后继特征的智能体是如何看待环境的。
图 4:使用后继特征表征世界。这种方式与模型无关智能体表征世界的方式相类似,但是它将每一条路径与若干个数值(在本例中为咖啡、视频、距离)相关联,而不仅仅是使用了一个数值。也就是说,当智能体处于「家」中时,它需要根据它此刻的偏好赋予 9 个数值权重(而不是如图 3 所示的 3 个数值)。
4 使用后继特征:根据一个策略词典组合新的规划
后继特征是一种非常实用的表征,这是因为它使我们可以使用不同的偏好集合来评价路线。在这里,我们再一次使用图 1 中的蓝色路线作为例子。在使用后继特征时,智能体将会使用 3 个与该路径相关的数值:路径长度(4)、咖啡质量(3)、食物质量(5)。如果智能体已经吃过早餐了,那么它可能不会过于关注食物;同样地,如果它快迟到了,那么相对于咖啡的质量,它可能更加关注通勤距离(如上文所述,它将赋予通勤距离更多的 50% 的权值)。在本例中,蓝色路径的值是 (-1.5 x 4) + (1 x 3) + (0 x 5) = -3。但是,如果有一天智能体很饿,因此就会像关心咖啡一样关心食物的质量,它就会马上将这条路径的值更新为 (-1.5 x 4) + (1 x 3) + (1 x 5) = 2。使用相同的策略,智能体可以根据任意的偏好集合评估任意的路线。
在本例中,智能体需要在两条路线中做出选择。更一般地说,智能体需要搜索出一个策略:在任何可能的情况下,应该怎么做的方案。这些策略和路线是紧密相关的:在本例中,如果智能体首先选择了从家中通往咖啡店 A 的道路,然后选择了从咖啡店 A 通往办公室的道路,那么这种道路选择策略实际上就会穿过蓝色的路径。因此,在本例中,我们可以交替地使用「策略」和「路线」(如果环境中存在一定的随机性,那么这种做法就不成立,但是在本文中我们不考虑这一细节)。我们讨论了可以怎样通过后继特征使用不同的偏好集合评估一条路线(或策略)。我们将这一过程称为「广义策略评估」(GPE,generalised policy evaluation)。
为什么 GPE 会有效呢?假设智能体拥有一个策略的「词典」(例如,已知的通往办公室的路线)。给定一个偏好集合,智能体可以使用 GPE 立刻评估词典中的每一个策略可以在各种偏好情况下的执行效果。有趣的是:基于这种对已知策略的快速评估,智能体可以动态地创建全新的策略。智能体实现这一目标的方式十分简单:每当智能体需要作出决策时,它就会考虑以下的问题「如果我需要做出决策,并且此后遵循值最大的策略,那么哪个决策会导致整体的值最大?」令人惊讶的是,如果智能体在每个情况下都选取了使得整体值最大的决策,它最终形成的策略往往要比用于创建该策略的诸多单个策略都要好。
这种将一组策略「组装起来」从而创建一种更好的策略的过程被称为「广义策略提升」(GPI,generalised policy improvement)。图 5 说明了 GPI 的工作原理。
GPI 的工作原理如上图所示,在本例中,智能体对通勤距离的关心程度要比其对咖啡和食品质量的关心程度高 50%。在这种情况下,最佳路径是首先去咖啡店 A、再去咖啡店 B,最终到达办公室。智能体知道三种通往办公室的策略,分别对应于蓝色、黄色、橙色的路径。每种策略都会贯穿一条路径,但这三条路径没有一条符合本例中的理想路线。通过使用 GPE,智能体可以根据其当前的偏好集合对三种策略进行评估(即分别为距离、咖啡、食物赋予 -1.5、1、1 的权重)。基于评估结果,智能体在家中会思考以下问题:「如果我一直沿用这三种策略的其中之一直到到达办公室,那种策略是最好的?」由于上述问题的答案是「蓝色的路径」,智能体将会沿着这条路径前进。然而,如果当智能体到达咖啡店 A 时它又思考了上述问题,它就不会再选用蓝色的策略,而会转而选择橙色的路线。通过重复这一过程,智能体最终会最终沿着最佳的路径到达办公室,从而满足其偏好(尽管没有任何一项智能体已知的策略可以独自做到这一点)。
通过 GPI 创建的策略的性能取决于智能体知道多少种策略。举例而言,在本例中,只要智能体知道蓝色和黄色的路径,它就会针对任意有关咖啡质量和通勤长度的偏好找到最佳的路线。但是,GPI 策略并不总是会找到最佳的路线。在图 1 中,在不知道有策略将咖啡店 A 和咖啡店 B 连接起来的策略时(如图 1 中的橙色路线),智能体永远不会在达到咖啡店 A 后又走向咖啡店 B。
为了说明 GPE 和 GPI 的有效性,本节将简要介绍论文「Fast reinforcement learning with generalized policy updates」中的一个实验。该实验使用了一个简单的环境,它以一种抽象的方式表征了问题的类型。在这个问题中,我们的方法十分有效。如图 6 所示,该环境是一个 10*10 的网格,有 10 个物体分布在其中。如果智能体获取了某个物体,它只会得到一个非零的奖励值,此时另一个物体会随机出现在某个位置上。这个附加在物体上的奖励值与物体的类型相关。物体的类型会代表一些具体或抽象的概念,在本例中,我们将考虑「咖啡」或「食物」(智能体会追踪这些特征)。
论文地址:https://www.pnas.org/content/early/2020/08/13/1907370117
图 6:说明 GPE 和 GPI 有效性的简单环境。智能体使用四个方向上的动作进行移动(上、下、左、右),当它获取某个物体时,会得到一个非零的奖励值。与某一个物体相对应的奖励是根据其类型(「咖啡」或「食物」)定义的。
显然,对于智能体而言,其最佳策略取决于它当前对于咖啡或食物的偏好。例如,在图 6 中,只关注咖啡的智能体可能会沿着红色路径前进,而仅仅关注食物的智能体会沿着蓝色路径前进。我们还可以立刻想象出智能体以不同的权重关注咖啡和食物的场景,包括智能体想要避开其中之一的情况。例如,如果智能体想要咖啡但是实在不想吃食物,图 6 中的灰色路线可能比红色要好。
这一问题中的挑战在于,如何快速地适应一组新的偏好(或「任务」)。在实验中,我们展示了如何使用 GPE 和 GPI。我们的智能体会学习两种策略:「寻求咖啡」和「寻求食物」。接着,我们测试了通过 GPE 和 GPI 计算出的策略在与不同偏好相对应的任务中的性能。如图 7 所示,我们在希望找寻求咖啡同时避开食物的任务中,将我们的方法与模型无关智能体进行了对比。即使智能体从未学习过如何刻意地避开物体,我们将观察智能体如何使用 GPE 和 GPI 立刻组合出一种合理的策略。当然,通过 GPE 和 GPI 计算出的策略也可以被用作初始解决方案,随后通过学习进行修改,这意味着它可能更快地就能达到与模型无关智能体相匹敌的性能。
图 7:与模型无关方法(Q-学习)相比,在训练数据少得多的情况下,GPE-GPI 智能体可以更好地学习。在这里,我们的任务是在寻求咖啡的同时避开食物。GPE-GPI 智能体学到了两种策略:寻求咖啡和寻求食物。尽管该智能体从未被训练避开某个物体,但是它会设法避开食物。阴影区域是运行 100 轮后的标准差。
图 7 展示了 GPE 和 GPI 在特定任务上的性能。我们还在许多其它的任务上测试了同样的智能体的性能。图 8 展示了当我们改变咖啡和食物的相对重要程度时,模型无关的智能体和 GPE-GPI 智能体的性能的变化情况。请注意,模型无关的智能体需要从头开始分别学习每个任务,但是 GPE-GPI 智能体只需要学习两个策略,然后就可以迅速地适应所有的任务。
图 8:GPE-GPI 智能体在不同任务上的性能。每个蓝色的数据条由一组智能体对咖啡和食物的偏好确定的任务。图表下方的颜色渐变代表了各种偏好集合:蓝色表示正权值,白色表示零权值,而红色表示负权值。因此,在上图的两端,任务中的目标实际上是避开一类物体而忽略另一类;在上图的中间,任务的目标是以同样的力度同时寻求两类物体。误差线显示了 10 轮训练后的标准差。
上述实验使用了一个简单的环境,该环境被设计来展示 GPE 和 GPI 所需的特性,而没有考虑不必要的混淆因素。但是 GPE 和 GPI 也已经得到了大规模应用。例如,在论文「Transfer in Deep Reinforcement Learning Using Successor Features and Generalised Policy Improvement」和论文「UNIVERSAL SUCCESSOR FEATURES APPROXIMATORS」中,我们说明了,当我们将网格世界替换为一个三维环境(其中的智能体接受来自第一人称视角的观测数据),相同的策略仍然有效。我们还是用 GPE 和 GPI 使一个四足放生机器人能够在仅仅学会了如何沿着三个方向行驶后,沿着任何方向行驶(详情请参阅论文「The Option Keyboard: Combining Skills in Reinforcement Learning」。
UNIVERSAL SUCCESSOR FEATURES APPROXIMATORS
https://openreview.net/pdf?id=S1VWjiRcKX
Transfer in Deep Reinforcement Learning Using Successor Features and Generalised Policy Improvement
http://proceedings.mlr.press/v80/barreto18a/barreto18a.pdf
The Option Keyboard: Combining Skills in Reinforcement Learning
论文地址:https://papers.nips.cc/paper/9463-the-option-keyboard-combining-skills-in-reinforcement-learning
视频链接:https://www.youtube.com/watch?v=39Ye8cMyelQ&feature=youtu.be
有关 GPE 和 GPI 的工作是两个与这些操作分别相关的两个独立的研究分支的交集。首先,与 GPE 相关的「后继表征」方面的工作起源于 Dayan 于 1993 年发表的具有开创性意义的论文「Improving Generalization for Temporal Difference Learning: The Successor Representation」。Dayan 的论文解开了神经科学领域一系列工作的序幕,这类工作至今都十分活跃。近期,论文「Successor Features for Transfer in Reinforcement Learning」和论文「Deep Successor Reinforcement Learning」等后继表征(又称「后继特征」)相关的工作再次出现在了 RL 领域中,并再度成为了一个活跃的研究方向。后继特征还与通用值函数紧密先关,这一概念建立在 Sutton 等人的假设之上,即相关的知识可以通过许多有关世界的预测的形式被压缩。RL 领域的研究人员在论文「Apprenticeship Learning via Inverse Reinforcement Learning」中提出了后继特征的定义,这一概念在与深度强化学习相关的工作「Universal Value Function Approximators 」中也被提及。
Improving Generalization for Temporal Difference Learning: The Successor Representation
https://www.mitpressjournals.org/doi/abs/10.1162/neco.1993.5.4.613?journalCode=neco
Successor Features for Transfer in Reinforcement Learning
https://papers.nips.cc/paper/6994-successor-features-for-transfer-in-reinforcement-learning
Deep Successor Reinforcement Learning
https://arxiv.org/abs/1606.02396
Apprenticeship Learning via Inverse Reinforcement Learning
https://ai.stanford.edu/~ang/papers/icml04-apprentice.pdf
Universal Value Function Approximators
http://proceedings.mlr.press/v37/schaul15.pdf
此外,与 GPI 相关的研究工作关注的是将行为组合起来从而创造新的行为。多年来,执行自控制器的去中心化控制器的思想多次出现(例如,A robust layered control system for a mobile robot),使用值函数对这种思想的实现也可以追溯到至少 1997 年之早(详见 Humphrys 的博士论文「Action Selection methods using Reinforcement Learning」和Karlsson 的博士论文「Learning to Solve Multiple Goals」)。GPI 还与层次化强化学习紧密相关,它是建立在 Dayan、Hinton、Parr、Russell、Sutton、Precup、Singn、Dietterich 等人的工作的基础之上的。对行为的组合和层次强化学习都是今天非常活跃的研究领域。
A robust layered control system for a mobile robot
https://ieeexplore.ieee.org/document/1087032
Action Selection methods using Reinforcement Learning
https://www.computing.dcu.ie/~humphrys/PhD/index.html
Learning to Solve Multiple Goals
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.37.8338&rep=rep1&type=pdf
Mehta 等人的论文「Transfer in variable-reward hierarchical reinforcement learning」可能是第一份同时使用 GPE 和 GPI 的论文,尽管他们认为 GPI 在一开始就退化为单一选择(即不存在策略的「组合」)。本文中讨论的将 GPE 和 GPI 同时使用的方法首次在 2016 年发表的论文「Successor Features for Transfer in Reinforcement Learning」中作为一种促进迁移学习的机制被提出。强化学习中的迁移方法可以追溯到 Singh 于 1992 年发表的论文「Transfer of learning by composing solutions of elemental sequential tasks」,此类研究在深度强化学习的背景下再度兴起,成为了一个持续活跃的研究领域。
Transfer in variable-reward hierarchical reinforcement learning」
http://homes.sice.indiana.edu/natarasr/Papers/var-reward.pdf
Successor Features for Transfer in Reinforcement Learning
https://arxiv.org/abs/1606.05312
Transfer of learning by composing solutions of elemental sequential tasks
https://link.springer.com/article/10.1007/BF00992700
7 强化学习的组合方法
综上所述,模型无关智能体不能轻易地适应新场景(例如,适应它以前没有经历过的偏好集合)。基于模型的智能体可以适应任何新场景,但为了做到这一点,它首先必须学习整个世界的模型。基于 GPE 和 GPI 的智能体提供了一种折中的解决方案:虽然它学习的世界模型比基于模型的智能体要小得多,但它可以快速适应某些场景,通常具有良好的性能。
本文讨论了一些 GPE 和 GPI 的具体实例,但它们实际上是更为一般的概念。在抽象的层面上,使用 GPE 和 GPI 的智能体会分为两部运行。首先,从 GPE 的角度来说,当智能体面对一个新的任务时,它会思考「已知任务的解决方案在这种新任务上效果将会如何?」接着,从 GPI 的角度来说,基于 GPE 的评估结果,智能体会组合先前的解决方案,从而为新任务构建一种解决方案。GPE 和 GPI 背后的具体机制并不像原理本身那么重要,而寻找实现这些操作的替代方法可能是一个令人兴奋的研究方向。有趣的是,行为科学领域的一项新研究「Multi-Task Reinforcement Learning in Humans」提供了初步的证据,表明人类在多任务情境下做决定时遵循的原则与 GPE 和 GPI 非常相似。
Multi-Task Reinforcement Learning in Humans
https://www.biorxiv.org/content/10.1101/815332v1
通过 GPE 和 GPI 实现的快速适应机制有望构建更快的强化学习智能体。更广泛地来说,它提供了一种学习灵活解决问题的新方法。智能体可以将一个问题分解为更小的、更易于管理的子任务,而不是将其作为一个单一的、整体的任务来处理。接着,我们可以复用并重新组合子任务的解决方案,从而更快地解决整体的任务。这项工作实现了一种强化学习的组合方法,它可能会催生扩展性更强的智能体。至少,这些智能体不会因为一杯咖啡而迟到。
原文链接:
https://www.deepmind.com/blog/article/fast-reinforcement-learning-through-the-composition-of-behaviours