Skip to content

About

A simple disaster predicter which shows how various sci-kit-py algorithms work on the same data.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

4 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

🌍 ClimateGuard — End-to-End Disaster Probability Prediction System

ClimateGuard is a full-stack machine learning web application designed to forecast localized natural disaster probabilities for a specific city and target year. By combining historical meteorological and disaster datasets with supervised learning algorithms—specifically Support Vector Machines (SVMs) and Extreme Gradient Boosting (XGBoost)—the platform transforms raw tabular climate records into actionable risk probabilities via a Flask REST API and an interactive React.js dashboard, fully containerized with Docker.

🎯 Project Overview & Motivation

Urban planners, researchers, and risk analysts often struggle to translate historical climate datasets into localized, easy-to-interpret risk assessments. Traditional data science notebooks remain isolated from end users, while standard weather applications only offer short-term meteorological forecasts rather than long-term annual hazard probabilities.

ClimateGuard bridges the gap between data science experimentation and production web engineering by:

  • Ingesting and preprocessing historical city-level climate and disaster records from structured .csv datasets using Pandas and NumPy.

  • Benchmarking multiple supervised learning models (SVMs and XGBoost) in Scikit-learn to capture non-linear spatio-temporal relationships.

  • Serving real-time probability inference through a lightweight Flask backend API.

  • Providing an intuitive React.js user interface where users can select a target city and future year to visualize disaster probability scores.

  • Packaging the entire application stack using Docker for reproducible, environment-agnostic deployment.

🔄 System Architecture & End-to-End Workflow

ClimateGuard operates across two distinct pipelines: an Offline Training & Evaluation Pipeline and an Online Real-Time Inference Pipeline.

+-----------------------------------------------------------------------------------+
|                        1. OFFLINE ML TRAINING PIPELINE                            |
+-----------------------------------------------------------------------------------+
  [Historical Climate CSV Dataset]
                 |
                 v
  [Data Cleaning & Preprocessing (Pandas / NumPy)]
  |-- Missing Value Imputation & Outlier Filtering
  |-- Categorical Encoding (City / Region Identifiers)
  |-- Feature Scaling & Temporal Feature Extraction (Year, Trends)
                 |
                 v
  [Model Training & Benchmarking (Scikit-learn / XGBoost)]
  |-- Support Vector Machines (SVM with RBF Kernel)
  |-- Extreme Gradient Boosting (XGBoost Classifier/Regressor)
                 |
                 v
  [Serialized Model Artifacts (.pkl / .joblib) & Encoders]

+-----------------------------------------------------------------------------------+
|                        2. ONLINE INFERENCE PIPELINE (DOCKERIZED)                  |
+-----------------------------------------------------------------------------------+
 [User Input on React.js Frontend] ---> (Selects Target City & Year)
                 |
                 v  HTTP POST /predict (JSON Payload)
  [Flask REST API Backend]
  |-- Input Validation & Feature Vector Transformation
  |-- Loads Pre-trained ML Model Artifact
  |-- Computes Disaster Probability Distribution
                 |
                 v  HTTP 200 OK (JSON Prediction Response)
  [React.js Interactive Dashboard]
  |-- Renders Probability Breakdown & Risk Severity

About

A simple disaster predicter which shows how various sci-kit-py algorithms work on the same data.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages