Building, testing and Deploying Time-Series ML models

During my internship, I was tasked with developing models to forecast electricity usage for an electricity monitoring company.
Author

Benedict Thekkel

Published

April 24, 2024

Time Series Analysis

https://bthek1.github.io/TimeSeriesML/

Developed during my exploration of Time Series Machine Learning methodologies for my internship, this Time Series technique operates similarly to traditional ML models. However, due to the temporal nature of the data, many techniques require adjustments and sequential training to effectively capture patterns and make accurate predictions.

In time series ML, models need to be trained and evaluated differently. For instance, instead of randomly splitting data into training and testing sets, chronological ordering is crucial, with earlier data used for training and later data for testing. Additionally, techniques like feature engineering may involve creating lag features or rolling statistics to capture temporal patterns.

Overall, the primary difference lies in how time series ML methods handle the time-dependent nature of the data, requiring specialized techniques tailored to sequential data analysis.

Techniques covered include:

Statical models:

  • AutoARIMA
  • HoltWinters
  • CrostonClassic
  • HistoricAverage
  • DynamicOptimizedTheta as DOT
  • SeasonalNaive
  • MSTL

ML models:

  • XGBRegressor
  • LGBMRegressor
  • LinearRegression

Neural Networks:

  • NBEATS
  • NHITS
  • MLP
  • RNN
  • LSTM

Libraries Covered

  • Nixtla
  • Darts
  • XGBoost
  • Prophet
Back to top