2. 风控模型基础:常见交易风控模型与评估指标
实时交易风控系统依赖多种模型协同工作,覆盖交易前、中、后全链路。本章聚焦三类核心模型——反欺诈模型、信用评分模型、交易限额模型,并深入讲解业界通用的模型评估指标(KS、AUC、F1-score),为后续A/B测试的假设检验与效果度量奠定基础。
2.1 常见交易风控模型
2.1.1 反欺诈模型
反欺诈模型旨在实时识别并阻断异常交易行为,通常基于设备指纹、行为序列、关联网络等特征构建。常见技术包括规则引擎、机器学习分类器(如XGBoost、LightGBM)以及图神经网络。
- 输入特征:交易IP、设备ID、地理位置、操作频率、历史拒付率。
- 输出:欺诈概率分数(0~1),或直接输出“通过/拒绝/人工审核”决策。
- 典型场景:盗卡交易、账户盗用、恶意刷单。
2.1.2 信用评分模型
信用评分模型评估交易对手的还款意愿与能力,常用于信贷交易、分期付款、先买后付等场景。模型输出为信用分数(如300~850分),分数越高代表违约风险越低。
- 输入特征:征信报告、收入负债比、历史还款记录、多头借贷情况。
- 输出:信用评分或违约概率(PD)。
- 典型场景:信用卡交易授权、贷款审批、额度调整。
2.1.3 交易限额模型
交易限额模型动态控制单笔、单日、单账户的交易金额上限,防止大额盗刷或异常资金流出。限额策略通常结合用户画像、交易历史、风险等级进行差异化设定。
- 输入特征:用户历史交易均值、当前账户余额、交易对手风险等级。
- 输出:单笔限额、日累计限额、月累计限额。
- 典型场景:大额转账、跨境支付、虚拟货币交易。
实践要点:在A/B测试中,反欺诈模型通常关注“拦截率”与“误伤率”的平衡;信用评分模型更关注“区分度”与“校准度”;交易限额模型则需兼顾“用户体验”与“资金安全”。
2.2 模型评估指标
评估风控模型性能时,需从区分能力、排序能力、精确度三个维度综合衡量。下表对比了三个核心指标的定义与适用场景:
| 指标 | 全称 | 核心含义 | 适用模型 | 取值范围 |
|---|---|---|---|---|
| KS | Kolmogorov-Smirnov | 好坏样本累计分布的最大差异 | 反欺诈、信用评分 | 0~1(越大越好) |
| AUC | Area Under ROC Curve | 模型随机排序正样本优于负样本的概率 | 反欺诈、信用评分 | 0.5~1(越大越好) |
| F1-score | F1 Score | 精确率与召回率的调和平均 | 反欺诈(不平衡场景) | 0~1(越大越好) |
2.2.1 KS(Kolmogorov-Smirnov)
KS统计量衡量模型对正负样本的区分能力。计算方式为:将样本按预测分数升序排列,分别计算累积好样本占比与累积坏样本占比,取两者差值的最大值。
# KS计算伪代码
def ks_score(y_true, y_pred):
data = sorted(zip(y_pred, y_true), key=lambda x: x[0])
total_bad = sum(y_true)
total_good = len(y_true) - total_bad
cum_bad = 0
cum_good = 0
ks = 0
for _, label in data:
if label == 1:
cum_bad += 1
else:
cum_good += 1
ks = max(ks, abs(cum_bad/total_bad - cum_good/total_good))
return ks
- 经验阈值:KS > 0.3 表示模型可用;KS > 0.5 表示区分能力优秀。
- 注意:KS过高(如 > 0.8)可能暗示过拟合或特征泄露。
2.2.2 AUC(Area Under ROC Curve)
AUC是ROC曲线下的面积,反映模型对正负样本的排序能力。AUC=0.5表示随机猜测,AUC=1表示完美排序。
- 计算方式:通过比较所有正负样本对的预测分数,统计正样本分数高于负样本的比例。
- 优势:对样本不平衡不敏感,适合风控场景。
- 经验阈值:AUC > 0.75 为可接受;AUC > 0.85 为优秀。
2.2.3 F1-score
F1-score是精确率(Precision)与召回率(Recall)的调和平均,适用于欺诈样本极度稀疏的场景(通常欺诈率 < 1%)。
F1 = 2 * (Precision * Recall) / (Precision + Recall)
- 精确率:预测为欺诈的样本中,实际欺诈的比例。
- 召回率:实际欺诈样本中,被正确识别出的比例。
- 权衡:提高召回率通常会导致精确率下降,F1-score帮助找到最佳平衡点。
A/B测试选指标建议:
- 反欺诈模型A/B测试:主指标选F1-score或KS,辅指标选AUC。
- 信用评分模型A/B测试:主指标选KS,辅指标选AUC。
- 交易限额模型A/B测试:主指标选“误拦截率”与“资金损失率”,辅指标选KS。
- 反欺诈模型A/B测试:主指标选F1-score或KS,辅指标选AUC。
- 信用评分模型A/B测试:主指标选KS,辅指标选AUC。
- 交易限额模型A/B测试:主指标选“误拦截率”与“资金损失率”,辅指标选KS。
2.3 模型评估指标关系图
下图展示了KS、AUC、F1-score在模型评估中的定位与相互关系:
2.4 模型评估指标对比表
下表从计算复杂度、对不平衡敏感度、业务解释性三个维度进行横向对比:
| 维度 | KS | AUC | F1-score |
|---|---|---|---|
| 计算复杂度 | 低(排序+累计分布) | 中(需遍历所有样本对) | 低(混淆矩阵计算) |
| 对不平衡敏感度 | 不敏感 | 不敏感 | 敏感(需关注正样本占比) |
| 业务解释性 | 高(直观展示好坏分布差异) | 中(概率意义) | 高(直接反映误伤与漏报) |
| 适用数据量 | 大样本(>1000) | 大样本(>1000) | 小样本也可用 |
| 实时风控场景 | 离线评估常用 | 离线评估常用 | 在线A/B测试常用 |
常见误区:
- 仅依赖AUC而忽略KS,可能错过模型在特定阈值下的区分能力不足问题。
- 在不平衡数据中(如欺诈率0.1%),F1-score比AUC更能反映模型的实际拦截效果。
- 交易限额模型不宜直接用F1-score评估,应关注“误拦截率”与“资金损失率”等业务指标。
- 仅依赖AUC而忽略KS,可能错过模型在特定阈值下的区分能力不足问题。
- 在不平衡数据中(如欺诈率0.1%),F1-score比AUC更能反映模型的实际拦截效果。
- 交易限额模型不宜直接用F1-score评估,应关注“误拦截率”与“资金损失率”等业务指标。
2.5 模型评估流程
在实时交易风控场景中,模型评估通常遵循以下步骤:
- 数据准备:划分训练集、验证集、测试集(时间序列切分,避免未来信息泄露)。
- 模型训练:使用历史交易数据训练风控模型。
- 离线评估:在测试集上计算KS、AUC、F1-score,确认模型性能达标。
- 阈值选择:根据业务容忍度(如误伤率 < 1%)确定决策阈值。
- 在线A/B测试:将新模型与基线模型进行对比,监控实时指标变化。
- 持续监控:部署后定期重算KS、AUC,检测模型衰减(drift)。