Decision-centric fraud detection system with adaptive alert selection, cost-aware ranking, operational monitoring, and real-time simulation support.
Traditional fraud detection systems often optimize only predictive performance metrics such as ROC-AUC or precision.
This project focuses instead on operational fraud decision-making under real-world investigation constraints.
The system combines machine learning fraud scoring with adaptive decision logic, investigation-budget management, analyst prioritization, and cost-aware alert selection to simulate realistic fraud operations workflows.
- Detect fraudulent financial transactions
- Reduce total operational fraud cost
- Improve fraud recall under investigation constraints
- Prioritize analyst review queues intelligently
- Simulate adaptive fraud monitoring workflows
- Compare static threshold systems against adaptive decision systems
- Fraud probability scoring
- Transaction risk estimation
- Threshold evaluation
- Feature engineering pipeline
- Probability calibration support
- Adaptive alert budgeting
- Cost-aware fraud ranking
- Investigation-capacity-aware alert selection
- Static threshold vs adaptive strategy comparison
- Risk-zone transaction prioritization
- Analyst queue optimization
- Sequential fraud simulation
- Operating curve analysis
- Monitoring metrics
- Real-time simulation support
- Alert volume analysis
- Operational performance tracking
- FastAPI backend
- Streamlit interactive dashboard
Compared to the static threshold baseline, the adaptive decision system achieved improved fraud recall while simultaneously reducing total operational cost.
| System | Recall | Precision | Alerts | Total Cost |
|---|---|---|---|---|
| Static Threshold | 0.625 | 0.033 | 303 | 600,060 |
| Decision System | 0.875 | 0.038 | 372 | 552,563 |
The adaptive decision engine:
- Increased fraud recall by 25%
- Reduced total operational cost
- Maintained operationally manageable alert volumes
- Improved analyst prioritization efficiency
flowchart TD
A[Raw Transaction Dataset] --> B[Data Loading & Preprocessing]
B --> C[Fraud Scoring Model]
C --> D[Fraud Risk Score]
D --> E[Decision Engine]
E --> F[Static Threshold Baseline]
E --> G[Adaptive Decision System]
G --> H[Risk-Zone Prioritization]
G --> I[Cost-Aware Ranking]
G --> J[Alert Budgeting]
G --> K[Suppression Logic]
H --> L[Analyst Queue]
I --> L
J --> L
K --> L
L --> M[FastAPI Backend]
M --> N[Streamlit Dashboard]
N --> O[Operating Curve Analysis]
N --> P[Monitoring Metrics]
N --> Q[Alert Review Interface]
The architecture separates the predictive layer from the decision layer.
The machine learning model produces fraud risk scores, while the decision engine converts those scores into operational actions using adaptive alert budgets, cost-aware ranking, and risk-zone prioritization.
app/
api/
core/
model/
monitoring/
tests/
decisioning/
cost_logic.py
decision_engine.py
strategies.py
suppression.py
thresholding.py
scripts/
evaluate_decision_strategies.py
run_sequential_simulation.py
run_realtime_demo.py
plot_operating_curve.py
config/
models/
notebooks/
docs/
---
## Technologies
- Python
- Pandas
- NumPy
- Scikit-learn
- FastAPI
- Streamlit
- Matplotlib
- Joblib
---
## How To Run
### Install dependencies
```bash
py -m pip install -r requirements.txt
Place dataset here:
data/raw/AIML Dataset.csv
py -m uvicorn app.api.main:app --reloadpy -m streamlit run app/dashboard.pyThis project uses the PaySim synthetic financial transaction dataset.
The dataset is not included in the repository due to size limitations.
Expected dataset path:
data/raw/AIML Dataset.csv
- Probability calibration improvements
- Drift detection
- Online learning
- Analyst feedback loops
- Queue-aware investigation allocation
- Dynamic risk adaptation
- Real streaming integration
This repository was developed as part of a Master's thesis focused on decision-centric fraud detection, adaptive transaction prioritization, cost optimization, and monitoring for real-time capable fraud systems.


