本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 Amazon 训练模型 SageMaker
Amazon SageMaker Training 是一项完全托管的机器学习 (ML) 服务 SageMaker ,可帮助您高效地大规模训练各种机器学习模型。 SageMaker 作业的核心是机器学习工作负载的容器化以及管理 Amazon 计算资源的能力。Training 平台负责为机器学习 SageMaker 培训工作负载设置和管理基础架构相关的繁重工作。借 SageMaker 助 Training,您可以专注于开发、训练和微调模型。本页介绍了三种开始训练模型的推荐方法 SageMaker,然后是您可以考虑的其他选项。
提示
有关生成式 AI 训练基础模型的信息,请参阅在 A mazon SageMaker Studio 中使用 SageMaker JumpStart 基础模型。
在 Amazon SageMaker 培训中选择一项功能
其中训练机器学习模型有三个主要用例 SageMaker。本节介绍这些用例,以及我们为每个用例推荐的 SageMaker 功能。
无论您是在训练复杂的深度学习模型,还是要实现较小的机器学习算法, SageMaker Training 都能提供符合您用例要求的简化且经济实惠的解决方案。
用例
以下是在其中训练 ML 模型的主要用例 SageMaker。
-
用例 1:在低代码或无代码环境中开发机器学习模型。
-
用例 2:使用代码开发具有更大灵活性和控制力的机器学习模型。
-
用例 3:以最大的灵活性和控制力大规模开发机器学习模型。
推荐的功能
下表描述了训练 ML 模型的三种常见场景以及开始使用 Training 的 SageMaker 相应选项。
应用场景 1 | 应用场景 2 | 使用案例 3 | |
---|---|---|---|
SageMaker 特征 | 使用 Amazon C SageMaker anvas 构建模型。 | 使用 Python SDK 使用SageMaker 内置的机器学习算法(例如 XGBoost 或任务特定模型)来训练模型。 SageMaker JumpStart SageMaker | 利用脚本模式 |
描述 | 带上你的数据。 SageMaker 帮助管理机器学习模型的构建、培训基础架构和资源的设置。 |
带上您的数据并选择提供的内置机器学习算法之一 SageMaker。使用 Py SageMaker thon SDK 设置模型超参数、输出指标和基本基础设施设置。 SageMaker 培训平台有助于提供培训基础设施和资源。 |
开发自己的机器学习代码,并将其作为脚本或一组脚本带到 SageMaker。要了解更多信息,请参阅分布式计算和 SageMaker 最佳实践。此外,你可以自带 Docker 容器。T SageMaker raining 平台可帮助根据您的自定义设置大规模配置培训基础设施和资源。 |
经过优化 |
低代码/无代码和用户界面驱动的模型开发,并使用训练数据集进行快速实验。构建自定义模型时,会根据您的数据自动选择算法。有关算法选择等高级自定义选项,请参阅高级模型构建配置。 |
训练机器学习模型,对超参数、基础架构设置进行高级自定义,并能够直接使用机器学习框架和入口点脚本以获得更大的灵活性。通过 Amaz SageMaker on Python 软件 |
大规模机器学习训练工作负载,需要多个实例和最大的灵活性。参见分布式计算和 SageMaker 最佳实践。 SageMaker 使用 Docker 镜像来托管所有模型的训练和服务。您可以使用任何算法 SageMaker 或外部算法,也可以使用 Docker 容器来构建模型。 |
注意事项 |
自定义 Amazon C SageMaker anvas 提供的模型的灵活性极低。 |
与低级 SageMaker 训练 API 相比, SageMaker Python SDK 提供了简化的界面和更少的配置选项。 |
需要了解 Amazon 基础设施和分布式培训选项。另请参阅使用训练工具包创建自己的SageMaker 训练容器。 |
推荐的环境 | 使用 Amazon SageMaker Canvas。要了解如何进行设置,请参阅 SageMaker Canvas 使用入门。 | SageMaker JupyterLab在 Amazon SageMaker Studio 中使用。要了解如何进行设置,请参阅启动 Amazon SageMaker Studio。 | SageMaker JupyterLab在 Amazon SageMaker Studio 中使用。要了解如何进行设置,请参阅启动 Amazon SageMaker Studio。 |
其他选项
SageMaker 为训练 ML 模型提供了以下其他选项。
SageMaker 提供训练功能的功能
-
SageMaker JumpStart: SageMaker JumpStart 提供对 SageMaker 公共模型中心的访问权限,该中心包含最新的公开可用和专有基础模型 (FM)。您可以在 Amazon SageMaker Studio 中微调、评估和部署这些模型。 SageMaker JumpStart 简化了为生成式 AI 用例利用基础模型的流程,并允许您创建私有模型中心以使用基础模型,同时强制实施治理护栏并确保您的组织只能访问已批准的模型。要开始使用 SageMaker JumpStart,请参阅SageMaker JumpStart 基础模型。
-
SageMaker HyperPod: SageMaker HyperPod 是一项持久性群集服务,适用于需要弹性集群来处理大规模机器学习 (ML) 工作负载和开发 state-of-the-art 基础模型 (FM) 的用例。它消除了构建和维护由数千个加速器(例如 Amazon Trainium 或 NVIDIA A100 和 H100 图形处理单元 (GPU))提供支持的大型计算集群所涉及的无差别繁重的工作,从而加快了此类模型的开发。您可以在 Slurm 上使用工作负载管理器软件。 HyperPod
SageMaker 培训的更多功能
-
超参数调整:此 SageMaker 功能有助于为模型定义一组超参数,并在数据集中启动许多训练作业。根据超参数值,模型训练性能可能会有所不同。在您设置为搜索的给定超参数范围内,此功能提供了一组性能最佳的超参数。
-
分布式训练:对使用 PyTorch NVIDIA CUDA 和其他基于框架构建的 FM 进行预训练或微调。 PyTorch要有效地利用 GPU 实例,请使用 SageMaker 分布式训练库,这些库提供集体通信操作和各种模型并行技术,例如针对基础设施进行了优化的专家并行性和共享数据并行性。 Amazon
-
可观察性功能:使用 Training 的 SageMaker 分析和调试功能深入了解模型训练工作负载、模型性能和资源利用率。要了解更多信息,请参阅调试和提高模型性能以及分析和优化计算性能。