Akshadgajapure/real-time-fraud-detection

GitHub: Akshadgajapure/real-time-fraud-detection

基于IEEE数据集构建的端到端机器学习欺诈检测系统,提供实时交易风险预测的Web界面。

Stars: 0 | Forks: 0

# 欺诈检测系统 一个基于 **IEEE Fraud Detection dataset** 构建的端到端 **Machine Learning 欺诈检测系统**。 该项目包括数据预处理、特征工程、模型训练,以及一个用于实时欺诈预测的 **Streamlit web 应用程序**。 ## 项目概述 在线交易极易受到欺诈。金融机构需要能够实时检测可疑交易​​的系统。 本项目构建了一个 **machine learning pipeline,利用历史交易数据预测交易是欺诈还是合法**。 该系统包括: * 数据预处理和特征工程 * Machine learning 模型训练 * 用于推理的已保存模型 pipeline * 用于实时预测的 Streamlit 应用程序 ## 关键特性 * 端到端 machine learning pipeline * 针对欺诈检测的特征工程 * 用于欺诈分类的已训练 ML 模型 * 使用 Streamlit 的实时预测界面 * 使用 `joblib` 进行模型序列化 * 清晰的项目结构,确保可复现性 ## 数据集 使用的数据集:**IEEE Fraud Detection Dataset** 来源: 由于 GitHub 大小限制,该数据集**不包含在此仓库中**。 步骤: 1. 从 Kaggle 下载数据集 2. 将文件放入项目目录中的 `data/` 文件夹内 示例结构: data/ * train_transaction.csv * test_transaction.csv ## 项目结构 ``` Fraud-Detection │ ├── FRAUD DETECTION PROJECT.ipynb # Exploratory analysis and model training ├── app.py # Streamlit application ├── predict.py # Script for model inference ├── fraud_pipeline.pkl # Trained ML pipeline ├── model_columns.pkl # Saved feature columns ├── feature_importance.csv # Feature importance analysis ├── requirements.txt # Project dependencies ├── README.md # Project documentation └── .gitignore ``` ## 技术栈 编程语言 * Python 库 * Pandas * NumPy * Scikit-learn * Joblib * Streamlit * Matplotlib * Seaborn 工具 * Git * GitHub * VS Code ## Machine Learning 流水线 欺诈检测 pipeline 包括: 1. 数据清洗 2. 特征工程 3. 处理缺失值 4. 模型训练 5. 模型评估 6. 模型序列化 经过训练的 pipeline 使用 `joblib` 保存,并在预测期间加载。 ## 运行项目 ### 1. Clone 仓库 ``` git clone https://github.com/Akshadgajapure/Fraud-Detection-.git cd Fraud-Detection- ``` ### 2. 创建虚拟环境 ``` python -m venv venv ``` 激活环境 Windows ``` venv\Scripts\activate ``` Mac/Linux ``` source venv/bin/activate ``` ### 3. 安装依赖 ``` pip install -r requirements.txt ``` ### 4. 运行 Streamlit 应用程序 ``` streamlit run app.py ``` 应用程序将在以下地址启动: ``` http://localhost:8501 ``` ## 示例输出 系统预测: * 欺诈预测 (0 或 1) * 欺诈概率 示例输出: ``` Fraud Prediction: 1 Fraud Probability: 0.87 ``` ## 未来改进 * 使用 Docker 部署模型 * 添加实时流预测 * 实现高级模型 * 构建生产级 ML pipeline ## 作者 Akshad Gajapure 化学工程本科在读 — NIT Raipur 兴趣: * Machine Learning * Data Science * AI 应用 GitHub LinkedIn ## 许可证 该项目是开源的,并根据 MIT 许可证可用。
标签:Apex, BSD, IEEE欺诈数据集, Kaggle, Kubernetes, ML Pipeline, Python, Scikit-learn, Streamlit, 交易监测, 代码示例, 分类算法, 反欺诈系统, 实时预测, 数据分析, 数据挖掘, 无后门, 机器学习, 模型训练, 欺诈检测, 特征工程, 端到端, 访问控制, 逆向工具, 金融安全, 金融风控