资讯 人工智能
此为临时链接,仅用于文章预览,将在时失效

Uber论文5连发宣告神经演化新时代,深度强化学习训练胜过SGD和策略梯度

作者:杨晓凡 编辑:郭奕欣
2017/12/21 17:47

雷锋网 AI 科技评论按:一直低调的 Uber AI 研究院近日连发 5 篇论文,介绍了他们在基因算法(genetic algorithm)、突变方法(mutation)和进化策略(evolution strategies)等神经演化思路方面的研究成果,同时也理论结合实验证明了神经演化可以取代 SGD 等现有主流方法用来训练深度强化学习模型,同时取得更好的表现。

Uber论文5连发宣告神经演化新时代,深度强化学习训练胜过SGD和策略梯度

神经演化(Neuroevolution)是一种符合直觉的、近年正在重新获得关注的机器学习研究思路。生物进化是在繁衍中不断产生突变、不断出现带有新的特性的个体,然后整个种群中能适应环境的个体生存下来、不能适应环境的就被淘汰。机器学习领域的研究者们就已经反复尝试过用这样的思路探索高效的神经网络架构(不再凭研究人员的直觉去设计),比如初始化一百个互相之间略有区别的网络,训练以后选出表现最好的那个,然后再拷贝出 100 个它的带有小的随机改变的副本(模拟生物进化中的突变),进行下一轮测试筛选和带突变复制;前沿学术研究机构谷歌大脑(Google Brain)的负责人 Jeff Dean 也表示过神经演化是一个非常有潜力的研究方向(另一个他觉得很有潜力的方向是稀疏激活的网络)。

但是根据这样反复变化+筛选的过程,我们已经可以推断出用神经演化搜索神经网络架构是一件非常耗费计算能力的事情,所以目前为止能得到的网络规模也不大、完成的任务也不够复杂。雷锋网 AI 科技评论前段时间也报道过一篇在减小计算能力需求方面做出了很大进步的论文《进化算法可以不再需要计算集群,开普敦大学的新方法用一块 GPU 也能刷新 MNIST 记录》。

而这次 Uber 的论文探索了神经进化的另一种用法,就是用它训练神经网络。比如对于架构固定的神经网络,用基于神经进化思路的微小扰动和突变改变连接权重,从而实现了网络的训练。并且他们新开发的技术可以让网络高效地进化,并在某些应用下取得了比基于传统基于梯度的方法(SGD 和策略梯度)更好的表现。雷锋网 AI 科技评论把 Uber AI 研究院综述博文和论文简介编译如下。

Uber论文5连发宣告神经演化新时代,深度强化学习训练胜过SGD和策略梯度

在深度学习领域,大家已经习惯了用随机梯度下降 SGD 来训练上百层的、包含几百万个连接的深度神经网络。虽然一开始没能严格地证明 SGD 可以让非凸函数收敛,但许多人都认为 SGD 能够高效地训练神经网络的重要原因是它计算梯度的效率很高。

不过在 Uber 看来,SGD 虽然热门,但它不一定总是最好的选择。近日 Uber 就一口气发布了关于神经演化(Neuroevolution)的 5 篇论文,其中的训练方法不再是 SGD,而是进化算法;他们的研究结果表明,进化算法同样可以高效地为强化学习模型训练深度神经网络。对 Uber 来说,能够借助数据持续自我改进的机器学习模型已经在他们的业务中占据了不少地位,而开发出多种多样的强有力的学习方法(比如神经进化算法)就能够帮助他们更好地达成自己「开发更安全、更可靠的交通解决方案」的目标。

基因算法是训练深度神经网络时有竞争力的替代方案

借助新开发出的技术,Uber AI 的研究人员已经可以让深度神经网络高效地进化。同时他们也惊讶地发现,一个非常简单的基因算法(genetic algorithm)就可以训练带有超过四百万个参数的卷积网络,让它能够直接看着游戏画面玩 Atari 游戏;这个网络可以在许多游戏里取得比现代深度强化学习算法(比如 DQN 和 A3C)或者进化策略(evolution strategies)更好的表现,同时由于算法有更强的并行能力,还可以运行得比这些常见方法更快。

这个结果令人十分惊喜,一个原因是基因算法并不是基于梯度的,此前也没人期待它对于四百万个参数这样大的参数空间还有很好的拓展性;另一个原因是,用简单的基因算法就能达到与顶级的现代强化学习方法同等甚至更好的表现,此前也没人觉得这事有任何可能性。

