ramyasherlydabbala/fraud-detection-ml-pipeline
GitHub: ramyasherlydabbala/fraud-detection-ml-pipeline
基于 Random Forest 和 XGBoost 的端到端欺诈检测机器学习管道,涵盖数据预处理、特征工程、模型训练与多维度评估比较。
Stars: 0 | Forks: 0
# 欺诈检测 ML Pipeline
端到端机器学习项目,使用 Random Forest 和 XGBoost 检测欺诈交易,包含模型比较与评估。
## 概述
本项目构建了一个端到端的机器学习 pipeline 来检测欺诈交易。它通过比较多个模型(Random Forest 和 XGBoost)来提高检测准确率并减少误报。
该 pipeline 包括数据预处理、特征缩放、模型训练、评估,以及使用标准分类指标进行比较。
## 问题描述
欺诈检测系统通常会产生误报。本项目专注于构建一个模型,在减少不必要警报的同时提高欺诈检测的准确率。
## 核心亮点
- 构建了用于欺诈检测的端到端 ML pipeline
- 比较了多个模型(Random Forest vs XGBoost)
- 使用 Accuracy、Precision、Recall 和 F1 Score 进行评估
- 实现了特征缩放与训练集-测试集划分
- 遵循真实世界 ML 工作流构建结构化项目
## 技术栈
- Python
- Pandas
- NumPy
- Scikit-learn
- XGBoost
- LightGBM
- Matplotlib
- Seaborn
## 项目工作流
1. 加载交易数据
2. 清洗与预处理数据
3. 进行特征工程
4. 训练欺诈检测模型
5. 评估模型性能
6. 比较模型结果
## 项目结构
```
fraud-detection-ml-pipeline/
│── data/
│── notebooks/
│── src/
│ ├── data_preprocessing.py
│ ├── train_model.py
│ └── evaluate_model.py
│── requirements.txt
│── README.md
```
## 数据集
本项目使用包含特征与欺诈标签的欺诈检测样本数据集。
## 模型评估
本项目使用以下指标评估欺诈检测模型:
- Accuracy
- Precision
- Recall
- F1 Score
- Confusion Matrix
比较了两个模型:
- Random Forest
- XGBoost
## 结果
| 模型 | Accuracy | Precision | Recall | F1 Score |
|---------------|----------|----------|--------|----------|
| Random Forest | 0.80 | 0.75 | 0.80 | 0.77 |
| XGBoost | 0.90 | 0.85 | 0.90 | 0.87 |
对比结果表明,XGBoost 在样本数据集上的表现优于 Random Forest,取得了更高的 precision 和 recall,使其在欺诈检测场景中更加有效。
*注:以上结果基于样本数据集,在真实世界数据中可能有所差异。*
## 如何运行
1. 安装依赖:
pip install -r requirements.txt
2. 运行模型:
python src/train_model.py
标签:Apex, LightGBM, Matplotlib, ML流水线, NumPy, Python, Scikit-learn, Seaborn, XGBoost, 二分类, 代码示例, 分类算法, 反欺诈, 异常检测, 数据分析, 数据科学, 数据预处理, 无后门, 机器学习, 模型比较, 模型评估, 欺诈检测, 特征工程, 资源验证, 逆向工具, 随机森林, 风控模型