Skip to main content

Lorentz-Equivariant Geometric Algebra Transformer for High-Energy Physics

Reason this release was yanked:

Build does not include .py files

Project description

Lorentz-Equivariant Geometric Algebra Transformer

Tests codecov PyPI version pytorch black

LGATr-CS LGATr-HEP

This repository contains a standalone implementation of the Lorentz-Equivariant Geometric Algebra Transformer (L-GATr) by Jonas Spinner, Víctor Bresó, Pim de Haan, Tilman Plehn, Huilin Qu, Jesse Thaler, and Johann Brehmer. L-GATr uses spacetime geometric algebra representations to construct Lorentz-equivariant layers and combines them into a transformer architecture. You can read more about L-GATr in the following two papers and in the L-GATr documentation:

Installation

You can either install the latest release using pip

pip install lgatr

or clone the repository and install the package in dev mode

git clone https://github.com/heidelberg-hepml/lgatr.git
cd lgatr
pip install -e .

How to use L-GATr

Please have a look at our example notebooks for how to use LGATr and ConditionalLGATr.

Features

  • L-GATr encoder and decoder as LGATr and ConditionalLGATr
  • Additional attention backends, installation via pip install lgatr[xformers_attention] and pip install lgatr[flex_attention]
  • Support for torch's automatic mixed precision; critical operations are performed in float32
  • Interface to the geometric algebra: Embedding and extracting multivectors; spurions for symmetry breaking at the input level
  • Many hyperparameters to play with, organized via the SelfAttentionConfig, CrossAttentionConfig, MLPConfig and LGATRConfig objects

Examples

Let us know if you use lgatr, so we can add your repo to the list!

Citation

If you find this code useful in your research, please cite the following papers

@article{Brehmer:2024yqw,
    author = "Brehmer, Johann and Bres\'o, V\'\i{}ctor and de Haan, Pim and Plehn, Tilman and Qu, Huilin and Spinner, Jonas and Thaler, Jesse",
    title = "{A Lorentz-Equivariant Transformer for All of the LHC}",
    eprint = "2411.00446",
    archivePrefix = "arXiv",
    primaryClass = "hep-ph",
    reportNumber = "MIT-CTP/5802",
    month = "11",
    year = "2024"
}
@inproceedings{spinner2025lorentz,
  title={Lorentz-Equivariant Geometric Algebra Transformers for High-Energy Physics},
  author={Spinner, Jonas and Bres{\'o}, Victor and De Haan, Pim and Plehn, Tilman and Thaler, Jesse and Brehmer, Johann},
  booktitle={Advances in Neural Information Processing Systems},
  year={2024},
  volume={37},
  eprint = {2405.14806},
  url = {https://arxiv.org/abs/2405.14806}
}
@inproceedings{brehmer2023geometric,
  title = {Geometric Algebra Transformer},
  author = {Brehmer, Johann and de Haan, Pim and Behrends, S{\"o}nke and Cohen, Taco},
  booktitle = {Advances in Neural Information Processing Systems},
  year = {2023},
  volume = {36},
  eprint = {2305.18415},
  url = {https://arxiv.org/abs/2305.18415},
}

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

lgatr-1.1.0.tar.gz (8.7 kB view details)

Uploaded Source

Built Distribution

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

lgatr-1.1.0-py3-none-any.whl (7.8 kB view details)

Uploaded Python 3

File details

Details for the file lgatr-1.1.0.tar.gz.

File metadata

  • Download URL: lgatr-1.1.0.tar.gz
  • Upload date:
  • Size: 8.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for lgatr-1.1.0.tar.gz
Algorithm Hash digest
SHA256 bffe3f88d1b66e600bd55c15785241e81e46bce1aa2bd76097dbe2e7bce15cb1
MD5 59b705d8484ff5f597f204c892f57d14
BLAKE2b-256 89641290299d0e2c2c9a2cfd135c7992b107fa6034ad4d7af185ceb6abd9b786

See more details on using hashes here.

Provenance

The following attestation bundles were made for lgatr-1.1.0.tar.gz:

Publisher: release.yaml on heidelberg-hepml/lgatr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lgatr-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: lgatr-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 7.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for lgatr-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0ecbfe8d6e6463ac0ef1f54cde1539a0e55be69fd7def7ff7ee5a97efeeb3dd2
MD5 6f70225ace05f8a9fbc68395c61bc712
BLAKE2b-256 ae7d61df9c287498285c5851c9b9b54816748c37621a13e8255538b67330e367

See more details on using hashes here.

Provenance

The following attestation bundles were made for lgatr-1.1.0-py3-none-any.whl:

Publisher: release.yaml on heidelberg-hepml/lgatr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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