Deep Learning for Time Series Forecasting
Project description
Nixtla
Neural 🧠 Forecast
Deep Learning for time series
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.
⚡ 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
💻 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.
- Neural Basis Expansion Analysis with Exogenous Variables (N-BEATSx): The neural basis expansion with exogenous variables is an extension to the original N-BEATS that allows it to include time dependent covariates.
- 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
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
Built Distribution
Hashes for neuralforecast-0.0.7-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bdb7f1b4a1148b7d7b4decd970759f94caac8ee543023331c72753e148a7461b |
|
MD5 | 209393cbbe7232df61bcb45e6578ae4e |
|
BLAKE2b-256 | f18655a7b9bbaac39d2698934eb02b72e8de4c48354e1b1a45c3a97e39ec1ee5 |