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

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

监控生产中模型的偏差漂移

亚马逊 SageMaker 澄清偏见监控可帮助数据科学家和机器学习工程师定期监控偏差的预测。随着模型受到监控,客户可以查看可导出的报告和图表,详细说明中的偏差 SageMaker 在 Amazon 中配置 Studio 和配置警报 CloudWatch 以便在检测到超过特定阈值的偏差时接收通知。如果训练数据与模型在部署期间看到的数据(即实时数据)不同,则可以在已部署的机器学习模型中引入或加剧偏差。实时数据分布中的这些变化可能是暂时的(例如,由于一些短暂的真实世界事件)或永久性变化。无论哪种情况,检测这些变化都可能很重要。例如,如果用于培训模型的抵押贷款利率与当前的现实世界的抵押贷款利率不同,则用于预测房价的模型的输出可能会变得偏差。使用模型监视器中的偏差检测功能, SageMaker 检测到超过特定阈值的偏差,它会自动生成您可以在其中查看的指标 SageMaker 工作室和通过 Amazon CloudWatch 提醒。

一般来说,只在 train-and-deploy 阶段可能还不够。模型部署后,部署的模型看到的数据(即实时数据)的分布可能与训练数据集中的数据分布不同。随着时间的推移,这种变化可能会在模型中引入偏 实时数据分布的变化可能是暂时的(例如,由于假日季等一些短暂的行为),也可能是永久性的。无论哪种情况,都必须检测这些变化,并酌情采取措施减少偏见。

为了检测这些变化, SageMaker 澄清提供了持续监控已部署模型的偏差指标的功能,并在指标超过阈值时发出自动警报。例如,考虑 DPPL 偏差指标。指定允许的值范围 A = (amin​,amax​),例如,在部署期间,DPPL 应该属于的间隔 (-0.1, 0.1)。与此范围的任何偏差都应该提高检测到偏差警报。与 SageMaker 澄清,你可以定期执行这些检查。

例如,您可以将支票的频率设置为 2 天。这意味着 SageMaker 澄清根据在两天窗口内收集的数据计算 DPPL 指标。在此示例中,Dwin是模型在最近 2 天窗口中处理的数据。如果 DPPL 值 b,则发出警报win​计算 Dwin​超出允许的范围 A。这种检查是否 b 的方法win在 A 之外可能会有点吵。Dwin​可能由很少的样本组成,而且可能不代表实时数据分发。样本数量小意味着偏差 b 的值win​计算 Dwin​可能不是一个非常可靠的估计。事实上,b 的非常高(或低)值win可能纯粹由于偶然而被观察。为了确保从观察到的数据得出的结论 Dwin具有统计意义, SageMaker 澄清利用置信区间。具体来说,它使用普通引导时间间隔方法来构建区间 C = (cminc, cmax) 这样 SageMaker 澄清相信,对完整实时数据计算出的真正偏差值包含在 C 中的概率很高。现在,如果置信区间 C 与允许的范围 A 重叠, SageMaker 澄清将其解释为 “实时数据分布的偏差指标值可能在允许的范围内”。如果 C 和 A 不相交, SageMaker 澄清有信心偏差指标不在 A 中,并提出警报。

模型监控器样本

亚马逊 SageMaker 澄清提供了以下示例笔记本,展示了如何捕获实时推理数据、创建基线以监控不断变化的偏见以及检查结果:

这款笔记本已经验证可在亚马逊上运行 SageMaker 仅限 Studio。如果您需要有关如何在亚马逊中打开笔记本电脑的说明 SageMaker 工作室,请参阅创建或打开亚马逊 SageMaker Studio Notebook. 如果系统会提示您选择内核,请选择Python 3(数据科学). 以下主题包含最后两个步骤的亮点,其中包含来自示例笔记本的代码示例。