自动机器学习

自动化机器学习(,简称AutoML)是将机器学习应用于现实世界问题的任务自动化的过程。自动机器学习可能包括从原始数据集开始到构建准备部署的机器学习模型的每个阶段。

AutoML被提出作为一种基于人工智能的解决方案,以应对应用机器学习日益严峻的挑战。AutoML的高度自动化旨在允许非专家使用机器学习模型和技术,而无需他们成为机器学习专家。自动化端到端应用机器学习的过程还提供了产生更简单的解决方案、更快地创建这些解决方案以及模型通常优于手工设计模型的优势。自动机器学习中使用的常用技术包括超参数优化、元学习和神经架构搜索。

与传统方法的比较
在典型的机器学习应用中,从业者有一组用于训练的输入数据点。原始数据可能并非以所有算法都能适用的形式存在。为了使数据适合机器学习,专家可能需要应用适当的数据预处理、特征工程、特征提取和特征选择方法。在这些步骤之后,从业者必须执行算法选择和超参数优化,以最大化其模型的预测性能。如果使用深度学习,神经网络的架构也必须由机器学习专家手动选择。

这些步骤中的每一步都可能具有挑战性,给使用机器学习带来显著障碍。AutoML旨在为非专家简化这些步骤,使他们更容易正确有效地使用机器学习技术。

自动化目标
自动机器学习可以针对机器学习过程的各个阶段进行自动化:

数据准备与摄入:从原始数据和多种格式开始,包括列类型检测(布尔型、离散数值、连续数值或文本)、列意图检测(目标/标签、分层字段、数值特征、分类文本特征或自由文本特征)和任务检测(二元分类、回归、聚类或学习排序)。

特征工程:特征选择、特征提取、元学习和迁移学习,以及检测和处理偏斜数据和缺失值。

模型选择:选择使用哪种机器学习算法,通常涉及多个竞争性软件实现。

集成学习:一种共识形式,使用多个模型通常比任何单一模型获得更好的结果。

超参数优化与神经架构搜索:优化学习算法和特征化的超参数,以及自动搜索神经网络架构。

流水线选择:在时间、内存和复杂性约束下选择最优流水线。

评估指标与验证程序的选择

问题检查:泄漏检测、错误配置检测。

结果分析与可视化:创建用户界面和可视化。

挑战与局限
自动机器学习面临若干关键挑战。一个主要问题被称为"手工作坊式开发"(development as a cottage industry)。这一短语指的是机器学习开发中依赖专家手动决策和偏见的现状。这与机器学习的目标——创建能够从自身使用和数据分析中学习和改进的系统——形成鲜明对比。本质上,这是专家应在多大程度上参与系统学习,以及应给予机器多大自由度的权衡。专家和开发者必须帮助创建和引导这些机器,为它们的学习做准备,这需要劳动密集型的机器学习和系统设计知识。

此外,其他挑战包括元学习中的问题以及计算资源分配。自动化机器学习系统需要在搜索质量和计算成本之间取得平衡,这在资源受限的环境中尤为困难。

参见
*神经架构搜索
*超参数优化
*元学习
*集成学习
*特征工程
*自动数据科学

参考文献

评论 (0)

  • 还没有评论,来抢沙发吧。