Student Performance Prediction

Student Performance Prediction Web Application Using Machine Learning

Student Performance Prediction

Overview

Project Name Predicting Student Performance Using Machine Learning
Language/s Used Python, HTML, CSS
Type Web Application

Download New Real Time Projects :-Click here

Introduction

Figuring out how students are doing in school is super important in education. Using machine learning to predict performance can help spot problems early and come up with better ways to support students. This project is a web app that predicts how students might do in math, based on things like their background and school info.It’s made like a full professional project, but also great for school work, research, or adding to your portfolio. The cool part is it shows the whole ML process — from cleaning the data all the way to making it work in a simple web interface.

Features

  • Predicts math scores based on input features such as gender, parental education, lunch status, and test preparation.
  • Simple and responsive web interface for easy interaction.
  • Real-time prediction using a pre-trained machine learning model.
  • Clean modular source code with structured components and pipelines.
  • Jupyter notebooks included for data exploration and training.

Installation & Execution

Step 1: Extract the ZIP File

Download and extract the project zip file on your system.

Step 2: Open in VS Code

  • Launch Visual Studio Code (VS Code).
  • Go to File > Open Folder and select the extracted project folder.

Step 3: Create Virtual Environment

Open a terminal in VS Code:

python -m venv venv

Activate the virtual environment:

  • Windows: venv\Scripts\activate
  • Linux/macOS: source venv/bin/activate

Step 4: Install Required Dependencies

pip install -r requirements.txt

Step 5: Run the Application

python app.py

Step 6: Access the Application

Open your browser and go to:

http://localhost:5000

Use the form to input student details and instantly get the predicted math score.

Dataset

The dataset is sourced from a public Kaggle repository and includes student details such as:

  • Gender
  • Race/Ethnicity
  • Parental level of education
  • Lunch type (standard or free/reduced)
  • Test preparation status
  • Exam scores (Math, Reading, Writing)

This project focuses on predicting the Math Score based on the other variables.

Model Training

The model training process includes:

  • Exploratory Data Analysis (EDA) in Jupyter Notebook
  • Feature encoding, transformation, and scaling
  • Model building using Random Forest Regressor
  • Experimental comparison using CatBoost (for advanced insights)
  • Train-test split for performance validation
  • Serialization of model and preprocessor using pickle

The trained model achieved 85% accuracy, indicating strong predictive capability for math scores.

Results

The model highlighted several key contributors to student performance:

  • Students who completed test preparation performed significantly better.
  • Parental education level had a direct correlation with student scores.
  • Socioeconomic indicators like lunch type also played a noticeable role.

These insights can support data-driven educational planning and support strategies.

Project Structure

Predicting-Student-Performance-Using-Machine-Learning/
│
├── app.py                      # Main Flask app
├── requirements.txt            # Required Python packages
├── setup.py                    # Project setup script
├── Notebook/                   # Notebooks for EDA and training
│   └── data/                   # Dataset (stud.csv)
├── artifacts/                  # Serialized model, preprocessor, datasets
├── catboost_info/             # CatBoost logs (experimental)
├── src/                        # Core ML pipeline and components
│   ├── components/             # Data ingestion, transformation, training
│   └── pipeline/               # Prediction and training execution
├── templates/                  # HTML interface
├── static/css/                 # Front-end styling

Technologies Used

  • Language: Python
  • Web Framework: Flask
  • Frontend: HTML, CSS
  • Libraries: pandas, numpy, scikit-learn, matplotlib, seaborn
  • ML Model: Random Forest Regressor
  • Visualization: Jupyter Notebook
  • Serialization: Pickle

We have projects Available in all languages:–Click Here


    student performance prediction using machine learning source code
    student performance prediction using machine learning project
    student performance prediction using machine learning github
    student performance prediction using machine learning project report
    student performance prediction using machine learning python
    student performance prediction using machine learning research paper
    student performance prediction using machine learning kaggle
    student performance prediction using machine learning code
    student performance prediction web application using machine learning github
    student performance prediction web application using machine learning pdf

     

    Share this content:

    Post Comment