Skip to content

Hrushitha12/Machine-Learning-Model-Reliability-Monitoring-Dashboard

Repository files navigation

Machine Learning Model Reliability & Monitoring Dashboard (Streamlit)

A production-style model monitoring dashboard that compares baseline vs production runs to track:

  • Performance drift
  • Data drift
  • Prediction drift
  • Data quality
  • Model explainability (SHAP/LIME)

Supports Classification, Regression, NLP (sentiment + summarization), and Computer Vision workflows.


Overview

This project focuses on model reliability in production, going beyond training accuracy to continuously evaluate how models behave once deployed.
The dashboard enables users to select a model, production run, and analysis type to visually inspect degradation, drift, and quality issues.


Key Features

Performance Drift Analysis

  • Classification: F1, Precision, Recall, ROC-AUC, Accuracy, Confusion Matrix, PR Curve
  • Regression: R², RMSE, MAE, MAPE, Predicted vs Ground Truth plots
  • NLP: BLEU, ROUGE, similarity metrics and distributions

Data Drift Analysis

  • Numeric features: Kolmogorov–Smirnov (KS) Test
  • Categorical features: Chi-Square Test
  • Feature-wise drift detection and visualization
  • NLP-specific syntax and semantic drift checks

Prediction Drift Analysis

  • Tracks changes in prediction distributions across production runs
  • Statistical tests and trend plots (mean, median, max, min)

Data Quality Analysis

  • Completeness (missing values)
  • Uniqueness (duplicate detection)
  • Validity (datatype mismatch, invalid values, outliers)
  • Embedded dataset profiling using ydata-profiling

Model Explainability

  • Tabular models: SHAP (waterfall, bar, violin, force, scatter plots)
  • NLP models: LIME-based text explanations
  • CV models: LIME explanations highlighting influential image regions

Tech Stack

  • Python
  • Streamlit
  • Pandas, NumPy
  • Scikit-learn
  • SHAP, LIME
  • Plotly, Matplotlib
  • TensorFlow / Keras (Computer Vision)
  • OpenCV
  • NLP utility libraries

Project Structure

.
├── 1_Landing_Page.py
├── pages/
│   ├── 2_Analysis_Page.py
│   ├── Add_Model.py
│   ├── models/
│   │   └── <ModelName>/
│   │       ├── baseline.csv
│   │       ├── model.joblib / model.h5
│   │       ├── Production Runs/
│   │       ├── Ground Truths/
│   │       └── ...
├── utils.py
├── requirements.txt
└── README.md

Setup Instructions

1. Create and activate virtual environment

python -m venv .venv
# Windows
.venv\Scripts\activate
# macOS/Linux
source .venv/bin/activate

2. Install dependencies

pip install -r requirements.txt

3. Run the application

streamlit run 1_Landing_Page.py

Notes

  • Some modules (e.g., NLP semantic drift embeddings, CV image paths) require dataset paths to match the repository structure.
  • This project was rebuilt and modernized from an earlier academic implementation to reflect production-level monitoring concepts.

Future Improvements

  • Fully configurable paths (no hard-coded directories)
  • Dockerized deployment
  • Alerting integrations (Slack / Email / Webhooks)
  • Experiment tracking (MLflow or Weights & Biases)

About

Production ML monitoring dashboard tracking performance drift, data drift, and prediction drift across Classification, Regression, NLP, and Computer Vision — SHAP, LIME, KS tests

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors