4
$\begingroup$

I guess I understand the idea of predictions made via LSTM or XGBoost models, but want to reach out to the community to confirm my thoughts.

This tutorial does a nice job explaining step by step of what to do: "How to Develop Multi-Step LSTM Time Series Forecasting Models for Power Usage"

However, when it came to forecasting, the author held out portion of the data and then used that data to predict future values... In my mind, it is not really a forecasting (something that is done via ARIMA, VAR, etc - where you specify number of time periods and then don't specify anything else and the model gives you some forecasting for the future) You can see my comments to the author and basically the predictions via LSTM or XGBoost models will be based on the input values and not on the future data range, i.e. I would need to supply temp, humidity, wind, etc to get the forecast of the power consumption for the house hold.

That being said, in what extend LSTM or GXBoost are used in forecasting? Given these values predict what would be the final outcome? Hence if I need to forecast something in the future and have no clue about the other input values, just stick to traditional VAR model?

By looking at this question/answer by @Fnguyen, "If you have more input variables you need a way to forecast or impute these because to make a prediction your model needs all inputs that build the model. " it seems that I should use ARIMA to forecast other input values and only then use LSTM... makes me wonder if forecast would be that accurate now that it depends on ARIMA that would predict future values of the input of LSTM and then LSTM model that would make final prediction. Then again, accurate forecast is fairly complicated thing to do as we are trying to predict the future.

$\endgroup$

2 Answers 2

2
$\begingroup$

However, when it came to forecasting, the author held out portion of the data and then used that data to predict future values... In my mind, it is not really forecasting (something that is done via ARIMA, VAR, etc - where you specify number of time periods and then don't specify anything else and the model gives you some forecasting for the future)

Generally speaking, I think the term "forecasting" can apply to any problem where the goal is to predict future events/values.

You are describing a subclass of forecasting problems called "univariate time-series forecasting". In the typical case of univariate time-series forecasting, a model is built using only historical observations of the target variable. ARIMA and VAR models are commonly used for these problems. (Although there are almost always multivariate extensions of these models.)

There's also "multivariate time-series forecasting", where the time-series includes more than one time-dependent variable, and each variable might depend on both its past values and the past/present values of other variables. Weather forecasting is a good example of this type of problem.

[To what extent are LSTM or XGBoost ] used in forecasting?

As you have correctly pointed out, models like XGBoost are only useful in cases where you have additional inputs other than historical observations of the target. (LSTMs can be actually used with or without additional inputs.)

It's hard to say for sure how common XGBoost or any other model is in industry, but there is a pretty huge body of research on forecasting with exogenous inputs.

I once worked on a project where the goal was forecasting solar irradiance at a solar farm. Naturally, there's a significant amount of seasonal variation in solar irradiance. But local weather conditions like cloud cover, fog, and temperature also have a big impact on irradiance, so a univariate model is not sufficient.

We trained XGBoost, Random Forest, SVM, and deep learning models to forecast future irradiance. The input to these models were forecasted weather varaibles from one of NOAA's numerical weather models, and I think this is a very common approach.

[If] I need to forecast something in the future and have no clue about the other input values, just stick to traditional VAR model?

Yep, if you don't have any information about other variables, then you're restricted to univariate time-series methods. But even if you don't know the other inputs with 100% confidence, you may be able to find reasonable predictions that could be leveraged to build a more sophisticated model :)

$\endgroup$
0
$\begingroup$

The answer will depend on domain. However my guess will be if you are limited to an univariate method then RNN will beat XGBoost. As a data point I've had success with XGBoost in a multiple time series scenario with hundreds of variables.

I'd suggest you run the two models head to head and see which one is the winner in your situation.

$\endgroup$

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.

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