如果您正在考虑使用 AutoML,可能会对其运作方式以及开始使用时应执行哪些步骤存有疑问。本部分将深入探讨常见的 AutoML 模式,探索 AutoML 的工作原理,并审视您在开始为项目使用 AutoML 之前可能需要执行的步骤。
AutoML 工具
AutoML 工具主要分为两类:
- 无需编码的工具通常采用 Web 应用的形式,可让您通过界面配置和运行实验,从而为您的数据找到最合适的模型,而无需编写任何代码。
- API 和 CLI 工具提供高级自动化功能,但需要更多(有时要多得多)的编程和机器学习专业知识。
需要编码的 AutoML 工具可能比无代码工具更强大、更灵活,但也可能更难使用。本单元重点介绍了无代码模型开发选项,但请注意,如果您需要自定义自动化,API 和 CLI 选项会很有帮助。
AutoML 工作流
我们来详细了解一下典型的机器学习工作流,看看使用 AutoML 时会发生什么情况。该工作流中的高级步骤与您用于自定义训练的步骤相同;主要区别在于 AutoML 会为您处理一些任务。
问题定义
任何机器学习工作流的第一步都是定义问题。使用 AutoML 时,请确保您选择的工具可以支持机器学习项目的目标。大多数 AutoML 工具都支持各种监督式机器学习算法和输入数据类型。
如需详细了解问题框架,请参阅机器学习问题框架简介模块。
数据收集
在开始使用 AutoML 工具之前,您需要将数据收集到单个数据源中。查看产品文档,确保您的工具支持您的数据源、数据集中的数据类型和数据集的大小。
数据准备
AutoML 工具可以帮助您进行数据准备,但没有任何工具可以自动完成所有工作,因此您需要先完成一些工作,然后才能将数据导入到该工具中。为 AutoML 准备数据与手动训练模型所需执行的操作类似。如需详细了解如何准备数据以进行训练,请参阅“数据准备”部分。
如需详细了解如何准备数据,请参阅使用数值数据和使用分类数据模块。
在导入数据以进行 AutoML 训练之前,您需要完成以下步骤:
为数据加标签
数据集中的每个示例都需要标签。
清理和设置数据格式
现实世界中的数据往往很杂乱,因此您需要先清理数据,然后再使用。即使使用 AutoML,您也需要确定最适合您的特定数据集和问题的处理方法。这可能需要进行一些探索,并且可能需要多次运行 AutoML 才能获得最佳结果。
执行特征转换
某些 AutoML 工具会为您处理某些特征转换。但是,如果您使用的工具不支持您需要的特征转换,或者支持不佳,您可能需要提前执行转换。
模型开发(使用无代码 AutoML)
AutoML 会在训练期间为您完成工作。不过,在开始训练之前,您需要先配置实验。如需设置 AutoML 训练作业,您通常需要指定以下高级步骤:
导入数据
如需导入数据,请指定数据源。在导入过程中,AutoML 工具会为每个数据值分配一个语义数据类型。
分析数据
AutoML 产品通常会提供在训练前后分析数据集的工具。最佳实践是,在开始运行 AutoML 之前,使用这些分析工具了解和验证数据。
优化数据
AutoML 工具通常会提供一些机制,帮助您在导入数据后和训练前优化数据。您可能需要完成以下一些任务来优化数据:
语义检查:在导入过程中,AutoML 工具会尝试确定每个特征的正确语义类型,但这些只是猜测。您应检查为所有地图项指定的类型,如果分配的类型不正确,请进行更改。
例如,您可以将邮政编码存储为数据库中某个列中的数字。大多数 AutoML 系统都会将此类数据检测为连续数值数据。对于邮政编码,这不正确,用户可能希望将此地图项列的语义类型更改为分类类型,而不是连续类型。
转换:某些工具允许用户在优化流程中自定义数据转换。有时,当数据集包含可能具有预测性的特征,且需要以 AutoML 工具难以确定的方式进行转换或组合时,就需要使用此方法。
例如,假设您有一个房屋数据集,用于预测房屋的销售价格。假设有一个名为
description
的地产信息地图项,表示房源的说明,您希望使用此数据创建一个名为description_length
的新地图项。某些 AutoML 系统提供了使用自定义转换的方法。在本示例中,可能有一个LENGTH
函数用于生成新的说明长度特征,如下所示:LENGTH(description)
。
配置 AutoML 运行参数
在运行训练实验之前,最后一步是选择一些配置设置,以告知该工具您希望其如何训练模型。虽然每种 AutoML 工具都有自己的一组独特配置选项,但以下是您可能需要完成的一些重要配置任务:
- 选择您打算解决的机器学习问题类型。例如,您是要解决分类问题还是回归问题?
- 选择数据集中哪一列是标签。
- 选择要用于训练模型的一组特征。
- 选择 AutoML 在模型搜索中要考虑的一组机器学习算法。
- 选择 AutoML 用于选择最佳模型的评估指标。
配置 AutoML 实验后,您就可以开始运行训练了。训练可能需要一段时间才能完成(大约需要数小时)。
评估模型
训练完成后,您可以使用 AutoML 产品提供的工具来检查结果,以便:
- 通过检查特征重要性指标来评估特征。
- 通过检查用于构建模型的架构和超参数来了解模型。
- 使用输出模型训练期间收集的图表和指标评估顶级模型性能。
生产化
虽然这超出了本单元的范围,但某些 AutoML 系统可以帮助您测试和部署模型。
重新训练模型
您可能需要使用新数据重新训练模型。在评估 AutoML 训练作业或模型在生产环境中运行一段时间后,就可能会出现这种情况。无论是哪种情况,AutoML 系统都可以帮助您重新训练。在 AutoML 运行后,再次查看数据并使用经过改进的数据集进行重新训练,这种做法并不少见。
后续步骤
恭喜您完成本单元!
我们鼓励您根据自己的兴趣和进度,探索各种 MLCC 模块。如果您想按照建议的顺序学习,我们建议您接下来学习以下模块:机器学习公平性。