电子说
摘要:众所周知,强化学习的工作原理就是最大化策略预期回报。当智能体能轻而易举地从环境中收集到密集回报时,算法很好用,效果也很好;但当环境中的回报非常稀疏时,模型往往会训练失败。再加上我们不可能为每个任务设计密集回报函数,在这些情况下,让智能体以有针对性的方式探索环境是必要的。近日,OpenAI提出了一种回报设置方法RND,在雅达利游戏《蒙特祖玛的复仇》里获得了state-of-art的表现.
为什么是《蒙特祖玛的复仇》?
强化学习是机器学习的一个子领域,它强调让“智能体”学会如何基于环境而行动,以取得最大化的预期回报。为了模拟现实,游戏是现在训练强化学习智能体的常用环境,因为它不仅能提供可交互的环境、直接的奖励信号和游戏目标,还能模拟包括物理、社交等在内的现实场景。因此强化学习成果大多都以“XXX在XX游戏中达到了超人水平”结尾。
2013年,DeepMind提出DQN算法,被誉为强化学习的“开山鼻祖”。在那篇论文中,算法成功玩转多款雅达利游戏,表现超出人类玩家平均水平。但其中有一个例外,就是《蒙特祖玛的复仇》,这是唯一一款人类玩家平均得分4700,而DQN望尘莫及的游戏。
从那之后,《蒙特祖玛的复仇》就成了强化学习算法的试金石,也被人视为探索进步的代名词。
上图是近几年来使用不同算法的智能体在《蒙特祖玛的复仇》中的得分,粉色虚线为人类平均得分。可以看到,在2016年,通过结合DQN和基于计数的探索回报,学界在这个游戏上取得了重大突破:智能体成功探索了15个房间,最高得分高达6600,平均得分也达到了3700。从那时起,研究人员们提出了不少高分算法,但它们的性能提升主要依赖人为示范,或是参考其他演示机器人。
显然,这并不完全是人类的学习方式。人类探索世界有时是无目的的,有时是模仿他人,但更多时候是出于好奇心。既然手动为环境设置密集回报不现实,那么智能体能不能不依赖人,自发地去进行不可预测的探索呢?
用好奇心驱动学习
在开发RND之前,OpenAI的研究人员和加州大学伯克利分校的学者进行了合作,他们测试了在没有环境特定回报的情况下,智能体的学习情况。因为从理论上来说,好奇心提供了一种更简单的方法来教授智能体如何与各种环境进行交互,它不需要人为的回报设计。
根据当时的论文,他们在包括Atari游戏在内的54个标准基准测试环境中进行了大规模实验,实验结果出人意料:在某些环境中,智能体实现了游戏目标,即使游戏目标并没有通过外在回报传达给它,而且内在好奇心驱动的智能体和手动设置外在奖励的表现高度一致。
下面是当时的一些实验案例:
Pong(乒乓球):研究人员训练了一个能同时控制两个球拍的智能体,经过训练,它学会了让球在球拍之间保持长时间反弹。之后,这个智能体被放进对抗游戏中和另一个AI比赛,它虽然没有输赢意识,只是想拉长比赛时间,但表现非常好。
Bowling(保龄球):比起有最大化外在奖励目标的智能体,好奇心智能体在这个游戏中的表现更好,对此,一个推测是当玩家击倒最后一个球瓶时,游戏得分会闪烁一下,这干扰了智能体的预测。
Mario:在这个游戏里,研究人员设置的内在回报是通关,每到一个新房间,智能体就会获得奖励,因为新房间的详细信息是无法预测的。在这种简单设置下,智能体连通11关,找到了秘密房间,甚至还击杀了boss。
在常规强化学习设置中,对于每个离散的时间步,智能体会先向环境发送一个action,然后由环境返回下一个observation、当前action得到的回报和结束指示。为了让智能体探索未知领域,OpenAI要求环境只返回observation,不再提供回报信息,这就使智能体只能从自己的经验中学习怎么预测下一步的环境状态,并用预测误差作为内在奖励。
这就是“好奇心”的实现方式。举个简单的例子,同样一个智能体,如果使用常规设置,它就只会关注游戏得分,只要分数能上升,它就学着去做;而如果用的是好奇心,它就会积极地和新对象佳偶,并发现其中有益的东西。比起预测其他环境因素,这种对象间的互动更难预测。
Noisy-TV问题
就像做作业的小学生容易被窗外飞过的花蝴蝶所吸引,好奇心也给智能体带来了“注意力不够集中”的问题——Noisy-TV。下面是一个例子:同一个智能体穿行在两个不同的迷宫中,其中一个是正常的迷宫,另一个是有一面“电视墙”、上面正在播放视频的迷宫:
正常迷宫
“电视墙”迷宫
在正常迷宫中,智能体一直在保持前进,而在“电视墙”迷宫中,智能体一看到视频就“走不动路”了。对于像《蒙特祖玛的复仇》这样的大型复杂环境,这是好奇心智能体需要注意的一个重要问题。而对此,OpenAI提出了一种解决方法,就是让智能体通过噪声控制器控制环境,该控制器有一定概率让智能体重复之前的最后一个动作,防止从旧房间到新房间的过渡变得不可预测。
集大成者:RND
从本质上看,Noisy-TV问题就是好奇心智能体对下一状态的预测会固有的受当前环境噪声影响,之前提到了,好奇心智能体的内在回报是预测误差,误差越小,回报越大。我们先来看看导致预测误差过大的几个因素:
因素1:当预测模型无法把之前的经验推广到当前时,预测误差会很高——当前学到的经验是新的。
因素2:如果预测目标是随机的,预测误差也会很高。
因素3:如果缺少预测所需的信息,或者目标函数太复杂而预测种类太受限,预测误差也会很高。
在这三个中,因素1对智能体是有用的,因为它量化了经验的新颖性。而因素2和3是导致Noisy-TV问题的元凶,为了避免这两种情况,OpenAI提出了一种新的exploration回报RND:给定下一环境状态,它能预测这个固定的、随机初始化的神经网络(预测模型)的输出,如下图所示。
这背后的思路是预测模型在类似训练过的状态中误差较低。对于从没见过的环境状态,智能体对神经网络的输出预测会更不准确(因素1),这促进了探索。合成预测设计确保了预测目标的确定性和类别的适配,能有效防止Noisy-TV问题。
连接exploration回报和外部回报的OpenAI之前提出的近端策略优化(PPO)的变体,具体这里我们不再展开。下图是智能体在玩《蒙特祖玛的复仇》时获得的内在回报的可视化:
未来发展
最后,研究人员表示对于设计性能更好的算法来说,Noisy-TV问题的易感性等重要因素还是非常重要。他们发现简单算法中看似很小的细节,可能直接影响着智能体是不能走出第一个房间还是通过第一关。为了增加训练稳定性,他们避免了特征的饱和,并将内在奖励带到了可预测的范围。每次发现并修复错误,RND的性能都会有显着提高。
他们建议未来研究人员可以在这几方面继续探索:
分析不同探索方法的好处,并找到结合它们的新方法。
在没有回报的情况下,在多种不同环境中训练好奇心智能体,使他们朝着目标靠近。
测试好奇心智能体的“大局观”意识和长远视角。
全部0条评论
快来发表一下你的评论吧 !