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

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

监控生产中模型的偏差

Amazon SageMaker Clarify 偏差监控可帮助数据科学家和 ML 工程师定期监控偏差的预测。在监控模型时,客户可以在 SageMaker Studio 中查看可导出报告和图表,详细说明偏差,并在 中配置警报Amazon CloudWatch,以便在检测到超出特定阈值的偏差时接收通知。当训练数据与模型在部署期间看到的数据(即实时数据)不同时,可在部署的 ML 模型中引入或改善偏差。这些类型的实时数据分配更改可能是临时的(例如,由于一些短期、真实的事件)或永久性的。在这两种情况下,检测这些更改可能都很重要。例如,如果用于训练模型的按揭率与当前真实的按揭率不同,用于预测房价的模型输出可能会有所偏差。利用 中的偏差检测功能模型监控器,当 SageMaker 检测到超过特定阈值的偏差时,它会自动生成您可在 SageMaker Studio 中和通过Amazon CloudWatch警报查看的指标。

通常,仅在训练和部署阶段测量偏差可能不够。部署模型后,部署模型看到的数据(即实时数据)的分配可能与训练数据集中的数据分配不同。此更改可能会随着时间的推移在模型中引入偏差。实时数据分配的更改可能是临时的(例如,由于某些短暂行为,如节日季节)或永久性的。在这两种情况下,检测这些更改并适时采取措施来减少偏差可能很重要。

为了检测这些更改, SageMaker Clarify 提供了持续监控已部署模型的偏差指标的功能,并在指标超出阈值时引发自动警报。例如,请考虑 DPPL 偏移指标。指定值 A=(a) 的允许范围min​,amax​),例如,DPPL 在部署期间应属于的间隔 (-0.1, 0.1)。任何超出此范围的偏差都应引发偏差检测警报。借助 SageMaker Clarify,您可以定期执行这些检查。

例如,您可以将检查频率设置为 2 天。这意味着, 会针对2-day时段内收集的数据SageMaker Clarify计算 DPPL 指标。在此示例中,Dwin是模型在过去 2-day时段内处理的数据。如果 DPPL 值 b,则会发出警报win​ 在 D 上计算win​ 不在允许的范围 A 范围内。此方法用于检查是否使用 bwin位于 A 的外部 可能会发出一些噪点。Dwin​ 可能包含非常少的样本,并且可能不代表实时数据分配。样本大小较小意味着偏差 b 的值win​ 通过 D 计算win​ 可能不是非常可靠的估计值。实际上,b 的非常高(或低)的值win可能会完全由于机会而观察到 。确保从观察到的数据中得出结论 Dwin具有统计意义,SageMaker Clarify并且使用置信区间。具体来说,它使用“Normal Bootstrap Interval (正常引导间隔)”方法构造间隔 C=(c)min,cmax) 使得 SageMaker Clarify 确信基于完整实时数据计算的实际偏移值包含在 C 中,具有较高的概率。现在,如果置信区间 C 与允许的范围 A 重叠, 会将其SageMaker Clarify解释为“实时数据分布的偏差指标值可能在允许的范围内”。如果 C 和 A 取消联接,则 SageMaker Clarify 确信偏差指标不在 A 中并引发警报。

模型监控器示例笔记本

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

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