AutoML算法分析(一):基于强化学习的算法
AutoML是什么
顾名思义,Auto:Automated自动的;ML:Machine Learning机器学习. 因此AutoML即为自动机器学习。
对于机器学习的算法工程师而言,设计适用于特定问题的机器学习模型是一个非常复杂的任务。需要选择相应的神经网络架构、训练过程、正则化方法、超参等,这些都对最终的性能有很大的影响,需要不断尝试。因此深度学习算法工程师也被称为调(炼)参(丹)工程师。
AutoML的目标就是使用自动化的、数据驱动方式来做出上述的决策。用户只要提供数据,通过足够的算力,系统自动决定最佳的方案。各个领域专家不再需要苦恼于学习各种机器学习算法。
在AutoML领域,当前引起学者关注最多的便是NAS(Neural Architecture Search,网络结构搜索),对应的算法也非常之多。在automl.org上已经列出了两百多篇相关论文:
https://www.automl.org/automl/literature-on-neural-architecture-search/
对应的算法大致可以分为三类:
- 基于RL(Reinforcement Learning, 强化学习)的离散搜索算法:NASNet,ENAS
- 基于进化算法(如遗传算法,蚁群算法,模拟退火等)的离散搜索算法:CARS,EENA
- 基于梯度下降的连续可微搜索算法:DARTS,FBNet
本文主要介绍第一类,基于RL的离散搜索算法。
基于RL的NAS算法
这类算法中比较优秀的是Google Brain 2018年在Learning Transferable Architectures for Scalable Image Recognition中提出的NASNet,流程如下图所示。整个结构由controller和validator组成,迭代步骤:
- controller负责采样child网络
- 采样结果交给validator评估accuracy
- 评估的accuracy作为reward去训练controller
- 返回第一步进行循环,直到达到结束条件(达到采样个数或者accuracy达标)

最终花费了2000 GPU hours搜索得到了一系列的结构,表现优异,在相同参数量/计算量下,accuracy能达到当时的最好水平,超越了Inception,ResNet,MobileNet,SENet等一系列优秀网络。


最终搜索到的网络结构:

其中,normal cell和reduction cell分别为:

后续再介绍其他类型的NAS算法。
联系我:guanxs_ai@126.com
公众号:AI人工智能与大数据

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)