中的托管的 Spot 训练Amazon SageMaker - Amazon SageMaker
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

中的托管的 Spot 训练Amazon SageMaker

使用托管的 Amazon SageMaker Spot 实例,Amazon EC2 可以轻松训练机器学习模型。托管的 Spot 训练可以针对按需实例优化训练模型的成本高达 90%。SageMaker 代表您管理 Spot 中断。

托管的 Spot 训练使用 Amazon EC2 Spot 实例来运行训练作业而不是按需实例。您可以指定哪些训练作业使用 Spot 实例,以及指定 SageMaker 使用 Amazon EC2 Spot 实例等待作业运行多长时间的停止条件。 中提供了在训练期间生成的指标和日志。CloudWatch.

Amazon SageMaker 自动模型优化(也称为超参数优化)可以使用托管的 Spot 训练。有关自动模型训练的更多信息,请参阅执行自动模型优化

Spot 实例可能会中断,导致作业开始或结束所花的时间更长。您可以将托管的 Spot 训练作业配置为使用检查点。SageMaker 会将检查点数据从本地路径复制到 Amazon S3. 重新启动作业时,SageMaker 会将数据从 Amazon S3 复制回本地路径。然后,训练作业可以从上一个检查点恢复,而不是重新启动。有关检查点操作的更多信息,请参阅 使用 Amazon SageMaker 中的检查点.

注意

除非您的训练作业快速完成,否则我们建议您将检查点操作用于托管的 Spot 训练。目前,不执行检查点的SageMaker内置算法和 Marketplace 算法限制为 MaxWaitTimeInSeconds 3600 秒(60 分钟)。

使用托管的 Spot 训练

要使用托管的 Spot 训练,请创建一个训练作业。将 EnableManagedSpotTraining 设置为 True 并指定 MaxWaitTimeInSecondsMaxWaitTimeInSeconds 必须大于 MaxRuntimeInSeconds。 有关创建训练作业的更多信息,DescribeTrainingJob请参阅

您可以使用公式 计算使用托管的 Spot 训练节省的成本(1 - BillableTimeInSeconds / TrainingTimeInSeconds) * 100。 例如,如果 BillableTimeInSeconds 为 100, TrainingTimeInSeconds 为 500,则节省 80%。

托管的 Spot 训练生命周期

您可以使用 TrainingJobStatusSecondaryStatus 返回的 DescribeTrainingJob 监控训练作业。 下面的列表显示了 TrainingJobStatusSecondaryStatus 值如何根据训练场景而变化:

  • 在训练期间不间断地获得的 Spot 实例

    1. InProgress: StartingDownloadingTrainingUploading

  • Spot 实例中断一次。之后,获得了足够的 Spot 实例来完成训练工作。

    1. InProgress: StartingDownloadingTrainingInterruptedStartingDownloadingTrainingUploading

  • Spot 实例中断两次并MaxWaitTimeInSeconds超过 。

    1. InProgress: StartingDownloadingTrainingInterruptedStartingDownloadingTrainingInterruptedDownloadingTraining

    2. Stopping: Stopping

    3. Stopped: MaxWaitTimeExceeded

  • Spot 实例从未启动。

    1. InProgress: Starting

    2. Stopping: Stopping

    3. Stopped: MaxWaitTimeExceeded