Skip to main content

Toolbox for Machine Learning using Topological Data Analysis.

Project description

https://raw.githubusercontent.com/giotto-ai/giotto-tda/master/doc/images/tda_logo.svg

Version Azure-build Azure-cov Azure-test Twitter-follow Slack-join

giotto-tda

giotto-tda is a high-performance topological machine learning toolbox in Python built on top of scikit-learn and is distributed under the GNU AGPLv3 license. It is part of the Giotto family of open-source projects.

Project genesis

giotto-tda is the result of a collaborative effort between L2F SA, the Laboratory for Topology and Neuroscience at EPFL, and the Institute of Reconfigurable & Embedded Digital Systems (REDS) of HEIG-VD.

License

giotto-tda is distributed under the AGPLv3 license. If you need a different distribution license, please contact the L2F team.

Documentation

Please visit https://giotto-ai.github.io/gtda-docs and navigate to the version you are interested in.

Installation

Dependencies

The latest stable version of giotto-tda requires:

  • Python (>= 3.7)

  • NumPy (>= 1.19.1)

  • SciPy (>= 1.5.0)

  • joblib (>= 0.16.0)

  • scikit-learn (>= 0.23.1)

  • pyflagser (>= 0.4.3)

  • python-igraph (>= 0.8.2)

  • plotly (>= 4.8.2)

  • ipywidgets (>= 7.5.1)

To run the examples, jupyter is required.

User installation

The simplest way to install giotto-tda is using pip

python -m pip install -U giotto-tda

If necessary, this will also automatically install all the above dependencies. Note: we recommend upgrading pip to a recent version as the above may fail on very old versions.

Pre-release, experimental builds containing recently added features, and/or bug fixes can be installed by running

python -m pip install -U giotto-tda-nightly

The main difference between giotto-tda-nightly and the developer installation (see the section on contributing, below) is that the former is shipped with pre-compiled wheels (similarly to the stable release) and hence does not require any C++ dependencies. As the main library module is called gtda in both the stable and nightly versions, giotto-tda and giotto-tda-nightly should not be installed in the same environment.

Developer installation

Please consult the dedicated page for detailed instructions on how to build giotto-tda from sources across different platforms.

Contributing

We welcome new contributors of all experience levels. The Giotto community goals are to be helpful, welcoming, and effective. To learn more about making a contribution to giotto-tda, please consult the relevant page.

Testing

After developer installation, you can launch the test suite from outside the source directory

pytest gtda

Citing giotto-tda

If you use giotto-tda in a scientific publication, we would appreciate citations to the following paper:

giotto-tda: A Topological Data Analysis Toolkit for Machine Learning and Data Exploration, Tauzin et al, J. Mach. Learn. Res. 22.39 (2021): 1-6.

You can use the following BibTeX entry:

