• About Daitan
    • Meet the Team
  • Our Services
    • Design and Architecture
    • Agile Software Development
    • Data Science and Engineering
    • Automation and Chatbots
  • Innovation
  • Our Work
  • Knowledge Center
  • Careers
  • Contact
  • About Daitan
    • Meet the Team
  • Our Services
    • Design and Architecture
    • Agile Software Development
    • Data Science and Engineering
    • Automation and Chatbots
  • Innovation
  • Our Work
  • Knowledge Center
  • Careers
  • Contact
Exponential Smoothing Methods for Time Series Forecasting

Exponential Smoothing Methods for Time Series Forecasting

  • Posted by Daitan Innovation Team
  • On August 7, 2019
  • Exponential Smoothing, Machine Learning, Time Series Forecast

In our last two articles, we covered basic concepts of time series data and decomposition analysis. We started talking about common patterns of time series data, like trend, season, and cycle. Then, we described how to explore these patterns using classic decomposition methods. Following that, it’s now time to apply that knowledge to a practical algorithm. In this piece, we provide an overview of Exponential Smoothing Methods.

What Are Exponential Smoothing Methods?

Exponential Smoothing Methods are a family of forecasting models. They use weighted averages of past observations to forecast new values. Here, the idea is to give more importance to recent values in the series. Thus, as observations get older (in time), the importance of these values get exponentially smaller.

Exponential Smoothing Methods combine Error, Trend, and Seasonal components in a smoothing calculation. Each term can be combined either additively, multiplicatively, or be left out of the model. These three terms (Error, Trend, and Season) are referred to as ETS.

Thus, Exponential Smoothing Methods can be defined in terms of an ETS framework, in which the components are calculated in a smoothing fashion.

As we can see, combining Error, Trend, and Season in at least three different ways gives us a lot of combinations. Let’s consider some examples.

Using the taxonomy described at Forecasting Principal and Practice, the three main components can be defined as:

  • Error: E
  • Trend: T
  • Season: S

Moreover, each term can be used in the following ways:

  • Additive: A
  • Multiplicative: M
  • None: N (Not included)

Thus, a method with additive error, no trend and no seasonality would be ETS(A,N,N) — whichis also known as Simple Exponential Smoothing with an additive error.

Following the same reasoning, we have:

  • ETS(M,N,N): Simple exponential smoothing with multiplicative errors.
  • ETS(A,A,N): Holt’s linear method with additive errors.
  • ETS(M,A,N): Holt’s linear method with multiplicative errors.

But how can we decide how to best apply each of these components using the ETS framework?

Time Series Decomposition Plot

Analyzing whether time series components exhibit additive or multiplicative behavior rests in the ability to identify patterns like trend, season, and error. And that’s the idea behind time series decomposition.

As we saw in our last article, the goal of time series decomposition is to separate the original signal into three main patterns.

  • The Trend
  • The Season
  • The Error (also known as residuals or remainder)

The trend indicates the general behavior of the time series. It represents the long-term pattern of the data — its tendency.

The seasonal component displays the variations related to calendar events. Lastly, the error component explains what the season and trend components do not. The error is the difference between the original data and the combination of trend and seasonality. Thus, if we combine all three components, we get the original data back.

Usually, decomposition methods display all this information in a decomposition plot.

Analyzing a Time Series Decomposition Plot is one of the best ways to figure out how to apply the time series components in an ETS model.

Time Series Decomposition Analysis

Quick recap! Using the ETS framework, each component — trend, season, and error — can be applied either additively or multiplicatively. We can also leave one or more of these components out of the model if necessary.

Let’s now consider some ways to identify additive or multiplicative behavior in time series components.

In general, additive terms show linear or constant behavior.

If the trend component increases or decreases linearly, or close to it, we say it has an additive pattern. On the other hand, if the trend shows an exponential variation, either positive or negative, then it has a multiplicative behavior.

The Season component follows a similar pattern. However, here we are more interested in variations of magnitude. Seasonal patterns always occur at regular intervals. When the magnitude of the seasonal swings remains constant, it has an additive behavior. Otherwise, if magnitude changes over time, it has multiplicative behavior.

The same applies to the Error component. If the magnitude varies over time, we also apply it multiplicatively.

Let’s now jump to a practical example. Consider the time series for Gas Consumption in the UK. This dataset contains 108 quarterly-spaced point values from 1960 to 1986.

Before any decomposition, we can already extract some insights from the time series plot. First, the general trend is positive. It shows a general positive gradient throughout the data.

Seasonal variations are also very strong. Gas consumption for the first and last quarters are higher throughout the series. Also, note that the magnitude of gas consumption increases over time. The latter indicates a multiplicative seasonal term.

Now, take a look at the time series decomposition plot.

The plot above shows an STL decomposition.

STL only performs additive decomposition. However, based on our knowledge so far, we can also find patterns that might indicate multiplicative terms. The decomposition plot shows the original data on top, followed by the Trend, Seasonal, and Error (Remainder) components.

As we expected, the Trend shows additive behavior — it grows somewhat linearly.

Note that the seasonal variations are not constant over time. We can see that the magnitude of the seasonal fluctuations increases throughout the time series.

