计划偏差偏移监控作业 - Amazon SageMaker
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

计划偏差偏移监控作业

创建基准后,您可以调用 ModelBiasModelMonitor 类实例的 create_monitoring_schedule() 方法来计划每小时一次的偏差偏移监控。以下几节介绍如何为部署到实时端点的模型以及为批量转换作业创建偏差偏移监控。

重要

创建监控计划时,您可以指定批量转换输入或端点输入,但不能同时指定两者。

与数据质量监控不同,如果要监控模型质量,则需要提供 Ground Truth 标签。但是,Ground Truth 标签可能会延迟。要解决这个问题,请在创建监控计划时指定偏移量。有关如何创建时间偏移的详细信息,请参阅Model Monitor 偏移量

如果您已提交设定基准作业,则监控器会自动从设定基准作业中选取分析配置。如果您跳过设定基准步骤,或者捕获数据集的性质与训练数据集不同,则必须提供分析配置。

对部署到实时端点的模型进行偏差偏移监控

要为实时端点计划偏差偏移监控,请将 EndpointInput 实例传递给 ModelBiasModelMonitor 实例的 endpoint_input 参数,如以下代码示例所示:

from sagemaker.model_monitor import CronExpressionGenerator model_bias_monitor = ModelBiasModelMonitor( role=sagemaker.get_execution_role(), ... ) model_bias_analysis_config = None if not model_bias_monitor.latest_baselining_job: model_bias_analysis_config = BiasAnalysisConfig( model_bias_config, headers=all_headers, label=label_header, ) model_bias_monitor.create_monitoring_schedule( monitor_schedule_name=schedule_name, post_analytics_processor_script=s3_code_postprocessor_uri, output_s3_uri=s3_report_path, statistics=model_bias_monitor.baseline_statistics(), constraints=model_bias_monitor.suggested_constraints(), schedule_cron_expression=CronExpressionGenerator.hourly(), enable_cloudwatch_metrics=True, analysis_config=model_bias_analysis_config, endpoint_input=EndpointInput( endpoint_name=endpoint_name, destination="/opt/ml/processing/input/endpoint", start_time_offset="-PT1H", end_time_offset="-PT0H", probability_threshold_attribute=0.8, ), )

对批量转换作业进行偏差偏移监控

要为批量转换作业计划偏差偏移监控,请将 BatchTransformInput 实例传递给 ModelBiasModelMonitor 实例的 batch_transform_input 参数,如以下代码示例所示:

from sagemaker.model_monitor import CronExpressionGenerator model_bias_monitor = ModelBiasModelMonitor( role=sagemaker.get_execution_role(), ... ) model_bias_analysis_config = None if not model_bias_monitor.latest_baselining_job: model_bias_analysis_config = BiasAnalysisConfig( model_bias_config, headers=all_headers, label=label_header, ) schedule = model_bias_monitor.create_monitoring_schedule( monitor_schedule_name=schedule_name, post_analytics_processor_script=s3_code_postprocessor_uri, output_s3_uri=s3_report_path, statistics=model_bias_monitor.baseline_statistics(), constraints=model_bias_monitor.suggested_constraints(), schedule_cron_expression=CronExpressionGenerator.hourly(), enable_cloudwatch_metrics=True, analysis_config=model_bias_analysis_config, batch_transform_input=BatchTransformInput( destination="opt/ml/processing/input", data_captured_destination_s3_uri=s3_capture_path, start_time_offset="-PT1H", end_time_offset="-PT0H", probability_threshold_attribute=0.8 ), )