afrahsameerz-creator/advanced-fraud-detection-ml
GitHub: afrahsameerz-creator/advanced-fraud-detection-ml
一个基于机器学习的高度不平衡数据信用卡欺诈检测项目,展示了从特征工程到可解释模型部署的完整流程。
Stars: 0 | Forks: 0
# 🔍 高级信用卡欺诈检测机器学习
[](https://www.python.org/)
[](LICENSE)
[](https://www.kaggle.com/datasets/mlg-ulb/creditcardfraud)
## 📋 概述
一个全面的机器学习项目,用于**信用卡欺诈检测**,使用著名的Kaggle数据集。该项目展示了高级数据科学技术、特征工程、多种机器学习算法比较、模型可解释性以及可部署的架构。
### 🎯 项目目标
- 构建高性能的欺诈检测模型
- 有效处理高度不平衡的数据集
- 实现高级特征工程技术
- 比较多种机器学习算法和集成方法
- 提供模型可解释性和商业洞察
- 创建可部署的代码架构
## 📊 数据集信息
**来源**: [Kaggle信用卡欺诈检测数据集](https://www.kaggle.com/datasets/mlg-ulb/creditcardfraud)
- **284,807笔交易**,历时2天
- **492笔欺诈交易**(占所有交易的0.172%)
- **30个特征**:28个匿名化(PCA转换)、金额、时间
- **高度不平衡**:99.828%正常交易 vs 0.172%欺诈交易
## 🗂️ 项目结构
```
advanced-fraud-detection-ml/
├── 📁 notebooks/ # Jupyter notebooks for analysis
│ ├── 01_data_exploration.ipynb # Comprehensive EDA
│ ├── 02_data_preprocessing.ipynb # Data cleaning & feature engineering
│ ├── 03_model_development.ipynb # ML model training & tuning
│ ├── 04_model_evaluation.ipynb # Performance analysis & comparison
│ └── 05_model_interpretability.ipynb # SHAP, LIME analysis
├── 📁 src/ # Source code modules
│ ├── __init__.py
│ ├── data_processor.py # Data loading & preprocessing
│ ├── feature_engineer.py # Feature engineering utilities
│ ├── model_trainer.py # Model training pipeline
│ ├── evaluator.py # Model evaluation utilities
│ └── utils.py # General utilities
├── 📁 data/ # Data storage (add to .gitignore)
│ ├── raw/ # Original dataset
│ ├── processed/ # Cleaned & engineered data
│ └── README.md # Data documentation
├── 📁 models/ # Trained model artifacts
├── 📁 tests/ # Unit tests
│ └── test_data_processor.py
├── 📁 configs/ # Configuration files
│ └── model_config.yaml
├── requirements.txt # Python dependencies
├── .gitignore # Git ignore rules
└── README.md # This file
```
## 🚀 快速开始
### 1. 克隆仓库
```
git clone https://github.com/afrahsameerz-creator/advanced-fraud-detection-ml.git
cd advanced-fraud-detection-ml
```
### 2. 安装依赖
```
pip install -r requirements.txt
```
### 3. 下载数据集
- 从[Kaggle](https://www.kaggle.com/datasets/mlg-ulb/creditcardfraud)下载
- 将 `creditcard.csv` 放置在 `data/raw/` 文件夹中
### 4. 运行分析
```
# 开始探索性数据分析
jupyter notebook notebooks/01_data_exploration.ipynb
```
## 🔬 分析流程
### 1. **数据探索** (`01_data_exploration.ipynb`)
- 数据集概览与统计
- 类别分布分析
- 特征相关性分析
- 时间模式调查
- 异常检测可视化
### 2. **数据预处理** (`02_data_preprocessing.ipynb`)
- 缺失值处理
- 特征缩放与归一化
- 异常值检测与处理
- 训练/验证/测试集划分
- 处理类别不平衡(SMOTE、欠采样)
### 3. **模型开发** (`03_model_development.ipynb`)
- 基准模型(逻辑回归、决策树)
- 高级算法(随机森林、XGBoost、LightGBM)
- 神经网络(深度学习方法)
- 集成方法
- 超参数调优与交叉验证
### 4. **模型评估** (`04_model_evaluation.ipynb`)
- 性能指标(精确率、召回率、F1分数、AUC-ROC)
- 混淆矩阵与分类报告
- 成本敏感评估
- 模型比较与选择
### 5. **模型可解释性** (`05_model_interpretability.ipynb`)
- SHAP(SHapley Additive exPlanations)分析
- LIME(Local Interpretable Model-agnostic Explanations)
- 特征重要性分析
- 商业洞察与建议
## 🏆 核心特性
- **高级特征工程**:基于时间的特征、交互特征、聚合特征
- **不平衡数据处理**:SMOTE、ADASYN、成本敏感学习
- **多种机器学习算法**:比较8种以上不同算法
- **集成方法**:投票、堆叠和混合技术
- **模型可解释性**:使用SHAP和LIME实现可解释AI
- **交叉验证**:考虑时间序列的分层K折交叉验证
- **生产就绪**:模块化代码结构,便于部署
## 📈 预期结果
- **精确率**:欺诈检测>95%
- **召回率**:>90%,以最小化漏报
- **F1分数**:>92%,平衡性能
- **AUC-ROC**:>98%,优秀区分能力
## 🛠️ 使用技术
- **Python 3.8+**
- **数据分析**:pandas、numpy、scipy
- **机器学习**:scikit-learn、xgboost、lightgbm
- **深度学习**:tensorflow、keras
- **可视化**:matplotlib、seaborn、plotly
- **模型可解释性**:shap、lime
- **数据平衡**:imbalanced-learn
- **笔记本**:jupyter
## 📞 联系
**Mohamed Aly**
- 邮箱:afrahsameerz@gmail.com
- GitHub:[@afrahsameerz-creator](https://github.com/afrahsameerz-creator)
## 📄 许可证
本项目根据MIT许可证授权 - 详见[LICENSE](LICENSE)文件。
## 🙏 致谢
- 数据集由[Kaggle](https://www.kaggle.com/datasets/mlg-ulb/creditcardfraud)提供
- 灵感来自各种信用卡欺诈检测研究论文
- 为展示机器学习专业知识以获取MNC机会而构建
⭐ 如果本项目对您有帮助,请给此仓库加星!
标签:Apex, DNS解析, EDA, Kaggle, LIME, MNC求职, Python, SHAP, 不平衡数据处理, 业务洞察, 二分类, 代码示例, 信用卡欺诈, 信用欺诈检测, 开源项目, 异常检测, 数据分析, 数据工程, 数据科学, 数据预处理, 无后门, 机器学习, 模型可解释性, 模型比较, 模型调优, 特征工程, 算法对比, 资源验证, 逆向工具, 部署架构, 集成学习, 项目展示