使用 Amazon 训练模型 SageMaker - Amazon SageMaker
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

使用 Amazon 训练模型 SageMaker

重要

允许 Amazon SageMaker Studio 或 Amazon SageMaker Studio Classic 创建亚马逊 SageMaker资源的自定义 IAM 策略还必须授予向这些资源添加标签的权限。需要向资源添加标签的权限,因为 Studio 和 Studio Classic 会自动标记他们创建的任何资源。如果 IAM 策略允许 Studio 和 Studio Classic 创建资源但不允许标记,则在尝试创建资源时可能会出现 AccessDenied “” 错误。有关更多信息,请参阅 提供标记 SageMaker资源的权限

Amazon Amazon 托管政策 SageMaker授予创建 SageMaker 资源的权限已经包括在创建这些资源时添加标签的权限。

下图显示了如何使用 Amazon 训练和部署模型 SageMaker。您的训练代码访问您的训练数据并从 S3 存储桶输出模型构件。然后,您可以向模型端点发出请求来运行推理。您可以在 Amazon Elastic Container Registry (ECR) 中存储训练和推理容器映像。

在模型训练和部署期间,您的代码会与 S3 存储桶、端点和 ECR 进行交互。

以下指南重点介绍了两个组成部分 SageMaker:模型训练和模型部署。

要在中训练模型 SageMaker,您需要创建一个训练作业。该训练作业包含以下信息:

  • 已在其中存储训练数据的 Amazon Simple Storage Service (Amazon S3) 存储桶的 URL。

  • 要用于模型训练 SageMaker 的计算资源。计算资源是由管理的机器学习 (ML) 计算实例 SageMaker。

  • 您要存储作业输出的 S3 存储桶的 URL。

  • 存储训练代码的 Amazon Elastic Container Registry 路径。有关更多信息,请参阅 Docker 注册表路径和示例代码

注意

您的输入数据集必须与训练作业 Amazon Web Services 区域 相同。

对于训练算法,您可以使用以下选项:

创建训练作业后, SageMaker 启动 ML 计算实例并使用训练代码和训练数据集来训练模型。它将生成的模型构件和其他输出保存在您为该目的指定的 S3 存储桶中。

您可以使用 SageMaker 控制台或 API 创建训练作业。有关使用 API 创建训练作业的信息,请参阅 CreateTrainingJob API。

使用 API 创建训练作业时,默认情况下会在 ML 计算实例上 SageMaker 复制整个数据集。要在每个 ML 计算实例上 SageMaker 复制数据子集,必须将该S3DataDistributionType字段设置为ShardedByS3Key。您可以使用低级开发工具包设置此字段。有关更多信息,请参阅S3DataSource中的S3DataDistributionType

重要

为了防止您的算法容器争用内存,我们在您的机器学习计算实例上为 SageMaker 关键系统进程预留内存,因此您不能指望看到您的实例类型的所有内存。