DeepMind
文章来源:公众号 量子位
DeepMind刚刚宣布,他们在多任务学习上取得了巨大的进展,也就是让单个智能体学会许多不同任务:
DQN(Deep Q-Network)现在可以用同样的算法一口气学会玩57个雅达利游戏了,而且玩得还不差,能达到人类中位数水平。
这意味着,人类离创造出会做许多不同事情的通用人工智能(AGI)又进了一步。
此前,每个智能体(agent)只会玩一个游戏,有专门玩《吃豆人》的,有专门玩《打砖块》的,有专门玩《乒乓球》的。如果让学会了《打砖块》的AI去玩《吃豆人》,那就会捡了芝麻丢了西瓜,等它学会《吃豆人》,就把《打砖块》给忘了。
直到去年3月,DeepMind才研究出新的算法,让AI学会《吃豆人》后不忘记《打砖块》怎么玩。
但在让1个AI学57个游戏时,DeepMind遇到了问题:
每个游戏的计分机制不同,奖励尺度也不同,AI只挑得分高的玩。
△ 乒乓球
拿玩乒乓球(Pong) 的游戏来举栗,每一步有三种可能的奖励:
-1:AI没接住对方发来的球,不仅没挣分,反而倒贴一分;
0:AI接住了球,进入了敌我双反循环往复的弹球过程,努力却没有收获;
+1:AI费了半天劲,终于让对方失手一次,才能得1分,名义上是1分,实际这1分来之不易。
但如果AI选择去玩吃豆人,只要一出门,就可以吃到一连串的豆豆,轻轻松松获得几十上百分,分多、事少、易上手。
之后每走一步 (转弯) ,可能的奖励就有很多种了:也许往前一格就死了,也许走十几格都没遇到敌人,也许无敌状态下吃掉几只敌人,分数会很不一样。
于是,只要不被敌人抓到,吃豆的奖励明显比打乒乓球高得多。
AI每天沉迷吃豆,忘记打球,醉心于一小部分游戏,全然不顾身上还肩负着代表全AI界、学会全部57个雅达利游戏的重任。
这该如何是好?
DeepMind想了想,推出了给智能体“修改KPI”的大杀器:
PopArt。
具体怎么玩?
PopArt技术,可以让不同游戏的奖励尺度互相适应起来,两个游戏就能受到相对平等的对待。
如此,就算分值的数量级相差很多,也不要紧。
研究人员用PopArt调教了当前最先进的强化学习智能体,使得一只AI可以学会57种雅达利游戏了,表现超过了人类的中位数。
其实,深度学习靠的是不断更新的权重。这样,输出的动作就会越来越接近理想的动作。
这在深度强化学习里,也一样适用。
PopArt的工作原理,就是估算各种目标动作之间的平均值,以彼此之间的差距有多大。通过游戏分值来估算。
然后,在更新权重之前,用这些统计数据,把目标动作归一化。
这样一来,学习过程就会变得比较稳定,不容易因为奖励尺度之类的因素而发生改变。
那么,怎样才能估计得准?
网络的输出值,可以重新调回真实目标的范围 (True Target Range) ,只要把归一化过程倒过来就好了。
如果写代码不仔细,统计数据会把所有没归一的输出全改了,就算是用不着归一就已经很好用的那种,也会改掉。
要预防这种情况,DeepMind找到了一个方法,每次更新统计数据的时候,都把网络朝着反方向更新一下。
这种操作会成功,表示调整奖励尺度 (同时,把之前学过的输出就留在那里不动) ,还是有用的。
团队说,之所以给AI起名PopArt (波普艺术) ,用意就是保存老的,加上新的。
PopArt替代的是奖励剪裁 (Reward Clipping) 。
一般来说,遇到奖励尺度不同的情况,研究人员会选择剪裁一下奖励。
把太大的和太小的,都调整到 [-1, 1] 的区间里,这是归一化的粗糙版。
虽然,这个方法学习起来更容易,但学习目标也会发生变化。
还是吃豆人的游戏,目标就是吃豆和吃敌人,每颗豆10分,吃掉敌人会获得200到1,600不等的分数。
剪裁奖励的话,吃豆和吃敌人可能就没区别了。这样训练出来的AI,很可能只吃豆,完全不去追敌人,毕竟吃豆容易。
这时候用PopArt归一化,来代替剪裁步骤,训练效果就截然不同了。智能体会去追敌人了,得的分数也高了许多。
实验结果
最后,研究人员将PopArt应用于Importance-weighted Actor-Learner Architecture (IMPALA)中,这是DeepMind此前提出的、最常用的深度强化学习智能体。
在ALE模拟器中,研究人员测试了57种Atari游戏中,智能体在奖励剪裁和未剪裁两种情况下,应用PopArt前后的得分情况。
△ 奖励剪裁后的得分情况
△ 奖励未剪裁的得分情况
可以看出,橙色的PopArt-IMPALA平均表现为人类正常得分中位数的110%,未剪裁版中的平均得分为人类水平的101%,可以看出,无论剪裁与否,PopArt都能提高智能体在游戏中的得分。
蓝色未应用PopArt的IMPALA智能体表现比较糟糕,无论是否经过了剪裁。剪裁后的基线总水平不足人类得分中位数的60%,未剪裁时的得分接近0%,与PopArt-IMPALA的表现形成了鲜明的对比。
此外,由于多任务PopArt使用了特定级别值增加了网络容量,因此研究人员进行了额外的实验,想解开增加网络容量对自适应归一化的影响。图中粉色的MultiHead-IMPALA走势,就是研究人员用特定级别的值预测,但不使用PopArt自适应标准化学习得到的结果。
实验表明,无论是否剪裁,MultiHead-IMPALA的表现都比IMPALA略差,这证实了PopArt-IMPALA的性能提升确实是源于自适应规模的变化(adaptive rescaling)。
研究人员还研究了每种智能体处理的总帧数的曲线。此前,DeepMind发布了任务集合DmLab-30,包含公共动作空间的视觉统一环境中的多种挑战性任务,训练智能体再好不过。
在这里,研究人员还是用自家的DmLab-30基准衡量应用了PopArt策略的效果优异程度。图中每一片颜色区域代表了最优得分和最差得分区间。可以看出,在家DMLab-30任务集合上训练时,仍然为PopArt策略下的智能体表现最好。
综上所述,与没有PopArt的基准智能体相比,PopArt大大提高了智能体的性能。无论奖励是否剪裁,PopArt智能体在游戏中的中位数得分高于人类中位数,远远高于结合了剪裁奖励的基准智能体。而具有未剪裁奖励的基线无法得出有意义的表现,因为它无法有效处理游戏中奖励规模的大幅度变化。
传送门
最后,附DeepMind官方博客地址:
https://deepmind.com/blog/preserving-outputs-precisely-while-adaptively-rescaling-targets/
论文Multi-task Deep Reinforcement Learning with PopArt地址:
https://arxiv.org/abs/1809.04474