cchallu / nbeatsx

MIT License
181 stars 45 forks source link

FCNN realization doesn't take exogenous variables as arguments #9

Closed MBelniak closed 2 years ago

MBelniak commented 2 years ago

Hi,

In the paper in eq. (1) it is stated, that FCNN in each block is a function of output of previous block/stack (y^{back}) + exogenous variables. Whereas, I see at https://github.com/cchallu/nbeatsx/blob/main/src/nbeats/nbeats_model.py#L122 that there's only y^{back} passed to FCNN. My question is: why is that? My reasoning for passing insample exog. variables as well is that they could provide additional information on how to scale the C_{s,l} context vector later on.

kdgutier commented 2 years ago

Hi @MBelniak,

Thanks for the comment. For the moment scaling is done independently from the model. By the transform_data and the Scaler Class.

We agree that insample exogenous variables could benefit by simplifying the neural forecasting pipeline, to help scale the features. That is still an open research question.

MBelniak commented 2 years ago

Thanks. I didn't exactly mean "scaling the features", but producing thetas, which in fact "scale" the C_{s,l,i} vector, but as I understand it's just an open question.