监控生产中模型的 功能署名 - Amazon SageMaker
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

监控生产中模型的 功能署名

生产中模型的实时数据分布的偏差可能导致特征属性值的相应偏差,就像监控偏差指标时可能导致偏差偏差一样。 Amazon SageMaker Clarify 特征属性属性监控帮助数据科学家和 ML 工程师定期监控特征属性偏差的预测。在监控模型时,客户可以在 SageMaker Studio 中查看可导出报告和图表,在 Studio 中详细介绍功能属性,并在检测到属性值超出特定阈值时配置警报Amazon CloudWatch以接收通知。

为了在特定情况下说明这一点,请考虑一个假设的大学准入方案。假设我们在训练数据和实时数据中观察到以下(聚合)特征属性属性值:

学校准入假设情况
功能 训练数据中的署名 实时数据中的署名
SAT 分数 0.70 0.10
GPA 0.50 0.20
类排名 0.05 0.70

从训练数据到实时数据的更改看起来很重要。功能排名完全颠倒。与偏差类似,特征属性属性偏差可能是由实时数据分布更改造成的,需要更深入地观察实时数据的模型行为。同样,这些场景中的第一步是引发已发生偏差的警报。

我们可以通过比较各个特征的排名如何从训练数据更改为实时数据来检测偏差。除了对排名顺序的变化很敏感以外,我们还希望对特征的原始归因分数很敏感。例如,假定两个特征的排名从训练到实时数据达到相同数量的位置,我们希望对训练数据中具有更高归因分数的特征更敏感。考虑到这些属性,我们使用标准化折扣累积增益 (NDCG) 分数来比较训练和实时数据的特征属性排名。

具体而言,假定我们具有以下内容:

  • F=[f]1、...,fm] 是根据训练数据中的归因分数排序的特征列表,其中 m 是特征的总数。例如,在我们的示例中,F=[SAT Score, GPA, Class Rank]。

  • a(f) 是返回训练数据的特征归因分数的函数,给定了特征 f。例如,a(SAT 分数) = 0.70。

  • F'=[f'1、...、f'm] 是根据实时数据中的属性分数排序的特征列表。例如,F'= [类排名、GPA、SAT 分数]。

然后,我们可以将 NDCG 计算为:

        NDCG=DCG/iDCG

替换为

  • DCG = YOO1maf')i)/log2​i+1)

  • iDCG = yue1maf)i)/log2​i+1)

量 DCG 测量训练数据中具有较高属性的特征是否在实时数据上计算的特征属性中排名是否更高。数量 iDCG 测量理想的分数,这只是一个标准化因素,用于确保最终数量位于 [0, 1] 范围内,其中 1 为最佳值。NDCG 值为 1 表示实时数据中的特征属性排名与训练数据中的特征属性排名相同。在此特定示例中,由于排名进行了相当大的更改,NDCG 值为 0.69。

在 中SageMaker Clarify,如果 NDCG 值低于 0.90,我们会自动引发提醒。

模型监控器示例笔记本

SageMaker Clarify 提供以下示例笔记本,其中说明了如何捕获实时推理数据、创建基准以监控不断变化的偏差并检查结果:

此笔记本已经过验证,只能在 SageMaker Studio 中运行。如果您需要有关如何在 SageMaker Studio 中打开笔记本的说明,请参阅创建或打开 Amazon SageMaker Studio 笔记本。如果系统提示您选择一个内核,请选择 Python 3 (Data Science) (Python 3 (数据科学))。以下主题包含最后两个步骤的要点,并且包含示例笔记本中的代码示例。