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

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

监控生产模型的偏置漂移

Amazon SageMaker 澄清偏差监控可帮助数据科学家和 ML 工程师定期监控偏差预测。在监控模型时,客户可以查看 SageMaker Studio 中详细描述偏差的可导出报告和图表,并在 Amazon CloudWatch 中配置警报,以便在检测到超出特定阈值的偏差时接收通知。当训练数据与模型在部署期间看到的数据(即实时数据)不同时,部署的 ML 模型中会引入或加剧偏差。实时数据分布中的这些变化可能是临时性的(例如,由于某些短暂的真实事件),也可能是永久性的。在任何一种情况下,检测这些更改都可能很重要。例如,如果用于训练该模型的抵押贷款利率不同于当前的现实世界的抵押贷款利率,用于预测住房价格的模型的输出可能会有偏差。借助模型监视器中的偏差检测功能,当 SageMaker 检测到超出特定阈值的偏差时,它会自动生成您可以在 SageMaker Studio 中或通过 Amazon CloudWatch 警报查看的指标。

一般而言,仅在训练和部署阶段衡量偏差可能是不够的。部署模型后,部署模型看到的数据(即实时数据)的分布可能与训练数据集中的数据分布不同。此更改可能会随着时间的推移在模型中引入偏差。实时数据分布中的更改可能是暂时的(例如,由于某些短暂行为(如假日季节),也可能是永久性的。在任何一种情况下,检测这些变化并在适当时采取措施减少偏差都很重要。

为了检测这些更改,SageMaker Clelity 提供了连续监控已部署模型的偏差指标的功能,并在指标超过阈值时自动发出警报。例如,考虑 DPL 偏倚指标。指定允许的值范围 A=(min​,amax​),例如,DPPL 在部署期间应属于的间隔 (-0.1, 0.1)。这个范围的任何偏差都应该引发检测到的偏差警报。通过 SageMaker 澄清,您可以定期执行这些检查。

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

模型监控器示例笔记本

Amazon SageMaker Clelity 提供了以下示例笔记本电脑,该笔记本显示了如何捕获实时推理数据、创建基准以监控不断变化的偏差以及检查结果:

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