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

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

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-20200626.19-cp38-cp38-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.8 Windows x86-64

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

Uploaded CPython 3.8 manylinux: glibc 2.12+ x86-64

giotto_tda_nightly-20200626.19-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-20200626.19-cp37-cp37m-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.7m Windows x86-64

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

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

giotto_tda_nightly-20200626.19-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-20200626.19-cp36-cp36m-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.6m Windows x86-64

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

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

giotto_tda_nightly-20200626.19-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-20200626.19-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: giotto_tda_nightly-20200626.19-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 1.2 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/47.3.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3

File hashes

Hashes for giotto_tda_nightly-20200626.19-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 d9f1a593e893ddfc687c30da37d117a9c6406566037d8fb1defedd1beaa9bd3c
MD5 4e0442e946827c21eb4e86372204a70e
BLAKE2b-256 92894aa8f3e231427c029e74ae0933ef970d2316727c8252b105854eb4ebb0d6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for giotto_tda_nightly-20200626.19-cp38-cp38-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 f60c5282a3ebf873369a20cbdbb878dc4fcbc2aca0bd4275a83083b7b5cc7d6a
MD5 61058e1ffc59db8a1d7c1539d76efb8e
BLAKE2b-256 268bc492578ab1e51d2ae07869be07740cbfdadea4cea0aa04d12ceabda23d46

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for giotto_tda_nightly-20200626.19-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 c21e71a76eda834e34e5eb74f0cae34d9a46ab601ac8c296fd9d2b3c65ac958f
MD5 ef1d489ea4840bed0856138b39dd7688
BLAKE2b-256 2f04412b26cbb68b11bb816570d1030ec577b9cbd20f6df0ac741000ae935a8f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: giotto_tda_nightly-20200626.19-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 1.2 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/47.3.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.7.7

File hashes

Hashes for giotto_tda_nightly-20200626.19-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 aebc55bd14b84a5b2ffbe98286cc8059cd68c881702933e8d0583f0094727095
MD5 e6ab38d4109b11e1fc5d7fa3c8d013ae
BLAKE2b-256 78f4cb3661d83f7c3e0f74df7ca3b65c034165e5ae4043eae1f885433c189885

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for giotto_tda_nightly-20200626.19-cp37-cp37m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 842b7149f9454ac5713d41fe512851e2f1b268a0c2b41ed08a5e895675718fa7
MD5 23540da19f8ee730bf9f272c5071fa11
BLAKE2b-256 44b6b8d694ff0a9e031dd1076a2752bb24473eaef77f607eb0fb83da09ed045f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for giotto_tda_nightly-20200626.19-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 7b17d786a82ac74deee0c83101916fc4a9b6dba9e7377fea67f2814104eefbc4
MD5 5f04017fd706488acf044dbb6f918fbe
BLAKE2b-256 e6a22abea46adca237757ee2b3eb6cf174f42fc660a13d61490428a6c3531d0c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: giotto_tda_nightly-20200626.19-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 1.2 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/47.3.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.6.8

File hashes

Hashes for giotto_tda_nightly-20200626.19-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 5a87bc249c95506594cdbda32893412f85d37c20f6c1a53b37600f108b59b992
MD5 2fb7929a09037992006ba6b9abd7a5cf
BLAKE2b-256 d403b1c3dd2f9a82bf1dfae941d317dab9f2c724426304701fa249673eeeb99a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for giotto_tda_nightly-20200626.19-cp36-cp36m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 ebe33b989cb37dec9de6c3a60fe16a225e0a3e0049727238ed5f588079dbd19d
MD5 dbaf0cecb394a09e05863103d5aa3671
BLAKE2b-256 c66004f87760b5e189c54f062e35b0981debf8c125e0be5d63ad59d3871447a5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for giotto_tda_nightly-20200626.19-cp36-cp36m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 037f82f813611bb8287b95136e2514c90162d75770d5245cc11eca14d93c5b42
MD5 259c450278e7e52af56d9304f405b3b5
BLAKE2b-256 aefcc6272a44da2992885c0b1ccdb2eceac78429d3908ecae795667a77653cd0

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