The traditional approach
When we want to predict future values for a time-series, we are often interested in multiple future horizons, e.g. what will happen in 1, 2, or 3 months. The traditional approach to predict these different horizons consists in training a separate model for each target horizon.
A common alternative consists in training a single model on a short horizon, and extend it to multi-horizons by applying it recursively (i.e. by taking the previous predictions as inputs to produce the following ones). However this approach can be complex to implement in production systems, and it may lead to error propagation: an error on a close horizon can have detrimental effects for the following ones.
Another alternative consists in forecasting all the horizons at the same time with a multi-variate model. However, the kind of models that support multi-variate outputs is limited, and it requires extra effort in data handling and model maintenance.
Horizon as a feature
A simpler approach consists in concatenating the data prepared for each horizon, and adding a new “horizon” feature. This approach has several advantages:
- It’s simple to understand and implement, as it leads to a single model to train and maintain.
- It potentially improves the predictions accuracy, since the model is trained on a larger dataset. It can even be used as a “data augmentation” technique: if you are interested in only a few horizons, you can still add additional ones in the training phase to improve model estimation.
- The model can be used to predict horizons on which it was not trained, which might be helpful if you have many horizons to predict.
This approach is the alter-ego of a global model, but in the context of multiple horizons instead of multiple…