liveBook · Manning

Simple exponential smoothing

As explained in Statistics Every Programmer Needs

SimpleExpSmoothing is a statsmodels model class for constructing simple exponential smoothing models.

Simple exponential smoothing (SES) forecasts a time series by weighting past observations, with exponentially decreasing influence for older data. Its smoothing parameter α lies between 0 and 1 and controls how quickly older observations lose influence. section 7.4.3 section 7.5

Use SES when the series has a stable level rather than systematic trend or seasonality:

  • Choose SES for stationary series centered around a constant mean; use double exponential smoothing when a trend exists. section 7.4.4
  • Fit the model to training data with statsmodels; the fitted model emphasizes recent observations and can produce forecasts. section 7.4.6
  • Compared with ARIMA, SES generally needs less preprocessing because it does not require differencing or autoregressive and moving-average component selection. section 7.5

Fit SES with statsmodels

from statsmodels.tsa.holtwinters import SimpleExpSmoothing ses_model = SimpleExpSmoothing(train).fit() The resulting fitted model can generate forecasts from the recent patterns represented in the training data. section 7.4.6

How Statistics Every Programmer Needs covers it

How deep it goes
Defines exponential weighting and α, then demonstrates fitting; it stops short of detailed forecast evaluation or parameter interpretation.
Examples
Uses a statsmodels SimpleExpSmoothing fit on training data as its implementation example.
What you can do after
Apply it via statsmodels to fit an SES forecasting model to training data and generate predictions.
How it connects
Connects SES to ARIMA, double exponential smoothing, Holt–Winters exponential smoothing, trend, and seasonality.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Statistics Every Programmer Needs. The section links point to the parts of the book it draws on.