smooth in Python: iETS and the Croston’s Method

Occurrence ETS model

Is there a statistical model underlying Croston’s method? This question has been bothering researchers for decades. Croston proposed his method back in 1972, and some even argued that there is no sensible model behind it (Shenstone & Hyndman, 2005). Yet there is one! Let me explain. But first, why bother? Because a method just gives … Read more

smooth in Python: fixed probability model for demand occurrence

Example of intermittent demand

When demand is intermittent, one of the most useful forecasts you can produce is not “how much will we sell”, but “how likely are we to sell anything at all”. And this probability can be modelled, just like demand itself. This idea goes back to Croston, who suggested splitting intermittent demand into demand occurrence and … Read more

What the Average Demand Interval (ADI) hides

Demand occurrence with changing probability of occurrence

Have you used the Average Demand Interval (ADI) for analysis or classification? Do you know that it has some issues? Let me explain. I don’t know when specifically ADI was proposed, but it was popularised by Syntetos, Boylan & Croston (2005), yes, the same Croston from this post. A demand interval is the number of … Read more

The main idea behind the Croston’s method

How Croston works

Have you heard of Croston’s method for intermittent demand forecasting? Some modern data scientists dislike it because it is too simple and not as accurate as some modern forecasting approaches. And they have a point. But here is why it is worth keeping Croston in mind. Back in 1972, John Croston, who worked on stock … Read more

Simple Exponential Smoothing: one parameter instead of many weights

SMA vs SES

In one of the comments to my previous post about the Simple Moving Average on LinkedIn, a reader mentioned that they use a Weighted Moving Average with their own weighting scheme. This can work well although defining the weights can be a nuisance: a Weighted Moving Average of order 12 needs 12 weights that someone … Read more

The Menace of ML: Simple Moving Average

Simple Moving Average of order 8

And here is another forecasting method that is hard to beat in practice. In a recent competition, it gave data scientists huge headaches and even outperformed some powerful ML methods. What’s the name of this beast?! Simple Moving Average! The idea behind the Simple Moving Average (SMA) is to take the average of the last … Read more

Five assumptions behind “forecastability”

Example of two time series with exactly the same coefficient of variation

Here is a confession. I don’t like the idea of “forecastability”. I think it does not bring value and can be harmful in some cases. Let me explain. One of the definitions I see on the internet: “A measure of the degree to which something may be forecast with accuracy”. This definition is so disturbing … Read more

Another important Naïve method

Seasonal Naive depiction

There is another forecasting method that is extremely popular, hard to beat, and has no parameters to estimate. It also has “Naïve” in its name. Do you know what I’m talking about? It is called “Seasonal Naïve”. While the simple Naïve copies the last observed actual into the future as a forecast, the seasonal one … Read more

Why Naïve is popular and important

How Naive works

There is one forecasting method that appears more often than any other in competitions and evaluations. An experienced forecaster will always use it as a benchmark. This method is called “Naïve”, and here is why it is popular and important. Naïve is a very simple forecasting method: the forecast equals to the last observed value. … Read more