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

Uploaded CPython 3.8 Windows x86-64

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

Uploaded CPython 3.8 manylinux: glibc 2.12+ x86-64

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

Uploaded CPython 3.7m Windows x86-64

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

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

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

Uploaded CPython 3.6m Windows x86-64

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

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

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

File metadata

  • Download URL: giotto_tda_nightly-20200801.7-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-20200801.7-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 34a3a8c03f43109f6eaa3d85c0fffda7d207858661c8b5ea43f2d7171d86aa71
MD5 0612dc99a92d4e5629c8166491d5e1c8
BLAKE2b-256 11e5c3497b5adfffffb3aef86fee2adfae47db903b0d36134521c12ab6c4122f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: giotto_tda_nightly-20200801.7-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-20200801.7-cp38-cp38-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 70a1288bb23a8644e9ad074b32528d5ebc2465a8da38de7213f85d5145fa3d15
MD5 4e7e2650ddd77caf5240b41c91457e20
BLAKE2b-256 e5513f4169a3ac23a0db2a3a933abc47d122f905f0238c02be3a4199ddbe7e9d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for giotto_tda_nightly-20200801.7-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 8766a174973b1f30ebf725c85bf46ba79d83fc7d941f4429e6585c98a73035cd
MD5 9bc65d65539696a91fe5d33297d55aa7
BLAKE2b-256 70d52db6408175509119d95497fe71222275708c7d4df6cbb65c542460f75dfc

See more details on using hashes here.

File details

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

File metadata

  • Download URL: giotto_tda_nightly-20200801.7-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-20200801.7-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 993a3dcfeb5921fe587b6022d105b4778f15de30b86be20aa52c26483832ebea
MD5 2b4e9cb0d8ca4646fe8de11b10247d35
BLAKE2b-256 4f1940b9b91b8e048222eca6670d589f2255c9c64d1a6e58db99ad55fbfd1434

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for giotto_tda_nightly-20200801.7-cp37-cp37m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 14dd5a64f6a8ccf038b3e32a4fdcab302ea801b93e48b716ea378bd5e48d88fa
MD5 b87acab530de93502d0f3d13e410cf0e
BLAKE2b-256 9336509b06e0ae15566463a86d55c5331576945e08ea263d5e0857ba54199eb7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for giotto_tda_nightly-20200801.7-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 47296be01a1fc09da7800f7c108f1f81a54991ace0aef2f9dc935ab185bad624
MD5 178f5e72b0e763f1edaf1bd5c8335c89
BLAKE2b-256 ff11e4a684b1f0699dd802a590a05432a4272f4421aba55a22390ad51035e7a9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: giotto_tda_nightly-20200801.7-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-20200801.7-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 c58a7b1b6f08236b8427d8ca4cd426e2c76921460ebd00105bd00656bd5b2a39
MD5 6216b2da227209858196005a4ca86736
BLAKE2b-256 65e19788bc8409e1654153cf70bdc6bb39babc0742158a8121cbc1a7a8d12079

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for giotto_tda_nightly-20200801.7-cp36-cp36m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 4b1a69f7243d392a30c9ce78ccfc9620fd1d802e94f79a3b93f022eff57f0128
MD5 872d6d1691fefbb17525766d676de15f
BLAKE2b-256 7885f1c1dc2a444436f61d101438e87df7553349efd47c9d6e3507bc7b0a0cbd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for giotto_tda_nightly-20200801.7-cp36-cp36m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 48fdabac76c6d6af41e0fcaf83210b31c4da938dac85441507d149831d59b7a3
MD5 0c6f301bb6efd000e3d314f044dffdfe
BLAKE2b-256 f4d97f7181220a216cf5d45a812d5aba0afeee17a1915d14ff682ce8c603bad4

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