A Machine Learning dashboard that predicts student performance using Linear Regression implemented from scratch using Streamlit.
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.
- 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
β Student Performance Prediction
β Custom Grade Classification
β Model Accuracy Display (RΒ² Score)
β Interactive Streamlit Dashboard
β Animated & Colorful Visualizations
β Clean Project Structure (model + UI separation)
- Python
- NumPy
- Pandas
- Matplotlib
- Plotly
- Streamlit
student-performance-analyzer/
β
βββ app.py # Streamlit dashboard
βββ model.py # Linear Regression model logic
βββ StudentPerformance.csv # Dataset
βββ requirements.txt
βββ README.md
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
- Add Train/Test split
- Add more evaluation metrics (MAE, MSE)
- Deploy the project online
- Improve UI/UX design
Raj Kumar | First Year B.Tech Student | Aspiring AI & ML Student
β If you found this project interesting, feel free to star the repository!