amazon-science / chronos-forecasting

Chronos: Pretrained (Language) Models for Probabilistic Time Series Forecasting
https://arxiv.org/abs/2403.07815
Apache License 2.0
2.63k stars 295 forks source link

How would you include exogenous variables (covariates)? #22

Open srggrs opened 8 months ago

srggrs commented 8 months ago

I was wondering if it is possible to add exogenous variables as extra features to use in the model. Cheers

lostella commented 8 months ago

Hi @srggrs, currently this is not possible out of the box: Chronos models only makes predictions based on historical data of the target series. This is definitely something to add in future work. I think the major difficulty in dealing with exogenous variables in a pre-trained manner is finding good data in large amounts. Definitely something that requires deeper research.

srggrs commented 8 months ago

yeah makes sense! Thanks!

sudongwang-upc commented 5 months ago

Hi @srggrs, currently this is not possible out of the box: Chronos models only makes predictions based on historical data of the target series. This is definitely something to add in future work. I think the major difficulty in dealing with exogenous variables in a pre-trained manner is finding good data in large amounts. Definitely something that requires deeper research.

What are the possible ways to add covariates to the model? Now it seems that the input of Chronos, like the language model, is a single word, while covariates and target variables are generally not on the same scale and are not suitable for inclusion in the same vocabulary.

grishazohrab commented 5 months ago

I was wondering if it is possible to add exogenous variables as extra features to use in the model. Cheers

Me too. Have anyone tried to add them into input. For example, If I have X[i:i + H] historical data, I want to predict X[i + H +1: i + H + N], and I concatenate Y[i:i + H] exogenous variable data(i can use different scaling for them). Would it work? Have anyone tried something like that?

lostella commented 5 months ago

I was wondering if it is possible to add exogenous variables as extra features to use in the model. Cheers

Me too. Have anyone tried to add them into input. For example, If I have X[i:i + H] historical data, I want to predict X[i + H +1: i + H + N], and I concatenate Y[i:i + H] exogenous variable data(i can use different scaling for them). Would it work? Have anyone tried something like that?

@grishazohrab this will not work, see my answer: the models were trained for univariate forecasting tasks without any covariate information as input, but only contextual data from the target time series.