不设目标也能通关「马里奥」的AI算法,全靠好奇心学习

在强化学习中,设计密集、定义良好的外部奖励是很困难的,并且通常不可扩展。通常增加内部奖励可以作为对此限制的补偿,OpenAI、CMU 在本研究中更近一步,提出了完全靠内部奖励即好奇心来训练智能体的方法。在 54 个环境上的大规模实验结果表明:内在好奇心目标函数和手工设计的外在奖励高度一致;随机特征也能作为强大的基线。

通过与任务匹配的奖励函数最大化来训练智能体策略。对于智能体来说,奖励是外在的,并特定于它们定义的环境。只有奖励函数密集且定义良好时,多数的 RL 才得以成功实现,例如在电子游戏中的「得分」。然而设计一个定义良好的奖励函数非常困难。除了「塑造」外在奖励外,也可以增加密集的内在奖励,即由智能体本身产生奖励。内在奖励包括使用预测误差作为奖励信号的「好奇心」和阻止智能体重新访问相同状态的「访问计数」。其思想是,这些内在奖励通过引导智能体对环境进行有效地探索,以寻找下一个外在奖励,从而缩小与稀疏外在奖励间的差距。

强化学习算法依赖外在于智能体的工程环境奖励。但是,用手工设计的密集奖励来对每个环境进行标注的方式是不可扩展的,这就需要开发智能体的内在奖励函数。好奇心是一种利用预测误差作为奖励信号的内在奖励函数。在本文中:(a)对包括 Atari 游戏在内的 54 个标准基准环境进行了第一次大规模的纯好奇心驱动学习研究,即没有任何外在奖励。结果取得了惊艳的性能,并在许多游戏环境中,内在好奇心目标函数和手工设计的外在奖励高度一致。(b)研究了使用不同的特征空间计算预测误差的效果,表明随机特征对于许多流行的 RL 游戏基准来说已经足够了,但是学习特征似乎泛化能力更强 (例如迁移到《超级马里奥兄弟》中的新关卡)。(c)展示了随机设置中基于预测的奖励的局限性。

代码和模型链接:https://pathak22.github.io/large scale-curiosity/

1 引言

强化学习(RL)已经成为训练智能体以完成复杂任务的一种普遍的方法。在 RL 中,通过与任务匹配的奖励函数最大化来训练智能体策略。对于智能体来说,奖励是外在的,并特定于它们定义的环境。只有奖励函数密集且定义良好时,多数的 RL 才得以成功实现,例如在电子游戏中的「得分」。然而设计一个定义良好的奖励函数非常困难。除了「塑造」外在奖励外,也可以增加密集的内在奖励,即由智能体本身产生奖励。内在奖励包括使用预测误差作为奖励信号的「好奇心」和阻止智能体重新访问相同状态的「访问计数」。其思想是,这些内在奖励通过引导智能体对环境进行有效地探索,以寻找下一个外在奖励,从而缩小与稀疏外在奖励间的差距。

但如果完全没有外在奖励呢?发展心理学家认为内在动机(即好奇心)是人类发展早期阶段的主要动力:婴儿看似无目标的探索,其实可以学习到终身有益的技能。从玩《我的世界》到参观动物园,都没有外在奖励。调查表明,在特定环境中,仅使用内在奖励对智能体进行预训练,可以使它在新环境下对新任务进行微调时学习得更快。然而到目前为止,仅利用内在奖励的学习还未被系统地研究过。

在本文中,研究者对只由内在奖励驱动的智能体进行了大规模的实证研究。他们选择了 Pathak 等人提出的基于动力的好奇心的内在奖励模型,因为它可扩展、可简化并行,所以非常适用于大型实验。该方法的中心思想是将内在奖励看作在预测智能体当前状态的行为结果时的误差,即智能体学习的正向动力的预测误差。研究者深入研究了 54 个环境中基于动力的好奇心:如图 1 中的电子游戏、物理引擎模拟和虚拟 3D 导航任务。

图 1:54 个环境中的研究快照。研究者证明了智能体能够在不使用外在奖励或结束信号而只利用好奇心的情况下取得进展。

为了更好地理解好奇心驱动学习,研究者进一步研究了决定好奇心驱使学习表现的关键因素。在高维原始观测空间(如,图像)中预测未来状态还是颇具挑战的,但最近研究显示,辅助特征空间中的学习动力会改善这个结果。然而如何选择嵌入空间也是个关键又开放的问题。通过系统的控制变量研究,研究人员检验了编码智能体观测的不同方法,使智能体可以在只由好奇心驱动时也有优良表现。为保证动态在线训练的稳定性,嵌入空间应该:(a)维数紧凑;(b)保留足够的观测信息;(c)是观测的平稳函数。研究证明,通过随机网络对观察结果进行编码是一种简单而有效的技术,可用于在许多流行的 RL 基准中建模好奇心。这可能表明许多流行的 RL 视频游戏测试平台在视觉上并不复杂。有趣的是,虽然随机特征足以让玩家在训练中表现出色,但学习特征似乎泛化能力更好(如在《超级马里奥兄弟》中创造新的游戏关卡)。