Uber AI 的研究人员们进一步的研究表明,现代的一些基因算法改进方案,比如新颖性搜索算法(novelty search)不仅在基因算法的效果基础上得到提升,也可以在大规模深度神经网络上工作,甚至还可以改进探索效果、对抗带有欺骗性的问题(带有有挑战性的局部极小值的问题);Q-learning(DQN)、策略梯度(A3C)、进化策略、基因算法之类的基于反馈最大化思路的算法在这种状况下的表现并不理想。

Uber论文5连发宣告神经演化新时代,深度强化学习训练胜过SGD和策略梯度

基因算法可以在 Frostbite 游戏中玩到 10500 分;而 DQN、A3C 和进化策略的得分都不到 1000 分。

通过计算梯度做安全的突变

在另一篇论文中,Uber AI 的研究人员们展示出可以把梯度结合在神经演化中,提升它进化循环神经网络和非常深的深度神经网络的能力。这样一来,超过一百层的深度神经网络也可以进化,这要比之前的神经演化研究中得到的结果高出一个数量级。作者们的方法是计算网络输出关于连接权重的梯度(并不是传统深度学习中计算训练误差的梯度),从而可以对随机突变进行调节,对于最敏感那些的网络参数也就可以处理得比以往精细得多。这样一来就解决了以往大规模神经网络中的随机突变效果不好的问题。

Uber论文5连发宣告神经演化新时代,深度强化学习训练胜过SGD和策略梯度

两张动图展示的是同一个网络的两类不同的突变结果,它的目标是传过这个迷宫(从左下角出发,目标点在左上角)。一般的突变在多数情况下都会让模型失去走到迷宫尽头的能力,而安全突变就很大程度上把这种能力保留了下来,同时还达成了一定的多样性。这组对比就展示出了安全突变的明显优势。

进化策略 ES 和 SGD 之间有何联系

这项研究是对研究领域中已经出现的技巧运用的补充。OpenAI 的研究人员们首先注意到,神经演化中的各种进化策略(evolution strategy)可以用来优化深度神经网络,尤其在深度强化学习任务中可以取得有竞争力的表现。不过目前为止这个结果更广泛的意义和作用都还仅限于大家的猜测中。

在这项研究中,Uber AI 的研究人员们把注意力放在进化策略的进一步创新上,他们在 MNIST 数据集上进行测试,看看进化策略近似计算出的梯度和 SGD 算出的每个 mini-batch 的最优梯度到底有多大区别,以及它们之间的区别需要保持在什么程度才能让进化策略发挥出良好表现。实验表明,只要提供了足够计算资源用来提高梯度近似计算的质量,进化策略可以在 MNIST 上达到 99% 准确率。这同时也解释了为什么进化策略越来越成为深度强化学习领域的重要方法,就是因为随着并行计算的程度越来越高,没有什么方法可以有获得完美的梯度信息的“特权”,那么只需近似的梯度就能发挥良好表现的进化策略在这时就会体现出优势。

进化策略 ES 不仅仅是一个传统的带来有限数目的不同结果的方法

这项研究进一步拓展了对进化策略的理解。通过实证实验表明,在足够多的参数受到扰动时,进化策略的表现和 SGD 有所不同,因为进化策略优化的目标是由一个概率分布(体现为搜索空间中的点云)描述的策略群落的预期回报,而 SGD 优化的目标是单独一个策略的预期回报(搜索空间中的一个点)。 这种区别就会让进化策略更多地在搜索空间中的不同位置上走来走去,不管最后的结果是更好还是更糟(两种情况在论文中都有详细介绍)。

为一个群落的参数扰动做优化还带来另外一个结果,就是进化策略训练出的模型要比 SGD 训练出模型的健壮性好得多。进化策略优化一个参数群落的特点也体现出了进化策略和贝叶斯方法之间的有趣联系。

Uber论文5连发宣告神经演化新时代,深度强化学习训练胜过SGD和策略梯度

传统的带来有限个不同结果的方法(梯度下降)没法穿过一个狭窄的不适应区(黑色),而进化策略就可以轻松地穿过它,来到另一侧高适应性(高亮)的区域。

Uber论文5连发宣告神经演化新时代,深度强化学习训练胜过SGD和策略梯度

但另一方面,当适应区变得越来越狭窄时,进化策略会止步不前;传统的带来有限个不同结果的方法(梯度下降)就可以正常地沿这个方向走下去。前后这两张图就共同表明了这两类方法之间的异同点和需要做出的取舍。

改进进化策略的探索能力

深度神经演化方面的研究带来一个非常讨人喜欢的结果,那就是本来为神经演化开发的各种工具如今都可以用来增强深度神经网络的训练过程。Uber AI 的研究人员们开发了一种新算法,它可以把进化策略的优化能力和可拓展性与神经演化中独有的方法结合起来,用一个鼓励各自做出不同行为的智能体群落提升强化学习任务中的探索能力。

这种基于群落的探索方式和传统强化学习中只有一个智能体进行探索的做法有很大不同,其实乃至近期的关于深度强化学习的探索能力的研究都只靠一个智能体进行探索。Uber AI 的研究人员们通过实验表明,增加的这种新的探索方式可以提高进化策略在许多领域的表现,包括一些 Atari 游戏、模拟器中的仿人类行走,在这些任务中都需要躲开具有欺骗性的局部极小值。

Uber论文5连发宣告神经演化新时代,深度强化学习训练胜过SGD和策略梯度

这个智能体的目标是尽量往前走。原本的进化策略一直都没能学会躲开这个欺骗性的陷阱。而新算法支持下的智能体身背着探索的压力,就学会了如何躲开陷阱。

结论

对于有兴趣往深度神经网络方面多做探索的神经演化研究者们来说,有这么几件重要的事情需要考虑:首先,这些实验需要的计算量要比以往大得多,Uber 这几篇新论文中的实验,往往需要在上百个甚至上千个同步的 CPU 集群上运行。不过,对更多 CPU 和 GPU 性能的渴求不应该被看作是对研究的阻碍。长远来看,把演化算法拓展到大规模并行计算机系统上有很好的便捷性,也就意味着神经演化很有可能是最能在未来世界中占到好处的算法。

这些新结果和以往在低维神经演化研究中得到的结果大有不同,它们推翻了这些年以来人们对神经演化的直觉,尤其为高维空间的搜索带来了全新的启示。就像人们在深度学习中发现的一样,一旦方法的复杂度超过了某个阈值,高维空间的搜索好像反倒更容易了,因为它对局部极小值不再那么敏感了。深度学习领域的研究者们当然已经对这种思考方法习以为常,不过神经演化领域的研究者们还只是刚刚开始消化这些见解。

旧算法和现代的海量计算能力结合起来就可以带来好得令人惊讶的结果,神经演化的重新复兴就是又一个有力的例子。神经演化方法的活力也很让人感兴趣,因为神经演化研究界开发出的许多技巧可以直接用在深度神经网络尺度的网络中,为有挑战性的问题带来各种各样的工具。更进一步地,正如 Uber AI 在论文中展示的,神经演化的搜索方法和 SGD 的搜索方法不一样,从而也给机器学习的各种方法里新增了一个有趣的替代方案。Uber AI 已经开始琢磨神经演化会不会像深度学习那样迎来一次全面复兴,如果能的话,2017 年就会是这个时代的元年,而他们也非常期待在未来的几年里神经演化领域还能产生哪些精彩成果。

五篇新论文简介

《Deep Neuroevolution: Genetic Algorithms are a Competitive Alternative for Training Deep Neural Networks for Reinforcement Learning》

    https://arxiv.org/abs/1712.06567 

    深度神经进化:在强化学习中,基因算法是训练深度神经网络的有竞争力的替代方案

重点内容概要:

《Safe Mutations for Deep and Recurrent Neural Networks through Output Gradients》

    https://arxiv.org/abs/1712.06563 

    通过输出梯度在深度神经网络和循环神经网络中安全地进行突变

重点内容概要:

《On the Relationship Between the OpenAI Evolution Strategy and Stochastic Gradient Descent》

    https://arxiv.org/abs/1712.06564

    对 OpenAI 的进化策略和随机梯度下降之间的关系的讨论

重点内容概要:

《ES Is More Than Just a Traditional Finite Difference Approximator》

    https://arxiv.org/abs/1712.06568

    进化策略远不止是一个传统的带来有限个结果的近似方法

重点内容概要:

《Improving Exploration in Evolution Strategies for Deep Reinforcement Learning via a Population of Novelty-Seeking Agents》

    https://arxiv.org/abs/1712.06560

    通过一个寻找新颖性的智能体群落,改进用于深度强化学习的进化策略的探索能力

重点内容概要:

via Uber Engineering Blog,雷锋网 AI 科技评论编译

相关文章:

即使自动驾驶前途未卜,Uber还是建了一座模拟城市进行测试

Uber博客刚刚发文:展示其自动驾驶中的可视化工具

进化算法可以不再需要计算集群,开普敦大学的新方法用一块GPU也能刷新MNIST记录

谷歌最新研究成果:手工搭建神经网络太费劲?来试试精确度高达94.1%的进化算法

长按图片保存图片,分享给好友或朋友圈

Uber论文5连发宣告神经演化新时代,深度强化学习训练胜过SGD和策略梯度

扫码查看文章

正在生成分享图...

取消
相关文章