How adeebmoiz101/ml-project works
This is a student exam performance prediction application. Its main user workflow collects background details and reading/writing scores, transforms the submitted features with the saved preprocessor, predicts a maths score, and displays it. Separately, the training workflow ingests the student dataset, splits it, fits preprocessing, compares regressors, and saves model artifacts. The README also describes exploratory analysis and notebook-based model comparison. The graph follows sampled calls and documented capabilities; notebook internals and some artifact wiring are not shown in the sampled source.
Main entry points: app.py Flask routes · predict_pipeline.py Prediction pipeline · artifacts Saved data and models · data_ingestion.py Data ingestion
Components 13
Prediction web app
- Flask routes
app.py - Web templates
templates - Input dataframe
src/pipeline/predict_pipeline.py - Prediction pipeline
src/pipeline/predict_pipeline.py
Model training
- Data ingestion
src/components/data_ingestion.py - Data transformation
src/components/data_transformation.py - Model trainer
src/components/model_trainer.py - Model utilities
src/utils.py
Exploration and comparison
- Exploratory analysis
notebook/1 . EDA STUDENT PERFORMANCE .ipynb - Notebook model comparison
notebook/2. MODEL TRAINING.ipynb
Data and artifacts
- Student dataset
notebook/data/stud.csv - Saved data and models
artifacts
Other components
- Student / user
Connections 16
- Student / user → Flask routes: submits inputs
- Flask routes → Web templates: renders pages
- Flask routes → Input dataframe: builds dataframe
- Flask routes → Prediction pipeline: invokes prediction
- Prediction pipeline → Input dataframe: receives features
- Prediction pipeline → Saved data and models: loads model and preprocessor
- Prediction pipeline → Web templates: returns score for display
- Data ingestion → Student dataset: reads
- Data ingestion → Saved data and models: writes raw and split data
- Data ingestion → Data transformation: calls
- Data transformation → Saved data and models: writes preprocessor
- Data transformation → Model trainer: calls
- Model trainer → Model utilities: evaluates and saves model
- Model utilities → Saved data and models: writes model
- Student dataset → Exploratory analysis: documents dataset use
- Student dataset → Notebook model comparison: documents dataset use