Lastly, the Remainder component displays a change in variance as the time series moves along. Thus, both, Seasonal and Error components should be applied as a multiplicative term.

Thus, we can define our model as ETS(M,A,M).

  • Multiplicative Error
  • Additive Trend
  • Multiplicative Seasonality.

You can see the smoothing equations for this method here.

Let’s take the years from 1960 to 1984 as a training set and reserve the last two years for testing. Now, we can fit an ETS(M,A,M) using the training set and perform forecasting for the next two years. Check the results below.

The test data is shown in red, and predictions plus confidence interval are in blue. Note how the forecasting confidence variations increase over time. That’s a normal pattern that reflects the model uncertainty to predict values further in the future.

Let’s take a different example. The next time series shows monthly data about Accidental Deaths in the US from 1973 to 1978.

Like in the previous example, seasonal variations are very strong. July is the deadliest month while February exhibits the least occurrences. Also, this pattern repeats year after year.

What’s different from the last example, though, is the fact that seasonality does not display significant changes in variance. If the magnitude of seasonal variations exhibits a constant behavior over time, we can apply it as an additive term. Besides, note that the data does not show a clear upward or downward trend. Have a look at this decomposition plot.

The trend seems to show a down-to-up pattern. If we overlay the trend on top of the time series, it looks very close to a horizontal pattern. Then, it seems reasonable to leave it out of the model.

As we expected, the magnitude of the seasonal variations looks very much constant. Moreover, the Error term does not show significant variations as well. Thus, it seems reasonable to apply both Season and Error as additive terms to the model. This gives us an ETS(A,N,A) — Additive Error, No Trend, and Additive Seasonality.

Reserving the last two years for testing, the resulting forecast for ETS(A,N,A) looks like this:

Conclusions

These are some key points to take from this piece.

  • Exponential Smoothing Methods are a family of classic forecasting algorithms. They work well when the time series shows a clear trend and/or seasonal behavior.
  • Exponential Smoothing Methods combine Error, Trend, and Season. We can apply each of these components either additively or multiplicatively.
  • Time series decomposition is one of the best ways to find patterns of Trend, Season, and/or Error. A decomposition plot usually shows each component as a separate subplot.
  • If the trend shows a linearly upward or downward tendency, we apply it additively. If it varies exponentially, it’s multiplicative.
  • If the magnitude of the seasonal patterns changes linearly, we can apply it additively. If the magnitude evolves exponentially, it is multiplicative.

We hope you have enjoyed reading this.

By Thalles Silva, as part of Daitan’s Research on multiple aspects of AI&ML. Thanks to the team working on time series forecasting PoCs and demos: Bruno Schionato, Diego Domingos, Fernando Moraes, Gustavo Rozato, Marcelo Mergulhão, and Marciano Nardi.

 2
Recent Posts
  • How Much Do AI Projects Really Cost?
  • How a Data-Driven Approach Transforms SMEs
  • Do You Have The Right Team For Your AI Project?
  • Daitan Named Among AI Consultancies in Report by Forrester Research
  • Strategies to Reduce Risks in Machine Learning Projects
Categories
  • Blog Post
  • Case Study
  • e-book
  • Events
  • Innovation
  • Media
  • News
  • Whitepaper
Tags
Agile Agile Teams AI AI Project Analytics Architecture Artificial Intelligence Audio Audio De-noiser Best Practices Business Goals Business Outcome Canada Chatbot Cloud Communications COVID-19 Customer Experience Daitan Daitan Hiring Data Data Science Deep Learning Design & Architecture DevOps Digital Business Digital Solutions Digital Transformation Event-Driven Architecture Facial Recognition Financial Services Hiring Machine Learning News NLP Object Storage Open Source SaaS Security Software Development Symphony Platform Telecommunications Tensor Flow 2.0 Time Series Forecast Virtualization

A Visual Guide to Time Series Decomposition Analysis

Previous thumb

Leveraging Deep Learning on the Browser for Face Recognition

Next thumb
Scroll

Since 2004, clients have trusted Daitan to build core technology, data solutions and software products that scale with real-time performance. They rely on Daitan because we deliver quality results, while de-risking projects and accelerating time-to-market. From well-funded start-ups to global Fortune 500 enterprises, Daitans clients span a wide variety of industries.

NAVIGATION
  • About Daitan
  • Our Services
  • Innovation
  • Our Work
  • Knowledge Center
  • Careers
  • Contact
Recent Posts
  • How Much Do AI Projects Really Cost? February 25, 2021
  • How a Data-Driven Approach Transforms SMEs February 24, 2021
  • Do You Have The Right Team For Your AI Project? February 18, 2021
DAITAN LOCATIONS
  • USA Headquarters

    2410 Camino Ramon, Suite 285
    San Ramon, CA 94583

  • CANADA Headquarters

    1175 Douglas Street, Unit 916, Victoria, BC, Canada, V8W2E1

  • BRAZIL Headquarters

    Av. Selma Parada, 201, Bloco 1, Conjunto 141, Galleria Office Park, Jardim Madalena, Campinas, SP, Brazil, 13091-904

Copyright ©2021 Daitan | All rights reserved | Privacy Policy | Contact Us

Explore your options

Get in touch to learn how Daitan can accelerate your project.