大家好,欢迎来到专栏《AutoML》,在这个专栏中我们会讲述AutoML技术在深度学习中的应用,这一期讲述在优化方法选择中的应用。

作者&编辑 | 言有三

要成功训练一个深度学习模型,正确的优化策略是非常重要的,如果使用不当结果会产生很大的差异,今天来介绍AutoML与优化相关的问题。

1 Neural Optimizer Search

Neural Optimizer Search[1]是一个自动搜索优化方法的框架,它使用强化学习方法设计的RNN结构控制器进行学习,该控制器在每一步中给优化器生成权重更新方程,从而实现最大化模型准确率,示意图如下:

在搜索空间中包含sgd,rmsprop,adam等优化方法,这些方法都可以被表示为一个相同结构的树,如下:

因此一个优化器的应用可以被表示为5个操作,分别是选择op1,op2,两个操作的幅度函数u1,u2,以及最后对这两个操作的综合。

因此,不管选择什么优化器,完成一次优化步骤都是要做以上的5次操作,那么如果可以学习到这5次操作,就完成了一个优化器的搜索,搜索流程如下:

RNN控制器每一次选择长度为5的子序列,如上图。搜索空间如下,具体操作解释可以阅读原文,使用的时候还有一些约束,比如树的左右两个操作不能相同等。

经过在CIFAR10数据集上对一个2层的简单网络进行学习后,它们搜索到了一些有效的优化器,如下图的PowerSign以及AddSign。

当然,研究者们还对衰减机制也进行了搜索学习,感兴趣的读者可以去阅读原文。

最后,研究者们还将PowerSign和AddSign迁移到了ImageNet分类任务和谷歌机器翻译系统,发现它们具有非常好的泛化能力,这使得该框架具有非常大的应用价值。

2 其他

Neural Optimizer Search并不是率先对自动优化器的设计进行学习的框架,在上个世纪[2]研究人员就在思考如何让算法自我学习,自动寻找更好的算法。

文[3-5]也致力于获得更好的更新规则,不过Neural Optimizer Search搜索的是函数的组合而不是具体的数值更新,原理更加清晰并且有更好的泛化能力。如今Meta learning等领域是学界比较有潜力的方法,感兴趣的同学可以自行深入学习。

[1] Bello I, Zoph B, Vasudevan V, et al. Neural optimizer search with reinforcement learning[C]//Proceedings of the 34th International Conference on Machine Learning-Volume 70. JMLR. org, 2017: 459-468.

[2] Bengio S, Bengio Y, Cloutier J. Use of genetic programming for the search of a new learning rule for neural networks[C]//Proceedings of the First IEEE Conference on Evolutionary Computation. IEEE World Congress on Computational Intelligence. IEEE, 1994: 324-327.

[3] Li K, Malik J. Learning to optimize[J]. arXiv preprint arXiv:1606.01885, 2016.

[4] Andrychowicz M, Denil M, Gomez S, et al. Learning to learn by gradient descent by gradient descent[C]//Advances in neural information processing systems. 2016: 3981-3989.

[5] Wichrowska O, Maheswaranathan N, Hoffman M W, et al. Learned optimizers that scale and generalize[C]//Proceedings of the 34th International Conference on Machine Learning-Volume 70. JMLR. org, 2017: 3751-3760.

总结

优化方法的自动学习是一个研究已久并且非常具有价值的研究方向,本篇仅做了简单介绍,感兴趣的可以内容。

下期预告:AutoML在损失函数设计中的应用。

有三AI秋季划

有三AI秋季划已经正式启动报名,模型优化,人脸算法,图像质量共24个项目,助力提升深度学习计算机视觉算法和工程项目能力。

转载文章请后台联系

侵权必究

往期文章

