<div align="center">
<img src="https://raw.githubusercontent.com/google-research/e3x/main/docs/source/_static/logo.svg" alt="logo" width="200"></img>
</div>
# E3x: E(3)-Equivariant Deep Learning Made Easy
![Autopublish Workflow](https://github.com/google-research/e3x/actions/workflows/pytest_and_autopublish.yml/badge.svg)
![PyPI version](https://img.shields.io/pypi/v/e3x)
[![Documentation Status](https://readthedocs.org/projects/e3x/badge/?version=latest)](https://e3x.readthedocs.io/en/latest/?badge=latest)
[E3x](https://e3x.readthedocs.io) is a [JAX](https://jax.readthedocs.io) library
for constructing efficient E(3)-equivariant deep learning architectures built on
top of [Flax](https://flax.readthedocs.io).
The goal is to provide common neural network building blocks for
E(3)-equivariant architectures to make the development of models operating on
three-dimensional data (point clouds, polygon meshes, etc.) easier.
This is not an officially supported Google product.
## Installation
The easiest way to install E3x is via the Python Package Index (PyPI). Simply
run
```console
> python -m pip install --upgrade e3x
```
and you should be good to go.
Alternatively, you can clone this repository, enter the directory and run:
```console
> python -m pip install .
```
If you are a developer, you might want to also install the optional development
dependencies by running
```console
> python -m pip install .[dev]
```
instead.
## Documentation
Documentation for E3x, including usage examples and tutorials can be found
[here](https://e3x.readthedocs.io). For a more detailed overview over the
mathematical theory behind E3x, please refer to
[this paper](https://arxiv.org/abs/2401.07595).
## Citing E3x
If you find E3x useful and use it in your work, please cite:
```
@article{unke2024e3x,
title={\texttt{E3x}: $\mathrm{E}(3)$-Equivariant Deep Learning Made Easy},
author={Unke, Oliver T. and Maennel, Hartmut},
journal={arXiv preprint arXiv:2401.07595},
year={2024}
}
```
Raw data
{
"_id": null,
"home_page": null,
"name": "e3x",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "equivariance, equivariant, invariance, invariant, E(3), SE(3), O(3), SO(3), Euclidean, Orthogonal, group, translation, translational, rotation, rotational, roto-translation, roto-translational, reflection, neural network, machine learning, deep learning",
"author": null,
"author_email": "The e3x Authors <qcml@google.com>",
"download_url": "https://files.pythonhosted.org/packages/ff/97/ee128e98124de0bc9d7a577b720cf1ba01915b60707352c5afd5f600b7de/e3x-1.0.2.tar.gz",
"platform": null,
"description": "<div align=\"center\">\n<img src=\"https://raw.githubusercontent.com/google-research/e3x/main/docs/source/_static/logo.svg\" alt=\"logo\" width=\"200\"></img>\n</div>\n\n# E3x: E(3)-Equivariant Deep Learning Made Easy\n\n![Autopublish Workflow](https://github.com/google-research/e3x/actions/workflows/pytest_and_autopublish.yml/badge.svg)\n![PyPI version](https://img.shields.io/pypi/v/e3x)\n[![Documentation Status](https://readthedocs.org/projects/e3x/badge/?version=latest)](https://e3x.readthedocs.io/en/latest/?badge=latest)\n\n[E3x](https://e3x.readthedocs.io) is a [JAX](https://jax.readthedocs.io) library\nfor constructing efficient E(3)-equivariant deep learning architectures built on\ntop of [Flax](https://flax.readthedocs.io).\n\nThe goal is to provide common neural network building blocks for\nE(3)-equivariant architectures to make the development of models operating on\nthree-dimensional data (point clouds, polygon meshes, etc.) easier.\n\nThis is not an officially supported Google product.\n\n## Installation\n\nThe easiest way to install E3x is via the Python Package Index (PyPI). Simply\nrun\n```console\n> python -m pip install --upgrade e3x\n```\nand you should be good to go.\n\nAlternatively, you can clone this repository, enter the directory and run:\n```console\n> python -m pip install .\n```\n\nIf you are a developer, you might want to also install the optional development\ndependencies by running\n```console\n> python -m pip install .[dev]\n```\ninstead.\n\n## Documentation\n\nDocumentation for E3x, including usage examples and tutorials can be found\n[here](https://e3x.readthedocs.io). For a more detailed overview over the\nmathematical theory behind E3x, please refer to\n[this paper](https://arxiv.org/abs/2401.07595).\n\n## Citing E3x\n\nIf you find E3x useful and use it in your work, please cite:\n```\n@article{unke2024e3x,\n title={\\texttt{E3x}: $\\mathrm{E}(3)$-Equivariant Deep Learning Made Easy},\n author={Unke, Oliver T. and Maennel, Hartmut},\n journal={arXiv preprint arXiv:2401.07595},\n year={2024}\n}\n```\n\n",
"bugtrack_url": null,
"license": null,
"summary": "JAX-Library for building E(3)-equivariant deep learning architectures based on Flax.",
"version": "1.0.2",
"project_urls": {
"homepage": "https://github.com/google-research/e3x",
"repository": "https://github.com/google-research/e3x"
},
"split_keywords": [
"equivariance",
" equivariant",
" invariance",
" invariant",
" e(3)",
" se(3)",
" o(3)",
" so(3)",
" euclidean",
" orthogonal",
" group",
" translation",
" translational",
" rotation",
" rotational",
" roto-translation",
" roto-translational",
" reflection",
" neural network",
" machine learning",
" deep learning"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "118f6c7700328e3942d32032c539092499a1d2e784b226c39ea7662d97d208d6",
"md5": "9c256c40740e3027bd6c93aed6d59243",
"sha256": "b18e519bb87f83e3319e735277a595f0cddca2d6fe30dfb7255f63fef86b0e7b"
},
"downloads": -1,
"filename": "e3x-1.0.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "9c256c40740e3027bd6c93aed6d59243",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 95326612,
"upload_time": "2024-04-05T09:29:12",
"upload_time_iso_8601": "2024-04-05T09:29:12.540239Z",
"url": "https://files.pythonhosted.org/packages/11/8f/6c7700328e3942d32032c539092499a1d2e784b226c39ea7662d97d208d6/e3x-1.0.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "ff97ee128e98124de0bc9d7a577b720cf1ba01915b60707352c5afd5f600b7de",
"md5": "f33cba932c8d23c8972d41cea4372bc6",
"sha256": "3538cd7ad3a98de023e5cda738fff172e7e8c10b381b9e0dbc9c16b88b0385cb"
},
"downloads": -1,
"filename": "e3x-1.0.2.tar.gz",
"has_sig": false,
"md5_digest": "f33cba932c8d23c8972d41cea4372bc6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 95303732,
"upload_time": "2024-04-05T09:29:18",
"upload_time_iso_8601": "2024-04-05T09:29:18.709661Z",
"url": "https://files.pythonhosted.org/packages/ff/97/ee128e98124de0bc9d7a577b720cf1ba01915b60707352c5afd5f600b7de/e3x-1.0.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-04-05 09:29:18",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "google-research",
"github_project": "e3x",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "e3x"
}