专栏首页AI科技大本营的专栏前沿 | DeepMind改进超参数优化:遗传算法效果超越贝叶斯

前沿 | DeepMind改进超参数优化:遗传算法效果超越贝叶斯

编译 | 林椿眄

从围棋、Atari游戏到图像识别、语言翻译领域,神经网络都已经取得了重大的突破。但是,经常被人忽略的是,神经网络的成功是在特定的应用情景下所取得,这些情景通常是在一系列研究的开始就确定好了的设置,包括所使用的神经网络的类型,所使用的数据以及训练的方法等。如今,这些设置,也被称为超参数,通常可以通过经验,随机搜索或者大规模的研究过程来决定。

在最新发表的文章中,我们介绍了一种新的训练神经网络的方法,这种方法能够帮助研究者快速地选择最适用于此任务的超参数和模型

这种技术,被称为基于种群的训练方法(PBT),能够同时训练并优化一些的神经网络,以便快速地寻找到最佳的网络配置。更重要地是,这种方法不会增加计算的成本,能够像传统方法那样快速地得到结果,还能很容易地整合到现有的机器学习方法中。

该技术是两种最常用的超参数优化方法的混合体:随机搜索和手动微调法

在随机搜索法中,一群神经网络会被同时独立地训练,并在训练结束后选出训练性能最佳的那个模型。通常情况下,只有很少一部分的神经网络训练后能够得到良好的超参数配置,而绝大部分神经网络训练后得到的超参数都是不良的,这无疑是在浪费计算力资源。

超参数的随机搜索法,就是同时独立地训练多种超参数。有些超参数会使得模型表现出好的性能,而有些则不会。

使用手动微调法,研究者必须要推测到最佳的超参数设置,使用它们来训练模型并评估模型的性能。这步骤需要反复的进行,直到得到令人满意的网络性能。尽管这样能够得到较好的性能,但这种方法的弊端就是需要消耗很长的时间,有时候需要花费数周甚至数月的时间才能得到良好的超参数设置。此外,虽然存在一些方法能够自动进行微调步骤,如贝叶斯优化,它仍需要花费很长的时间,并要连续多次地训练模型,才能得来得到最佳的超参数设置。

诸如手动微调和贝叶斯优化的方法,都是通过连续地多次训练过程来对超参数做出调整,这使得这些方法变得耗时。

基于种群的训练方法,和随机搜索法一样,可以用随机超参数来同时训练多个神经网络。但不同于网络的独立训练,它使用剩余种群的信息来改善超参数,并对有前景的模型分配进行资源计算。这是从遗传算法中得到的灵感,种群中的每个成员称为工人,它们能够从种群的剩余部分中挖掘出信息。例如,一个工人可以复制另一个工人的模型参数,也可以随机改变参数当前值来探索新的超参数配置。

随着种群神经网络的训练进行,周期性地挖掘和探索超参数配置,能确保种群里所有的工人能够有一个好的基础性能,并且新的超参数都能够被探索到。这意味着基于种群的训练方法能够快速地挖掘到良好的超参数,从而集中训练更有前途的模型。更重要的是,它能够在训练过程适应超参数的值,自动学习到最好的超参数配置。

基于种群的神经网络训练方法,像随机搜索法一样开始训练,还能允许一个工人挖掘其他工人的部分结果并在训练过程探索新的超参数。

我们的实验表明,基于种群的训练方法在大量的任务和领域都表现出非常高效的性能。例如,我们严格地在一系列充满挑战性的强化学习问题上测试了我们的算法,如DeepMind实验室最先进的方法,雅达利(Atari)和星际争霸2(StarCraft II)。所有的情况下,基于种群的训练方法都能够稳定地训练,快速地发现良好的超参数,并能得到超越当前最佳基准的结果。

我们还发现,基于种群的训练方法能够更有效地训练生成对抗网络。这是个众所周知很难进行微调的难题。具体地说,我们使用基于种群的训练框架来最大化Inception Score值,一种视觉保真度的度量。对此,结果有显著的改善,Inception Score值从6.45增至6.9。

