Gluonts

Probabilistic time series modeling in Python
Alternatives To Gluonts
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
Pycaret7,0761320 hours ago83June 06, 2022261mitJupyter Notebook
An open-source, low-code machine learning library in Python
Sktime6,284
2 days ago678bsd-3-clausePython
A unified framework for machine learning with time series
Darts5,5797a day ago25June 22, 2022214apache-2.0Python
A python library for user-friendly forecasting and anomaly detection on time series.
Autogluon5,498
a day ago220apache-2.0Python
AutoGluon: AutoML for Image, Text, Time Series, and Tabular Data
Data Science3,528
5 days ago4Jupyter Notebook
Collection of useful data science topics along with articles, videos, and code
Gluonts3,423719 hours ago58June 30, 2022347apache-2.0Python
Probabilistic time series modeling in Python
Tsai3,226119 hours ago41April 19, 202221apache-2.0Jupyter Notebook
Time series Timeseries Deep Learning Machine Learning Pytorch fastai | State-of-the-art Deep Learning library for Time Series and Sequences in Pytorch / fastai
Merlion2,921
3 days ago14June 28, 202214bsd-3-clausePython
Merlion: A Machine Learning Framework for Time Series Intelligence
Neural_prophet2,848
3 days ago7March 22, 202296mitPython
NeuralProphet: A simple forecasting package
Pytorch Forecasting2,666412 days ago33May 23, 2022359mitPython
Time series forecasting with PyTorch
Alternatives To Gluonts
Select To Compare


Alternative Project Comparisons
Readme

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, based on PyTorch and MXNet.

Installation

GluonTS requires Python 3.7 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.

import pandas as pd
import matplotlib.pyplot as plt
from gluonts.dataset.pandas import PandasDataset
from gluonts.dataset.split import split
from gluonts.mx import DeepAREstimator, Trainer

# Load data from a CSV file into a PandasDataset
df = pd.read_csv(
    "https://raw.githubusercontent.com/AileenNielsen/"
    "TimeSeriesAnalysisWithPython/master/data/AirPassengers.csv",
    index_col=0,
    parse_dates=True,
)
dataset = PandasDataset(df, target="#Passengers")

# Train a DeepAR model on all data but the last 36 months
training_data, test_gen = split(dataset, offset=-36)
model = DeepAREstimator(
    prediction_length=12, freq="M", trainer=Trainer(epochs=5)
).train(training_data)

# Generate test instances and predictions for them
test_data = test_gen.generate_instances(prediction_length=12, windows=3)
forecasts = list(model.predict(test_data.input))

# Plot predictions
df["#Passengers"].plot(color="black")
for forecast, color in zip(forecasts, ["green", "blue", "purple"]):
    forecast.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 Trkmen 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
    Trkmen, 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

Popular Time Series Projects
Popular Machine Learning Projects
Popular Data Storage Categories
Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Python
Machine Learning
Deep Learning
Aws
Pytorch
Artificial Intelligence
Neural Network
Data Science
Time Series
Forecasting
Torch
Mxnet