aloktp/IEEE-CIS-Fraud-Detection-Analysis
GitHub: aloktp/IEEE-CIS-Fraud-Detection-Analysis
基于 IEEE-CIS 数据集构建的端到端欺诈检测平台,覆盖数据工程、特征建模、成本优化与业务可视化。
Stars: 0 | Forks: 0
## 🚧 待完成的工作
- 实现图数据库集成(Neo4j)。
- 使用图算法(PageRank、社区检测)识别欺诈团伙。
- 可视化交易网络用于异常检测。
# 企业级欺诈检测与风险优化平台
## 案例研究
一个金融平台如何:
* 追踪高交易量下的欺诈损失暴露总额?
* 识别高风险行为异常和速度峰值?
* 优化模型决策阈值以最小化净业务成本?
* 为欺诈调查员提供透明、可解释的风险向量?
## 关于数据集(IEEE-CIS 欺诈检测)
本项目使用行业标准的 IEEE-CIS 数据集,包含真实世界的、高维度的电子商务交易日志。
* 约 591,000 笔交易
* 身份与设备网络属性
* 卡片与聚合行为变量
* 严重的类别不平衡(约 3.5% 欺诈基线)
### 数据覆盖范围:
* 交易金额、时间及产品类型
* 设备类别、浏览器版本及操作系统组
* 卡片资料特征与关系元数据
## 项目架构
Snowflake(原始数据 -> 中间层)
↓
dbt(特征工程 + 质量测试)
↓
机器学习(XGBoost 与 LightGBM 生产核心)
↓
Power BI 仪表板(运营分类套件)


## 技术栈
* **Snowflake:** 云数据仓库与计算
* **dbt(数据构建工具):** DAG 转换、建模与测试
* **Python:** Scikit-learn、XGBoost、LightGBM、SHAP、Matplotlib
* **Power BI:** 多页面交互式管理与取证报告套件
## 仪表板(业务优先方法)
### 1️⃣ 欺诈概览(管理驾驶舱)

**关键观察:**
* 总损失暴露额为 **308 万美元**,处理了 59.1 万笔交易
* 投资组合基准欺诈率为 **3.50%**
* 小时级风险分析显示在第7小时出现运营欺诈高峰(**10.61%**)
* 电子邮件风险分析标记 **Outlook** 域为主要向量,占比 **9.74%**
* 产品脆弱性图谱显示 **产品类型 C** 为高风险异常值(**11.69%**)
### 2️⃣ 运营风险分类(经理仪表板)

**关键观察:**
* 追踪与自动化脚本模式相关的非高峰小时交易量(**21.72%**)
* 标记浏览器风险,显示旧版环境存在极端脆弱性(**Opera 高达 31.63%**)
* 精确指出高欺诈与旧版、廉价 Android 设备的高度相关性
* 自动化的 **关键风险队列** 隔离了 2,845 个案例,欺诈密度达 **61.86%**
* 对最高层级启用即时自动阻断规则,节省分析师开销
### 3️⃣ 机器学习模型评估与监控(数据科学控制台)

**关键观察:**
* 提供精确率、召回率和误报交互的实时模拟
* 使用优化的业务效用指标替代默认的 0.50 阈值
* 识别出决策阈值在 **0.30 到 0.40 之间的“成本谷”**
* 最小化漏单欺诈和误拒用户摩擦的合并成本
* 将总净业务损失从 **71 万美元降至最低 42 万美元**
### 4️⃣ SHAP 取证调查(分析师工作区)

**关键观察:**
* 通过跨页钻取操作实现单笔交易隔离
* 使用资产元数据权重生成局部行为异常图表
* 将复杂的模型参数转化为可理解的根因指标
* 突出显示特定风险驱动因素(例如速度峰值、极端数值偏差)
* 消除“黑箱”摩擦,加快运营队列清理速度
## 机器学习 — 欺诈模型
### 使用的模型
* LightGBM(基线比较)
* XGBoost(最终生产模型)
### 模型性能指标

* **XGBoost 性能:** ROC-AUC:**0.9117** | PR-AUC:**0.5173**
* **LightGBM 性能:** ROC-AUC:**0.9114** | PR-AUC:**0.5190**
* 设计用于有效处理海量数据维度和原生缺失值。
### 成本优化曲线

* 映射整个概率连续区间的财务影响
* 证明与平衡财务成本权重相比,追踪原始准确率无法实现业务目标
### 全局特征重要性(SHAP)

**全局欺诈的关键驱动因素:**
* 基于计数的网络属性(`C5`、`C13`、`C1`)
* 目标时间间隔与交易速度跨度(`D2`)
* 工程化聚合(卡片消费速度、比率和数值对数尺度)
## 数据血缘(DBT DAG)
### 完整管道血缘

### 数据建模方法
* **Staging Layer(临时层):** 初始摄入、列类型转换和原始标志转换
* **Intermediate Layer(中间层):** 身份到交易键匹配与时间跟踪
* **Marts Layer(数据集市层,`FEAT_FINAL`):** 物化滚动窗口计数和速度比率用于机器学习训练
* **数据质量保障:** 自动化的模式测试,包括唯一性约束和空值注入阻止
## 主要洞察
### 运营
* 标记关键欺诈窗口(第7小时峰值),动态调整审核团队容量。
* 识别清晰的网络和设备漏洞以拦截脚本攻击。
### 风险管理
* 隔离一小部分关键账户,这些账户驱动超过60%的经确认欺诈暴露。
* 实施精确的自动阻断参数,而不干扰正常用户生命周期。
### 成本节约
* 调整决策阈值,将净运营暴露减少 **29 万美元**。
* 系统性地平衡退款费用与用户摩擦。
### 决策制定
* 将数据工程管道与实时机器学习跟踪和可视化业务层集成。
## 本项目展示的内容
1. 抽象的模型准确率不等于业务价值;优化财务成本曲线才是节省资金的关键。
2. 行为速度指标(账户活动的快慢)远优于原始交易值的预测能力。
3. 机器学习模型必须在分析师层面保持可解释性,才能在实时生产环境中成功。
## 应采取的措施(业务行动)
* 直接对模型得分在 0.92+ 区间的交易部署自动阻断。
* 更新路由规则,对来自高风险旧版操作系统/浏览器集群的交易提示多因素认证(MFA)。
* 永久重新校准平台的分类阈值为 **0.34**,以保持业务损失的绝对最低水平。
* 使用第4页的取证追踪工具审计复杂的欺诈边缘案例并满足合规报告要求。
## 最终成果
本项目展示了端到端云平台如何:
* 将原始交易日志文件转化为可信数据产品
* 通过 dbt 和 Snowflake 构建健壮的特征管道
* 运行生产级机器学习模型以最大化效用
* 将直观、可操作的洞察直接交付给业务运营人员
## 如何运行
1. 在 Snowflake 中执行源设置脚本以初始化原始表。
2. 运行 dbt 工程仓库:
dbt run
dbt test
运行机器学习模型脚本(best_model.pkl)以捕获特征权重。
打开 Power BI 桌面版,调整源字符串以匹配你的数据仓库端点,然后刷新你的表。
作者
Alok T P
标签:Apex, dbt, IEEE-CIS, LightGBM, Neo4j, Power BI, SHAP, Snowflake, XGBoost, 交易数据, 可解释AI, 商业智能, 图算法, 异常检测, 数据仓库, 数据管道, 机器学习, 欺诈检测, 特征工程, 端到端方案, 软件工程, 逆向工具, 金融科技, 风控