4. 区分度核心指标
在PD模型验证中,区分度回答的是一个最朴素却最关键的问题:模型能否把“未来会违约的人”和“不会违约的人”有效分开。校准度关注“预测概率准不准”,稳定性关注“跨时间是否漂移”,而区分度关注的是“排序能力”。即便一个模型把所有人的违约概率都低估了30%,只要它仍能把高风险客户排在低风险客户前面,它的区分度就可能依然良好。因此,区分度指标是模型上线审批、策略阈值设定和客群排序的核心依据。
一、核心原理:从排序到指标
区分度指标的共同基础是排序。假设我们按模型输出的违约概率从高到低排序,理想情况下,违约客户应尽量集中在队列前端,非违约客户集中在后端。不同指标只是从不同角度度量这种“集中程度”。
- KS(Kolmogorov-Smirnov):累计违约客户占比与累计非违约客户占比之差的最大值,衡量最大分离程度。
- AUC(Area Under ROC Curve):ROC曲线下面积,等价于随机抽取一对好坏样本,模型给坏样本更高分的概率。
- Gini:基尼系数,通常定义为
Gini = 2 × AUC − 1,是AUC的线性变换,便于与经济学指标类比。 - AR(Accuracy Ratio):准确率比率,在信用风险中常与Gini等价,衡量模型相对完美模型的提升比例。
- Lift:提升度,表示在某个风险分位区间内,坏样本率相对于整体坏样本率的倍数。
- CAP曲线:累计准确度曲线,横轴为样本累计占比,纵轴为累计坏样本捕获比例,是Lift的曲线化表达。
一句话记忆:KS看“最大差距”,AUC/Gini/AR看“整体排序能力”,Lift/CAP看“头部捕获效率”。
二、方法流程:计算与解读
实际验证中,建议按以下流程计算并交叉验证这些指标:
- 准备验证集,包含真实标签
y(1=违约,0=正常)和模型输出概率pd。 - 按
pd降序排序,计算每个阈值下的TPR、FPR、累计坏样本捕获率等。 - 绘制ROC曲线与CAP曲线,计算AUC、Gini、AR、KS。
- 按十分位或二十分位分箱,计算每箱的Lift值。
- 结合业务阈值,观察头部区间的捕获能力与误杀成本。
# Python示例:核心区分度指标计算
import numpy as np
from sklearn.metrics import roc_auc_score, roc_curve
def ks_auc_gini(y_true, y_prob):
auc = roc_auc_score(y_true, y_prob)
gini = 2 * auc - 1
fpr, tpr, _ = roc_curve(y_true, y_prob)
ks = np.max(tpr - fpr)
return {"AUC": auc, "Gini": gini, "KS": ks}
# 输出示例
# {'AUC': 0.812, 'Gini': 0.624, 'KS': 0.478}
解读时需注意:AUC对样本不平衡不敏感,但会掩盖尾部表现;KS对阈值敏感,适合找最佳切分点;Lift和CAP更贴近业务,尤其适合审批通过率、营销响应率等场景。
三、案例/场景:不同指标的业务含义
假设某消费金融现金贷PD模型,验证集整体违约率为8%。按模型分数从高到低分10箱,头部第一箱(最高风险10%客户)的违约率为32%,则第一箱的Lift为 32% / 8% = 4.0。这意味着:如果只拒绝这10%的客户,可以捕获约 10% × 4.0 = 40% 的违约客户。这就是CAP曲线在业务上的直接价值。
| 指标 | 取值范围 | 业务含义 | 典型阈值参考 |
|---|---|---|---|
| KS | 0~1 | 最大区分能力,常用于找最佳切分点 | >0.3可用,>0.4良好 |
| AUC | 0.5~1 | 整体排序能力,0.5为随机 | >0.7可用,>0.8良好 |
| Gini/AR | 0~1 | 相对完美模型的提升比例 | >0.4可用,>0.6良好 |
| Lift | ≥1 | 头部区间的坏样本富集倍数 | 头部10% Lift>3较优 |
| CAP | 曲线 | 累计捕获坏样本的效率 | 越靠近左上角越好 |
场景提示:在审批策略中,若目标是控制通过率,应优先看CAP曲线在目标通过率附近的斜率;若目标是找风险切分点,KS的最大值位置更有参考价值。
四、误区/复盘:常见陷阱与修正
区分度指标看似直观,但在实战中极易误用。以下是最常见的四个误区:
- 只看AUC,忽略尾部。AUC是全局平均,可能被大量低风险样本拉高,而真正决定盈亏的头部高风险区间表现平平。应同时看头部Lift和CAP。
- KS越大越好?KS过大可能意味着模型过拟合,或样本中混杂了极端客群。需结合稳定性与业务解释性判断。
- Gini与AR混用。不同团队定义可能不同,有的AR等于Gini,有的AR等于AUC-0.5。汇报时必须写明公式。
- 忽略样本权重与时间窗口。若验证集经过加权或跨期采样,AUC和KS会失真,需还原真实分布后再计算。
复盘建议:每次模型验证至少输出“KS + AUC + 头部Lift + CAP曲线”四件套,并附上分箱明细。单一指标无法支撑审批决策,组合指标才能还原模型在业务阈值附近的真实表现。
最后需要强调:区分度是模型排序能力的度量,不是模型好坏的唯一标准。一个区分度很高的模型,如果校准度差或稳定性差,依然不能直接上线。将KS、AUC、Gini、AR、Lift与CAP曲线结合使用,并始终回到“业务阈值附近表现如何”这一问题上,才能让区分度验证真正服务于风险决策。