输入地面实况标签并与预测结果合并
模型质量监控将您的模型所做的预测与 Ground Truth 标签进行比较,以衡量模型的质量。为此,您需要定期为端点或批量转换作业捕获的数据添加标签,然后将其上传到 Amazon S3。
要将 Ground Truth 标签与捕获的预测数据进行匹配,数据集中的每条记录都必须有一个唯一的标识符。Ground Truth 数据的每条记录的结构如下:
{ "groundTruthData": { "data": "1", "encoding": "CSV" }, "eventMetadata": { "eventId": "aaaa-bbbb-cccc" }, "eventVersion": "0" }
在 groundTruthData
结构中,eventId
可以是以下项之一:
-
eventId
- 此 ID 是在用户调用端点时自动生成的。 -
inferenceId
- 调用方在调用端点时提供此 ID。
如果捕获的数据记录中存在 inferenceId
,则 Model Monitor 用它来将捕获的数据与 Ground Truth 记录合并。您负责确保 Ground Truth 记录中的 inferenceId
与所捕获记录中的 inferenceId
进行匹配。如果捕获的数据中不存在 inferenceId
,则 Model Monitor 使用所捕获数据记录中的 eventId
将它们与 Ground Truth 记录进行匹配。
您必须将 Ground Truth 数据上传到与捕获数据具有相同路径格式的 Amazon S3 存储桶。
数据格式要求
将数据保存到 Amazon S3 时,必须使用 jsonlines 格式(.jsonl),并使用以下命名结构保存。要了解有关 jsonline 要求的更多信息,请参阅 使用输入和输出数据。
s3://
amzn-s3-demo-bucket1
/prefix
/yyyy
/mm
/dd
/hh
此路径中的日期是收集 Ground Truth 标签的日期,不必与生成推理的日期相匹配。
创建并上传 Ground Truth 标签后,请在创建监控作业时将标签的位置作为参数包括在内。如果您使用的是 AWS SDK for Python (Boto3),请在调用 create_model_quality_job_definition
方法时将 Ground Truth 标签的位置指定为 GroundTruthS3Input
参数的 S3Uri
字段。如果您使用的是 SageMaker Python SDK,请在调用 ModelQualityMonitor
对象的 create_monitoring_schedule
时将 Ground Truth 标签的位置指定为 ground_truth_input
参数。