自动化机器学习 (AutoML)

如果您正在启动一个新的机器学习 (ML) 项目,您可能想知道 手动训练是构建机器学习模型的唯一选择。包含 手动训练时,您需要使用机器学习框架编写代码来创建模型。中 在此过程中,您可以选择要探索的算法并进行迭代调整 来找到合适的模型。

当然,模型训练并不是您需要考虑的唯一事项。在实践中,从原型到生产环境构建机器学习模型涉及重复性任务和专业技能。简单的探索性机器学习 的工作流如下:

图 1. 简单的机器学习工作流。
图 1. 简单的机器学习探索工作流。

重复性任务 - 机器学习工作流可能涉及重复性工作, 。例如,在模型开发期间,您通常需要 探索算法和超参数的不同组合,以确定 最合适的模型。通过手动训练,您可以编写专门的代码来 训练模型,然后调整代码以使用不同的机器学习运行实验 算法和超参数,以找到最佳模型。对于小型或探索性项目,此手动流程可能不会造成问题,但对于大型项目,这些重复性任务可能会非常耗时。

专业技能 - 手动开发机器学习模型涉及 技能。在实践中,并非每个计划开发机器学习模型的团队都具备这些技能。如果团队没有专职的数据科学家,手动执行此类工作可能根本不可行。

幸运的是,模型开发中的某些步骤可以自动执行, 重复性工作的负担以及专业技能的需求。本自动化机器学习 (AutoML) 模块将介绍如何自动执行这些任务。

什么是 AutoML?

AutoML 是一个自动执行的流程, 机器学习工作流中的某些任务。 您可以将 AutoML 视为一系列工具和技术,它们可以让更多用户更快地构建机器学习模型,并更轻松地使用这些模型。虽然自动化功能可在整个机器学习工作流中提供帮助,但与 AutoML 相关的任务是指图 1 所示模型开发周期中包含的任务。这些重复性任务包括:

  • 数据工程
    • 特征工程。
    • 特征选择。
  • 训练
    • 确定合适的机器学习算法。
    • 选择最佳超参数。
  • 分析
    • 根据测试数据集和验证数据集评估训练期间生成的指标。

借助 AutoML,您可以专注于机器学习问题和数据,而不是特征 调整超参数和选择合适的算法。