Skip to content

Machine Learning dashboard that predicts student performance using Linear Regression (implemented from scratch) with Streamlit visualization.

Notifications You must be signed in to change notification settings

RajXTech07/Student-Performance-Analyzer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

8 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸŽ“ Student Performance Analyzer

A Machine Learning dashboard that predicts student performance using Linear Regression implemented from scratch using Streamlit.


πŸš€ Project Overview

This project analyzes student academic data and predicts the Performance Index based on:

  • Hours Studied
  • Previous Scores
  • Sleep Hours
  • Sample Question Papers Practiced
  • Extracurricular Activities

The goal of this project was to understand how Linear Regression works mathematically by implementing it manually using NumPy instead of relying on ready-made ML libraries like sklearn.


🧠 Machine Learning Approach

  • Implemented Linear Regression using the Normal Equation
  • Used matrix multiplication to calculate model coefficients (theta values)
  • Evaluated model performance using RΒ² Score
  • Built a custom grading classification system

πŸ“Š Features

βœ” Student Performance Prediction
βœ” Custom Grade Classification
βœ” Model Accuracy Display (RΒ² Score)
βœ” Interactive Streamlit Dashboard
βœ” Animated & Colorful Visualizations
βœ” Clean Project Structure (model + UI separation)


πŸ›  Technologies Used

  • Python
  • NumPy
  • Pandas
  • Matplotlib
  • Plotly
  • Streamlit

πŸ“ Project Structure

student-performance-analyzer/
β”‚
β”œβ”€β”€ app.py                 # Streamlit dashboard
β”œβ”€β”€ model.py               # Linear Regression model logic
β”œβ”€β”€ StudentPerformance.csv # Dataset
β”œβ”€β”€ requirements.txt
└── README.md


🎯 Learning Outcome

This project helped me:

  • Understand Linear Regression mathematically
  • Work with NumPy matrix operations
  • Convert data analysis notebook into a web application
  • Debug and structure a real ML project
  • Deploy a working dashboard

πŸ“Œ Future Improvements

  • Add Train/Test split
  • Add more evaluation metrics (MAE, MSE)
  • Deploy the project online
  • Improve UI/UX design

πŸ‘¨β€πŸ’» Author

Raj Kumar | First Year B.Tech Student | Aspiring AI & ML Student


⭐ If you found this project interesting, feel free to star the repository!

About

Machine Learning dashboard that predicts student performance using Linear Regression (implemented from scratch) with Streamlit visualization.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published