PSI计算与数据漂移预警实践 - 第2节
2.1 PSI 的定义与核心思想
PSI(Population Stability Index,群体稳定性指标)是衡量两个样本分布之间差异程度的统计量。在风控、营销、信用评分等场景中,PSI 用于监控模型输入特征或模型输出分数随时间推移是否发生显著偏移,从而判断模型是否仍适用于当前环境。
核心思想:PSI 通过比较“预期分布”(建模时的基准分布)与“实际分布”(当前观测分布)在每个分箱上的占比变化,量化整体分布偏移程度。PSI 值越大,说明分布变化越剧烈,模型失效风险越高。
2.2 PSI 的数学公式与计算原理
2.2.1 标准计算公式
PSI 的计算基于分箱(Binning)后的占比差异,公式如下:
PSI = Σ (Actual_i - Expected_i) × ln(Actual_i / Expected_i)
其中:
- i = 第 i 个分箱(通常将数据等频或等距划分为 10~20 箱)
- Actual_i = 当前样本在第 i 箱中的占比(实际分布)
- Expected_i = 基准样本在第 i 箱中的占比(预期分布)
- ln = 自然对数
2.2.2 计算步骤(分步流程)
- 分箱:将基准样本按分数或特征值排序,等频或等距划分为 K 个区间(通常 K=10)。
- 计算基准占比:统计每个区间内基准样本数量占总基准样本数的比例,得到 Expected_i。
- 映射当前样本:使用相同的分箱边界,将当前样本落入各区间,计算 Actual_i。
- 计算每个箱的贡献:对每个箱计算 (Actual_i - Expected_i) × ln(Actual_i / Expected_i)。
- 求和:将所有箱的贡献值相加,得到最终 PSI。
⚠ 注意事项:若某箱 Actual_i = 0,则 ln(0) 无定义。实际处理时,通常将 0 替换为一个极小值(如 0.0001),或将该箱与相邻箱合并。
2.3 PSI 的取值区间与业务含义
2.3.1 通用判断阈值
| PSI 取值范围 | 偏移程度 | 业务建议 |
|---|---|---|
| PSI < 0.1 | 无显著偏移 | 模型稳定,无需干预 |
| 0.1 ≤ PSI < 0.25 | 轻度偏移 | 需关注,建议检查特征分布变化 |
| PSI ≥ 0.25 | 严重偏移 | 模型已失效,需重新训练或调整 |
行业经验:不同业务场景阈值可微调。例如,信贷风控中 PSI > 0.2 即触发预警;营销响应模型中可放宽至 0.25。阈值设定需结合业务容忍度和模型重要性。
2.4 PSI 计算原理可视化
下图展示了 PSI 计算的核心流程:从基准分布和实际分布出发,经过分箱、占比计算、逐箱贡献求和,最终得到 PSI 值。
2.5 PSI 与 KL 散度的关系
PSI 在数学上等价于 对称化后的 KL 散度(Kullback-Leibler Divergence)。具体关系如下:
- KL 散度:衡量两个分布 P 和 Q 的不对称差异,公式为 KL(P||Q) = Σ P_i × ln(P_i / Q_i)。
- PSI 对称化:PSI = KL(Actual||Expected) + KL(Expected||Actual),即同时考虑两个方向的信息损失。
- 实际意义:PSI 同时惩罚“实际分布相对于基准分布”和“基准分布相对于实际分布”的偏移,因此比单向 KL 散度更稳健。
💡 理解要点:PSI 不是简单的差异百分比,而是通过对数变换放大了小占比区间的变化。当某个箱的占比从 5% 降到 1% 时,PSI 贡献远大于从 50% 降到 46% 的贡献。这使得 PSI 对尾部特征变化非常敏感。
2.6 PSI 的适用场景与局限性
| 维度 | 说明 |
|---|---|
| 适用场景 | 模型输出分数监控、特征分布漂移检测、客群迁移分析、模型定期评估 |
| 优势 | 计算简单、阈值通用、可解释性强、适用于连续变量和离散变量 |
| 局限性 | 对分箱数量敏感(箱数过少丢失信息,过多导致噪声);无法区分方向性偏移(只反映幅度);对极端值敏感 |
| 替代指标 | KS 统计量、特征重要性变化、模型性能衰减曲线 |
实践提醒:PSI 仅衡量分布差异,不直接反映模型预测能力变化。建议将 PSI 与模型性能指标(如 AUC、KS、准确率)联合监控,避免“分布偏移但模型仍可用”或“分布稳定但模型已失效”的误判。