I'm using LGBM for regression, where the Target column's lagged values (7 columns for each lag day) are also used as predictors when training the model. Absence of the 7Day lag values severely increases MAE value.

Now when using the model in production, if I use the complete data as training dataset, how to get the 7day lag value of the time period I'm planning to predict? I obviously won't have the target value, to calculate it's 7Day lag value. What to do now?

To explain in more detail:
So, I'm predicting sales amount (Target variable y). The model is trained on 20 predictors (X), and 7 of them are the lag value of the Target Variable, i.e. Sales_Amount_Lag1, Sales_Amount_lag2, Sales_Amount_lag3 ...... Sales_Amount_lag7.

The thing is, while preparing the model, I had access to both X & y dataset, thus I could easily calculate y's Lag values.
Now, when predicting for future timestamps (Sales haven't occurred yet), I won't be having y. So how do I calculate the lag values, which is required in the trained model's predictor columns now?

  • $\begingroup$ Do a one step forecast at a time and then feed the forecasted value back into the lagged predictor variables $\endgroup$ Sep 24 at 0:39


Your Answer

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