自动化机器学习

机器学习最近在许多应用领域取得了长足的进步,这促成了对机器学习系统的不断增长的需求,并希望机器学习系统可以被新手快速地熟悉并使用。相应地,越来越多的商业企业推出产品旨在满足这种需求。这些服务需要解决的核心问题是:在给定数据集上使用哪种机器学习算法、是否以及如何预处理其特征以及如何设置所有超参数。这即是自动化学习(AutoML)企图解决的问题。

简介

机器学习最近在许多应用领域取得了长足的进步,这促成了对机器学习系统的不断增长的需求,并希望机器学习系统可以被新手快速地熟悉并使用。相应地,越来越多的商业企业推出产品旨在满足这种需求。这些服务需要解决的核心问题是:在给定数据集上使用哪种机器学习算法、是否以及如何预处理其特征以及如何设置所有超参数。这即是自动化学习(AutoML)企图解决的问题。

这个AutoML问题可以定义如下:

对于i=1, ..., n+m,令x_i表示特征向量,y_i表示对应的目标值;给定一个训练数据集D_train={(x_1,y_1), ..., (x_n,y_n)}和测试集D_test={(x_{n+1},y_{n+1}), ..., (x_{n+m},y_{n+m})}的特征向量x_{n+1}, ..., x_{n+m},以及限制资源(resource budget)的超参数b和损失矩阵( loss metric)L(·, ·),AutoML问题是如何自动化生成对测试集的预测\hat y_{n+1}, ..., \hat y_{n+m}。对于该预测,AutoML的损失(loss)一般定义为:

这里超参数b一般涉及计算资源,如CPU和内存使用量等。

[描述来源:Feurer, M.; Klein, A.; Eggensperger, K. (2015). Efficient and Robust Automated Machine Learning. NIPS.]

发展历史

2013年,Chris Thornton等人开发了AUTO-WEKA,能够选择学习算法并同时设置其超参数的问题,超越了以前只能单独解决这些问题的工作。他们证明了利用贝叶斯优化,自动化机器学习是完全有可能的。他们在KDD Cup 09,MNIST数据集和CIFAR-10变体的21个流行数据集进行了测试,结果显示AutoML得到的结果通常比使用一般的超参数优化方法有更好的分类性能。

2015年,AUTO-SKLEARN上线,该toolkit的作者Matthias Feurer等人对AUTO-WEKA中使用的AutoML方法进行了改进:他们将两个组件添加到ML框架的贝叶斯超参数优化中,一个用于初始化贝叶斯优化器的元学习,另一个则在优化期间对被评估的算法自动集成。

2017年, Quoc V. Le等人提出了MnasNet,即nasNet在轻量化模型的应用。他们还引入了一种名为ScheduledDropPath的新正则化技术,该技术显着改善了NASNet模型的泛化。与之前最先进的模型相比,MnasNet计算需求减少了28%。

通过在 AutoML 中结合进化算法执行架构搜索,谷歌开发出了当时最佳的图像分类模型 AmoebaNet。这项模型要追溯至2017年,谷歌用简单的构建模块和常用的初始条件设置了一个进化过程。其主要思想是让人「袖手旁观」,让进化算法大规模构建网络架构。当时,从非常简单的网络开始,该过程可以找到与手动设计模型性能相当的分类器。这个结果振奋人心,因为很多应用可能需要较少的用户参与。例如,一些用户可能需要更好的模型,但没有足够的时间成为机器学习专家。接下来要考虑的问题自然就是手动设计和进化的组合能不能获得比单独使用一个方法更好的结果。

因此,2018年,谷歌通过提供复杂的构建模块和较好的初始条件来参与进化过程。此外,谷歌还使用其新型 TPUv2 芯片来扩大计算规模。通过现代硬件、专家知识和进化过程的组合,谷歌获得了在两个流行的图像分类基准 CIFAR-10 和 ImageNet 上的当时的最优模型。同年,Cloud AutoML上线。其使用谷歌的 learning2learn 和迁移学习等先进技术,希望帮助ML/AI专业知识和能力有限的企业也能够使用AI技术构建定制化AI模型。目前Texas A&M大学的DATA实验室和社区贡献者也开发出了Auto-Keras,Auto-Keras提供自动搜索深度学习模型的架构和超参数的功能。

主要事件

年份事件相关论文/Reference
2013Chris Thornton等人开发了AUTO-WEKAThornton, C.; Hutter, F.; Hoos, H. and Leyton-Brown, K. (2013). Auto-WEKA: combined selection and hyperparameter optimization of classification algorithms. In Proc. of KDD’13, pp 847–855.
2015AUTO-SKLEARN上线Feurer, M.;Klein, A.; Eggensperger, K. (2015).Efficient and Robust Automated Machine Learning. NIPS.
2017在 ICML 2017 大会中展示的论文《Large-Scale Evolution of Image Classifiers》中,谷歌用简单的构建模块和常用的初始条件设置了一个神经网络的进化过程Real, E. et al. (2017). Large-Scale Evolution of Image Classifiers. arXiv:1703.01041.
2017Quoc V. Le等人提出了NasNet,使用强化学习方法自动搜索确定一个深度神经网络的架构,并在cifar10和ImageNet数据集上都获得了超过人类设计网络的效果Zoph, B.; Vasudevan, V.; Shlens, J.; Le, Q. V. (2017).Learning Transferable Architectures for Scalable Image Recognition.arXiv:1707.07012.
2018通过在 AutoML 中结合进化算法执行架构搜索,谷歌开发出了当前最佳的图像分类模型 AmoebaNetReal, E. et al. (2018).Regularized Evolution for Image Classifier Architecture Search.arXiv:1802.01548.
2018Google cloud AutoML上线Cloud AutoML: Making AI accessible to every business
2018Texas A&M大学的DATA实验室和社区贡献者也开发出了Auto-KerasJin, H.; Song, Q. and Hu, X. (2018). Efficient Neural Architecture Search with Network Morphism.arXiv:1806.10282.
2018Mingxing Tan等人提出MnasNet,将网络结构自动搜索方法NasNet推广到了适合移动设备的构架上,获得了目前的最佳性能。从准确率,参数数量和运行速度上都超过了Google不久前发布的MobileNet2Tan, M., Chen, B., Pang, R., Vasudevan, V., & Le, Q. V. (2018). MnasNet: Platform-Aware Neural Architecture Search for Mobile. arXiv preprint arXiv:1807.11626.

发展分析

瓶颈

目前 AutoML的运行速度还有待提;它对硬件的要求也相对比较高,例如Google的NasNet的实验是建立在超过500快GPU的计算集群上的,这也是Google Cloud AutoML服务收费较高的原因。另外, AutoML的自动化程度也还有待提升。

未来发展方向

AutoML是AI工具大众化的一部分,在不少对AI趋势进行预估的文章中都可以看到AutoML。考虑到AutoML的商业化,未来的发展方向不局限于但可能有:

  • 准确率:AutoML需要各类问题上都比较稳定的表现,即准确率和鲁棒性之间的平衡
  • 易用性:作为AI工具,AutoML必须易于没有太多AI背景的用户使用
  • 生产就绪模型的周转时间:AutoML需要保证其创建模型的效率

Contributor:Yuanyuan Li

相关人物
凯文·莱顿-布朗
凯文·莱顿-布朗
生于1975年,不列颠哥伦比亚大学的计算机科学教授。2003年在斯坦福大学获得博士学位。他的研究处于计算机科学和微观经济学的交汇点,解决经济环境中的计算问题和多智能体系统中的激励问题。他还研究了机器学习在解决计算难题的算法自动设计和分析中的应用。
简介
相关人物