炼数成金 门户 商业智能 强化学习 查看内容

通过机器学习发现神经网络优化器

2018-4-25 13:50| 发布者: 炼数成金_小数| 查看: 15462| 评论: 0|来自: TensorFlow

摘要: 如今,许多 Google 产品(例如搜索、翻译和照片)中都已部署深度学习模型。在训练深度学习模型时,优化方法的选择至关重要。例如,随机梯度下降法在许多情况下都很有效,但如果有更先进的优化器,速度可以更快,特别 ...

网络 工具 模型 架构 神经网络

如今,许多 Google 产品(例如搜索、翻译和照片)中都已部署深度学习模型。在训练深度学习模型时,优化方法的选择至关重要。例如,随机梯度下降法在许多情况下都很有效,但如果有更先进的优化器,速度可以更快,特别是在训练非常深的网络时。不过,由于优化问题的非凸特性,为神经网络提供新优化器十分困难。于是,Google Brain 团队着手一项研究,看看是否有可能像使用 AutoML 发现新的竞争性神经网络架构那样自动发现新优化器。

在“Neural Optimizer Search with Reinforcement Learning”中,我们提出了一种以深度学习架构为重点发现优化方法的方法。通过这种方法,我们发现了两个新的优化器,PowerSign 和 AddSign,它们在各种不同的任务和架构上都具有竞争力,其中包括 ImageNet 分类和 Google 的神经机器翻译系统。为了帮助其他人从这项研究中受益,我们已将这些优化器添加到 Tensorflow 中。

神经优化器搜索使用递归神经网络控制器,实现对与优化相关的简单原语列表的访问。例如,这些原语包括梯度或梯度的运行平均值,导致搜索空间的可能组合数超过 1010。控制器随即为该搜索空间中的候选优化器或更新规则生成计算图。

在我们的论文中,提出的候选更新规则 (U) 用于在 CIFAR10 上将子卷积神经网络训练几个周期,最终验证准确性 (R) 作为奖励馈送给控制器。控制器通过强化学习训练,以较大限度提高采样更新规则的验证准确性。此过程如下图所示。


使用迭代过程发现新优化器的神经优化器搜索的概览

有趣的是,我们找到的这些优化器都是可解释的。例如,在我们发布的 PowerSign 优化器中,每次更新都会比较梯度符号及其运行平均值,并根据这两个值是否一致来调整步长。可以直观理解为,如果这些值一致,那么它对正确的更新方向更为确定,因此步长可以更大。我们还发现了一个简单的学习率衰减方案 - 线性余弦衰减,这种方案可以加快收敛速度。


线性余弦衰减、阶梯衰减和余弦衰减的学习率衰减函数对比图

神经优化器搜索找到的几个优化器在性能上超越了小型 ConvNet 模型中常用的优化器。在可以顺利迁移到其他任务的优化器中,我们发现 PowerSign 和 AddSign 将较先进的 ImageNet 移动设备模型的 top-1 和 top-5 的准确性提高了 0.4%。它们在 Google 的神经机器翻译系统中也运行良好,英语到德语翻译任务的双语评估指标 (BLEU) 提高了 0.7。

令人兴奋的是,神经优化器搜索不仅可以提高机器学习模型的性能,还可能发现新的可解释方程和发现。我们希望在 Tensorflow 中开源这些优化器将对机器学习从业者有所帮助:
https://tensorflow.google.cn/api_docs/python/tf/contrib/opt

欢迎加入本站公开兴趣群
商业智能与数据分析群
兴趣范围包括各种让数据产生价值的办法,实际应用案例分享与讨论,分析工具,ETL工具,数据仓库,数据挖掘工具,报表系统等全方位知识
QQ群:81035754

鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论

热门频道

  • 大数据
  • 商业智能
  • 量化投资
  • 科学探索
  • 创业

即将开课

 

GMT+8, 2018-6-18 15:57 , Processed in 0.173648 second(s), 26 queries .