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.

Use cases

For a wide selection of use cases and application domains, you can visit this page.

Installation

Dependencies

The latest stable version of giotto-tda requires:

  • Python (>= 3.6)

  • NumPy (>= 1.17.0)

  • SciPy (>= 0.17.0)

  • joblib (>= 0.13)

  • scikit-learn (>= 0.22.0)

  • pyflagser (>= 0.4.0)

  • python-igraph (>= 0.7.1.post6)

  • plotly (>= 4.4.1)

  • 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 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, arXiv:2004.02551, 2020.

You can use the following BibTeX entry:

@misc{tauzin2020giottotda,
      title={giotto-tda: A Topological Data Analysis Toolkit for Machine Learning and Data Exploration},
      author={Guillaume Tauzin and Umberto Lupo and Lewis Tunstall and Julian Burella Pérez and Matteo Caorsi and Anibal Medina-Mardones and Alberto Dassatti and Kathryn Hess},
      year={2020},
      eprint={2004.02551},
      archivePrefix={arXiv},
      primaryClass={cs.LG}
}

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

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

giotto_tda_nightly-20200803.5-cp38-cp38-win_amd64.whl (12.0 MB view details)

Uploaded CPython 3.8Windows x86-64

giotto_tda_nightly-20200803.5-cp38-cp38-manylinux2010_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.12+ x86-64

giotto_tda_nightly-20200803.5-cp38-cp38-macosx_10_14_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.8macOS 10.14+ x86-64

giotto_tda_nightly-20200803.5-cp37-cp37m-win_amd64.whl (12.1 MB view details)

Uploaded CPython 3.7mWindows x86-64

giotto_tda_nightly-20200803.5-cp37-cp37m-manylinux2010_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.12+ x86-64

giotto_tda_nightly-20200803.5-cp37-cp37m-macosx_10_14_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.7mmacOS 10.14+ x86-64

giotto_tda_nightly-20200803.5-cp36-cp36m-win_amd64.whl (12.1 MB view details)

Uploaded CPython 3.6mWindows x86-64

giotto_tda_nightly-20200803.5-cp36-cp36m-manylinux2010_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.12+ x86-64

giotto_tda_nightly-20200803.5-cp36-cp36m-macosx_10_14_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.6mmacOS 10.14+ x86-64

File details

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

File metadata

  • Download URL: giotto_tda_nightly-20200803.5-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 12.0 MB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.48.1 CPython/3.8.5

File hashes

Hashes for giotto_tda_nightly-20200803.5-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 1afb7085fd1142ba5b77b6b571e56945259a598e34af490cb7da7982d918cd3e
MD5 8b4f4ef0e2537cc2cb0e151874f1dd08
BLAKE2b-256 173aa1d6248147b7779d01520d434440cfd3a4844e3ffcb2e8613b7e88e12959

See more details on using hashes here.

File details

Details for the file giotto_tda_nightly-20200803.5-cp38-cp38-manylinux2010_x86_64.whl.

File metadata

  • Download URL: giotto_tda_nightly-20200803.5-cp38-cp38-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: CPython 3.8, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.1 CPython/3.8.5

File hashes

Hashes for giotto_tda_nightly-20200803.5-cp38-cp38-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 810987ca0d89ba4fa2de1b420f675f95232de4f636dd2060a5d6bf400d56d282
MD5 7eb239baee48d0b4f58808f79052c7cb
BLAKE2b-256 2060c7d56acf43299052af7018e5d611a4f96473da1cc9425c562722481155a9

See more details on using hashes here.

File details

Details for the file giotto_tda_nightly-20200803.5-cp38-cp38-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: giotto_tda_nightly-20200803.5-cp38-cp38-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.8, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.48.1 CPython/3.8.4

File hashes

Hashes for giotto_tda_nightly-20200803.5-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 c5fb952c49012ba77f0b4e201d28518e65df046aa12130dddfb99d9ca064147c
MD5 2a657a9de9d6a21b91c7ec0de586002a
BLAKE2b-256 9f85b48140c2b0dc7479691be9995050d8442b7b70cdd7c1a981d6eb179daf29

