本文档介绍了 Google Cloud上提供的各种训练方法之间的主要区别。您的选择取决于团队的专业知识、您需要的控制级别以及您的基础架构偏好设置。
借助 AutoML,您只需极少的技术工作即可创建和训练模型。您可以使用 AutoML 对模型进行快速原型设计并探索新的数据集,然后再投资开发。例如,您可以用它了解最适合给定数据集的特征。
借助自定义训练,您可以创建一个根据目标结果进行了优化的训练应用。您可以完全控制训练应用功能,从单节点作业到大规模多节点分布式训练。也就是说,您可以定位任何目标、使用任何算法、开发自己的损失函数或指标,或者进行任何其他自定义。
Vertex AI 无服务器训练:这是一种无服务器方法,您只需提交训练作业, Google Cloud 即可为您预配、管理和释放计算资源。非常适合用于实验和不需要保证容量的作业。
Vertex AI 训练集群是自定义训练中的一项功能,专为大规模、高性能训练作业而设计。借助此功能,您可以预留一个由强大的计算资源(如 A100 或 H100 GPU)组成的专用集群供您独占使用,从而保证关键任务和长时间运行的训练任务的容量和性能。
借助 Ray on Vertex AI,您可以在 Google Cloud 基础架构上使用 Ray 的分布式计算框架。Ray on Vertex AI 提供了一个受管理的环境,其中包含可配置的计算资源、与 Vertex AI Inference 和 BigQuery 等服务的集成,以及用于开发和运行分布式工作负载的灵活网络选项。
借助 BigQuery,您可以直接在 BigQuery 中使用 BigQuery 数据训练模型。使用 SQL 命令,您可以快速创建模型并使用它进行批量推理。
如需比较每项服务所需的不同功能和专业知识,请参阅下表。
| AutoML | 无服务器训练 | 训练集群 | Ray on Vertex AI | BigQuery ML | |
|---|---|---|---|---|---|
| 需要数据科学专业知识 | 否 | 是,用于开发训练应用和处理数据准备。 | 是,用于开发训练应用和处理数据准备。 | 最好对机器学习概念和数据工作流有基本的了解。 | 否 |
| 需要编程能力 | 否,AutoML 是无代码的。 | 是,用于开发训练应用。 | 是,用于开发训练应用。 | 可以。 | 可以。 |
| 训练模型的时间 | 降低。所需的数据准备工作较少,无需开发。 | 提高。涉及每个作业的代码开发和按需资源预配时间。 | 提高。涉及代码开发,但作业启动速度更快,因为资源已预留,无需排队和预配。 | 训练时间取决于代码逻辑(数据准备和训练)以及资源预配时间。 | 降低。由于 BigQuery ML 利用 BigQuery 计算引擎进行训练、评估和推理,因此模型开发速度很快。 |
| 机器学习目标的限制 | 是。您必须定位 AutoML 的某一预定义目标。 | 否 | 否 | 否 | 是 |
| 可以通过超参数调节手动优化模型性能 | 否。AutoML 会执行一些自动调优,但您无法修改这些值。 | 是。您可以在每个训练运行期间调整模型,以便进行实验和比较。 | 是。您可以在每个训练运行期间调整模型,以便进行实验和比较。 | 是。您提供自定义训练代码,从而完全控制超参数值。 | 是。BigQuery ML 支持在训练模型时进行超参数调优。 |
| 可以控制训练环境的各个方面 | 受限。您可以指定训练时数的预算,并启用早停法。 | 是。您可以为每个作业指定 Compute Engine 机器类型、磁盘大小和容器映像。 | 是。您可以最大限度地控制资源,预留特定的高性能机器类型(例如 H100)、磁盘配置和网络设置,保证容量。 | 是。您可以进行精细控制,包括自定义 Docker 映像、头节点和工作器节点的机器类型,以及加速器 (GPU) 的数量和类型。 | 否 |
| 数据大小限制 | 是。数据大小限制因数据集类型而异。 | 否 | 否 | 没有此限制。不过,对于 BigQuery 读取操作,查询响应大小上限为 10 GB。 | 是。BigQuery ML 按项目实施相应的配额。 如需了解详情,请参阅配额和限制。 |
后续步骤
- 选择入门教程以开始使用 Vertex AI Training。
- 详细了解训练 AutoML 模型。
- 了解如何使用 Python 创建自定义训练作业。
- 详细了解 Ray on Vertex AI。