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: MIT 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

🎉 New! Open In Colab

  • N-HiTS example: load, train, and tune hyperparameter, to achieve SoTA. Outperform Transformers by 25% in 50x less time.

⚡ Why Deep Learning on Time Series?

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 conda-forge 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

🐛

Pietro Monticone

🐛

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.1.0.tar.gz (113.2 kB view details)

Uploaded Source

Built Distribution

neuralforecast-0.1.0-py3-none-any.whl (138.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: neuralforecast-0.1.0.tar.gz
  • Upload date:
  • Size: 113.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for neuralforecast-0.1.0.tar.gz
Algorithm Hash digest
SHA256 a0b71a66f8d35a84a307c4bdbf4c46efe67a946b904c2c15a6d586ae058245af
MD5 50dfd5967193f43fa5f866b336d84558
BLAKE2b-256 0fb143fb8bd15e952f516fb75ef037774ef6a96aac11c7e635c788ccb06a9a60

See more details on using hashes here.

File details

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

File metadata

  • Download URL: neuralforecast-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 138.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for neuralforecast-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f8939942dc912f5baeb8695027bf08f07db011505daba85086d253aa28753464
MD5 c646b1a024f8fdfb052b29b6af9a7147
BLAKE2b-256 cef4873c68ab5b83f0768a422f6f684022cfa150e74d2bfe830e45ae1087c158

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