总结:(a)研究者对好奇心驱动在各个环境中的探索进行了大量研究,包括: Atari 游戏、超级马里奥兄弟、Unity 中的虚拟 3D 导航、多人乒乓以及 Roboschool 环境。(b)研究者广泛研究了基于动力的好奇心的特征空间:随机特征、像素、反向动力学和变分自编码器,并评估了对未知环境的泛化能力。(c)最后讨论了基于好奇心的公式直接预测误差的局限性。他们发现,如果智能体本身是环境中随机源,那么它可以在没有任何实际进展的情况下奖励自己。研究人员在一个 3D 导航任务中证明了这种限制,其中智能体控制了环境的不同部分。

论文:Large-Scale Study of Curiosity-Driven Learning

论文地址:https://arxiv.org/pdf/1808.04355v1.pdf

摘要:强化学习算法依赖外在于智能体的工程环境奖励。但是,用手工设计的密集奖励来对每个环境进行标注的方式是不可扩展的,这就需要开发智能体的内在奖励函数。好奇心是一种利用预测误差作为奖励信号的内在奖励函数。在本文中:(a)对包括 Atari 游戏在内的 54 个标准基准环境进行了第一次大规模的纯好奇心驱动学习研究,即没有任何外在奖励。结果取得了惊艳的性能,并在许多游戏环境中,内在好奇心目标函数和手工设计的外在奖励高度一致。(b)研究了使用不同的特征空间计算预测误差的效果,表明随机特征对于许多流行的 RL 游戏基准来说已经足够了,但是学习特征似乎泛化能力更强 (例如迁移到《超级马里奥兄弟》中的新关卡)。(c)展示了随机设置中基于预测的奖励的局限性。

3 实验

3.1 无外在奖励的好奇心驱动学习

图 2:8 款 Atari 游戏和《超级马里奥兄弟》的特征学习方法对比。这些评估曲线显示了没有奖励或结束信号,仅是纯好奇心训练的 agent 平均奖励 (标准误差)。可以看到,纯好奇心驱动的 agent 无需外在奖励,就能够在这些环境中获得奖励。所有 Atari 游戏的结果都在图 8 的附录中。在像素上训练的好奇心模型在任何环境中都表现不佳,VAE 特征的表现要么与随机和反向动力特征相同,要么不如后者。此外在 55% 的 Atari 游戏中,反向动力训练的特征比随机特征表现得更好。有趣的是,好奇心模型的随机特征是一个简单却强大的基线,大致可在 Atari 的半数游戏中取得优良表现。

3.2 模型在《超级马里奥兄弟》新关卡的泛化能力

图 4:《马里奥》泛化实验结果。左图是 1-1 关到 1-2 关的迁移结果,右图是 1-1 关到 1-3 关的迁移结果。图下方是源和目标环境的地图。所有的智能体都是在无外在奖励的情况下训练出来的。

3.3 好奇心与稀疏的外在奖励

图 5:在最终外在奖励+好奇心奖励的训练中,在 Unity 环境下的平均外在奖励。注意,只有外在奖励的训练曲线始终为零。

原文地址:https://www.cnblogs.com/alan-blog-TsingHua/p/9827612.html

时间: 2024-07-30 13:50:26

不设目标也能通关「马里奥」的AI算法,全靠好奇心学习的相关文章

「JSOI2010」汇总

「JSOI2010」旅行 传送门 比较妙的一道 \(\text{DP}\) 题,思维瓶颈应该就是如何确定状态. 首先将边按边权排序. 如果我们用 \(01\) 串来表示 \(m\) 条边是否在路径上,那么我们就可以通过钦定前 \(x\) 条边在路径上来确定目标状态. 其中有的边消耗了魔法使用次数,有的没消耗. 那么我们就可以设 \(dp[i][j][k]\) 表示到点 \(i\) ,经过了前 \(j\) 条被钦定边,并且使用了 \(k\) 次魔法的最短路,那么转移就是(假设我们现在要从点 \(u

大数据和「数据挖掘」是何关系?---来自知乎

知乎用户,互联网 244 人赞同 在我读数据挖掘方向研究生的时候:如果要描述数据量非常大,我们用Massive Data(海量数据)如果要描述数据非常多样,我们用Heterogeneous Data(异构数据)如果要描述数据既多样,又量大,我们用Massive Heterogeneous Data(海量异构数据)--如果要申请基金忽悠一笔钱,我们用Big Data(大数据) 编辑于 2014-02-2817 条评论感谢 收藏没有帮助举报作者保留权利 刘知远,NLPer 4 人赞同 我觉得 大数据

前端工程师需要明白的「像素」

场景: 人物:前端实习生「阿树」与 切图工程师「玉凤」 事件:设计师出设计稿,前端实现页面 玉凤:树,设计稿发给你啦,差那么点像素,就叼死你┏(  ̄へ ̄)=? 阿树:~(>_<)~毛问题噶啦~ 阿树:哇靠,为啥你给的设计稿是640px宽 ,iPhone 5不是320px宽吗??? 玉凤:A pixel is not a pixel is not a pixel, you know ? 阿树:(#‵′),I know Google... 为什么会出现以上的情况,难道他们当中一位出错了,摆了这样的

Linux 小知识翻译 - 「RFC」

这次聊聊「RFC」. 有很多人经常听说「RFC」的吧,上次介绍的NTP是由「RFC1305规定的」,HTTP是由「RFC2616规定的」. RFC是「Request For Comments」的简称,由 Internet Engineering Task Force 公开的,以指定互联网技术标准「为目标」的文档. 可以这么说,互联网技术中的大部分都是依据它来实现的. 但是,上面的「为目标」用括号括起来是有原因的.实际上互联网技术每天都在变化,想要标准化是非常困难的. 即使规定了「这个是标准」,根

化减为加:十进制的「补码」

补码把减法变加法的原理其实就是同余. 设 \(n+1\) 位二进制数 \( N = \overline{x_n \cdots x_2x_1x_0} \) 即 \( N = x_0+2x_1+2^{2}x_2+\cdots+2^{n}x_n \;\;\;\; (x_i \in \left\{ 0,1 \right \}) \) 则补码 \( N' = (1-x_0)+2(1-x_1)+2^{2}(1-x_2)+\cdots+2^{n}(1-x_n) + 1 \) \( = 1+2+2^2+\cdo

Linux 小知识翻译 - 「别名」

实际上,「别名」被用在多种场合下.比如「命令的别名」,「邮件地址的别名」等等. 所以,单独说「别名」的时候,根据不用的场合,代表的意思也不一样. 一般来说,「别名」是指意思差不多的东西. 「别名」的英文是「alias」,日语就是「别名」. 说「邮件地址的别名」的时候,也可以看出别名的含义. 比如将「[email protected]」设为「[email protected]」,以「[email protected]」为接收方的邮件就会发给「[email protected]」. Linux中经常

LibreOJ #2009. 「SCOI2015」小凸玩密室

二次联通门 : LibreOJ #2009. 「SCOI2015」小凸玩密室 /* LibreOJ #2009. 「SCOI2015」小凸玩密室 树形dp 做到这么正常的题突然感觉好不适应.... 考虑转移 f[x][y] 表示从x点转移到y点的代价 则我们需要处理出以x为根的子树的代价 讨论处理一下即可(有没有左儿子,有没有右儿子,或是都有) 但是这样转移是O(N^2)的 所以我们考虑优化 显然有很多转移是不需要的 比如y在x的子树中时就没必要转移 那么考虑优化 设g[x][i]表示走完x的子

LOJ #2037. 「SHOI2015」脑洞治疗仪

#2037. 「SHOI2015」脑洞治疗仪 题目描述 曾经发明了自动刷题机的发明家 SHTSC 又公开了他的新发明:脑洞治疗仪——一种可以治疗他因为发明而日益增大的脑洞的神秘装置. 为了简单起见,我们将大脑视作一个 01 序列.1 代表这个位置的脑组织正常工作,0 代表这是一块脑洞. 1 0 1 0 0 0 1 1 1 0 脑洞治疗仪修补某一块脑洞的基本工作原理就是将另一块连续区域挖出,将其中正常工作的脑组织填补在这块脑洞中.(所以脑洞治疗仪是脑洞的治疗仪?) 例如,用上面第 8 号位置到第 

《iOS「通告机制」及由其引出的对「架构模式」、「设计模式」的理解

说明:为了区别「本地通知」与「推送通知」这两种iOS中提醒用户,可见的「通知」,本文所将Notification翻译为「通告」.它们的详细区别,可参考<iOS开发系列--通知与消息机制>一文. 实践遇到的问题: 最近在维护公司的一个项目中,遇到这样一个报错:-[GlobalManager addAlbum:]: unrecognized selector sent to instance 经排查,原因如下:以前同事在利用「通告机制」在GlobalManager类中把「自己/self」注册为「观