liveBook · Manning

Double exponential smoothing

As explained in Statistics Every Programmer Needs

Double exponential smoothing is an exponential smoothing technique that models both the level and a linear trend in a time series.

Double exponential smoothing (DES), also called Holt’s linear trend model, forecasts time series by exponentially weighting recent observations while modeling both the level and a linear trend. It suits data with a trend but no seasonal pattern. section 7.4.4 section 7.5

Use DES when the series has these characteristics:

  • A visible linear trend that simple exponential smoothing cannot represent. section 7.4.6
  • No seasonal component; Holt–Winters is the related extension for trend plus seasonality. section 7.4.4
  • Recent observations should receive more influence than older observations through exponentially decreasing weights. section 7.4.6

Fit DES in Python

With a training series named train, import ExponentialSmoothing, specify an additive trend, and call fit(): des_model = ExponentialSmoothing(train, trend = 'add').fit(). The fitted model optimizes its parameters to capture the underlying trend. section 7.4.6

>>> from statsmodels.tsa.holtwinters import ExponentialSmoothing
>>> des_model = ExponentialSmoothing(train, trend = 'add').fit()

Open the runnable statsmodels listing for the additive-trend DES fit. section 7.4.6

How Statistics Every Programmer Needs covers it

How deep it goes
Explains level and trend smoothing, exponential weighting, additive implementation, and parameter fitting without deriving formulas.
Examples
Demonstrates fitting an additive-trend model with statsmodels ExponentialSmoothing on training data.
What you can do after
Apply DES via statsmodels by fitting an additive trend to training data for forecasting.
How it connects
Contrasts with simple exponential smoothing, extends toward Holt–Winters, and differs from ARIMA in preprocessing complexity.

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.