【AutoML】优化方法可以进行自动搜索学习吗?相关推荐

  1. 机器学习之超参数优化 - 网格优化方法(随机网格搜索)

    机器学习之超参数优化 - 网格优化方法(随机网格搜索) 在讲解网格搜索时我们提到,伴随着数据和模型的复杂度提升,网格搜索所需要的时间急剧增加.以随机森林算法为例,如果使用过万的数据,搜索时间则会立刻上 ...

  2. 【AutoML】损失函数也可以进行自动搜索学习吗?

    大家好,欢迎来到专栏<AutoML>,在这个专栏中我们会讲述AutoML技术在深度学习中的应用,这一期讲述在优化目标设计中的应用. 作者&编辑 | 言有三 一个有效的损失函数在深度 ...

  3. 04 | 函数与优化方法:模型的自我学习(上)

    目录 一.损失函数.代价函数和目标函数 损失函数与代价函数 目标函数 常用损失函数 1.0-1 损失函数 2.平方损失函数 3.均方误差损失函数 4.交叉熵损失函数 5.Softmax 损失函数 二. ...

  4. slam优化库,优化方法,G2o Ceres的学习

    文章目录 ch6 - ceres.g2o等 前言 1.G2o **1.1 代码 :[G2o: exp(ax^2+bx+c)]** **1.2 理论-原理方面:** **1.3 G2O常见函数分析** ...

  5. 机器学习调参自动优化方法

    本文旨在介绍当前被大家广为所知的超参自动优化方法,像网格搜索.随机搜索.贝叶斯优化和Hyperband,并附有相关的样例代码供大家学习. 一.网格搜索(Grid Search) 网格搜索是暴力搜索,在 ...

  6. 基于深度强化学习的组合优化方法在工业应用中的实践

    <统筹方法平话>中有一个例子曾被收录到语文课本中,讲"烧水泡茶"有五道工序:1.烧开水,2.洗茶壶,3.洗茶杯,4.拿茶叶,5.泡茶,其中前四道工序是泡茶的前提,且各道 ...

  7. 中文巨量模型“源1.0”的学习优化方法

    最近,浪潮人工智能研究院发布了中文巨量模型"源1.0",参数量达2457亿,超越美国OpenAI组织研发的GPT-3."源1.0"在语言智能方面表现优异,获得中 ...

  8. 中文巨量模型“源1.0”的小样本学习优化方法

    浪潮发布了中文巨量模型"源1.0",参数量达2457亿,超越美国OpenAI组织研发的GPT-3."源1.0"在语言智能方面表现优异,获得中文语言理解评测基准C ...

  9. 一种通过GPS判断手机漫游状态实现自动搜索连接服务商的方法

    背景技术: 目前随着生活水平的提高和国际交流越来越频繁,越来越多的用户经常出差旅游探亲 在旅途中经常遇到使用手机漫游情况,当从一地区到另一个地区时手机暂时就没有服务信号,有的手机可以自动搜索到服务商( ...

最新文章

  1. C# 多网卡 Server Listen
  2. 1291 火车线路(区间修改,区间最值)
  3. R语言-包的安装、载入及使用方法
  4. Drive.ai轰然倒下:曾估值两亿,吴恩达夫妇站台,苹果将接盘部分可用技术人才...
  5. 判断图有无环_链表:环找到了,那入口呢?
  6. 记一次网易前端实习面试
  7. SQL Server-聚焦在视图和UDF中使用SCHEMABINDING(二十六)
  8. 哪些年给我们留下记忆的IT站点
  9. 网络编程与分层协议设计:基于linux平台实现,网络编程与分层协议设计基于Linux平台实现[按需印刷]...
  10. diskgenius克隆硬盘无法启动_克隆分区
  11. oppo手机禁止自动打开应用商店
  12. error: RPC failed; curl 56 GnuTLS recv error (-9): A TLS packet with unexpected length was received.
  13. PyQt5,一个好的qt教程。
  14. 解决error: inlining failed in call to always_inline ‘int _mm_popcnt_u32(unsigned int)’
  15. 基于SpringBoot框架的HIS互联网医院门诊信息管理系统源码JAVA语言开发
  16. 容器和云原生(一):初识容器化和云原生
  17. 51单片机内部外设:定时器和计数器
  18. 因计算机而强大在线读,读书分享会丨《因计算机而强大:计算机如何改变我们的思考与学习》...
  19. 反锐化掩膜_图像反锐化掩膜算法研究解析.doc
  20. c226打印机驱动安装_小白教您电脑怎么安装打印机驱动

热门文章

  1. 一个基于 Spring Boot 的项目骨架,少造轮子!
  2. can not open include file afxwin.h :no such header fileor directory in vs 2015 c++
  3. 2021 - 9 -下旬 数据结构- 线性表 -双端循环队列 - java实现
  4. struts2中一个表单中提交多个请求(动态调用方法)
  5. java网络编程面试题
  6. Java常用类之【字符串相关类型】
  7. 【JavaSE04】Java中循环语句for,while,do···while-思维导图
  8. Activiti部署报错
  9. 两款爱不释手的markdown编辑工具
  10. Kafka事务特性详解