Skip to main content

Deep Learning for Time Series Forecasting

Project description

Nixtla   Tweet  Slack

Neural 🧠 Forecast

Deep Learning for time series

CI Linux CI Mac codecov Python PyPi conda-nixtla License: GPLv3 docs

State-of-the-art time series forecasting for PyTorch.

NeuralForecast is a Python library for time series forecasting with deep learning models. It includes benchmark datasets, data-loading utilities, evaluation functions, statistical tests, univariate model benchmarks and SOTA models implemented in PyTorch and PyTorchLightning.

Getting startedInstallationModels

⚡ Why?

Accuracy:

  • Global model is fitted simultaneously for several time series.
  • Shared information helps with highly parametrized and flexible models.
  • Useful for items/skus that have little to no history available.

Efficiency:

  • Automatic featurization processes.
  • Fast computations (GPU or TPU).

📖 Documentation

Here is a link to the documentation.

🧬 Getting Started Open In Colab

Example Jupyter Notebook

demo

💻 Installation

PyPI

You can install the released version of NeuralForecast from the Python package index with:

pip install neuralforecast

(Installing inside a python virtualenvironment or a conda environment is recommended.)

Conda

Also you can install the released version of NeuralForecast from conda with:

conda install -c nixtla neuralforecast

(Installing inside a python virtualenvironment or a conda environment is recommended.)

Dev Mode If you want to make some modifications to the code and see the effects in real time (without reinstalling), follow the steps below:
git clone https://github.com/Nixtla/neuralforecast.git
cd neuralforecast
pip install -e .

Forecasting models

  • Neural Hierarchical Interpolation for Time Series Forecasting (N-HiTS): A new model for long-horizon forecasting which incorporates novel hierarchical interpolation and multi-rate data sampling techniques to specialize blocks of its architecture to different frequency band of the time-series signal. It achieves SoTA performance on several benchmark datasets, outperforming current Transformer-based models by more than 25%.

  • Exponential Smoothing Recurrent Neural Network (ES-RNN): A hybrid model that combines the expressivity of non linear models to capture the trends while it normalizes using a Holt-Winters inspired model for the levels and seasonals. This model is the winner of the M4 forecasting competition.

  • Neural Basis Expansion Analysis (N-BEATS): A model from Element-AI (Yoshua Bengio’s lab) that has proven to achieve state-of-the-art performance on benchmark large scale forecasting datasets like Tourism, M3, and M4. The model is fast to train and has an interpretable configuration.

  • Transformer-Based Models: Transformer-based framework for unsupervised representation learning of multivariate time series.
    • Autoformer: Encoder-decoder model with decomposition capabilities and an approximation to attention based on Fourier transform.
    • Informer: Transformer with MLP based multi-step prediction strategy, that approximates self-attention with sparsity.
    • Transformer: Classical vanilla Transformer.

📃 License

This project is licensed under the GPLv3 License - see the LICENSE file for details.

🔨 How to contribute

See CONTRIBUTING.md.

Contributors ✨

Thanks goes to these wonderful people (emoji key):


fede

💻 🐛 📖

Greg DeVos

🤔

Cristian Challu

💻

mergenthaler

📖 💻

Kin

💻 🐛 🔣

José Morales

💻

Alejandro

💻

stefanialvs

🎨

Ikko Ashimine

🐛

vglaucus

🐛

This project follows the all-contributors specification. Contributions of any kind welcome!

Project details


Download files

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

Source Distribution

neuralforecast-0.0.6.tar.gz (100.8 kB view details)

Uploaded Source

Built Distribution

neuralforecast-0.0.6-py3-none-any.whl (121.2 kB view details)

Uploaded Python 3

File details

Details for the file neuralforecast-0.0.6.tar.gz.

File metadata

  • Download URL: neuralforecast-0.0.6.tar.gz
  • Upload date:
  • Size: 100.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.10.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.7.12

File hashes

Hashes for neuralforecast-0.0.6.tar.gz
Algorithm Hash digest
SHA256 29a4be51a3dc6fd81988fe862075b49c01a4f99028c94db16147a8e413260be4
MD5 7cb2d4c993742e090dda6938b8a21966
BLAKE2b-256 3e55b5534beb845626dac7cbb1a4533b93d5755500f95334b9ecbbbf1c5ffc44

See more details on using hashes here.

File details

Details for the file neuralforecast-0.0.6-py3-none-any.whl.

File metadata

  • Download URL: neuralforecast-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 121.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.10.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.7.12

File hashes

Hashes for neuralforecast-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 e4823634af1ec12ba2f5ae2e29216319dea2b57936cf4adc7bf65d10d33f03de
MD5 b374a008f457910017148db99faa0401
BLAKE2b-256 79445eeeec917c3f6ac333190b6d4cab7702086174d7664ca9b45552e30e6f3a

See more details on using hashes here.

Supported by

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