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

🎉 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.0.8.tar.gz (118.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

neuralforecast-0.0.8-py3-none-any.whl (143.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: neuralforecast-0.0.8.tar.gz
  • Upload date:
  • Size: 118.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.12

File hashes

Hashes for neuralforecast-0.0.8.tar.gz
Algorithm Hash digest
SHA256 ee6407326a168d05ef84d5a0c62ae630b5a6ec448b73032bc474a5ac561b95b9
MD5 3be7f2c8ce4829910bd6ab68f274999c
BLAKE2b-256 305ac5832fcacfe0f8d618642da6c9717e21800c25b7dc450c446f7e1c2feb44

See more details on using hashes here.

File details

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

File metadata

  • Download URL: neuralforecast-0.0.8-py3-none-any.whl
  • Upload date:
  • Size: 143.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.12

File hashes

Hashes for neuralforecast-0.0.8-py3-none-any.whl
Algorithm Hash digest
SHA256 12d7bf4964d3d670ba9dee33fb9a3f391c9a0ccad0c6536ae51d0db7c40f536b
MD5 eeedaee0b29372c513938c4747d7a755
BLAKE2b-256 f78dc485daef7817bf8a6cc44310fc189b3f5c1462d56e76821fc9915f08a87f

See more details on using hashes here.

Supported by

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