An end-to-end Machine Learning application that predicts student academic performance based on demographic, social, and previous academic metrics. This project demonstrates full-stack ML engineering, from model integration to a modern, responsive user interface.
- 🎯 AI Predictions: High-accuracy predictions using a Random Forest Classifier.
- 📱 Modern UI: Responsive dashboard built with a Glassmorphism design system.
- 📊 Real-time Analysis: Immediate feedback based on 13+ student metrics.
- 🔒 Secure Access: Administrative login system for dashboard access.
- 🏗️ Clean Architecture: Modularized backend with dedicated ML utilities and clean routing.
- Backend: Python, Flask
- Machine Learning: Scikit-Learn, Pandas, NumPy, Joblib
- Frontend: HTML5, CSS3 (Custom Glassmorphism System), Bootstrap 5, Jinja2
- Data Visualization: Chart.js (Planned)
- Environment: Virtualenv, Docker (Planned)
The project follows a modular structure for scalability and maintainability:
├── app.py # Main Flask entry point
├── utils/
│ └── ml_model.py # ML Model handler & Inference logic
├── static/
│ └── css/
│ └── style.css # Custom Design System
├── template/ # Jinja2 HTML Templates
├── Dataset/ # UCI Student Performance Data
└── model.sav # Trained RandomForest Serialized Model
- Python 3.8 or higher
- pip (Python package installer)
-
Clone the repository
git clone https://github.com/yourusername/Student-Performance-Prediction.git cd Student-Performance-Prediction -
Set up a virtual environment
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
-
Install dependencies
pip install -r requirements.txt
-
Run the application
python app.py
Visit
http://127.0.0.1:5000in your browser.
The model was trained on the UCI Student Performance Dataset, which includes student achievement in secondary education of two Portuguese schools.
Input Features included:
Demographics: Age, Sex, Address TypeFamily: Parent education level, extra educational supportSocial: Travel time, frequency of going out, internet accessAcademic: Previous failures, Period 1 & 2 Grades
Contributions are welcome! Please feel free to submit a Pull Request.
Developed with ❤️ for Modern Education Technology.