Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Separate weights for each forecast horizon #17

Open
dashaub opened this issue Mar 21, 2016 · 0 comments
Open

Separate weights for each forecast horizon #17

dashaub opened this issue Mar 21, 2016 · 0 comments

Comments

@dashaub
Copy link
Collaborator

dashaub commented Mar 21, 2016

We should consider the option of separate weights to each forecast horizon (e.g. auto.arima performs very well for short horizons, nnetar for medium horizons, and ets for long horizons, so if we are forecasting a series the first through sixth predictions receives higher weight from the auto.arima model, the 7th through 10th receives higher weight from the nnetar model, and later observations receive heavier weight from the ets model).

This would ideally be calculated for each horizon, so the weights could be stored in an h * n matrix (n models and h periods). This would involve a minor reworking of the way the weights are stored and used for forecasts, but the bigger issue is computing each horizon since we set the weights during the model selection process hybridModel(), but we wouldn't know how many periods in advance are needed until forecast.hybridModel() is called. We could fix this in several ways. Perhaps we could cap the horizon at some reasonably far distance (e.g. h no longer than twice the length of the input series) and compute these horizons during model selection. Or we could add an argument in hybridModel() that the user sets for the maximum horizon to compute if these separate weights are wanted. Finally, the separate weights could be exposed through an additional argument separate = TRUE. In any case we should consider what happens if h greater than these precomputed horizon weights is input (perhaps throw a warning and then fall back on equal weights or the weight values for the last available horizon)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant