稳定度指标(population stability index ,PSI)可衡量测试样本及模型开发样本评分的的分布差异,为最常见的模型稳定度评估指针。其实PSI表示的就是按分数分档后,针对不同样本,或者不同时间的样本,population分布是否有变化,就是看各个分数区间内人数占总人数的占比是否有显著变化
PSI小于0.1时候模型稳定性很高,0.1-0.2一般,需要进一步研究,大于0.2模型稳定性差,建议修复。
psi计算公式为:psi = sum((实际占比-预期占比)* ln(实际占比/预期占比))
示例:
有一个模型主要生成用户分组,输出参数为group01-group10,我们需要统计该模型是否稳定,以验证我们的建模是否合适
第一步:统计总进件量(数据库统计),如总进件量为3400条数据
第二步:将总进件量按区间统计出各分区间量
假如统计出的结果如下:
group01 | 100 |
group02 | 200 |
group03 | 300 |
group04 | 500 |
group05 | 700 |
group06 | 800 |
group07 | 100 |
group08 | 100 |
group09 | 500 |
group10 | 100 |
第三步:算出各区间占比(本区间数/总进件数)
实际占比 |
2.94% |
5.88% |
8.82% |
14.71% |
20.59% |
23.53% |
2.94% |
2.94% |
14.71% |
2.94% |
第四步:我们自己有一个期望占比
预期占比 |
2% |
8% |
13% |
17% |
18% |
6% |
11% |
9% |
13% |
3% |
第五步:计算各区间psi并最终进行求和,从结果来看我这个模型应该重做哈哈哈。不过我的预期占比是随便写的,所以才有这个结果。整体的计算流程就是这样了,psi的计算公式为:psi = sum((实际占比-预期占比)* ln(实际占比/预期占比))