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

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

Uploaded CPython 3.8 Windows x86-64

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

Uploaded CPython 3.8 manylinux: glibc 2.12+ x86-64

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

Uploaded CPython 3.8 macOS 10.14+ x86-64

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

Uploaded CPython 3.7m Windows x86-64

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

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

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

Uploaded CPython 3.7m macOS 10.14+ x86-64

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

Uploaded CPython 3.6m Windows x86-64

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

Uploaded CPython 3.6m manylinux: glibc 2.12+ x86-64

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

Uploaded CPython 3.6m macOS 10.14+ x86-64

File details

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

File metadata

  • Download URL: giotto_tda_nightly-20200802.4-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.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.5

File hashes

Hashes for giotto_tda_nightly-20200802.4-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 8e8ac8533817374613f4ca50f5a22d8438c43e8e5add1c47632f65d0e7cab077
MD5 744da55f537e5f1060af8951240cd991
BLAKE2b-256 2cf388c5fd6f93726f2c5821f3fd1500bfa7a5ec0e723dc7d33f41249d3f5986

See more details on using hashes here.

File details

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

File metadata

  • Download URL: giotto_tda_nightly-20200802.4-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.0 CPython/3.8.5

File hashes

Hashes for giotto_tda_nightly-20200802.4-cp38-cp38-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 39707c957f45bff41f1e494c7ebea9ab23708458033b1b99e147dcfdcd7dafca
MD5 ab7930d7da70bc97f38464ac8eb25607
BLAKE2b-256 22bb273e61fb24ccd36d7e4c84e2016f9c612e549a3f61271b07af7c9b91d2c9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for giotto_tda_nightly-20200802.4-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 4447e1e159eeb62899dee745c5a7689c27d2a8cd9efd999bae28576a1aa14ddb
MD5 39297d6d2fbe9ffdc3ad028845dad713
BLAKE2b-256 e53da66d089695676b1bd675a6a442c068f611459d1b8509b794dddbcb5115ac

See more details on using hashes here.

File details

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

File metadata

  • Download URL: giotto_tda_nightly-20200802.4-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.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.7.8

File hashes

Hashes for giotto_tda_nightly-20200802.4-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 e0d928a6c7239e9c7df21923ab59fb14b3c0b29c8e17ea866341ba5b591782ad
MD5 21dcbeb79d7da21e410978e231effecd
BLAKE2b-256 698358b9a2c731743e11bb3bf2d4ff9f04f1810287c15699feac897717007a0b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for giotto_tda_nightly-20200802.4-cp37-cp37m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 946d767373fe62cbcc7534716eb624fadbef3307ede5457ee59163d1ccc36346
MD5 203d3b28d4ecc19316350bf254ed6e65
BLAKE2b-256 1ecacd8b9d40547ec226f9c3c02fbcc98b7fd639a6342fdffad355d95216eaba

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for giotto_tda_nightly-20200802.4-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 94b745d4e6165f4a945a8639be34c3fe7cfaf0118ac72ed22f56582f34282395
MD5 fd1f05accf499eb30036c21e04590144
BLAKE2b-256 bacf3f0999330890d28636726835c1ddf16eed42795ff5c22c402541c0ff4935

See more details on using hashes here.

File details

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

File metadata

  • Download URL: giotto_tda_nightly-20200802.4-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.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.6.8

File hashes

Hashes for giotto_tda_nightly-20200802.4-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 a527f34174e151e78647bd1b981435329bcad07ac63a9004481e3e95c4c7c94f
MD5 0c8fa95954405ef503dbdbf949a703b7
BLAKE2b-256 96f4fbda5e491d4d102b31205eebede9dceeef149677faeed09b0037f0ff4024

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for giotto_tda_nightly-20200802.4-cp36-cp36m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 b264be1753f8649fc76f4c7044801755e6f9a89cc5c2a61bdde68b9f9800f1de
MD5 94528d473a2923b13ac9f68113af6035
BLAKE2b-256 ca2d5a61952423ea5c0045dcd82a232da24e822acffe538093590ebe6a1b7865

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for giotto_tda_nightly-20200802.4-cp36-cp36m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 706bc1579ea1c1af67fb6eb4c9f924bcfb7e1feec3f52551259f789c87493028
MD5 c4166be2c49c6014b3e1b0ebd6b72da0
BLAKE2b-256 d232ddaa4df4532a37b128fa5aca9787fd805a0877f3364337f1e954e8def039

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