FraudWatch Africa is an end-to-end unsupervised fraud detection project built around Isolation Forest to detect anomalous mobile money transactions without labeled fraud data.
# FraudWatch Africa — Unsupervised Mobile-Money Fraud Detection
**Short:** Isolation-Forest based anomaly detection pipeline and Streamlit app for flagging suspicious mobile-money transactions in Sub-Saharan Africa. Contains a training notebook, Streamlit app documentation, presentation slides, and an example Kenya dataset.
---
## Table of Contents
1. Project Overview
2. What's included
3. Dataset (example)
4. Quickstart
5. Install & environment
6. Usage
- Open the notebook
- Run the Streamlit app
- Use the saved model (FastAPI / script examples)
7. Model details & notes
8. Evaluation & interpretation
9. Project structure (recommended)
10. Troubleshooting
11. Contributing
12. License & contact
---
## Project overview
FraudWatch Africa is an end-to-end unsupervised fraud detection project built around **Isolation Forest** to detect anomalous mobile money transactions without labeled fraud data. It includes data preprocessing, feature engineering, model training & tuning, visualizations, a Streamlit front-end, and API ideas for real-time scoring.
Primary goals:
- Detect anomalous transactions with minimal false positives
- Provide quick, interpretable anomaly scores for analysts
- Offer a deployable pipeline and a Streamlit dashboard for exploration
Notebook (main analysis & training):
`
github.com`
App documentation (uploaded): `FraudWatch Africa App Documentation.pdf`
Presentation slides (uploaded): `FraudWatch_Africa_Presentation.pptx`
Sample dataset (uploaded): `kenya_fraud_detection.xlsx`
---
## What's included
- `index.ipynb` — main notebook: data exploration, preprocessing, model training, evaluation, visualizations.
- Streamlit app docs (`FraudWatch Africa App Documentation.pdf`) and slides (`FraudWatch_Africa_Presentation.pptx`).
- Example dataset: `kenya_fraud_detection.xlsx` (10,000 sample transactions).
- Expected model artifacts after training (not committed unless safe):
- `iso …