This is a machine learning project to predict students' CGPA using a trained regression model. It allows data entry through a Streamlit interface and gives users performance predictions based on a variety of academic and personal input factors.
- Linear Regression and Random Forest model options
- User authentication (Sign up / Log in)
- Visual analytics (bar chart, pair plots, line/area plots)
- Prediction results with class category
- Error evaluation (MAE, MSE)
- Clean and interactive interface with Streamlit
A simple entry interface on Streamlit

Browse raw GPA and background data

Relationships between various features

Users enter academic and personal data



Final CGPA prediction with interpretation


Bar chart of CGPA distribution

Area chart showing multiple variable trends

Used to map text input to numeric values

Streamlit form that captures prediction inputs

Model training, evaluation, and output

- Frontend: Streamlit
- Backend: Python (scikit-learn, pandas, SQLite)
- Models: Linear Regression, Random Forest Classifier
- Visualization: Matplotlib, Seaborn
- Inputs: GPA from previous years, exam results, personal habits, access to resources, etc.
- Output: Predicted CGPA (out of 5.0)
- Target Label Classes:
- First Class
- Second Class Upper
- Second Class Lower
- Pass
- Fail
This was my first machine learning project. I improved it bit by bit. I plan to share more updates and refinements soon.



