使用 SageMaker Python SDK 通过 SMDDP 启动分布式训练作业 - 亚马逊 SageMaker AI
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用 SageMaker Python SDK 通过 SMDDP 启动分布式训练作业

要使用 调整训练脚本以使用 SMDDP 集体操作 中调整的脚本运行分布式训练作业,可使用 SageMaker Python SDK 的框架或通用估算器,将准备好的训练脚本指定为入口脚本,并指定分布式训练配置。

本页将介绍如何通过两种方式使用 SageMaker AI Python SDK

  • 如果您想在 SageMaker AI 中快速采用分布式训练作业,请配置 SageMaker AI PyTorchTensorFlow 框架估算器类。根据在 framework_version 参数中指定的值,框架估算器选取您的训练脚本,并自动匹配预构建的 PyTorch 或 TensorFlow 深度学习容器 (DLC) 的正确映像 URI。

  • 如果您想扩展其中一个预构建容器或构建自定义容器,以便使用 SageMaker AI 创建自己的机器学习环境,请使用 SageMaker AI 通用 Estimator 类并指定托管在 Amazon Elastic Container Registry(Amazon ECR)中的自定义 Docker 容器的映像 URI。

您的训练数据集应存储在启动训练作业的 Amazon Web Services 区域中的 Amazon S3 或适用于 Lustre 的 Amazon FSx 内。如果您使用 Jupyter Notebook,则应该在同一个 Amazon Web Services 区域中运行 SageMaker 笔记本实例或 SageMaker Studio Classic 应用程序。有关存储训练数据的更多信息,请参阅 SageMaker Python SDK 数据输入文档。

提示

我们建议您使用适用于 Lustre 的 Amazon FSx 而不是 Amazon S3 以提高训练性能。与 Amazon S3 相比,Amazon FSx 具有更高的吞吐量和更低的延迟。

提示

要在启用 EFA 的实例类型上正确运行分布式训练,您应该通过设置 VPC 的安全组来启用实例之间的流量,允许所有进出安全组的流量。要了解如何设置安全组规则,请参阅《Amazon EC2 用户指南》中的步骤 1:准备启用 EFA 的安全组

选择以下主题之一,了解如何运行训练脚本的分布式训练作业。启动训练作业后,您可以通过Amazon SageMaker 调试器中的方法或使用 Amazon CloudWatch 监控系统利用率和模型性能。

在您按照以下主题中的说明来详细了解技术细节时,我们还建议您尝试通过Amazon SageMaker AI 数据并行库示例开始试用。