深度强化学习
来源:WANN论文,awesone-automl-paper
编辑:DeepRL
最近,谷歌大脑David Ha等人的论文《Weight Agnostic Neural Networks》占据了学术各大头条,引爆了机器学习圈。其「颠覆性」的理论让人惊呼:「到头来我们对神经网络一无所知?」,但一些无知公众各种写着各种不需调参、不用学习的标题,真的是哗众取宠!Reddit 上有一些研究者认为该论文更有趣的意义在于,它也宣告了深度学习分层编码特征这一解释寿终正寝。更多讨论搜索Reddit论坛(地址见文章末尾)。本文为大家推荐一项包含了神经网络搜索等技术的AutoML方法,它是解决自动化问题的根源方法。
Part 1
WANN技术
WANN的核心思想:
为了寻找具备强归纳偏置的神经网络架构,研究者提出通过降低权重重要性的方式来搜索架构。具体步骤为:
该研究没有采用优化固定网络权重的方式,而是优化在大范围权重值上都有良好性能的架构。研究者证明,该方法可生成使用随机权重参数执行不同连续控制任务的网络。使用 权重无关的神经网络搜索创建编码解的网络架构与神经架构搜索(NAS)解决的问题有着本质上的区别。NAS 技术的目标是生成训练完成后能够超越人类手工设计的架构。从来没有人声称该解是该网络架构所固有的,而传统使用的梯度下降法训练的网络结构是固定。
搜索权重无关的神经网络WANN的流程如下:
于是,搜索到的在BipedalWalker中表现最好的网络结构如下图所示:
本质上神经网络的学习,就是搜索最优参数,只是参数的搜索可以利用到梯度信息进行辅助(网络结构固定,其实是最优化一个多目标参数过程)。但该论文的计算量在于网络结构,而结构的学习,由于惩罚值和结构之间缺乏梯度信息交互,所以大部分只能通过搜索来做,以下是论文的计算资源:96-core CPU
论文博客地址: https://weightagnostic.github.io/ 论文arxiv: https://arxiv.org/pdf/1906.04358.pdf
然而这种计算资源,普通的研究者都不能够满足,所以接下来介绍使用AutoML(包含了前面的网络搜索技术)技术,以便帮助大家在方法上有新的创新。
Part 2
AutoML
传统上,术语AutoML用于描述模型选择和/或超参数优化的自动化方法。这些方法适用于许多类型的算法,例如随机森林,梯度提升机器(gradient boosting machines),神经网络等。AutoML领域包括开源AutoML库,研讨会,研究和比赛。初学者常常觉得他们在为模型测试不同的超参数时通常仅凭猜测,而将这部分过程的自动化可以使机器学习变得更加容易。即使是对经验丰富的机器学习从业者而言,这一自动化过程也可以加快他们的速度,过程结构如下所示:
目前,业内现存有许多AutoML库,其中最早出现的AutoWEKA,它于2013年首次发布,可以自动选择模型和超参数。其他值得注意的AutoML库包括auto-sklearn(将AutoWEKA拓展到了python环境),H2O AutoML和TPOT。AutoML.org(以前被称为ML4AAD,Machine Learning for AutomatedAlgorithm Design)小组,自2014年以来一直在ICML机器学习学术会议上组织AutoML研讨会。
那么AutoML包含了那些内容呢?下图是一张思维导图:
目前由很多公司已经开源了一部分库(后续陆续更新),大致如下:
其中AutoML所做的内容包含了以下:
今天为大家推荐一本新书 《Automatic Machine Learning: Methods, Systems, Challenges》
该书由Frank Hutter, Lars Kotthoff, Joaquin Vanschoren撰写,221页的草稿版本已经放出,详细讲解了所有AutoML系统背后的基础知识,以及对当前AutoML系统进行了深入描述,Auto-WEKA、Hyperopt-Sklearn、Auto-sklearn等,最后介绍了AutoML的挑战。以下是书的目录(网络搜索见第3章)
Reddit关于WANN讨论地址:
https://www.reddit.com/r/MachineLearning/comments/bzka5r/r_weight_agnostic_neural_networks/
原文详情:AutoML