信用卡欺诈检测 · 成本敏感评估与规则引擎融合 预览图

信用卡欺诈检测 · 成本敏感评估与规则引擎融合

漏检损失按金额加权、误报按审核成本计,含时间外推验证与专家规则融合,附评分接口

源码/项目包 v1.0 # Python# 机器学习# 风控

这个项目解决什么问题

欺诈检测的难点从来不是模型不够花哨,而是两件事:极度不平衡(正负样本 1:578, accuracy 是个骗局)和业务成本不对称(漏掉一笔 5000 元的欺诈,和错拦一位正常客户,代价完全不同)。本项目把这两件事都做成了可量化的流程,并给出一个能模拟线上风控调用的评分接口。

核心亮点

  • 成本敏感评估:漏检损失按交易金额计、误报按固定审核成本计,以"总损失最小化"为目标搜索分类阈值,输出阈值-损失曲线。它把"模型指标"翻译成"老板听得懂的钱"——这是本项目区别于普通教程的灵魂模块。
  • SMOTE 过采样 + 随机欠采样:两种不平衡处理策略与 class_weight 方案同场对比,谁更适合这个场景,数据说话。
  • 无监督异常检测对照:孤立森林与 LOF 在不看标签的情况下能抓住多少欺诈?与监督模型的差距本身就是有价值的分析。
  • 时间外推验证:按时间先后切分训练/测试集,模拟"模型上线后面对未来交易"的真实场景,与随机切分对比,暴露数据漂移的影响。
  • 规则引擎融合:夜间大额交易等专家规则与模型评分做 OR 融合,"规则 + 模型"的混合风控系统设计。
  • 欺诈评分接口:训练完成后保存最优模型,score_transaction() 函数对单笔交易输出欺诈概率——一个可以写进简历的"准生产"封装。

效果预览

99.83% vs 0.17%——先看清楚这个数据集有多"斜":

类别分布

不平衡场景下 PR 曲线比 ROC 更诚实:

PR曲线

阈值-总损失曲线:U 型的最低点就是"最省钱"的决策阈值:

成本曲线

预览图基于模拟数据演示实际运行效果,真实数据运行结果以你下载的数据集为准。

你将学到

  • 极度不平衡数据的全套处理思路:采样、类权重、评估指标选择
  • 为什么欺诈检测必须看 PR 曲线 / AUC-PR 而不是 accuracy
  • 成本敏感决策:如何把混淆矩阵变成一张账单
  • 面向部署的模型持久化与单笔交易评分封装

适合谁

想做风控/反欺诈方向、或需要在毕设里体现"业务思维 + 算法能力"的学习者。难度 ★★★,28 万条数据的训练已做采样优化,普通电脑可跑。

模型内部怎么算成本、规则怎么提炼——细节在源码注释里,这里刻意没有展开,留给你自己探索。


交付内容:完整可运行源码、README.md(逐步运行方法与实现说明)、requirements.txt。

数据集:第三方数据受原始授权限制不随包分发,按 README.md 里的官方链接下载放入 data/ 即可跑通全流程。

许可:个人使用,可用于自己的学习、课程实验与研究报告,请勿转售或公开传播。

Python 3
pandas
numpy
scikit-learn
XGBoost
imbalanced-learn
IsolationForest
LocalOutlierFactor
matplotlib
seaborn

环境与步骤

pip install -r requirements.txt
pip install -r requirements.txt
python main.py    # 全流程约几分钟,图表与最优模型落盘 outputs/

注意事项

  • 数据集不随包提供:先按 README.md 的链接下载放入 data/,再执行下面的命令。

Q:11MB 的数据集为什么不打包?

A:creditcard.csv 是 Kaggle(mlg-ulb/creditcardfraud)的公开数据,受原始授权限制不随包分发。下载后放入 data/,README 里有直链。

Q:accuracy 0.999 为什么不算成绩?

A:正负样本约 0.17% : 99.83%,全预测“正常”就有 99.83% 的准确率,却一单欺诈都抓不到。项目改用 PR 曲线加成本视角:漏一单的损失按该笔交易金额计、错拦一单按 10 元人工审核费计,以总损失最小化选阈值,并输出阈值—损失曲线。

Q:能模拟线上风控调用吗?

A:可以。项目给了一个评分接口,输入交易特征返回风险分与是否拦截;另有 3 条专家规则(夜间大额等)与模型评分做 OR 融合,能完整演示“规则 + 模型”的混合系统。

Q:随机切分行不行?

A:行,但会骗自己。数据带 Time 字段,项目按前 75% / 后 25% 做时间外推验证,模拟“上线之后预测未来”,并把随机切分的成绩放在一起对比,说明数据漂移会带来多少虚高。

购买评价(0)

暂无评价,购买后第一个来评价吧
相关商品
🍪 隐私提示 我们仅收集提供服务所必需的信息(详见《隐私政策》),不出售、不追踪。
¥69
立即购买