Divide and Conquer: Segmenting Time Series for Improved Forecasts

2

We all have some sort of intuitive idea of what time series data is – it’s a bunch of measurements or observations that are marked by a time stamp – we know when the measurement was taken, as well as what was measured. This natural temporal ordering of the data is a vital component for statistical forecasting: we are searching for patterns that change systematically over time. In order to do a good job in forecasting we need to know about the structure of our data.

Ideally, the time series would look like this: well behaved, few missing values, ample history, a nice repeating pattern – this is the sort of data that can be fed to an automated forecasting environment such as SAS Forecast Server, and good results obtained. But life – and forecasting – isn’t always that neat. In almost every forecasting project I have been involved with we were faced with all kinds of not-so-well-behaved series: slow moving items (intermittent demand), new items (no or very short amount of history), end-of-life-cycle items (demand drops to 0), fashion items (short history), items which are only sold during a particular time during the year (think Halloween costumes). Is it reasonable to assume that a one-size-fits all approach will come up with good forecasts for all these different series? I don’t think so.

You have heard about the good old saying that 80% of the time for any analytical task is spent with data preparation tasks. I would argue that all decisions about how to structure and segment your time series data are as important as the forecasting methods themselves in creating the best possible forecast. Note that this goes beyond traditional tasks like missing value replacement, transformations and outlier detection. Each type of demand pattern described above will require a different model strategy, so it makes a lot of sense to separate the data into distinct types or segments. For example

  • Complete series – apply robust time series forecasting methods such as ARIMA models.
  • sparse data – apply intermittent demand forecasting methods such as Croston’s method or consider this question as an inventory policy problem (instead of asking how much demand are we going to have, calculate appropriate amount of items to buffer against the risk of running out of stock)
  • short data – forecast using similarity analysis techniques

Other, more complex strategies can be applied: segment by seasonality pattern, segment by contribution to revenue, or segment by “forecastability”. For each of the segments different SAS Forecast Server projects can be created and different modeling strategies can be applied. To support the forecasting analyst with this task we have released SAS Time Series Studio – a new Graphical User Interface in SAS Forecast Studio 12.1.

SAS Time Series Studio is designed to do:

  • Explore time series data interactively
  • Explore multiple time series simultaneously
  • Explore impact of setting up different hierarchies
  • Explore impact of different time intervals
  • Segment data based on findings

My colleague Meredith John and I had the pleasure of introduction SAS Time Series Studio at A2012 in Las Vegas. In our presentation we discussed the importance of understanding the structure of time series data for generating forecasts. I encourage of users of SAS Forecast Server (and those who will be) to check out SAS Time Series Studio themselves and share their experiences with us. In fact, you might to twitter you comments using #sastss.

Tags
Share

About Author

Udo Sglavo

As Director of Forecasting R&D at SAS, Udo Sglavo heads up a team of statisticians and midtier developers working on the award-winning software for large-scale automatic forecasting called SAS Forecast Server. Sglavo helps to define the specifics of the forecasting product portfolio at SAS and the integration of forecasting technology into solutions and visualization products. He enjoys public speaking and talking to customers about how to apply analytics to solve business problems. Prior to SAS, he spent more than five years providing and consuming advanced analytical content and solutions to enterprises ranging from Fortune 500 companies to Internet startups. He received his diploma in mathematics from the University of Applied Sciences in Darmstadt, Germany. Sglavo is also a member of the practitioner advisory board of Foresight magazine, published by the International Institute of Forecasters. In 2010 he received the SAS CEO Award of Excellence.

Related Posts

2 Comments

  1. Michelle Homes

    Hi Udo & Meredith,

    Great blog post and also thanks for providing your presentation at Analytics 2012. It was great to see SAS Time Series Studio... makes me think of Time Series Forecasting System for Big Data (and obviously hierarchical data). Any plans for including transformations/seasonal differences etc within Time Series Studio in the future?

    The exploration aspect is much needed and missing from Forecast Studio and I would personally prefer to see these capabilities within Forecast Studio as sometimes as part of the exploration you quickly want to see the impact of an event or a model. I also understand the decision of separating exploration with modeling.

    Cheers,
    Michelle
    P.S. Love the envelope display!

    • Udo Sglavo

      Hi Michelle,
      Many thanks for your kind words – I’m very pleased to see that you find SAS Time Series Studio useful! In fact it is analytical modelers like you we had in mind when designing this new client of SAS Forecast Server.

      You wrote: “any plans for including transformations/seasonal differences etc within Time Series Studio in the future?”
      In fact this feature is available already – from the user’s guide:

      Create a Transformation
      In addition to the default transformations, you can create Box-Cox, scale, simple difference, and seasonal difference transformations.
      To create a transformation:
      1. Select Tools Manage Transformations. The Manage Transformations dialog box appears.
      2. Click [PLUS]. The Add Composite Transformations dialog box appears.
      3. Specify the name of the transformation. You can also specify a description.
      4. Click [PLUS] to add an individual transformation to the table. The Add Individual Transformation dialog box appears.
      5. Select the type of transformation that you want to create, any options that are associated with that transformation, and click OK. The new transformation appears in the Individual Transformations table in the Add Composite Transformations dialog box.
      6. (Optional) Repeat steps 4 and 5 until your transformation is completely defined.
      7. Click OK.
      The transformation now appears in the Manage Transformations dialog box. Click Close to return to the main workspace. Your new transformation is also available in any Transformation drop-down list that is in SAS Time Series Studio (for example, the Transformation drop-down list in the Time Series View).

      You wrote: “The exploration aspect is much needed and missing from Forecast Studio and I would personally prefer to see these capabilities within Forecast Studio…”
      SAS Time Series Studio is currently an experimental client of SAS Forecast Server – we will consider feedback like this for future releases.

      Cheers,
      Udo

Back to Top