EduardoVad/revolut-fraud-detection
GitHub: EduardoVad/revolut-fraud-detection
基于虚构 Revolut 数据的端到端欺诈检测项目,解决如何从用户与交易特征中识别欺诈用户的问题。
Stars: 0 | Forks: 0
# Revolut 欺诈检测
基于虚构的 Revolut 银行数据进行的 StrataScratch 数据科学挑战。
## 目标
构建一个机器学习模型,从虚构的银行数据中识别欺诈用户。
## 数据
- `users.csv` — 包含 KYC 状态、国家和账户详情的用户资料
- `transactions.csv` — 包含金额、类型和货币的交易历史
## 方法
1. **EDA** — 探索了 KYC 状态、交易类型和用户行为中的欺诈模式
2. **特征工程** — 基于欺诈行为假设,从两个数据集中构建了用户级特征
3. **建模** — 比较了逻辑回归、随机森林和梯度提升
4. **超参数调优** — 使用 GridSearchCV,以召回率作为优化指标
## 关键发现
- PENDING KYC 用户的欺诈率最高,达到 21%
- 欺诈者更倾向于使用 ATM 和 TOPUP 交易
- 欺诈者的登录失败尝试次数是正常用户的两倍
- 选择了随机森林作为最终模型 — 在召回率和精确率之间取得了最佳平衡
## 技术栈
Python、pandas、scikit-learn、matplotlib
标签:Apex, ATM交易, EDA, Gradient Boosting, GridSearchCV, KYC, Logistic Regression, matplotlib, pandas, Python, Random Forest, Recall优化, scikit-learn, StrataScratch, TOPUP交易, 交易分析, 交易类型分析, 分类模型, 反洗钱, 失败登录尝试, 数据探索, 数据科学挑战, 数据预处理, 无后门, 机器学习, 模型比较, 欺诈检测, 特征工程, 用户画像, 账户行为, 逆向工具, 金融科技, 银行数据