选择训练方法

本文档介绍了 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 按项目实施相应的配额。 如需了解详情,请参阅配额和限制

后续步骤