Skip to content

End-to-end Machine Learning + MLOps project for analyzing and predicting student performance with model training, evaluation, and deployment workflows.

Notifications You must be signed in to change notification settings

abrarshahh/Student_Performance_MLOps

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Student Performance MLOps

An end-to-end Machine Learning and MLOps project for analyzing and predicting student performance using academic and demographic data.
This repository covers the life cycle of a typical ML project — from data exploration and model training to deployment and CI/CD automation.

📌 This project was built for learning and experimentation in MLOps.


🧠 Project Overview

Student performance prediction is an application of predictive modeling where academic scores are forecast based on features like gender, ethnicity, parental education, lunch type, and test preparation completion.:contentReference[oaicite:1]{index=1}

This project integrates:

  • Exploratory Data Analysis (EDA)
  • Data preprocessing and feature engineering
  • Model training and evaluation
  • Model deployment via a REST API
  • Containerization and CI/CD automation
  • Serving predictions to users

📁 Repository Structure

Student_Performance_MLOps/
├── notebook/                # Notebooks with training, EDA, modeling
├── src/                     # Source code (model utils, pipelines)
├── templates/               # UI templates (if web UI exists)
├── app.py                   # Web application entrypoint
├── requirements.txt         # Python dependencies
├── setup.py                 # Project packaging
├── ReadMe.md
└── .gitignore

🛠 Setup & Installation

  1. Clone the repo.

    git clone https://github.com/abrarshahh/Student_Performance_MLOps.git
    cd Student_Performance_MLOps
    
  2. Create and activate a virtual environment

    python3 -m venv venv
    source venv/bin/activate
    
  3. Install dependencies

    pip install -r requirements.txt
    

🚀 Usage

Run the application locally

  1. Start the app:

    python app.py
    
  2. Visit the local dev server (default port may vary) to interact with the prediction UI.

Model Training & Evaluation

  • Use the notebook in notebook/ to explore the dataset
  • Train models and evaluate performance
  • Save the final model for deployment

📌 Architecture Summary

  1. Notebook for EDA & modeling — explore the dataset and train candidate models.

  2. Source code for inference — load and serve models via app.py.

  3. Web interface / REST API — interactively predict student performance.


🛠 Tools & Tech Stack

  • Python 3.x

  • Flask for REST API

  • MLOps

  • Jupyter Notebooks

  • Pandas, Scikit-Learn, and visualization libraries

About

End-to-end Machine Learning + MLOps project for analyzing and predicting student performance with model training, evaluation, and deployment workflows.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages