前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >强化学习中的好奇心驱动学习算法:随机网络精馏探索技术

强化学习中的好奇心驱动学习算法:随机网络精馏探索技术

作者头像
yuanyi928
发布2018-12-24 16:47:32
1.3K0
发布2018-12-24 16:47:32
举报
文章被收录于专栏:EAWorldEAWorld

作者:Rani Horev

译者:白小白

原题:Explained: Curiosity-Driven Learning in RL— Exploration By Random Network Distillation

原文:http://t.cn/EL5bylU

全文3860字,阅读约需要9分钟

近年来,强化学习已经被证明是一种强大的技术,用于解决具备常量奖励的封闭任务,以及最常见的游戏场景。该领域的一个主要挑战仍然是,当对于特定行动的外部反馈(奖励)十分稀少或不存在时,如何训练模型。最近的模型试图通过建立一种被称为好奇心的内在的奖励机制来克服这一挑战,当模型发现了新的领域或者状态时,就会触发相关奖励。

OpenAI的一篇新论文,利用随机网络蒸馏(RND)技术,提出了一种新的内部奖励方法。该模型试图预测给定的状态以前是否见过,并对不熟悉的状态给予更大的奖励。

该模型显示了在几个Atari游戏中的最先进的成果,包括众所周知的RL算法难题:《蒙特祖马的复仇》。这被已证明是在分散背景噪声环境下相对简单而有效的方法。

一、背景

强化学习(Reinforcement learning)是一组以奖励为导向的算法,着力于学习如何在不同的状态下通过最大化从环境中获得的回报(即奖励)来采取行动。Atari游戏是一个具有挑战性的强化学习测试平台,研发于30多年以前,提供了丰富的视觉输入(每帧210X160X3)和一组为人类设计的不同种类的任务。

这一系列游戏因其复杂性和外部奖励的频率而各不相同。在《打砖块》游戏中,当你每次击打砖块时,都会得到奖励,而在《蒙特祖马的复仇》和其他游戏中,在某一等级只存在有限的奖励。《蒙特祖马的复仇》之所以被认为是具有挑战性,是因为它需要长时间(数百个步骤)和复杂的行动组合,才能通过致命的障碍并获得奖励。下面的动画说明了游戏之间的区别。

《打砖块》:机器人代理可以经常得到外部奖励,每个砖块一次。

《蒙特祖马的复仇》:唯一的外部奖励是拿到钥匙的时刻

为了在没有频繁的外在奖励的游戏中取得成功,机器人代理必须探索环境,寄希望于发现稀疏的奖励。这些场景在现实生活中很常见,从在家里找到丢失的钥匙到发现新的癌症药物。在这种情况下,机器人代理需要使用独立于外在奖励的内在奖励机制来采取正确的行动。强化学习领域有两种常见的内在奖励方法:

1. 基于计数的方法。这种方法可以对以前访问过的领域进行统计,并对新的状态给予更大的奖励。这种方法的缺点是,随着可能的状态数的增加,它往往变得不那么有效。

2. 另一种方法是“下一状态预测”,在这种方法中,模型试图预测下一状态,采取行动转换到下一状态,然后将实际状态与预测状态相比的误差最小化。通过探索,更多的状态变为已知状态,从而逐渐降低误差。

这些方法比仅基于外在奖励的模型(如著名的DQN和A3C模型)表现得更好,但仍然比一般的人类水平要更差一些。

总体来说,当使用内在奖励时,对未来状态的评估会受到三种可能的误差来源的影响:

1. 陌生状态误差:模型未能从先前访问过的状态归纳出新的状态,从而导致在预测未来状态时存在很大的误差。通过反复探索新的状态并从中学习,模型可以逐渐减少这种误差。

2. 随机噪声:这也被称为“电视噪声”问题,起因是环境的一部分产生随机噪声(就房间里电视的白噪声)。这导致许多状态对机器人代理来说都是新的,下一个状态通常是不可预测的,并且与机器人代理的操作无关。

译注:

随机噪声比较有趣,因为代理醉心于探索新的状态,而随机噪声本身是近乎无穷无尽的,一旦在探索中发现了随机噪声,就会让机器人代理困于其中,从而无法去探索真正有意义的新的状态。比较典型的是代理在迷宫中看到一张电视墙,就忘记了要去找路,如下图。

机器人代理在迷宫中遇到随机噪声

