4

AI模型稳定性评估指标:PSI的原理和计算

 8 months ago
source link: https://www.woshipm.com/ai/5976303.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

在构建AI模型的过程中,需要处理很多模型和算法。之前我们介绍了如何评估分类模型和回归模型的性能,这篇文章,我们介绍一下常用的模型稳定性指标———客群稳定性指标(PSI)。

c97d24e0-ec00-11ed-96ae-00163e0b5ff3.jpg

前面两篇文章分别介绍了如何评估分类模型和回归模型的性能。

模型上线前的评估,除了前文提到的模型性能之外,还需要考虑模型的稳定性,只有稳定性足够好的模型才能达到上线的标准。

本文就来介绍一下常用的模型稳定性指标———客群稳定性指标(PSI)。

一、什么是PSI?

模型构建时,我们以历史数据作为样本,以历史数据的表现作为模型评估的依据。

但实际上,由于客群变化(不同时间段给到模型的样本数据会有变化)或数据源采集变化等因素影响,实际样本分布也会不可避免的发生偏移,从而导致模型不稳定。

如果模型不稳定,那么我们根据历史数据样本得到的“合适”阈值,去给实际数据样本做评判,就会直接影响模型结果的合理性。

所谓PSI指标就是客群稳定性指标(Population Stability Index),通过该指标,可以得到不同时间段的样本下,模型在各分数段分布的稳定性。

二、如何计算PSI?

我们先来看一下PSI的计算公式:

PSI(Population Stability Index)= SUM((实际占比-预期占比) * ln(实际占比/预期占比))

从公式中可以看到,想要计算稳定性,就需要有一个基准数据(预期占比)作为参照,然后用实际数据和基准数据就可以计算PSI值。

计算PSI值一般分为以下三步:

  1. 分箱:分别将模型输出的预期分布和实际分布进行分箱操作。有等频分箱和等距分箱两种方式。
  2. 计算分布:分别计算落在各区间的人数占比,分别得到每个区间的预期占比和时机占比数值。
  3. 计算PSI值:根据公式 (实际占比-预期占比) * ln(实际占比/预期占比) 计算每个区间的PSI值,再求和,就可以得到最终的PSI值。

三、判断标准

PSI表示的是实际占比和预期占比之间的差距,所以PSI值越小,说明实际占比和预期占比的差异也比较小,代表模型越稳定。

我们一般会这么定义模型的稳定性:

  • 若PSI<0.1,稳定性良好,说明样本分布仅有微小变化,模型很稳定;
  • 若PSI在0.1~0.25之间,稳定性一般,说明样本分布有变化,需要根据实际情况调整评分切点或调整模型;
  • 若PSI>0.25,稳定性较差,说明样本分布有显著变化,模型不稳定,必须调整模型。

四、局限性

但是我们也不能迷信PSI指标,PSI只是一个粗糙的指标,有它的局限性,严重受制于数据质量、样本代表性和分档数量。

  • 数据质量:当PSI指标表明模型不稳定时,首先要确定数据是否存在问题,比如数据是否正常提供、接口是否正常工作、网关数据传输过程是否正常、加工过程是否遭到数据污染或逻辑上有疏忽遗漏等。
  • 样本代表性:既要确保选取的样本数量足够反应总体数据的信息,又要确保选取的样本结构和总体数据的结构一致(分层抽样)
  • 分档数量和方式:不同的分组数和分组方式也会对PSI值有小幅的影响

本文我们介绍了如何使用PSI指标评估模型的稳定性,模型稳定性是判断模型是否可用的一个非常重要的条件,虽然我们实际上不需要手动计算PSI值,但通过计算过程我们可以更深入的理解其原理。

至此,我们用三篇文章分别讲述了分类模型性能评估、回归模型性能评估和模型稳定评估的指标和计算方法,希望对大家有所帮助。

接下来,我们开始进入AI算法大篇章的学习,由于计算分享的算法较多,我会在算法篇适当增加更新的频率,争取在一个月内完成算法相关的文章,敬请期待。

本文由 @AI小当家 原创发布于人人都是产品经理,未经许可,禁止转载

题图来自 Unsplash,基于 CC0 协议

该文观点仅代表作者本人,人人都是产品经理平台仅提供信息存储空间服务。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK