TorchSpatiotemporal/tsl

tsl: a PyTorch library for processing spatiotemporal data.

What it solves

Torch Spatiotemporal (tsl) is designed to accelerate research on neural spatiotemporal data processing, specifically focusing on Graph Neural Networks (GNNs). It provides a unified framework that simplifies the entire pipeline from data preprocessing to model prototyping, reducing the manual effort required to build and benchmark spatiotemporal forecasting models.

How it works

Built on PyTorch, PyTorch Geometric (PyG), and PyTorch Lightning, tsl integrates these libraries to provide a high-level API for handling spatiotemporal data. It offers specialized neural layers and straightforward data structures that are compatible with the PyTorch ecosystem. The library includes tools for scaling, resampling, and clustering time series, as well as mechanisms to handle missing data and irregular network structures.

Who it’s for

Researchers and developers working with sensor networks, environmental data, or any other domain involving spatiotemporal data analysis and forecasting.

Highlights

  • Comprehensive Library: Access to a wide collection of existing datasets and models from spatiotemporal literature for benchmarking.
  • Modular Architecture: Specialized neural layers that allow for the creation of custom, modular spatiotemporal models.
  • Robust Data Handling: Tools to manage irregularities, missing data, and variations in network structures.
  • Scalable Training: Integration with PyTorch Lightning allows for effortless scaling from a single CPU to GPU clusters.
  • Reproducible Experiments: Uses the Hydra framework to ensure that experiments are reproducible.
  • PyTorch Compilation: Supports model.compile for faster training and inference on compatible models.

Related

  • Project
  • Project
  • Project
  • Project
  • Project