Student Marks Predictor
Predicts a student's final exam marks from 18 academic, study and lifestyle factors.
- Status
- Demo offline right now
- Stack
- Python, scikit-learn, FastAPI, Pydantic, AWS EC2, Streamlit
Try the model
Change study habits, marks and background to see the predicted final exam marks, and what moves them.
Loading the model…
How it fits together
- 18 student features
- scikit-learn regression
- FastAPI on AWS EC2
- Streamlit app
- Android app
scikit-learn regression pipeline served from a FastAPI backend on AWS EC2 to a Streamlit app and an Android app in closed testing on Google Play (API design and Android app built with AI assistance).
How I built it
- Build a scikit-learn pipeline: a ColumnTransformer with StandardScaler for the ten numeric inputs and OneHotEncoder for the eight categorical ones, then linear regression, saved with joblib.
- Serve it from a FastAPI backend with a Pydantic-validated /predict endpoint, running on AWS EC2 (Ubuntu) as a systemd service. I designed the API with AI assistance.
- Call the same endpoint from a Streamlit web app and from a native Android app built with AI assistance, now in closed testing on Google Play.
Ask about Student Marks Predictor
Answers come from this case study and its code on GitHub.