Skip to main content

GluonTS is a Python toolkit for probabilistic time series modeling, built around MXNet.

Project description

GluonTS - Probabilistic Time Series Modeling in Python

PyPI GitHub Static Static PyPI Downloads

GluonTS is a Python package for probabilistic time series modeling, focusing on deep learning based models.

Installation

GluonTS requires Python 3.6 or newer, and the easiest way to install it is via pip:

# support for mxnet models, faster datasets
pip install gluonts[mxnet,pro]  

# support for torch models, faster datasets
pip install gluonts[torch,pro]

Simple Example

To illustrate how to use GluonTS, we train a DeepAR-model and make predictions using the simple "airpassengers" dataset. The dataset consists of a single time-series, containing monthly international passengers between the years 1949 and 1960, a total of 144 values (12 years * 12 months). We split the dataset into train and test parts, by removing the last three years (36 month) from the train data. Thus, we will train a model on just the first nine years of data.

from gluonts.dataset.util import to_pandas
from gluonts.dataset.pandas import PandasDataset
from gluonts.dataset.repository.datasets import get_dataset
from gluonts.model.deepar import DeepAREstimator
from gluonts.mx import Trainer

dataset = get_dataset("airpassengers")

deepar = DeepAREstimator(prediction_length=12, freq="M", trainer=Trainer(epochs=5))
model = deepar.train(dataset.train)

# Make predictions
true_values = to_pandas(list(dataset.test)[0])
true_values.to_timestamp().plot(color="k")

prediction_input = PandasDataset([true_values[:-36], true_values[:-24], true_values[:-12]])
predictions = model.predict(prediction_input)

for color, prediction in zip(["green", "blue", "purple"], predictions):
    prediction.plot(color=f"tab:{color}")

plt.legend(["True values"], loc="upper left", fontsize="xx-large")

[train-test]

Note that the forecasts are displayed in terms of a probability distribution: The shaded areas represent the 50% and 90% prediction intervals, respectively, centered around the median.

Contributing

If you wish to contribute to the project, please refer to our contribution guidelines.

Citing

If you use GluonTS in a scientific publication, we encourage you to add the following references to the related papers, in addition to any model-specific references that are relevant for your work:

@article{gluonts_jmlr,
  author  = {Alexander Alexandrov and Konstantinos Benidis and Michael Bohlke-Schneider
    and Valentin Flunkert and Jan Gasthaus and Tim Januschowski and Danielle C. Maddix
    and Syama Rangapuram and David Salinas and Jasper Schulz and Lorenzo Stella and
    Ali Caner Türkmen and Yuyang Wang},
  title   = {{GluonTS: Probabilistic and Neural Time Series Modeling in Python}},
  journal = {Journal of Machine Learning Research},
  year    = {2020},
  volume  = {21},
  number  = {116},
  pages   = {1-6},
  url     = {http://jmlr.org/papers/v21/19-820.html}
}
@article{gluonts_arxiv,
  author  = {Alexandrov, A. and Benidis, K. and Bohlke-Schneider, M. and
    Flunkert, V. and Gasthaus, J. and Januschowski, T. and Maddix, D. C.
    and Rangapuram, S. and Salinas, D. and Schulz, J. and Stella, L. and
    Türkmen, A. C. and Wang, Y.},
  title   = {{GluonTS: Probabilistic Time Series Modeling in Python}},
  journal = {arXiv preprint arXiv:1906.05264},
  year    = {2019}
}

Links

Documentation

References

Tutorials and Workshops

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gluonts-0.10.1.tar.gz (2.6 MB view details)

Uploaded Source

Built Distribution

gluonts-0.10.1-py3-none-any.whl (2.5 MB view details)

Uploaded Python 3

File details

Details for the file gluonts-0.10.1.tar.gz.

File metadata

  • Download URL: gluonts-0.10.1.tar.gz
  • Upload date:
  • Size: 2.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for gluonts-0.10.1.tar.gz
Algorithm Hash digest
SHA256 65aa1affe4ef6505c6d5c1e93469e7bbdae8c2c15abff80661617d557bdec7d5
MD5 3d330e2c27d42571d49058cd7764e469
BLAKE2b-256 50da2858d1f4931b99c8f1d3029eddeb3921191e0970f58d9c4cf5c5e2b5594c

See more details on using hashes here.

File details

Details for the file gluonts-0.10.1-py3-none-any.whl.

File metadata

  • Download URL: gluonts-0.10.1-py3-none-any.whl
  • Upload date:
  • Size: 2.5 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for gluonts-0.10.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ad8f99dea03c2447b1a35795c5a096fac9871ded03627568b616c4a32d6c2d98
MD5 f3e2cc3c71c810f93405169e5d0deaab
BLAKE2b-256 3c06e8bc89ce49d79c5f91db7f3784fe72ffe1b69e5664c1f890107df3680216

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page