awslabs / gluonts

Probabilistic time series modeling in Python
https://ts.gluon.ai
Apache License 2.0
4.64k stars 755 forks source link

Implement New Model: Graph Deep Factors for Forecasting #1116

Open StatMixedML opened 4 years ago

StatMixedML commented 4 years ago

Description

The following is taken from Graph Deep Factors for Forecasting:

Deep probabilistic forecasting techniques have recently been proposed for modeling large collections of time-series. However, these techniques explicitly assume either complete independence (local model) or complete dependence (global model) between time-series in the collection. This corresponds to the two extreme cases where every time-series is disconnected from every other time-series in the collection or likewise, that every time-series is related to every other time-series resulting in a completely connected graph. In this work, we propose a deep hybrid probabilistic graph-based forecasting framework called Graph Deep Factors (GraphDF) that goes beyond these two extremes by allowing nodes and their time-series to be connected to others in an arbitrary fashion. GraphDF is a hybrid forecasting framework that consists of a relational global and relational local model. In particular, we propose a relational global model that learns complex non-linear time-series patterns globally using the structure of the graph to improve both forecasting accuracy and computational efficiency. Similarly, instead of modeling every time-series independently, we learn a relational local model that not only considers its individual time-series but also the time-series of nodes that are connected in the graph.

The idea is to have a global-local model that explicitly considers the local pattern of each time series, which is in contrast to purely global models, such as DeepAR, MQRNN, etc. Also, it is a very nice extension of the already available Deep Factor model.

image

StatMixedML commented 4 years ago

@lostella Kindly asking if the implementation of the model is in any way a priority of your group? Adding this model would be very beneficial.

Thanks!

dcmaddix commented 4 years ago

Yes, this would be a great extension of our Deep Factor model. Thank you!

lostella commented 4 years ago

@StatMixedML no current plan on implementing it, so if you want to give it a go I can assign this to you. Otherwise we'll update you as soon as someone picks this up

StatMixedML commented 4 years ago

@lostella I`d love to work on it, but I would first need to get sufficiently familiar with Graph Neural Networks + mxnet. Not sure by when I would be able to start actually implementing the paper. What would be your desired timeplan?

timoschowski commented 4 years ago

One comment: this may be much easier to implement in PyTorch -- and that's getting increasingly easy to use with GluonTS.

StatMixedML commented 4 years ago

Even though I`d love to, I am really not sure I can commit to a continuous development of the model, since I potentially lack the time to work on it. Also, I haven't seen any implementation so far we can start with.

lostella commented 3 years ago

@StatMixedML I'm keeping this open since it's a feature request, hope that's okay

StatMixedML commented 3 years ago

Absolutely, thanks for re-opening!

I wish I could find the time to work on it ...