( 图片来源:http://t.cn/EL5cQph)

3. 模型约束:模型的体系结构是有限的,不能准确地概括环境以预测下一个状态。例如,当预测下一个状态所需的神经网络的层数和大小是未知的时候,就遭遇了模型约束。

二、RND是如何工作的?

具有内在奖励的强化学习系统使用陌生状态误差(误差#1)进行探索,目的是消除随机噪声(误差#2)和模型约束(错误#3)的影响。为此,该模型需要三个神经网络:一个固定的目标网络,它为给定的状态生成常量输出,一个预测网络,用于预测目标网络的输出,一个策略网络,决定机器人代理的下一步行动。

目标网络和预测网络

通过计算两种网络输出的差异,目标网络和预测网络对陌生状态产生更大的内在回报。两种网络的大小和结构是相同的,使用卷积编码器(CNN)和全连接层,将状态嵌入到特征向量f中。然而,两者之间有一个重要的区别:

1.目标网络是具有固定随机权值的神经网络,目标网络从不会被训练。因此,它的输出对于给定的状态(输入)是常数的,但是在不同的状态之间是可变的:对于任何时间步骤i,fi(x)=fj(x),而对于任意两个不同的输入,fi(x)≠fi(y)。

2.预测网络被训练来预测目标网络的输出。每个状态都被输入到两个网络中,但预测网络会进行训练,以最小化两张网络之间输出(ri)的差异(MSE)。

目标网络与预测网络

当更多的状态被输入到系统中时,预测网络就可以接收到更多已知的状态,从而在预测目标网络的输出时变得更有效。当到达先前访问过的状态时,机器人代理会得到一小部分奖励(因为目标输出是可预测的),并且代理也倾向于不会重复探索这些已知状态。换句话说,与普通模型不同,代理并不试图根据当前状态和操作来预测下一个状态,而是试图预测未来状态的新颖性。

“目标网络/预测网络”架构有几个好处:

  1. 经过对随机噪声状态的足够训练(训练过程基于固定的“平稳分布”概率理论,又称为马尔可夫链),预测网络能够更好地预测目标网络的输出。随着预测误差的减小,代理对噪声状态的兴趣比对其他未探测状态的兴趣要小。这减少了噪声-电视误差(误差#2)。
  2. 在下一步预测模型中,虽然还无法提前预知需要哪种体系结构(神经网络层数和大小等)来对动作的结果进行建模,然而,预测网络只需要预测目标网络的输出结果即可。因为具有与目标网络相同的体系结构,预测网络应该能够正确地学习到已知状态的输出。这“解决” 了模型约束误差(误差#3)。
  3. 这一架构让机器人代理更容易在游戏中生存,因为死亡迫使它回到熟悉的状态。其他基于好奇心的强化学习方法也可以共享了这一收益。

采用这一模型的挑战之一是,随着更多的状态变得熟悉,不同的环境之间可能会发生变化,固有的回报就会减少,因此很难选择“超参数”。为了克服这一问题,在每个更新周期内,内部奖励都是标准化的。

译注:

超参数,在机器学习的上下文中,超参数是在开始学习过程之前设置值的参数,而不是通过训练得到的参数数据。通常情况下,需要对超参数进行优化,给学习机选择一组最优超参数,以提高学习的性能和效果。

策略网络

策略网络的作用是根据当前状态及其内部模型决定下一个操作,该模型是针对以前的状态进行训练的。为了做出相关决策,策略网络使用了一个输入嵌入器和一个策略优化器:

输入嵌入器

输入嵌入器将环境状态编码为特征值。论文比较了两种结构:CNN以及CNN和递归层(GRU单元)的混合结构。递归层被设定为通过捕捉更长的游戏上下文(例如在当前状态之前发生的事件)来帮助预测下一个动作,在大多数情况下确实比单独使用CNN的效果更好。

近端策略优化(PPO)

训练策略模型的一个主要问题是趋同,即使简单的奖励更新,也会引发策略的巨大变化。例如,在某些架构中,一个超难的关卡(通常在游戏中很常见)就可以完全改变您的策略。因此,在嵌入层之上,神经网络架构中有一个近端策略优化器(PPO),它根据嵌入状态预测下一个操作。PPO的主要贡献是在不进行根本更新的情况下安全地优化策略,方法是缩小连续策略更新之间的差异。

译注:

PPO的基本原理是在多个训练步骤中实现小批量的更新。

要更新策略,PPO首先需要估计给定状态的未来内部和外部奖励(“价值头部”)。对每一种类型的奖励进行单独处理,可以更灵活地确定每种类型对策略的影响以及每种类型的计算方式,比如:

  • 内部奖励按照一批固定的时间步骤(例如128个时间步骤)来进行计算,而不管机器人代理是否在游戏中“死亡”。研究发现,这种(排除偶然性的)独特方法可以更好地探索,因为它鼓励代理采取可能揭示新状态的冒险行动。如果内部奖励是偶然的,这些行为可能已经结束了游戏,从而结束了奖励。
  • 外部奖励在整个事件中被计算,直到代理死亡。使用非偶然性奖励可能会导致代理在游戏中“作弊”。例如,找到简单而迅速的回报,然后自杀。

下图显示了策略网络和整个体系结构:

策略网络

RND体系结构

注:

  • 论文中的PPO是使用Actor-Critic模型(A3C)来实现的。但是,它可以与任何优势函数一起使用。
  • PPO的另一个好处是,它通过允许多阶段的训练来提高效率。由于每个训练阶段都仅有小批量的输入,这样在策略更新的范围内,即使有多个训练阶段,也能够确保总变化不会太激进。

三、结果

作为基线,论文将RND模型与最先进的算法以及两种类似模型进行了比较:

  1. 一个标准的PPO没有内在的探索奖励。
  2. 基于前向动态误差的PPO模型。该模型根据当前状态和动作预测下一个状态,并将预测误差降到最小,从而得到内在回报。

RND代理在6次游戏中取得了3胜3负的优异成绩,并在《蒙特祖马的复仇》中获得了比“平均人类水平”更好的分数。然而,它在其他两个游戏中的性能明显低于其他最新算法。论文没有解释是怎样的游戏属性让这种技术不再那么管用。

各种强化学习算法的得分比较

(来源:OpenAI‘s博客)

四、结论

RND模型例举了近年来在具备极高难度的探索类游戏中取得的进展。该模型的创新部分,即固定网络和目标网络,由于其(实现和计算的)简单性及能够与各种策略算法一起工作,而充满前景。

另一方面,仍旧前路漫漫:没有形成统一的模式,在不同的游戏中表现也不尽相同。此外,尽管RNN可能有助于保持更长的上下文,但全局探索仍然是一个挑战。在需要长期关系的情景,例如使用在第一个房间找到的钥匙打开最后一个门,仍然是遥不可及的。

若要对最新的机器学习研究保持关注,请订阅我在LyrnAI( https://www.lyrn.ai/ )的博客。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-12-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 EAWorld 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档