See more details on using hashes here.

File details

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

File metadata

  • Download URL: giotto_tda_nightly-20200803.5-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 12.1 MB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.48.1 CPython/3.7.8

File hashes

Hashes for giotto_tda_nightly-20200803.5-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 83c2879a95c6e561400da3a5a2be5ab41e3e0b07298a6884d562ddd234324460
MD5 ccf0bdee5efd2d95deb1b4ec25a5047c
BLAKE2b-256 21a22c2a56c7640952e50d96096e00f3306150bbb82abbb8777b871aad45b64d

See more details on using hashes here.

File details

Details for the file giotto_tda_nightly-20200803.5-cp37-cp37m-manylinux2010_x86_64.whl.

File metadata

  • Download URL: giotto_tda_nightly-20200803.5-cp37-cp37m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: CPython 3.7m, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.1 CPython/3.7.8

File hashes

Hashes for giotto_tda_nightly-20200803.5-cp37-cp37m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 8ac9ec8f29891acd07154a1b2380dc5b468f081444e99947248df5eed08fb346
MD5 fd373b65b77ed9961b728988529da39c
BLAKE2b-256 487f5818129840608c6ea5cbf1f20e73ef94dd843047af4e828f6b16b09171b7

See more details on using hashes here.

File details

Details for the file giotto_tda_nightly-20200803.5-cp37-cp37m-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: giotto_tda_nightly-20200803.5-cp37-cp37m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.7m, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.48.1 CPython/3.7.8

File hashes

Hashes for giotto_tda_nightly-20200803.5-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 8745a4f19660eac6f896398ca48424121c05f647428b4f521af18e04b62799de
MD5 d1751dac6de8fd1c8ed476ed751cf072
BLAKE2b-256 3397a06a5347ba5cac84407a51a5b2c72415ed131d685bdb615e8af8764ddd91

See more details on using hashes here.

File details

Details for the file giotto_tda_nightly-20200803.5-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: giotto_tda_nightly-20200803.5-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 12.1 MB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.48.1 CPython/3.6.8

File hashes

Hashes for giotto_tda_nightly-20200803.5-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 4f4cd9f1b1935793af44e08da0d2f3fd213e9985b25ca1869eabc9a4d667e6bb
MD5 56846344d8ec186dd092ec257648b9b2
BLAKE2b-256 08087c51cd61eb9c9799e3174785be5553bbb0500f74e0f2603ce755fb692017

See more details on using hashes here.

File details

Details for the file giotto_tda_nightly-20200803.5-cp36-cp36m-manylinux2010_x86_64.whl.

File metadata

  • Download URL: giotto_tda_nightly-20200803.5-cp36-cp36m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: CPython 3.6m, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.48.1 CPython/3.6.11

File hashes

Hashes for giotto_tda_nightly-20200803.5-cp36-cp36m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 67c00d8a5ff9b5d6627068061e91b0b8d800ccbb454d50e850a7bfe1484d5fae
MD5 8c53fc812f00eb2f1ce30f8be8bcb04b
BLAKE2b-256 63168f1671492a3a0f6c19121d029ebf8295d593869dc060bfda436bc702c3a0

See more details on using hashes here.

File details

Details for the file giotto_tda_nightly-20200803.5-cp36-cp36m-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: giotto_tda_nightly-20200803.5-cp36-cp36m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.6m, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.48.1 CPython/3.6.11

File hashes

Hashes for giotto_tda_nightly-20200803.5-cp36-cp36m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 97ae25eac55c83ac2d6707d8c84b9b7fdbbed4fbc065ffdfc64fb279457c53df
MD5 494c28455300491f46c5b6b81c5e7d93
BLAKE2b-256 1a91f7b7cbd05dc0ff53a7f6f5334bbb8e42cc969128984f67f5ac03c7119df4

See more details on using hashes here.

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