P小二 P小二
← 返回文章 AI Research 约 8 分钟

AutoML是未来么?

未来,AutoML能代替调参么?

最近是高考志愿填报的时间段,计算机特别是人工智能又是非常热门的填报方向。很多人担心后面5到10年,调参侠会因为AutoML的发展而丢掉工作。这里说一下我的观点,目前的AutoML不是什么大机会,但是算法API化是趋势。

什么是AutoML,只要是有任何自动化机器学习的过程都可以称为AutoML,那AutoML其实可以在自动提取特征,选择模型,设定参数等机器学习过程中发挥作用。

很多人用过xgboost的grid search 和 randomized search,但是不会认为这是一个神奇的东西,可能都不认为是AutoML。AutoML炒作最严重的部分其实是NAS的效果。但是现在的AutoML角色是有点尴尬的,浪费算力,但是承诺的效果达不到,所以在未来5-10年代替算法工程师是不可能的。

我觉得现在可以看到的趋势是用AutoML来锦上添花,当算法工程师的助手。比如,当我的网络已经训练完了,很多优化都做了,才去考虑用AutoML针对网络微调 ,对效果进行细微的提升。

AutoML常见的一些领域:

  • 超参数选择

  • 建模pipeline组合    

  • NAS

超参数选择

超参数选择一般用于结构化数据,非深度学习模型,像XGBoost可以用到的超参数搜索有

  • Grid search

  • Random Search

  • Bayesian Search

但是其实我们任何一个都可以不用,最好的方法就是随机选。

如果自己来调的话,我们会区分重要非重要的变量,区分互相影响的变量,AutoML主要的问题是很多重要的参数选不全,不重要的参数选了没什么用。可以把重要的变量选出来,如果很多的话,可以用Grid Search来选择。

如果是深度学习模型,不需要做超参数选择,训练过程中参数的选择是动态的,比如学习率的选择。

**基于经验的建模pipeline组合 **

这种pipeline组合,常见于各大机器学习平台,比如:AutoML tabular。这种很多都是表格化的数据,模型也不是深度学习模型,这种都是固定套路了。

下图为google cloud 的 automl tables

下图为google cloud 的 automl tables

**NAS **

NAS,即网络结构搜索,用来设计神经网络。其实通用的网络,好用的网络,改网络架构没什么用。NAS因为搜索空间大的问题,计算效率非常有问题,而且效果的提升有限。这种效果的提升,还不如去做数据扩充来得好。

NAS的常见子问题:

  • search space

  • search strategy

  • performance estimation startegy

搜索空间的问题,很多都是组件,不同粒度的问题,常常是从成熟的框架开始,搜索cell,不能搜索整个模块,不然搜索空间太大。

NAS是组合优化问题,求解组合优化,最常见的是遗传算法和强化学习。最关键问题是怎么把NAS变成组合优化问题。现在的效果来讲,遗传算法比强化学习更好,增强学习不稳定风险高,遗传算法只是变异,好控制,完全随机所以效果不可能有很大提升。

RENAS是遗传算法和强化学习的结合,可以去适当了解一下。Gumbel-max-trick 把ENAS问题变成一个连续可微的问题,是一个比较好的进展。

performance estimation startegy常用方法:

  • low fidelity estimates

  • learning curve extrapolation

  • network morphism

  • one-hot search

未来五到10年,AutoML应该可以当算法工程师的助手,协助网络架构的设计,避免一些坑,但是做到完全替代肯定是不行的,在被替代方面应该是不用担心。但是看到GPT3的发展,让我担心后面会变成无模型可训练,比AutoML更严重的模型API化的状态。

资源列表

  • Searching for Activation Functions

        https://arxiv.org/abs/1710.05941

  • Learning Transferable Architectures for Scalable Image Recognition

        https://arxiv.org/abs/1707.07012

  • The Evolved Transformer

        https://arxiv.org/abs/1901.11117

  • RENAS

https://openaccess.thecvf.com/content_CVPR_2019/papers/Chen_RENAS_Reinforced_Evolutionary_Neural_Architecture_Search_CVPR_2019_paper.pdf

  • Searching for A Robust Neural Architecture in Four GPU Hours

        https://arxiv.org/abs/1910.04465

  • hyperopt

       https://github.com/hyperopt/hyperopt