自动化机器学习 (AutoML)

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

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

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

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

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

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

什么是 AutoML?

AutoML 是一个自动执行的流程, 机器学习工作流中的某些任务。 您可以将 AutoML 看作是一套工具和技术, 更快速、更易于访问的机器学习模型。 虽然自动化可以在整个机器学习工作流中起到帮助作用,但通常 与 AutoML 关联的是模型开发周期中包含的模型 如图 1 所示。这些重复性任务包括:

  • 数据工程 <ph type="x-smartling-placeholder">
      </ph>
    • 特征工程。
    • 特征选择。
  • 训练 <ph type="x-smartling-placeholder">
      </ph>
    • 确定合适的机器学习算法。
    • 选择最佳超参数。
  • 分析 <ph type="x-smartling-placeholder">
      </ph>
    • 根据测试和 验证数据集。

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