3
$\begingroup$

I will use an extremely simplified example to ilustrate the question, but I think the answer shsould hold for more generalised cases.

Let's say I want to create a time series regression model (the model itself is not relevant as the question is related to the information present in the data) to predict a target variable (sales).

To do so, I have the historical data and, additionally, a regressor variable which I know explains some of the variability of the target variable. (A typical case is some Weather indicator)

The problem is, I only have data until the current period of time, and I'm interested in the prediction two time steps ahead.

What whould be the best way to incorporate this information into the model?

Dummy example The data:

enter image description here

The objective is to predict Sales for t+2, and we assume Weather has some degree of covariance with Sales

Possible approaches:

  1. Train up to t0 using weather and then forecast Weather forward with another model and use it to predict with the trained model - In this case the forecast error of the Weather variable will impact directly the final prediction, as the model will be trained with quality real data and the prediction with low quality forecasted data
  2. Train model using lagged (in this case Lag2) Weather - In this case Lag2 Weather might not explain the target variance as well as the non-lagged variable
  3. For each timestep, use Weather up to t-(i-2) to forecast X-i and train the model using these values.
  4. Not use Weather data at all - Loss of potentially useful information
  5. Other approaches

EDIT: The auto review says the question might be subjective, but I think not. The answer should be general and take into account the forecasted Weather can be of good/bad quality and Lag2 Weather can retain a lot/very little information

$\endgroup$

1 Answer 1

1
$\begingroup$

I think, you have described all oportunities how to predict your target variable having no data for Weather at t+2 time. Now it's time to compare their performance) What I would personally do:

  1. Estimate performance of model, which predicts sales equal to the last observation. It will be base benchmark.
  2. Estimate performance of simple univariate model for target variable (ARIMA, ETS, their combination).
  3. Than I would have estimated ARIMAX (if data is stationary) with weather as lag regressor and save the results.
  4. Finally, I would use univariate model to predict regressor, as you suggested, and than I would use these predictions to forecast sales.
  5. Compare performance on train and test for all options listed above. You can also use time-series cross-validation when measuring performance. There also exist statistical tests to check the significance of difference between popular performance metrics (such as RMSE).
  • I do not know the frequency of your data. For some high-frequency data ML models might also be suitable (well-known Prophet for instance).
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.