Skip to main content
`pytorch-topological` icon

pytorch-topological: A topological machine learning framework for pytorch

Documentation Maintainability GitHub contributors PyPI - License PyPI Tests

pytorch-topological (or torch_topological) is a topological machine learning framework for PyTorch. It aims to collect loss terms and neural network layers in order to simplify building the next generation of topology-based machine learning tools.

Topological machine learning in a nutshell

Topological machine learning refers to a new class of machine learning algorithms that are able to make use of topological features in data sets. In contrast to methods based on a purely geometrical point of view, topological features are capable of focusing on connectivity aspects of a data set. This provides an interesting fresh perspective that can be used to create powerful hybrid algorithms, capable of yielding more insights into data.

This is an emerging research field, firmly rooted in computational topology and topological data analysis. If you want to learn more about how topology and geometry can work in tandem, here are a few resources to get you started:

Installation and requirements

torch_topological requires Python 3.9. More recent versions might work but necessitate building some dependencies by yourself; Python 3.9 currently offers the smoothest experience. It is recommended to use the excellent poetry framework to install torch_topological:

poetry add torch-topological

Alternatively, use pip to install the package:

pip install -U torch-topological

A note on older versions. Older versions of Python are not explicitly supported, and things may break in unexpected ways. If you want to use a different version, check pyproject.toml and adjust the Python requirement to your preference. This may or may not work, good luck!

Usage

torch_topological is still a work in progress. You can browse the documentation or, if code reading is more your thing, dive directly into some example code.

Here is a list of other projects that are using torch_topological:

  • SHAPR, a method for for predicting the 3D cell shape of individual cells based on 2D microscopy images

This list is incomplete---you can help expanding it by using torch_topological in your own projects! :innocent:

Contributing

Check out the contribution guidelines or the road map of the project.

Acknowledgements

Our software and research does not exist in a vacuum. pytorch-topological is standing on the shoulders of proverbial giants. In particular, we want to thank the following projects for constituting the technical backbone of the project:

giotto-tda gudhi
`giotto` icon `GUDHI` icon

Furthermore, pytorch-topological draws inspiration from several projects that provide a glimpse into the wonderful world of topological machine learning:

Finally, pytorch-topological makes heavy use of POT, the Python Optimal Transport Library. We are indebted to the many contributors of all these projects.

Metadata

Release files for torch_topological 0.1.9

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for torch_topological 0.1.9
File Size Uploaded
torch_topological-0.1.9.tar.gz 150.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for torch_topological 0.1.9
File Interpreter ABI Platform
torch_topological-0.1.9-py3-none-any.whl Python 3 none any Details

Total release size: 213.2 kB

Release files / torch_topological-0.1.9.tar.gz

Download URL torch_topological-0.1.9.tar.gz
Size 150.6 kB
Tags Source
SHA-256 checksum
How to use checksums
e71e14336fdb2d928ab420054390e10b0ad543f88d65f90dc67ba246c4fd394e
BLAKE2b-256 checksum
How to use checksums
22cdf72724685f6b860e9d7112da3cac6ad37dfa76680081f750330cdcec3044
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.8.22

Release files / torch_topological-0.1.9-py3-none-any.whl

Download URL torch_topological-0.1.9-py3-none-any.whl
Size 62.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7b22b1c6df2c7f90cc7f468e07d9b42ee865f67ac2fe7c8310a0e426de4ef722
BLAKE2b-256 checksum
How to use checksums
2ad225c19bbcf184acf2faedebc9660d876b5d6bc7d25d32b64a1a7d92af9dcb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.8.22

Release history Release notifications | RSS feed

This release

0.1.9 This release

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page