This project is an AI-powered credit card fraud detection system built using Machine Learning and Streamlit. It simulates a real-time fraud monitoring dashboard similar to the systems used by banks and fintech companies.
The system predicts the probability of fraudulent transactions, assigns risk scores, and visualizes fraud activity using analytics dashboards, geographic heatmaps, and transaction network graphs.
This project demonstrates how machine learning can be used for financial risk management and fraud detection.
You can run the deployed application here:
Streamlit App:
https://fraud-detection-system-ak.streamlit.app
The main interface allows users to check individual transactions and monitor fraud activity.
Features:
- Fraud probability prediction
- Risk score calculation
- Risk classification
- Fraud detection alerts
The system simulates real-time transaction monitoring.
Each transaction includes:
- Transaction amount
- Fraud probability
- Risk score
- Risk level
- Fraud classification
Key metrics shown:
- Total transactions
- Fraud rate
- Risk distribution
The dashboard visualizes fraud locations on a geographic map.
This helps identify:
- Suspicious regions
- Fraud clusters
- Transaction patterns
Banks commonly use geographic monitoring to detect unusual spending patterns.
The system includes model performance evaluation tools:
Shows classification accuracy between fraudulent and legitimate transactions.
Measures the model's ability to distinguish between fraud and legitimate transactions.
These metrics are commonly used in machine learning model validation.
Fraud rings often involve multiple accounts interacting with the same merchants.
The system simulates transaction networks using graph analysis to visualize:
- Account relationships
- Merchant interactions
- Potential fraud clusters
This technique is widely used in financial crime detection systems.
Machine Learning Model
Input Transaction → Feature Processing → Fraud Probability Prediction → Risk Scoring → Monitoring Dashboard
Predicts the probability of fraud using a trained machine learning model.
Each transaction is assigned a risk score from 0 to 100.
Transactions are categorized as:
- Low Risk
- Medium Risk
- High Risk
Alerts trigger when suspicious activity is detected.
Simulated real-time transaction feed.
Geographic visualization of suspicious activity.
Detects possible fraud rings using transaction relationships.
Includes ROC Curve and Confusion Matrix.
Programming Language Python
Libraries
- Streamlit
- Scikit-learn
- Pandas
- NumPy
- Matplotlib
- Seaborn
- NetworkX
Machine Learning Fraud classification model using supervised learning.
Deployment Streamlit Cloud
fraud-detection-system
│
├── app
│ └── app.py
├── fraud_model.pkl
├── requirements.txt
└── README.md
Clone the repository
git clone https://github.com/akmanis/fraud-detection-system.git
Install dependencies
pip install -r requirements.txt
Run the application
streamlit run app.py
Possible enhancements for production systems:
- Real credit card dataset integration
- Graph neural networks for fraud ring detection
- Real-time streaming data
- User authentication
- Fraud investigation tools
Manish, Economic Sciences, Indian Institute of Science Education and Research (IISER) Bhopal