By the numbers
What it actually does
The problem, and the shape of the fix
Student dropout costs higher-education institutions an estimated $26 billion annually in the US alone — and the standard institutional response is reactive: interventions trigger only after a student has already failed a course, missed a payment, or disappeared from attendance. By week 8–10 of a semester, the window for a meaningful intervention has often already closed.
This pipeline does feature engineering over enrollment/academic/engagement data, SMOTE to correct class imbalance, gradient-boosted models with probability calibration, and — critically — a SHAP explanation attached to every single prediction. A risk score alone tells an advisor nothing actionable; the specific factors behind it do.
Architecture
How data actually moves through it
Real facts, from the repo
Not marketing copy — checkable claims
- 137 tests, 100% coverage.
- SMOTE class-balancing + gradient boosting with probability calibration.
- Every prediction carries a SHAP explanation, not just a risk score.
data_generator.py builds synthetic training data locally, on purpose, since real student data obviously can't ship in a public repo. This page documents the real pipeline; the fastest way to see it run is the repo's own docker-compose up.