This post will focus on the external data selection process when it comes to choosing regressors to include in scenario-based forecasting.
There are a few different types of external data we can use in forecasting: covariates which are series with no known future, static features which are single variables that describe your target, and future regressors where you have both past and future values that line up with your target series’ history and forecast horizon. We’ll be focused on future regressors here because of their centrality to scenario-based forecasts.
Scenario-based forecasting is all about measuring and planning for the effect that some external variable, or set of variables, will have on a target series to forecast. This is a powerful forecasting technique because it allows for the direct entry of human intuition into a forecast. In traditional precision forecasting, the levers a data scientist has to work with to adjust their forecast are often limited to model choice and corresponding parameters. While this is important for generating a well fit model (or properly generalized model), what we get is that every well-fit model will likely produce very similar results. This is because these forecasts are generated solely based on the historical patterns of the target series.
Scenario-based forecasting allows us to move beyond this limited approach and into one where we have more ways to apply intuition to the forecast. Without it, we are limited to forecasting recognized trends in the data, which in many cases is all that is needed, but for when the future is expected to behave differently because of external factors, we use scenario-based forecasting.
In a previous post, we make the point that regressors should be seen as driving factors of the target variable, not a causality source. This is a nuanced point, but makes up the fundamentals of our understanding on how to choose a set of regressors to use in a scenario-based forecast.
We make the distinction between regressors that have an effect on a forecast variable andregressors that are helpful to a model used in forecasting. If you were to look at the statisticalsignificance of the regressors, we must be aware that any procedure involving selecting regressorsfirst will invalidate the assumptions behind the p-values. What we are interested in here isselecting predictors that are helpful when a model is used for forecasting; the methods discussedhere would not hold if you wanted to study the effect of any predictor on the target variable.
We focus heavily on the regressor selection process because it really becomes the driver of the forecasting process. One could easily select regressors that move the forecast in any direction they like, so making an informed decision on which regressors to use is critically important.
Let’s look at a few ways of breaking down different types of regressors. This will give us ideas pointing us where to look for the external data we’ll use.
These series can be described as series that are an upstream component of the target time series.
Y = f(x) where Y is your target and x is your regressor, f is some potentially unknown function.
- Target: total revenue, upstream regressor: number of units sold. This is the flipped version of downstream relations. The upstream regressor is an input into the equation that leads us to our target variable.
- Target: price of oil, upstream regressor: # of barrels exported from Canada
- Target: number of units sold, upstream regressor: $ spent on marketing
- Target: airline ticket from L1 to L2, upstream regressor: price of oil
This kind of regressor can be helpful when we only have a partial understanding of all the inputs that go into a target variable. Otherwise, it simply makes more sense to just calculate it outright given we have all the inputs to that function.
These series can be described as series that are a downstream product of the target time series.
Y = f(x) where Y is your regressor and x is your target, f is some potentially unknown function.
- Target: number of units sold, downstream regressor: total revenue. Total revenue is a function of the number of units sold. If we have a better understanding of revenue projections, perhaps because of SBF done on that variable, we have the ability to “pull” the forecasted number of units sold into place.
- Target: price of oil, downstream regresor: price of gasoline
These examples often don’t make the most logical sense because an analyst would usually have a similar, if not a decreased level of intuition about the future values of the regressor. Nonetheless, if downstream regressors can be forecasted with a similar process, their effect can be valuable.
Complementary & substitutional relations
These series can be described as series that have a certain correlation to the target series. However, the analyst must be careful not to blindly assume that correlation equals causation. See https://www.tylervigen.com/spurious-correlations if you’re wondering what this means.
Z = ax + by, where x is your target, y is your regressor, and a & b are unknown yet correlated coefficients. Z is unknown, irrelevant, and fixed at any given point in time.
- Target: number of units sold, complementary regressor: number of complement units sold
- Target: price of gold, complementary regressor: inflation rate in the US
We expect that in most cases the target and complementary/substitutional regressors are completely independent of each other. Compared to other kinds of regressors like upstream and downstream that directly influence the target, either by pushing from upstream or pulling from downstream, relations between this kind of regressors are through some kind of proxy. Proxies to think about could be things like supply & demand, etc.
Working with Chronos
Chronos has the ability to add external time series to your precision forecast experiments. These additional series are best used to help the forecasting algorithms fit the target variable data and also to inform the model about a future scenario.
The scenario-creation tool is a powerful interface that lets the user upload their own data. This data is likely to be as current as your target variable and with the addition of custom linear components the user can then design the shape of the scenario into the future. As you design the scenario, you should ensure that it expands into the future as far as the horizon of your target series will.