自动化机器学习为非机器学习专家提供了机器学习的方法和过程,以提高机器学习的效率和加速机器学习的研究。
机器学习(ML)近年来取得了相当大的成功,越来越多的学科依赖于它。然而,这一成功关键依赖于人类机器学习专家执行以下任务:
对数据进行预处理和清理。 选择并构建适当的特性 选择一个合适的模型族。 hyperparameters优化模型。 设计神经网络的拓扑结构(如果使用深度学习)。 后处理机器学习模型。 严格分析得到的结果。
由于这些任务的复杂性往往超出了非ml专家的能力,机器学习应用程序的快速增长创造了对现成的机器学习方法的需求,这些方法可以轻松使用,不需要专家知识。我们将这一以渐进机器学习自动化为目标的研究领域称为AutoML
**《自动机器学习》书籍
这本书对自动化机器学习(AutoML)的一般化方法进行了全面的阐述,并且收集了以这些方法为基础的系统的描述和一系列关于自动化机器学习系统领域的挑战。最近,机器学习在商业领域取得的成就和该领域的快速增长对机器学习产生了大量的需求,尤其是可以很容易地使用,并且不需要专家知识的机器学习方法。然而,当前许多表现优异的机器学习方法的大多都依赖人类专家去手动选择适当的机器学习架构以及模型的超参数(深度学习架构或者更加传统的机器学习方法)。为了克服这个问题,AutoML基于优化原理和机器学习本身去逐步实现机器学习的自动化。这本书可以为为研究人员和高年级学生提供一个进入这个快速发展的领域的切入点,同时也为打算在工作中使用AutoML的从业者提供参考。 第一部分 自动机器学习方法 每个机器学习系统都有超参数,而自动化机器学习最基本的任务就是自动设置这些超参数来优化性能。尤其是最近的深度神经网络严重依赖对于神经网络的结构、正则化和优化等超参数的选择。自动优化超参数(HPO)有几个重要的用例:
第二部分 自动化机器学习系统
越来越多的非领域专家开始学习使用机器学习工具,他们需要非独立的解决方案。机器学习社区通过开源代码为这些用户提供了大量复杂的学习算法和特征选择方法,比如WEKA和mlr。这些开源包需要使用者做出两种选择:选择一种学习算法,并通过设置超参数对其进行定制。然而想要一次性做出正确的选择是非常具有挑战性的,这使得许多用户不得不通过算法的声誉或直觉来进行选择,并将超参数设置为默认值。当然,采用这种方法所获得的性能要比最佳方法进行超参数设置差得多。
第三部分 自动化机器学习面临的挑战
直到十年之前,机器学习还是一门鲜为人知的学科。对于机器学习领域的科学家们来说,这是一个“卖方市场”:他们研究产出了大量的算法,并不断地寻找新的有趣的数据集。大的互联网公司积累了大量的数据,如谷歌,Facebook,微软和亚马逊已经上线了基于机器学习的应用,数据科学竞赛也吸引了新一代的年轻科学家。如今,随着开放性数据的增加,政府和企业不断发掘机器学习的新的应用领域。然而,不幸的是机器学习并不是全自动的:依旧很难确定哪个算法一定适用于哪种问题和如何选择超参数。完全自动化是一个无界的问题,因为总是有一些从未遇到过的新设置。AutoML面临的挑战包括但不限于: * 监督学习问题(分类和回归) 特征向量表示问题 数据集特征分布问题(训练集,验证集和测试集分布相同) 小于200兆字节的中型数据集 有限的计算资源