How kyathamkarthik/gridsense-ml works
GridSense-ML forecasts appliance electricity demand and analyzes peak-load events. The main workflow is launched by the training pipeline: load and clean timestamped data, engineer causal features, split chronologically, benchmark and fit regression models, evaluate holdout forecasts, then calculate peak metrics and save artifacts for the Streamlit dashboard. The graph separates these domain stages from the dashboard’s inspection capabilities. Relationships follow the pipeline and dashboard excerpts or README; unsampled configuration and implementation details are not inferred.
Main entry points: train_pipeline.py Training pipeline · app.py Streamlit dashboard · evaluation.py Evaluation artifacts · data_processing.py Data preparation
Components 15
Forecast workflow
- Training pipeline
train_pipeline.py - Data preparation
src/data_processing.py - Causal features
src/features.py - Model training
src/models.py
Evaluation analytics
- Forecast evaluation
src/evaluation.py - Peak intelligence
src/peak_intelligence.py
Dashboard
- Streamlit dashboard
app.py - Model performance
app.py - Forecast timeline
app.py - Feature importance
app.py - Hourly diagnostics
app.py - Model leaderboard
app.py
Data and artifacts
- Energy dataset
data/raw/energydata_complete.csv - Evaluation artifacts
src/evaluation.py
Other components
- Analyst / operator
Connections 16
- Analyst / operator → Training pipeline: runs training
README.md - Training pipeline → Energy dataset: reads dataset
README.md - Training pipeline → Data preparation: calls preparation
train_pipeline.py - Training pipeline → Causal features: calls engineering
train_pipeline.py - Training pipeline → Model training: splits and fits
train_pipeline.py - Training pipeline → Forecast evaluation: evaluates forecasts
train_pipeline.py - Training pipeline → Peak intelligence: evaluates peaks
train_pipeline.py - Forecast evaluation → Evaluation artifacts: writes results
src/evaluation.py - Training pipeline → Evaluation artifacts: writes threshold
train_pipeline.py - Analyst / operator → Streamlit dashboard: opens dashboard
README.md - Streamlit dashboard → Evaluation artifacts: loads results
app.py - Streamlit dashboard → Model performance: shows metrics
app.py - Streamlit dashboard → Forecast timeline: plots forecasts
app.py - Streamlit dashboard → Feature importance: plots importances
app.py - Streamlit dashboard → Hourly diagnostics: plots hourly errors
app.py - Streamlit dashboard → Model leaderboard: shows leaderboard
app.py