Skip to content

Lipranj14/Automated-Machine-Learning-Pipeline

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AutoML Dashboard

An end-to-end Automated Machine Learning web application — upload any tabular dataset and get a production-ready model with zero code.

Overview

AutoML Dashboard automates the entire machine learning workflow for tabular data. From raw CSV upload to a downloadable trained model, the pipeline handles everything — preprocessing, model selection, hyperparameter tuning, and evaluation — through an interactive web interface.

No ML knowledge required. No code. Just upload and go.


Features

Training Pipeline

  • Auto task detection — automatically detects Classification vs Regression

  • Data Quality Report — scans for missing values, outliers (IQR), class imbalance, and target leakage

  • 5-Model Zoo benchmarked via 3-fold cross-validation:

    Task Models
    Classification Logistic Regression, Random Forest, XGBoost, SVC, KNN
    Regression Linear Regression, Random Forest, XGBoost, SVR, KNN
  • Automated Hyperparameter Tuning via RandomizedSearchCV on the best model

  • Feature Importance bar chart (top 15 features)

  • Full Hold-out Evaluation on 20% test split:

    Classification Regression
    Accuracy, F1-Score, ROC-AUC RMSE, MAE, MSE, R²
    Confusion Matrix (normalised) Actual vs Predicted scatter
    Per-class Classification Report Residuals Distribution
    ROC Curve (binary problems)
  • On-demand Model Download — model serialized in memory, nothing written to disk until you click Download

What-If Single Predictor

  • Dynamic form auto-generated from the training schema
  • Instant prediction with confidence scores
  • Class probability bar chart (classification)

Batch Prediction

  • Upload a .pkl model + any new dataset
  • Automatic schema validation — catches missing columns before inference
  • Prediction Analytics: summary table with count, percentage, and confidence stats
  • Download results as CSV

Project Structure

AutoML/
├── app.py                  # Streamlit UI — Training, What-If, Batch tabs
├── automl_core.py          # Core ML pipeline (preprocessing, training, evaluation)
├── requirements.txt        # Python dependencies with version pins
├── .streamlit/
│   └── config.toml         # Streamlit dark theme & server config
├── LICENSE
└── .gitignore

Getting Started

Prerequisites

  • Python 3.9 or higher
  • pip

Installation

# 1. Clone the repository
git clone https://github.com/Lipranj14/AutoML.git
cd AutoML

# 2. Create and activate a virtual environment
python -m venv .venv

# Windows
.venv\Scripts\activate

# macOS / Linux
source .venv/bin/activate

# 3. Install dependencies
pip install -r requirements.txt

# 4. Launch the app
streamlit run app.py

Usage Guide

Step 1 — Train a Model

  1. Go to the Training Pipeline tab
  2. Upload a .csv or .xlsx dataset
  3. Select the target column
  4. Click Start Auto-ML Pipeline
  5. Review the leaderboard, metrics, and evaluation charts
  6. Click Download Versioned Model (.pkl) to save the model

Step 2 — Run Batch Predictions

  1. Go to the Batch Prediction tab
  2. Upload the .pkl model you downloaded
  3. Upload a new dataset with the same feature columns
  4. Click Generate Predictions
  5. Download the predictions as CSV

Step 3 — What-If Analysis

  1. After training, go to the What-If Predictor tab
  2. Enter individual feature values
  3. Click Predict for an instant result with confidence

Deployment

This app is deployed on Streamlit Community Cloud

Tech Stack

Layer Technology
Frontend / UI Streamlit
ML Framework scikit-learn, XGBoost
Data Processing pandas, NumPy
Visualization Plotly
Model Serialization joblib

Supported Formats

Input Accepted Formats
Training / Prediction Data .csv, .xlsx
Model File .pkl
Prediction Output .csv (download)


Made with Streamlit & scikit-learn

About

An end-to-end Automated Machine Learning (AutoML) web application. Upload any tabular dataset and get a production-ready model with zero code.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages