Skip to main content

Python package for graph-based clustering and semi-supervised learning

Project description

Graph-based Clustering and Semi-Supervised Learning

Clustering

This python package is devoted to efficient implementations of modern graph-based learning algorithms for both semi-supervised learning and clustering. The package implements many popular datasets (currently MNIST, FashionMNIST, and CIFAR-10) in a way that makes it simple for users to test out new algorithms and rapidly compare against existing methods. Full documentation is available, including detailed example scripts.

This package also reproduces experiments from the paper

J. Calder, B. Cook, M. Thorpe, D. Slepcev. Poisson Learning: Graph Based Semi-Supervised Learning at Very Low Label Rates., Proceedings of the 37th International Conference on Machine Learning, PMLR 119:1306-1316, 2020.

Installation

Install with

pip install graphlearning

Required packages will be installed automatically, and include numpy, scipy, sklearn, and matplotlib. Some features in the package rely on other packages, including annoy for approximate nearest neighbor searches, and torch for GPU acceleration. You will have to install these manually, if needed, with

pip install annoy torch

It can be difficult to install annoy, depending on your operating system.

To install the most recent version of GraphLearning from the github source, which is updated more frequently, run

git clone https://github.com/jwcalder/GraphLearning
cd GraphLearning
python setup.py install --user

If you prefer to use ssh swap the first line with

git clone git@github.com:jwcalder/GraphLearning.git

Documentation and Examples

Full documentation for the package is available here. The documentation includes examples of how to use the package. All example scripts linked from the documentation can be found in the examples folder.

Older versions of GraphLearning

This repository hosts the current version of the package, which is numbered >=1.0.0. This version is not backwards compatible with earlier versions of the package. The old version is archived here and can be installed with

pip install graphlearning==0.0.3

To make sure you will load the old version when running import graphlearning, it may be necessary to uninstall all existing versions pip uninstall graphlearning before running the installation command above.

Citations

If you use this package in your research, please cite the package with the bibtex entry below.

@software{graphlearning,
  author       = {Jeff Calder},
  title        = {GraphLearning Python Package},
  month        = jan,
  year         = 2022,
  publisher    = {Zenodo},
  doi          = {10.5281/zenodo.5850940},
  url          = {https://doi.org/10.5281/zenodo.5850940}
}

Contact and questions

Email jwcalder@umn.edu with any questions or comments.

Acknowledgments

Several people have contributed to the development of this software:

  1. Mauricio Rios Flores (Machine Learning Researcher, Amazon)
  2. Brendan Cook (PhD Candidate in Mathematics, University of Minnesota)
  3. Matt Jacobs (Postdoc, UCLA)
  4. Mahmood Ettehad (Postdoc, IMA)
  5. Jason Setiadi
  6. Kevin Miller (Postdoc, Oden Institute)

Project details


Download files

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

Source Distribution

graphlearning-1.1.9.tar.gz (69.6 kB view details)

Uploaded Source

Built Distributions

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

graphlearning-1.1.9-pp38-pypy38_pp73-win_amd64.whl (82.1 kB view details)

Uploaded PyPyWindows x86-64

graphlearning-1.1.9-pp38-pypy38_pp73-macosx_10_9_x86_64.whl (87.5 kB view details)

Uploaded PyPymacOS 10.9+ x86-64

graphlearning-1.1.9-pp37-pypy37_pp73-win_amd64.whl (82.1 kB view details)

Uploaded PyPyWindows x86-64

graphlearning-1.1.9-pp37-pypy37_pp73-macosx_10_9_x86_64.whl (87.5 kB view details)

Uploaded PyPymacOS 10.9+ x86-64

graphlearning-1.1.9-cp310-cp310-win_amd64.whl (82.2 kB view details)

Uploaded CPython 3.10Windows x86-64

graphlearning-1.1.9-cp310-cp310-macosx_10_15_universal2.whl (118.1 kB view details)

Uploaded CPython 3.10macOS 10.15+ universal2 (ARM64, x86-64)

graphlearning-1.1.9-cp39-cp39-win_amd64.whl (82.2 kB view details)

Uploaded CPython 3.9Windows x86-64

graphlearning-1.1.9-cp39-cp39-macosx_10_15_x86_64.whl (89.2 kB view details)

Uploaded CPython 3.9macOS 10.15+ x86-64

graphlearning-1.1.9-cp38-cp38-win_amd64.whl (82.1 kB view details)

Uploaded CPython 3.8Windows x86-64

graphlearning-1.1.9-cp38-cp38-macosx_10_15_x86_64.whl (89.2 kB view details)

Uploaded CPython 3.8macOS 10.15+ x86-64

graphlearning-1.1.9-cp37-cp37m-win_amd64.whl (82.1 kB view details)

Uploaded CPython 3.7mWindows x86-64

graphlearning-1.1.9-cp37-cp37m-macosx_10_15_x86_64.whl (89.2 kB view details)

Uploaded CPython 3.7mmacOS 10.15+ x86-64

File details

Details for the file graphlearning-1.1.9.tar.gz.

File metadata

  • Download URL: graphlearning-1.1.9.tar.gz
  • Upload date:
  • Size: 69.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.5

File hashes

Hashes for graphlearning-1.1.9.tar.gz
Algorithm Hash digest
SHA256 05ebfcf8e60321094ef31de96bed612f96c3e6f4a8b636045de02659c037af5e
MD5 a20c349ab4881f4a516eb0c8a68ca4b3
BLAKE2b-256 3fb81f59e6a9ae912ba608cefa39ca9b389dc7a86ca523279f14958f811bf20b

See more details on using hashes here.

File details

Details for the file graphlearning-1.1.9-pp38-pypy38_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for graphlearning-1.1.9-pp38-pypy38_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 8fde78a6a6f8e2545dee537b161a03ef1ca97a17e9cdcc6eb9f5d5d6907163c5
MD5 e582c81cd7951ae3dd6be54f89a0b516
BLAKE2b-256 1af3c6b1c9a531d6bfd28a58e30e87e11683cf4f14a6c6bf3e656bd02b8c16b4

See more details on using hashes here.

File details

Details for the file graphlearning-1.1.9-pp38-pypy38_pp73-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for graphlearning-1.1.9-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 a316db5d5412ba8328e5e04904e9b9b96e70170cac0b4d7adad15ac61ba7213b
MD5 cae91376b1edb9a8ba41c965a3d00d24
BLAKE2b-256 41a9f8451deec37f7aa3f1e364bb08d449fc1300f75d71e24576228569434725

See more details on using hashes here.

File details

Details for the file graphlearning-1.1.9-pp37-pypy37_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for graphlearning-1.1.9-pp37-pypy37_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 239b142a0dc47db3716ffc2c1ba88ee570f3b5ec49a2825b02cf3c0889da6bf5
MD5 6ff39dc3f5110af11f872ece1d3b7ae3
BLAKE2b-256 051a6b6b65a68e9bd57a036fe51995a0ced02fb637ac9cd5020819d7268b78c4

See more details on using hashes here.

File details

Details for the file graphlearning-1.1.9-pp37-pypy37_pp73-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for graphlearning-1.1.9-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 4b17850971b19883cf50677bd633d72f32247e7e1680f746ed36a810567546e3
MD5 d4fe93107f6a679cf76f873fd54d9793
BLAKE2b-256 be981efc9345290608e3aff75e11b285b2759d3427d5dee17a27cb3b2a0a82d8

See more details on using hashes here.

File details

Details for the file graphlearning-1.1.9-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for graphlearning-1.1.9-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 d2861888a132f4d7f00926d4264fa04cf46432a0c4ad478798de2c18baacc071
MD5 e27daf10e1df0a8f33f767be7c08b550
BLAKE2b-256 67380f068f6666f67695a2e861cf7e827f5ec63b7d82197fe1c5a724a1fa0e60

See more details on using hashes here.

File details

Details for the file graphlearning-1.1.9-cp310-cp310-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for graphlearning-1.1.9-cp310-cp310-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 70a9cf53265c89e122a078bc54e44bcfdab5ae72dd65a2a6c9fc5122d5e1d57f
MD5 bc00721bfecbc40cb28288403dd1e654
BLAKE2b-256 82cf117b453c52280c09408907bee5dd3059ea8cd5150027e4e881c1b950625d

See more details on using hashes here.

File details

Details for the file graphlearning-1.1.9-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for graphlearning-1.1.9-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 cb643a093d498c7cffb1da1d7ed245b33a3b7b41e6f70e3e8e8803d1c2a5b3e8
MD5 7fabf06fec403b5f9f293733bf3bd542
BLAKE2b-256 070d3a373073a581aba1228a8b21c2609af675372a2c073af51936904725bc55

See more details on using hashes here.

File details

Details for the file graphlearning-1.1.9-cp39-cp39-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for graphlearning-1.1.9-cp39-cp39-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 a09d2c786218a70cd9f0b4b36bb20ba45ad6b426350fe436b431e45fbf9cd0c7
MD5 78b85d86e77a5c20b4e8631cfc4fd37a
BLAKE2b-256 1b4b2146257bee4d01691f46f1826fde583b6c149ee4e349017654bf23e7a516

See more details on using hashes here.

File details

Details for the file graphlearning-1.1.9-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for graphlearning-1.1.9-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 b83b9bf0fb66d84e4159b58211a1974fb55331421d24864567e993884ac8ddd3
MD5 f53e916394dfd64dec8d5e4b66e1a7c3
BLAKE2b-256 3374bdfd294d738e98073e6cefe51bed9e62c06e9daab5a1e6ae6ec8069e4a97

See more details on using hashes here.

File details

Details for the file graphlearning-1.1.9-cp38-cp38-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for graphlearning-1.1.9-cp38-cp38-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 d8068e9d8664e70e0da5067aab14b640c022fc6b170fa2fad9230f8749f9e28f
MD5 f6b7d17bfbea5d7c582d2441c3437644
BLAKE2b-256 86c910345f76b28dcf1843f38593923ca50667831fad3ad05c1d5d687ea5fa0c

See more details on using hashes here.

File details

Details for the file graphlearning-1.1.9-cp37-cp37m-win_amd64.whl.

File metadata

File hashes

Hashes for graphlearning-1.1.9-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 5380ab5ed0a8e6039cad69edf392e948deccd0a2e44ae48aec868c944817e101
MD5 5bae3c40e6e0e5a2d897e0e771286564
BLAKE2b-256 e9b1acc1a0829f38bb67e973498d9a8d436449d502b2421a3d4448dfc539bc1b

See more details on using hashes here.

File details

Details for the file graphlearning-1.1.9-cp37-cp37m-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for graphlearning-1.1.9-cp37-cp37m-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 7f6d8f78debbfc22685aec0b35cdb11465a9cde7a3fdf503483d9a014623964b
MD5 2a3b7ca9fe0b8180eecdcd8f1ebba6dc
BLAKE2b-256 cbf71b4c3f869264604d2a45d2fe046850377c56c34b608c8d0d7a2d7966ddb0

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