创建模型质量基准 - Amazon SageMaker
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

创建模型质量基准

创建一个基准作业,该作业将模型预测与存储在 中的基准数据集中的基本实际情况标签进行比较Amazon S3。通常,您使用训练数据集作为基准数据集。基准作业计算模型的指标并建议用于监控模型质量偏差的约束。

要创建基准作业,您需要有一个数据集,其中包含来自模型的预测以及代表数据的基本实际情况的标签。

要创建基准作业,请使用 ModelQualityMonitor Python 开发工具包提供的 SageMaker 类,并完成以下步骤。

创建模型质量基准作业

  1. 首先,创建 ModelQualityMonitor 类的实例。以下代码段演示了如何执行此操作。

    from sagemaker import get_execution_role, session, Session from sagemaker.model_monitor import ModelQualityMonitor role = get_execution_role() session = Session() model_quality_monitor = ModelQualityMonitor( role=role, instance_count=1, instance_type='ml.m5.xlarge', volume_size_in_gb=20, max_runtime_in_seconds=1800, sagemaker_session=session )
  2. 现在调用 suggest_baseline 对象的 ModelQualityMonitor 方法以运行基准作业。以下代码段假定您有一个基准数据集,其中包含预测和存储在 中的标签Amazon S3。

    baseline_job_name = "MyBaseLineJob" job = model_quality_monitor.suggest_baseline( job_name=baseline_job_name, baseline_dataset=baseline_dataset_uri, # The S3 location of the validation dataset. dataset_format=DatasetFormat.csv(header=True), output_s3_uri = baseline_results_uri, # The S3 location to store the results. problem_type='BinaryClassification', inference_attribute= "prediction", # The column in the dataset that contains predictions. probability_attribute= "probability", # The column in the dataset that contains probabilities. ground_truth_attribute= "label" # The column in the dataset that contains ground truth labels. ) job.wait(logs=False)
  3. 在基准作业完成后,您可以看到作业生成的约束。首先,通过调用 latest_baselining_job 对象的 ModelQualityMonitor 方法获取基准作业的结果。

    baseline_job = model_quality_monitor.latest_baselining_job
  4. 基准作业建议约束,这些约束是为监控度量建模的指标的阈值。如果指标超出建议的阈值, 将模型监控器报告违规情况。要查看基准作业生成的约束,请调用基准作业的 suggested_constraints 方法。以下代码段将二进制分类模型的约束加载到 Pandas 数据帧中。

    import pandas as pd pd.DataFrame(baseline_job.suggested_constraints().body_dict["binary_classification_constraints"]).T

    我们建议您查看生成的约束并根据需要对其进行修改,然后再使用它们进行监控。例如,如果约束太积极,您会收到的违规警报可能会超过您的需要。

  5. 如果您对约束感到满意,请在创建监控计划时将其作为 constraints 参数传递。有关更多信息,请参阅计划模型质量监控作业

建议的基准约束包含在您使用 指定的位置的 constraints.json 文件中output_s3_uri。有关 中此文件的架构的信息约束的架构(constraints.json 文件)