3. PSI指标基础:群体稳定性指标(PSI)的数学定义、计算步骤与业务含义

3.1 为什么需要群体稳定性指标

在量化风控与组合归因场景中,模型或策略上线后,其评分分布会随时间推移发生变化。这种变化可能源于客群迁徙、宏观经济波动或数据源质量下降。如果分布偏移过大,模型预测能力将显著衰减,导致风险排序失效。群体稳定性指标(Population Stability Index, PSI)正是衡量两个时间段评分分布一致性的标准化度量工具。

核心业务问题: 模型在开发样本上表现优异,但在上线后第3个月,AUC下降0.05,坏账率上升2%。PSI能帮助量化“评分分布是否发生了结构性漂移”,从而触发模型重训或策略调整。

3.2 PSI的数学定义

PSI基于信息论中的相对熵(KL散度)思想,但采用对称化处理。其数学表达式为:

PSI = Σ (P_i - Q_i) × ln(P_i / Q_i)

其中:

  • P_i:实际分布(当前评分样本)在第 i 个分箱中的占比
  • Q_i:预期分布(基准评分样本)在第 i 个分箱中的占比
  • Σ:对所有分箱求和

当 P_i 与 Q_i 完全一致时,PSI = 0;差异越大,PSI 值越高。实际应用中通常将评分划分为 10 等频分箱,以保证每个箱内样本量均衡。

3.3 计算步骤详解

PSI 的计算遵循以下 5 个标准步骤:

  1. 确定基准分布:选取模型开发样本或上线首月评分作为预期分布 Q。
  2. 确定实际分布:选取当前监控周期(如本月)评分作为实际分布 P。
  3. 分箱处理:将评分范围划分为 K 个等频区间(通常 K=10),确保每个箱内基准样本占比约为 10%。
  4. 计算各箱占比:分别统计 P_i 和 Q_i,若某箱 P_i=0,则用极小值(如 0.0001)替代,避免对数计算溢出。
  5. 代入公式求和:对每个分箱计算 (P_i - Q_i) × ln(P_i / Q_i),累加得到 PSI。
步骤 操作 注意事项
1 确定基准分布 Q 通常使用模型训练集或上线首月数据
2 确定实际分布 P 当前监控周期(周/月/季)
3 等频分箱(K=10) 按基准分布分位数切分,固定边界
4 计算 P_i 与 Q_i P_i=0 时替换为 0.0001
5 求和得到 PSI 保留 4 位小数

3.4 PSI 计算流程示意图

PSI 计算流程 基准分布 Q 实际分布 P 等频分箱(K=10) 计算 P_i 与 Q_i Σ (P_i - Q_i) × ln(P_i / Q_i) PSI 值 PSI ∈ [0, +∞),越小越稳定

3.5 业务含义与判定阈值

PSI 的数值大小直接对应分布漂移的严重程度。行业通用判定标准如下:

PSI 范围 漂移程度 业务动作
PSI < 0.10 无显著漂移 持续监控,无需干预
0.10 ≤ PSI < 0.25 轻度漂移 排查特征变化,准备模型校准
PSI ≥ 0.25 严重漂移 立即触发模型重训或策略回退
经验提示: 在组合风险归因场景中,建议同时监控 整体 PSI 和 分特征 PSI。整体 PSI 反映评分分布全局漂移,分特征 PSI 帮助定位具体哪些变量驱动了漂移。例如,若整体 PSI=0.18,但“收入”特征的 PSI=0.45,则说明收入分布发生了剧烈变化,需优先排查。

3.6 PSI 与 KL 散度的关系

PSI 与 KL 散度(Kullback-Leibler Divergence)密切相关,但存在关键区别:

指标 公式 对称性 取值范围
KL 散度 Σ P_i × ln(P_i / Q_i) 非对称 [0, +∞)
PSI Σ (P_i - Q_i) × ln(P_i / Q_i) 对称 [0, +∞)

PSI 通过引入 (P_i - Q_i) 项实现了对称性,即 PSI(P, Q) = PSI(Q, P)。这使得 PSI 在业务监控中更直观——无论将哪个分布视为基准,结果一致。而 KL 散度非对称,不适合作为稳定性监控的标准化指标。

3.7 计算示例(手工验证)

假设某评分模型将样本分为 3 个等频分箱(为简化演示,实际应为 10 箱),基准分布 Q 与实际分布 P 如下:

分箱 Q_i (%) P_i (%) P_i - Q_i ln(P_i / Q_i) 分量值
箱1 33.33 40.00 +6.67 0.1823 1.215
箱2 33.33 30.00 -3.33 -0.1054 0.351
箱3 33.33 30.00 -3.33 -0.1054 0.351
PSI = 1.215 + 0.351 + 0.351 = 1.917

该 PSI 值远大于 0.25,表明分布发生了严重漂移,需要立即排查原因。

3.8 PSI 在 Spark 环境下的计算要点

在 Spark 大数据平台上计算 PSI 时,需注意以下工程细节:

  • 分箱边界固定:基准分箱边界需持久化存储(如 Hive 表或 Parquet 文件),每次计算实际分布时复用同一组边界。
  • 空箱处理:若某箱在实际分布中无样本,使用 0.0001 / N 替代,其中 N 为总样本量。
  • 性能优化:使用 approxQuantile 计算分位数边界,避免全量排序;使用 bucketizer 进行分箱映射。
  • 增量计算:对于每日/每周监控,可设计增量聚合逻辑,避免每次重算全量历史数据。
常见陷阱: 分箱数量过少(如 K=5)会降低 PSI 对局部漂移的敏感度;分箱数量过多(如 K=20)则可能导致空箱过多,引入噪声。推荐始终使用 K=10 等频分箱,并保持基准边界不变。

3.9 PSI 与特征漂移的联动分析

在组合风险归因中,PSI 不仅用于监控模型评分,还可下钻到每个特征维度。下图展示了特征级 PSI 与模型级 PSI 的关系:

特征级 PSI 与模型级 PSI 联动分析 特征A PSI 特征B PSI 特征C PSI 模型评分 PSI 定位漂移根因 特征A PSI=0.45 → 收入分布异常

通过特征级 PSI 的拆解,风控团队可以快速定位导致模型漂移的具体变量,从而制定针对性的特征工程或策略调整方案。