我们还将该算法应用到Google的一个最先进的用于机器翻译的神经网络,这个神经网络通常需要花费数月的训练时间,才能在训练过程认真地手动微调超参数配置来得到最佳的模型性能。利用基于种群的训练方法,我们能够自动发现超参数配置,得到能够匹配于甚至超过当前性能的结果而不需要做任何调整,同时还只需要一个单一的训练过程就能得到结果。

运用种群算法,我们在CIFAR-10数据库训练GANs和Ms Pacman数据库训练Feudal Networks (FuN)的变化情况。粉红色的点代表初始状态,蓝色的店则代表最终状态。

我们相信这仅仅是该技术的一个开始。在DeepMind,我们还发现基于种群的训练方法在训练新算法和新增超参数的神经网络结构方面特别有用。在进一步改善过程中,基于种群的训练方法将在发现和发展更复杂、更有用的神经网络模型方面,拥有更有的可能性。

这项工作由Max Jaderberg, Valentin Dalibard, Simon Osindero, Wojciech M. Czarnecki, Jeff Donahue, Ali Razavi, Oriol Vinyals, Tim Green, Iain Dunning, Karen Simonyan, Chrisantha Fernando and Koray Kavukcuoglu完成。

原文链接: https://deepmind.com/blog/population-based-training-neural-networks/

本文分享自微信公众号 - AI科技大本营(rgznai100),作者:学术前沿

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-11-28

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 20篇最值得一读的深度推荐系统与CTR预估论文

    微博上近日流传一个段子,“2020年曾是各大科幻片中遥远的未来,但是现在离这个遥远的未来也只有6个月时间了”。只是借此感慨一下2019年转瞬之间半年的时间已经过...

    AI科技大本营
  • DeepMind到底是如何教AI玩游戏的?这篇在Medium上获得1700个赞的文章,把里面的原理讲清楚了

    一篇顶十篇!想入门强化学习,专心研读这篇对DeepMind经典论文的解析就够了 作者 | Aman Agarwal 编译 | Shawn 编辑 | 鸽子、焦燕...

    AI科技大本营
  • 代码测试意味着完全消灭了Bug?

    我使用过的一些最难用的代码是“易于测试”的代码。代码将所有内容抽象到开发者难以想象发生了什么的程度,只是为了向原本非常简单的函数中添加“单元测试”。DHH 称这...

    AI科技大本营
  • maven: 打包可运行的jar包(java application)及依赖项处理

    IDE环境中,可以直接用exec-maven-plugin插件来运行java application,类似下面这样: 1 <plugin> 2 <g...

    菩提树下的杨过
  • 巧用 Cowrie 部署 SSH 蜜罐,让黑客攻击无处遁形!

    蜜罐其实就是一台无人使用但却被严密监控的网络主机,里面包含着各类虚假的高价值资源和一些已知漏洞,以此吸引入侵者来入侵该主机。并且在被入侵的过程中,实时记录和审计...

    iMike
  • 前端面试题-url、href、src

    比如网址 http://segmentfault.com/html/...,必须遵守以下的语法规则:

    WEBING
  • R语言系列第五期:④R语言与生存分析

    对于寿命数据的分析,在生物学和医药学中是非常重要的话题。除此之外,在工程应用中的可靠性分析中也非常重要。寿命数据往往是高度非正态数据,因此使用标准的线性模型可能...

    百味科研芝士
  • eclipse maven could not resolve archetype之类的错误

    http://repo1.maven.org/maven2/archetype-catalog.xml

    ydymz
  • R语言系列第五期:④R语言与生存分析

    对于寿命数据的分析,在生物学和医药学中是非常重要的话题。除此之外,在工程应用中的可靠性分析中也非常重要。寿命数据往往是高度非正态数据,因此使用标准的线性模型可能...

    微点
  • Maven打包三种方法 转

    Maven可以使用mvn package指令对项目进行打包,如果使用Java -jar xxx.jar执行运行jar文件,会出现"no main manifes...

    stys35

扫码关注云+社区

领取腾讯云代金券