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

Exception :: iTransformer does not support future exogenous variables #977

Closed
hberande opened this issue Apr 21, 2024 · 2 comments
Closed
Labels

Comments

@hberande
Copy link

hberande commented Apr 21, 2024

What happened + What you expected to happen

While Training dataset using iTransformer model I came across following error:

--> 200 raise Exception("iTransformer does not support future exogenous variables")
201 if hist_exog_list is not None:
202 raise Exception(
203 "iTransformer does not support historical exogenous variables"
204 )

Exception: iTransformer does not support future exogenous variables

If future & historic exogenous variables aren't supporting then when we can expect it?

Issue Severity

High: It blocks me from completing my task.

@hberande hberande added the bug label Apr 21, 2024
@elephaint
Copy link
Contributor

elephaint commented Apr 22, 2024

Hi,

iTransformer (the method) does not support future exogenous covariates. Hence, this is not a bug, but intentional. It's the way the method was designed. I think static exogenous & historic exogenous could be added in the future - don't know when.

We are very careful with modifying published methods to support additional features that were not included in the original publication such as future exogenous variables because this can be very complex to incorporate and we would possibly have to (significantly) deviate from the original work by the authors. For example, TSMixer and TSMixerx (the latters support exogenous features) are very different architectures, that's why we decided to have them as separate models in Neuralforecast.

If you're keen on using exogenous with multivariate methods I'd suggest to use TSMixerx, or not use a multivariate method but a univariate method that supports exogenous.

Hope this helps.

@marcopeix wdyt? I think adding static and historic could be done relatively easily without major modifications to the architecture but I'm willing to bet performance with all but static exogenous will be very bad, given how the architecture is designed. I'd only include static covariates, similar as to what GluonTS has done, as the architecture just doesn't seem equipped for historic/future covariates (but happy to be proven wrong).

@elephaint
Copy link
Contributor

Closing this issue, I think for now we will keep iTransformer as it is.

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

No branches or pull requests

2 participants