使用 Amazon SageMaker Debugger 调试和改进模型性能
使用 Amazon SageMaker Debugger 实时调试机器学习训练作业中的模型输出张量,并检测不收敛问题。
Amazon SageMaker Debugger 功能
机器学习 (ML) 训练作业可能存在系统瓶颈、过度拟合、饱和激活函数和梯度消失等问题,这些问题会影响模型性能。
SageMaker Debugger 提供了工具用于调试训练作业和解决此类问题,从而改进模型的性能。Debugger 也提供了一些工具,用于在发现训练异常情况时发送警报,针对问题采取措施,并通过将收集的指标和张量可视化来确定造成问题的根本原因。
SageMaker Debugger 支持 Apache MXNet、PyTorch、TensorFlow 和 XGBoost 框架。有关 SageMaker Debugger 支持的可用区域和版本的更多信息,请参阅支持的框架和算法。
Debugger 工作流概述如下:
-
如果需要,可以使用
sagemaker-debugger
Python SDK 修改您的训练脚本。 -
使用 SageMaker Debugger 配置 SageMaker 训练作业。
-
使用 SageMaker Estimator API(适用于 Python SDK)进行配置。
-
使用 SageMaker
CreateTrainingJob
请求(适用于 Boto3 或 CLI)进行配置。 -
使用 SageMaker Debugger 配置自定义训练容器。
-
-
启动训练作业并实时监控训练问题。
-
获取警报并针对训练问题迅速采取措施。
-
使用 针对规则的 Debugger 内置操作,在发现训练问题时接收短信和电子邮件并停止训练作业。
-
使用 Amazon CloudWatch Events 和 Amazon Lambda 设置自己的操作。
-
-
探索对训练问题的深入分析。
-
有关调试模型输出张量的信息,请参阅在 TensorBoard 中可视化 Debugger 输出张量。
-
-
修复问题,考虑 Debugger 提供的建议,然后重复步骤 1-5,直到模型得到优化并达到目标准确性。
《SageMaker Debugger 开发人员指南》将引导您了解以下主题。