Skip to content

A comprehensive machine learning project for detecting fraudulent payment transactions. Features 50,000 synthetic transactions, 4 ML models (Random Forest, XGBoost, LightGBM, CatBoost), 8 data visualizations, and SMOTE for handling class imbalance. Perfect for financial institutions and data scientists working on fraud detection systems.

Notifications You must be signed in to change notification settings

Arindam-GitH/FraudGuard-ML

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FraudGuard ML: Advanced Payment Fraud Detection System

Python Machine Learning License

A sophisticated machine learning-based payment fraud detection system that leverages multiple algorithms (Random Forest, XGBoost, LightGBM, CatBoost) to identify suspicious transactions. Features 50,000 synthetic transactions, 8 data visualizations, and SMOTE for handling class imbalance. Perfect for financial institutions and data scientists working on fraud detection systems.

🚀 Features

  • Dataset Generation: 50,000 synthetic transactions with 10 relevant features
  • Multiple ML Models: Implementation of 4 powerful algorithms
    • Random Forest
    • XGBoost
    • LightGBM
    • CatBoost
  • Advanced Visualizations: 8 different types of data visualizations
  • Class Imbalance Handling: SMOTE technique implementation
  • Comprehensive Evaluation: Multiple performance metrics

📊 Project Structure

fraud_detection/
├── data/               # Dataset directory
├── docs/              # Documentation and visualizations
├── models/            # Trained models
├── notebooks/         # Jupyter notebooks
├── src/              # Source code
└── tests/            # Unit tests

🛠️ Technical Stack

  • Languages: Python 3.x
  • ML Libraries:
    • Scikit-learn
    • XGBoost
    • LightGBM
    • CatBoost
  • Data Processing:
    • Pandas
    • NumPy
  • Visualization:
    • Matplotlib
    • Seaborn
    • Plotly
  • Development:
    • Jupyter Notebooks
    • Git

🚀 Getting Started

  1. Clone the repository
git clone https://github.com/Arindam-GitH/Payment-Fraud-Detection-.git
cd Payment-Fraud-Detection-
  1. Set up virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
  1. Install dependencies
pip install -r requirements.txt
  1. Run the analysis
python src/main.py

📈 Model Performance

Each model is evaluated using:

  • Accuracy
  • Precision
  • Recall
  • F1-Score
  • ROC-AUC Score

📊 Visualizations

The project includes 8 different types of visualizations:

  1. Transaction Amount Distribution
  2. Fraud vs Non-Fraud Distribution
  3. Correlation Heatmap
  4. Transaction Time Analysis
  5. Amount vs Fraud Box Plot
  6. Customer Age Distribution
  7. Device Type Distribution
  8. Geographic Distribution

🤝 Contributing

Feel free to submit issues and enhancement requests!

📝 License

This project is licensed under the MIT License - see the LICENSE file for details.

👤 Author

Arindam Guha


⭐️ From Arindam-GitH

About

A comprehensive machine learning project for detecting fraudulent payment transactions. Features 50,000 synthetic transactions, 4 ML models (Random Forest, XGBoost, LightGBM, CatBoost), 8 data visualizations, and SMOTE for handling class imbalance. Perfect for financial institutions and data scientists working on fraud detection systems.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages