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

使用 Amazon CloudTrail 监控实验训练指标

Amazon SageMaker Experiments 训练指标可与 Amazon CloudTrail 集成,后者是一项服务,可提供用户、角色或 Amazon 服务所采取操作的记录。CloudTrail 将 BatchPutMetrics 的所有 API 调用作为事件捕获。当您使用 SageMaker SDK for Python 创建实验运行时,SageMaker 会自动调用 BatchPutMetrics。Amazon CloudTrail 会捕获与资源类型 AWS::SageMaker::ExperimentTrialComponent 调用相关的数据。

注意

在 Studio“实验”用户界面中,试验被称为运行组,试验组件被称为运行

您在创建实验运行时,还可以配置将 CloudTrail 事件持续传送到 Amazon S3 存储桶。可使用 CloudTrail 监控提取的实验运行的所有训练指标,包括指标名称、所记录指标的训练步骤、时间戳和指标值等信息。CloudTrail 事件还包括实验运行 ARN、创建运行的账户 ID 以及资源类型(应为 AWS::SageMaker::ExperimentTrialComponent)。

要以 CloudTrail 事件的形式监控 BatchPutMetrics API 调用,必须先在 CloudTrail 中设置数据面板 API 活动的日志记录。有关更多信息,请参阅记录数据事件用于跟踪。要精确控制希望选择性记录并支付费用的 API 调用,可以按资源类型筛选 CloudTrail 事件。可指定 AWS::SageMaker::ExperimentTrialComponent 为资源类型,以监控对 BatchPutMetrics API 的调用。有关更多信息,请参阅 Amazon CloudTrail API 参考中的 DataResource。要了解有关 CloudTrail 的更多信息,请参阅 Amazon CloudTrail 用户指南

有关 Amazon SageMaker 如何与 Amazon CloudTrail 结合使用的深入阐述,请参阅使用 Amazon CloudTrail 记录 Amazon SageMaker API 调用

以下是实验运行中训练指标的 CloudTrail 事件示例:

{ ... "eventTime": "2022-12-14T21:53:41Z", "eventSource": "metrics-sagemaker.amazonaws.com", "eventName": "BatchPutMetrics", "awsRegion": "us-east-1", "sourceIPAddress": "192.0.2.0", "userAgent": "aws-cli/2.7.25 Python/3.9.11 Linux/5.4.214-134.408.amzn2int.x86_64 exe/x86_64.amzn.2 prompt/off command/sm-metrics.batch-put-metrics", "requestParameters": { "trialComponentName": "trial-component-name", "metricData": [ { "metricName": "foo", "timestamp": 1670366870000, "step": 101, "value": 0.9 } ] }, ... "resources": [ { "accountId": "abcdef01234567890", "type": "AWS::SageMaker::ExperimentTrialComponent", "ARN": "arn:aws:sagemaker:us-east-1:1234567890abcdef0:experiment-trial-component/trial-component-name" } ], ... }