3. 混淆矩阵详解:TP、FP、FN、TN 的定义与计算
混淆矩阵(Confusion Matrix)是风控模型效果评估中最基础、最核心的工具。它将模型预测结果与真实标签进行交叉统计,形成一张 2×2 的矩阵,直观展示模型在正负样本上的分类表现。理解混淆矩阵的四个基本元素,是后续计算准确率、精确率、召回率、F1 分数等所有评估指标的前提。
3.1 混淆矩阵的四要素定义
在风控场景中,通常将“坏客户”(逾期、欺诈、违约)定义为 正类(Positive),将“好客户”(正常还款、无风险)定义为 负类(Negative)。模型预测结果与真实情况组合后,产生四种结果:
| 混淆矩阵元素 | 英文全称 | 含义 | 风控场景解读 |
|---|---|---|---|
| TP | True Positive | 真实为正,预测为正 | 模型正确识别出坏客户(命中风险) |
| FP | False Positive | 真实为负,预测为正 | 模型误将好客户判为坏客户(误杀) |
| FN | False Negative | 真实为正,预测为负 | 模型漏掉了坏客户(漏网之鱼) |
| TN | True Negative | 真实为负,预测为负 | 模型正确识别出好客户(放行通过) |
记忆口诀:“T/F”代表预测是否正确(True/False),“P/N”代表模型预测的结果(Positive/Negative)。例如 FP = False Positive,即模型预测为正(Positive),但预测错误(False)。
3.2 混淆矩阵的结构与计算
混淆矩阵通常以表格形式呈现,行代表真实标签,列代表预测标签。以下是一个标准的 2×2 混淆矩阵结构:
3.3 从混淆矩阵计算核心指标
基于混淆矩阵的四要素,可以推导出风控评估中最常用的几个指标:
| 指标名称 | 计算公式 | 风控含义 |
|---|---|---|
| 准确率(Accuracy) | (TP + TN) / (TP + FP + FN + TN) | 整体预测正确的比例,但在样本不平衡时可能失真 |
| 精确率(Precision) | TP / (TP + FP) | 模型判为坏客户的样本中,真正是坏客户的比例(衡量误杀程度) |
| 召回率(Recall) | TP / (TP + FN) | 真实坏客户中被模型识别出来的比例(衡量漏网程度) |
| 特异度(Specificity) | TN / (FP + TN) | 真实好客户中被正确放行的比例(衡量误拒程度) |
| F1 分数 | 2 × (Precision × Recall) / (Precision + Recall) | 精确率和召回率的调和平均,综合评估模型性能 |
风控实战提示:在信贷风控中,通常更关注召回率(Recall)和精确率(Precision)的平衡。召回率低意味着大量坏客户未被识别,直接导致坏账损失;精确率低意味着大量好客户被误杀,影响业务规模和客户体验。实际项目中常通过调整阈值来寻找最优平衡点。
3.4 混淆矩阵在风控模型评估中的实际意义
混淆矩阵不仅仅是一个统计表格,它在风控模型评估中具有以下关键作用:
- 量化模型错误类型:区分“误杀”(FP)和“漏网”(FN)两种错误,帮助风控团队理解模型在哪些环节失效。
- 支持阈值调优:通过改变决策阈值,可以观察 TP/FP/FN/TN 的变化轨迹,找到业务可接受的风险-收益平衡点。
- 计算业务成本:将 FP 和 FN 映射为具体的资金损失(如 FP 导致客户流失成本,FN 导致坏账成本),辅助决策。
- 对比不同模型:在同一测试集上比较多个模型的混淆矩阵,直观判断哪个模型在控制误杀或漏网上表现更优。
- 诊断模型偏差:如果 FP 远高于 FN,说明模型过于保守(过度拒绝);如果 FN 远高于 FP,说明模型过于激进(风险敞口过大)。
3.5 实战案例:计算混淆矩阵
假设某风控模型对 1000 个样本进行预测,结果如下:
- 实际坏客户(正类)共 200 人,模型正确识别出其中 160 人(TP=160),漏掉 40 人(FN=40)
- 实际好客户(负类)共 800 人,模型正确放行 720 人(TN=720),误杀 80 人(FP=80)
对应的混淆矩阵为:
| 预测为正(坏客户) | 预测为负(好客户) | |
|---|---|---|
| 实际为正(坏客户) | TP = 160 | FN = 40 |
| 实际为负(好客户) | FP = 80 | TN = 720 |
基于此矩阵计算核心指标:
准确率(Accuracy) = (160 + 720) / (160 + 80 + 40 + 720) = 880 / 1000 = 88.0%
精确率(Precision) = 160 / (160 + 80) = 160 / 240 = 66.7%
召回率(Recall) = 160 / (160 + 40) = 160 / 200 = 80.0%
特异度(Specificity)= 720 / (80 + 720) = 720 / 800 = 90.0%
F1 分数 = 2 × (0.667 × 0.800) / (0.667 + 0.800) = 0.727
注意:虽然准确率高达 88%,但精确率只有 66.7%,意味着每 3 个被拒绝的客户中就有 1 个是好客户(误杀)。在风控业务中,如果误杀成本过高,可能需要调低阈值以降低 FP,但代价是 FN 可能上升。混淆矩阵的价值就在于让这种权衡变得可量化、可追踪。
3.6 混淆矩阵的扩展应用
在实际风控项目中,混淆矩阵还可以进一步扩展:
- 多分类混淆矩阵:当风险等级分为“低风险、中风险、高风险”等多类时,混淆矩阵扩展为 N×N 矩阵,用于评估多分类模型的细粒度表现。
- 时间维度混淆矩阵:按时间窗口(如每月)分别构建混淆矩阵,观察模型性能是否随时间衰减(模型退化检测)。
- 分群混淆矩阵:按用户群体(如新客、老客、不同渠道)分别构建混淆矩阵,发现模型在不同群体上的偏差。
- 成本敏感混淆矩阵:为 FP 和 FN 赋予不同的业务成本权重,计算加权错误率,更贴近真实业务损失。
核心总结:混淆矩阵是风控模型评估的“第一性原理”工具。无论后续使用 AUC、KS、Lift 曲线等高级指标,其底层逻辑都离不开 TP、FP、FN、TN 这四个基本元素。掌握混淆矩阵,就掌握了风控评估的根基。