返回首页

Roadmap
更新于 2026年11月11日 全文 1251 字未阅读

自动化机器学习(AutoML):简介#

本节要点:

  • 自动化对象:机器学习工作流里的特征工程、算法选择、超参数调优这些任务,AutoML 把它们进行了自动化,因此整个过程会更快、更省事。
  • 对比手动训练:手动训练要写代码,再一遍遍改代码去试不同算法和超参数;AutoML 减少的正是这类重复劳动,也降低了对专业技能的要求。
  • 注意力回到问题本身:有了 AutoML,你可以专注核心的机器学习问题与数据,而不会被模型开发周期里的手工活儿困住。
  • 本模块讲什么:在假定你已经掌握基础机器学习概念的前提下,将 AutoML 的好处与局限、常见的几种模式,以及怎么把它们用到自己的机器学习项目里。

预计整个模块学习时长: 30 分钟

学习目标:

  • 把机器学习工作流中的重复任务自动化。

  • 判断在自己的机器学习模型上使用 AutoML 能带来哪些好处、又有哪些局限。

  • 列举常见的 AutoML 模式,并把它们用到自己的 ML 项目里。

先修要求:

本模块假设你已经熟悉以下模块中介绍的概念:


如果你正要开启一个新的机器学习(ML)项目,心里多半会先嘀咕一句:除了手动训练,真的没有别的办法把模型搭出来了吗?

手动训练的做法是:拿一个 ML 框架写代码,把模型建起来,在这个过程中你自己挑要试哪些算法,再一轮轮地调超参数,直到找到合适的那个模型。

当然,训练模型只是你要考虑的事情之一。实际上,把一个机器学习模型从原型一路推到生产环境,这一路上全是重复性任务和对专业技能的要求。

一个简单的探索式机器学习工作流大致长这样:

图 1. 一张浅灰底的循环流程图。最外圈是一圈灰色的粗箭头,顺时针串起五个黄色圆角方块,从左上角开始依次是:① Define Problem(定义问题)、② Gather & Prepare Data(收集并准备数据)、③ Model Development(模型开发)、④ Evaluate Model(评估模型)、⑤ Deploy Model(部署模型)。第三个方块被一圈蓝色粗箭头围住,圈心写着 Model Development,圈上分布着三个蓝色小方块:上方是 Data Engineering(数据工程),左下是 Train(训练),右下是 Analyze(分析)。
图 1. 一个简单的机器学习探索工作流。
  • 重复性任务:机器学习工作流里装着大量重复劳动和反复试验。

    举个例子,开发模型的时候,你通常得试遍各种算法与超参数的组合,才能找出最合适的那个。手动训练时,你要写专门的代码来训练模型,再改代码去跑不同算法、不同超参数的实验,一轮轮地找最好的那个。对小型或探索性的项目来说,这套手工流程不算问题;可项目一大,这些重复任务就很耗时间。

  • 专业技能:手工开发一个 ML 模型要动用专业技能。

    现实中,并不是每个打算做机器学习模型的团队都具备这些技能;如果团队里没有专职的数据科学家,手工干这件事甚至可能根本行不通。

好消息是,模型开发中的某些步骤是可以自动化的,这样既能减轻重复劳动的负担,也能降低对专业技能的要求。把这些任务自动化,正是本模块要讲的自动化机器学习(AutoML)。


AutoML 到底是什么#

AutoML 是把机器学习工作流中的某些任务自动化的过程。你可以把它理解成一整套工具与技术,让构建机器学习模型这件事更快,也让更多普通用户用得上。虽然自动化能帮到工作流里的各个环节,但通常被归到 AutoML 名下的,是图 1 里「模型开发」这一圈要做的事。这些重复任务包括:

  • 数据工程
    • 特征工程

    • 特征选择

  • 训练
    • 挑出合适的机器学习算法

    • 选出最优的超参数

  • 分析
    • 基于测试集与验证集,评估训练过程中产生的各项指标。

有了 AutoML,你可以把注意力放回到 ML 问题本身和数据上,而不是耗在特征选择、超参数调优和挑算法这些事上。

关键术语:

  • AutoML
阅读 --