@article{giotto-tda,
  author  = {Guillaume Tauzin and Umberto Lupo and Lewis Tunstall and Julian Burella P\'{e}rez and Matteo Caorsi and Anibal M. Medina-Mardones and Alberto Dassatti and Kathryn Hess},
  title   = {giotto-tda: A Topological Data Analysis Toolkit for Machine Learning and Data Exploration},
  journal = {Journal of Machine Learning Research},
  year    = {2021},
  volume  = {22},
  number  = {39},
  pages   = {1-6},
  url     = {http://jmlr.org/papers/v22/20-325.html}
}

Community

giotto-ai Slack workspace: https://slack.giotto.ai/

Contacts

maintainers@giotto.ai

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

giotto_tda_nightly-20220825.5-cp310-cp310-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.10 Windows x86-64

giotto_tda_nightly-20220825.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

giotto_tda_nightly-20220825.5-cp310-cp310-macosx_10_16_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.10 macOS 10.16+ x86-64

giotto_tda_nightly-20220825.5-cp39-cp39-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.9 Windows x86-64

giotto_tda_nightly-20220825.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

giotto_tda_nightly-20220825.5-cp39-cp39-macosx_10_16_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.9 macOS 10.16+ x86-64

giotto_tda_nightly-20220825.5-cp38-cp38-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.8 Windows x86-64

giotto_tda_nightly-20220825.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

giotto_tda_nightly-20220825.5-cp38-cp38-macosx_10_16_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.8 macOS 10.16+ x86-64

giotto_tda_nightly-20220825.5-cp37-cp37m-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.7m Windows x86-64

giotto_tda_nightly-20220825.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

giotto_tda_nightly-20220825.5-cp37-cp37m-macosx_10_16_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.7m macOS 10.16+ x86-64

File details

Details for the file giotto_tda_nightly-20220825.5-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for giotto_tda_nightly-20220825.5-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 bd13f0fe0a331442ed162cad4732d4135e5bcfa207b7a33acde6bbe6e4c4c618
MD5 4e2b20f893e1edce869dc347fa70e367
BLAKE2b-256 28b5d0934d0bdcb87a6509a59c04b07b2593f3b2754becf48c638bef6e1e0cba

See more details on using hashes here.

File details

Details for the file giotto_tda_nightly-20220825.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for giotto_tda_nightly-20220825.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5099463e006f1ea76950190a74ae016db051d8b40a68dea74754346ba8fb3e18
MD5 fa60d02f89a0b6e31af91898a5171841
BLAKE2b-256 4a7ad7ca0c7d0d0a39e8e2a1c41bf925e89c76589ef75bbe6a7c41f8118f2e95

See more details on using hashes here.

File details

Details for the file giotto_tda_nightly-20220825.5-cp310-cp310-macosx_10_16_x86_64.whl.

File metadata

File hashes

Hashes for giotto_tda_nightly-20220825.5-cp310-cp310-macosx_10_16_x86_64.whl
Algorithm Hash digest
SHA256 f6b8377669364452ce744042ad93e54174c40049ad83703ce0d8e4fdd62a363b
MD5 04f17ac0e0a66dd2d3428d7950c3e592
BLAKE2b-256 0e6b3785f9722a33bf1b52610d52d3db97e04fabdf00f524acad3cc319807fd7

See more details on using hashes here.

File details

Details for the file giotto_tda_nightly-20220825.5-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for giotto_tda_nightly-20220825.5-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 6a6598627f7230253e7aefadfb7a18e19ad04101d0abb81cd38d7f20c4e19606
MD5 71d1dd6c637a5c80c387f043e16166fd
BLAKE2b-256 56305c1df37b76d36c1841cd7cfa5e3cfe521ca196f0ff958d64ea991a4b7f0f

See more details on using hashes here.

File details

Details for the file giotto_tda_nightly-20220825.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for giotto_tda_nightly-20220825.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5febd10671a8c887c82d1b7bf5a77fcdbe56fa968e454838320577e41a3d3cc6
MD5 e51d1668c62333a424f178c257b29517
BLAKE2b-256 99a0a84d59cc651ea41455d70eacb5037d9358a502deee98e0289ca3e3074607

See more details on using hashes here.

File details

Details for the file giotto_tda_nightly-20220825.5-cp39-cp39-macosx_10_16_x86_64.whl.

File metadata

File hashes

Hashes for giotto_tda_nightly-20220825.5-cp39-cp39-macosx_10_16_x86_64.whl
Algorithm Hash digest
SHA256 fcd5d88f5f6885124d4b5a1f9fb98d9780c2547731121eba302729de99804baf
MD5 4e1eefcce1f371e174dc648303dab609
BLAKE2b-256 427825ab9699eda0c08371f6021ffd05d1b5e7f7fabcbeee96ed823c54b64304

See more details on using hashes here.

File details

Details for the file giotto_tda_nightly-20220825.5-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for giotto_tda_nightly-20220825.5-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 e5780f3d4804f918814969298afa0e03286e7923125dc8ab8490c78ebe49dbf5
MD5 439cd2d4f635522a22f7094c381485c1
BLAKE2b-256 6f833ffb322b6a335097abb24e1a8c37e996552ec79b79549f800d5071c955b0

See more details on using hashes here.

File details

Details for the file giotto_tda_nightly-20220825.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for giotto_tda_nightly-20220825.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e93604b63fa3056328dcf707c24c1e9d86b0714e33c04becd9e35b8237b05ae4
MD5 be8dffef04699e719afc02a473cb462a
BLAKE2b-256 8839a78f55a48b3f6853c2e129dea8fb00a584d07272e2a539064828c97e7f5a

See more details on using hashes here.

File details

Details for the file giotto_tda_nightly-20220825.5-cp38-cp38-macosx_10_16_x86_64.whl.

File metadata

File hashes

Hashes for giotto_tda_nightly-20220825.5-cp38-cp38-macosx_10_16_x86_64.whl
Algorithm Hash digest
SHA256 8da2580648456a76677e891a47d2938ac6be6bbbb65145351e1e8f9239b33e31
MD5 6590031daf2b2f42e75aea0b51436488
BLAKE2b-256 45fe790fd5093f92b94b0be4cf04df2f7a35af2cfb010d82eca9742f426a671c

See more details on using hashes here.

File details

Details for the file giotto_tda_nightly-20220825.5-cp37-cp37m-win_amd64.whl.

File metadata

File hashes

Hashes for giotto_tda_nightly-20220825.5-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 eeb9ccb5073e69dc691eb931d83e12cfae22bd54e99a6de11bfa43a3d3c73be3
MD5 99df11c7e7fe029485e57fba13e3c99b
BLAKE2b-256 d77126499a693b9a9de20d7547d980ae94ee1ff31ae9cb8cfdb20047d554ca04

See more details on using hashes here.

File details

Details for the file giotto_tda_nightly-20220825.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for giotto_tda_nightly-20220825.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6aed9f0521eb9ba5bfea75933a267e793394cd00d049e89ac43bbac3270866c2
MD5 50bef01d4a20bc272f7d3c1026c021d9
BLAKE2b-256 ce2cc1c8ae541fce1d2a420e54fe7023c3b78b414c51c79be579a06381c1cde1

See more details on using hashes here.

File details

Details for the file giotto_tda_nightly-20220825.5-cp37-cp37m-macosx_10_16_x86_64.whl.

File metadata

File hashes

Hashes for giotto_tda_nightly-20220825.5-cp37-cp37m-macosx_10_16_x86_64.whl
Algorithm Hash digest
SHA256 06413e91921e39c1529972b4196e523552b2c1adec7765f649e6ca0e055b7e83
MD5 6c207824b15bc63c25d5611a4b71ba1d
BLAKE2b-256 24cf1999763e548a175d4654dd66ee9771315f33cb1d8eade51fe744e8996b2f

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