TimeSeries ML

Forecasting energy consumption with machine learning: a working project brief, and a survey of the libraries that can serve it.
Author

Benedict Thekkel

This site is organised around one concrete problem rather than a curriculum. The problem is household energy: given hourly meter readings, forecast consumption, detect anomalies, and work out which appliances are running from the total draw alone. Phisaver Project states that brief, and everything else here is a candidate tool evaluated against it.

That shapes what you will find. The pages are library walkthroughs, mostly following each project’s own tutorials, chosen because a forecasting problem is usually solved by picking the right existing model rather than writing a new one.


Start Here

Page Covers
Phisaver Project The brief. What is being predicted (solar, total consumption, aircon) and from which inputs, the three resolutions the meter data arrives at (hourly energy, five-minute power, one-minute sensor readings), and a taxonomy of the model families worth trying: auto-forecast, exponential smoothing, benchmarks, intermittent-demand, multiple-seasonality, and Theta

Gradient Boosting and Prophet

The pragmatic first attempts. Tree ensembles on lag features are often hard to beat, and Prophet is the standard quick baseline.

Page Covers
XGBoost The algorithm itself, worked through from first principles
XGBoost: Forecast Energy Consumption The energy problem end to end: feature engineering from timestamps, training under cross validation, then forecasting forward
Prophet Hourly energy forecasting with Facebook’s Prophet

Darts

A single API over classical, machine learning, and deep forecasting models, which makes it the easiest way to compare families without rewriting the data pipeline each time.

Page Covers
Darts The long tour: training and predicting, inspecting seasonality, hyper-parameter search with Theta, backtesting against history, global models trained across many series, N-BEATS for the deep learning case, covariates and encoders for external data, and probabilistic forecasts with their distributions
Hyper-parameter Optimization Tuning a deep model for electricity load with confidence intervals: a linear baseline, then TCN, then Optuna over its parameters, then picking the winner
FFT Forecasting Darts’ Fourier-transform model on strongly seasonal data, improved in stages by cropping the training set, filtering low-amplitude waves, and detrending

Nixtla

The Nixtla stack splits by model type across four libraries, so the pages are grouped the same way. Most follow the upstream tutorials, several on electricity data that matches the project brief.

Page Covers
StatsForecast Training many statistical models over many series at once, evaluating them, and selecting the best per series
Electricity Load Forecast MSTL, for load data carrying more than one seasonality at once
Detect Demand Peaks Forecasting the ERCOT market to catch daily peaks rather than the whole curve
MLForecast The machine learning arm, including distributed training via Spark and LightGBM
NeuralForecast Fitting LSTM and NHITS on AirPassengers, then plotting the predictions
Exogenous Variables Training and forecasting with external inputs, both historical and known-future
Save and Load Models Persisting a trained neural forecaster and reading it back
Neural Advanced The multi-series version: train several neural models, evaluate, and select per series
All Methods The comparison that ties the stack together. Statistical, machine learning, and neural forecasts over the M5 dataset, cross-validated and evaluated per series and per window
Hierarchical Forecast Placeholder. A title and a link, no content yet

Signal Analysis and Explainability

Page Covers
FFT Analysis Building a synthetic multi-frequency signal, then using wavelets and FFT features to feed a random forest regressor
Xplainable The xplainable library on the Titanic dataset, using a partitioned classifier
Xclassifier XClassifier on the same data, closely overlapping the previous page

Not Covered Yet

Stated plainly, so the gaps are not mistaken for oversights:

  • The project brief is not answered here. Phisaver Project sets out consumption forecasting, anomaly detection, and appliance disaggregation. The pages that follow evaluate tools; none of them close the loop on the actual data.
  • Nothing on disaggregation. Recovering per-appliance draw from a total signal is the hardest of the three goals and has no page at all.
  • No anomaly detection, despite it being in the brief.
  • Three stubs. Financial Analysis is a single unticked to-do about the US Treasury yield curve, Hierarchical Forecast is a bare link, and the two xplainable pages duplicate each other.
  • sktime is named as a candidate framework in the brief but never evaluated.
  • Most pages follow upstream tutorial data rather than the project’s own meter readings, so the comparisons are indicative rather than decisive.

Back to top