End-to-end machine learning pipeline for predicting forest fire risk using the Algerian Forest Fires dataset, including EDA, feature engineering, model training, hyperparameter tuning, and deployment using Flask and AWS/render.
Dataset & Analysis
The project uses the Algerian Forest Fire Dataset to analyze fire-related patterns
and predict outcomes based on environmental and meteorological conditions.
Exploratory Data Analysis (EDA)
Feature Engineering (FE)
Data cleaning and preprocessing
Fire-related pattern analysis
Feature normalization using StandardScaler
Models Trained
The following regression models were trained and evaluated individually:
Linear Regression
Lasso Regression
Ridge Regression (Selected)
ElasticNet Regression
Each model was trained using cross-validation and evaluated using:
Mean Absolute Error (MAE)
R 2 Score
Based on consistent performance and better generalization,
Ridge Regression was selected as the final model.
Model Artifacts
The following trained objects are serialized using Pickle and used in deployment:
Models/ridge.pkl – Trained Ridge Regression model
Models/scaler.pkl – Fitted StandardScaler
Tech Stack
Python
NumPy
Pandas
Scikit-learn
Flask
HTML (Jinja Templates)
How to Run the Application Locally
1️ Clone the Repository
git clone
cd End-to-End-Project
2️ Create and Activate Conda Environment
conda create -n e2e python=3.10 -y
conda activate e2e
3️ Install Dependencies
pip install -r requirements.txt
4️ Run the Flask Application
python application.py
Access the Application
Open a browser and visit:
localhost
For cloud deployment, replace localhost with your server's public IP or domain.
Project Structure
End-to-End-Project/
│
├── Models/ # Pickled ML model & scaler
├── templates/ # HTML templates
├── NoteBook/ # EDA & model training notebooks
├── application.py # Flask application
├── requirements.txt # Project dependencies
├── README.md # Project documentation
├── .gitignore
Deployment
Designed for deployment on AWS (EC2 / Elastic Beanstalk)
Dependencies installed u …