Skip to main content

A Python library that implements ״Temporal Fusion Transformers for Interpretable Multi-horizon Time Series Forecasting״

Project description

tft-torch

alt text alt text alt text alt text

tft-torch is a Python library that implements "Temporal Fusion Transformers for Interpretable Multi-horizon Time Series Forecasting" using pytorch framework. The library provides a complete implementation of a time-series multi-horizon forecasting model with state-of-the-art performance on several benchmark datasets.

This library works for Python 3.7 and higher and PyTorch 1.6.0 and higher.

Installation

This library is distributed on PyPi and can be installed using pip.

$ pip install tft-torch 

The command above will automatically install all the required dependencies. Please visit the installation page for more details.

Getting started

Check out the tutorials for a demonstration how to use the library.

Documentation

For more information, refer to our blogpost and complete documentation.

Reference

This repository suggests an implementation of a model based on the work presented in the following paper:

@misc{lim2020temporal,
      title={Temporal Fusion Transformers for Interpretable Multi-horizon Time Series Forecasting}, 
      author={Bryan Lim and Sercan O. Arik and Nicolas Loeff and Tomas Pfister},
      year={2020},
      eprint={1912.09363},
      archivePrefix={arXiv},
      primaryClass={stat.ML}
}

Some parts of the implementation rely on mattsherar's TFT implementation, available as part of the Temporal_Fusion_Transform repository.

Info for developers

The source code of the project is available on GitHub.

$ git clone https://github.com/PlaytikaResearch/tft-torch.git

You can install the library and the dependencies with one of the following commands:

$ pip install .                        # install library + dependencies
$ pip install ".[develop]"             # install library + dependencies + developer-dependencies
$ pip install -r requirements.txt      # install dependencies
$ pip install -r requirements-dev.txt  # install developer-dependencies

For creating the "pip-installable" *.whl file, run the following command (at the root of the repository):

$ python -m build

For creating the HTML documentation of the project, run the following commands:

$ cd docs
$ make clean
$ make html

Run tests

Tests can be executed with pytest running the following commands:

$ cd tests
$ pytest                                      # run all tests
$ pytest test_testmodule.py                   # run all tests within a module
$ pytest test_testmodule.py -k test_testname  # run only 1 test

License

MIT License

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

tft_torch-0.0.5.tar.gz (22.0 kB view details)

Uploaded Source

Built Distribution

tft_torch-0.0.5-py3-none-any.whl (21.9 kB view details)

Uploaded Python 3

File details

Details for the file tft_torch-0.0.5.tar.gz.

File metadata

  • Download URL: tft_torch-0.0.5.tar.gz
  • Upload date:
  • Size: 22.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.0

File hashes

Hashes for tft_torch-0.0.5.tar.gz
Algorithm Hash digest
SHA256 3583a128874676702043df00360e88af197bc8b9637145b8fb2f7d716622ea0a
MD5 3c090a0c904b2e4a1c3486c27319013d
BLAKE2b-256 72813e03dba36527683a4d08217d052005fa207bcdd6ddf3f026e917d494fc29

See more details on using hashes here.

File details

Details for the file tft_torch-0.0.5-py3-none-any.whl.

File metadata

  • Download URL: tft_torch-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 21.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.0

File hashes

Hashes for tft_torch-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 301bff81449070687c92b7dad5af3f96b38fbd7004fc0e3c416f7a6373ccd973
MD5 a32516a9834277d7a7574246d141c077
BLAKE2b-256 b281f0d088977f602ee808841aa937185f2c7d79636d91f2c637a51a3e7b9e27

See more details on using hashes here.

Supported by

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