A Machine Learning web application that predicts calories burnt during exercise based on user inputs such as age, gender, height, weight, duration, heart rate, and body temperature.
The project leverages XGBoost Regressor for accurate calorie prediction and is deployed on Render with a Flask + HTML frontend.
- Collected and analyzed exercise data for calories burnt prediction.
- Built and optimized an XGBoost regression model.
- Conducted Exploratory Data Analysis (EDA) with feature plots and correlation heatmaps.
- Improved the Mean Absolute Error (MAE) from 1.48 → 1.12 using RandomizedSearchCV for hyperparameter tuning.
- Built a Flask web app where users can input their details and get instant calorie predictions.
- Deployed on Render for public access.
| Model | MAE |
|---|---|
| XGBoost (Base) | 1.48 |
| XGBoost (Tuned) | 1.12 |
Machine Learning:
- Python, NumPy, Pandas, Scikit-learn, XGBoost
Data Visualization:
- Matplotlib, Seaborn
Backend & Deployment:
- Flask
- Gunicorn
- Render (Cloud Hosting)
The project includes:
- Distplots of key features
- Feature correlation heatmap to understand relationships
Example:
🔗 Web App: Render Live Link
🔗 GitHub Repository: Project Repo
🔗 Web App demo Video: Video Link
If you want to run the project locally:
# 1. Clone the repository
git clone https://github.com/Prabhakar200216/calories-burnt
cd calorie-predictor
# 2. Create a virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# 3. Install dependencies
pip install -r requirements.txt
# 4. Run Flask app
python app.py