Dean Shabi
All work

Energy-tech · 2023 to 2025

Forecasting load, solar and prices for hundreds of sites at once

I led the development of long-term forecasting models for UK energy-tech firms. They power product features, inform trading decisions and cut balancing costs, across load, solar generation, battery state and market prices.

Role
Led model development
Stack
Python, PyTorch, MLflow, AWS, Docker
Battery storage containers along a gravel track, with the sun low over hills

How it works

  1. 1

    Weather data

  2. 2

    Energy history

  3. 3

    Market signals

  4. 4

    Prediction engine

    global models

  5. 5

    API

Weather, history and market data feed one prediction engine, and an API serves every product that uses the forecasts.

Results

Forecast error against the benchmark

MAPE for load and generation, aggregated across hundreds of production sites and indexed so the benchmark is 100.

  • Before
  • After

MAPE, indexed

Benchmark 100
Global models under 70

Production evaluation across client sites.

The forecasts powered core features in customer-facing energy management platforms. Sub-hourly forecasts cut balancing costs and penalties.

Key decisions

  1. 01

    One model for many sites

    A global model learns shared patterns from hundreds of time series at once. That helps it generalise to sites it has seen little of.

  2. 02

    Transfer what the network learns

    Networks reuse what they learned on other sites and tasks. That raised accuracy and cut training time, most of all for sites with little data.

  3. 03

    Test the model families properly

    I compared ARIMA, LightGBM ensembles and RNN, LSTM and Transformer networks, and built hybrids that combine statistical and ML models.

  4. 04

    Make every run reproducible

    MLflow tracks experiments, versions models and stores results, so any forecast can be traced back to the run that made it.

Have a machine learning system that has to hold up in production? I'd like to hear about it.