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)

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.5.tar.gz (69.1 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.5-pp38-pypy38_pp73-win_amd64.whl (81.6 kB view details)

Uploaded PyPyWindows x86-64

graphlearning-1.1.5-pp38-pypy38_pp73-macosx_10_9_x86_64.whl (87.0 kB view details)

Uploaded PyPymacOS 10.9+ x86-64

graphlearning-1.1.5-pp37-pypy37_pp73-win_amd64.whl (81.6 kB view details)

Uploaded PyPyWindows x86-64

graphlearning-1.1.5-pp37-pypy37_pp73-macosx_10_9_x86_64.whl (86.9 kB view details)

Uploaded PyPymacOS 10.9+ x86-64

graphlearning-1.1.5-cp310-cp310-win_amd64.whl (81.6 kB view details)

Uploaded CPython 3.10Windows x86-64

graphlearning-1.1.5-cp310-cp310-macosx_10_15_x86_64.whl (88.6 kB view details)

Uploaded CPython 3.10macOS 10.15+ x86-64

graphlearning-1.1.5-cp39-cp39-win_amd64.whl (81.6 kB view details)

Uploaded CPython 3.9Windows x86-64

graphlearning-1.1.5-cp39-cp39-macosx_10_15_x86_64.whl (88.6 kB view details)

Uploaded CPython 3.9macOS 10.15+ x86-64

graphlearning-1.1.5-cp38-cp38-win_amd64.whl (81.5 kB view details)

Uploaded CPython 3.8Windows x86-64

graphlearning-1.1.5-cp38-cp38-macosx_10_14_x86_64.whl (88.5 kB view details)

Uploaded CPython 3.8macOS 10.14+ x86-64

graphlearning-1.1.5-cp37-cp37m-win_amd64.whl (81.5 kB view details)

Uploaded CPython 3.7mWindows x86-64

graphlearning-1.1.5-cp37-cp37m-macosx_10_14_x86_64.whl (88.4 kB view details)

Uploaded CPython 3.7mmacOS 10.14+ x86-64

File details

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

File metadata

  • Download URL: graphlearning-1.1.5.tar.gz
  • Upload date:
  • Size: 69.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.10.4

File hashes

Hashes for graphlearning-1.1.5.tar.gz
Algorithm Hash digest
SHA256 58436ac29a657d3cccfdc242957945cc5729a686baef921e50db5d02da558a9a
MD5 8cfba7c1fca1a2af561816f1392fb455
BLAKE2b-256 afd25df79425afc639764fb4b6e7ebdcd6a50212d5bd7f80b5ba7e90af7a319d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for graphlearning-1.1.5-pp38-pypy38_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 00626a44c624914c426fb45dcbac507ec292ab3577893091fd3073f05f05f3fc
MD5 670c3acaba3efe33aae561308931811b
BLAKE2b-256 09642f24b655252952fa3ff3ea020fbc66388dc33dad642b83840f27df6e2cc5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for graphlearning-1.1.5-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 6de101a32ffbb21935136d8f2f05eb0501e3c8b1c1ed276a6dc6dd60153849f3
MD5 062917ab252cd4089e9d74b651ad2aae
BLAKE2b-256 098ea4f54e817897c9619bd4f564bcec431039c465848b846e89e708e26e8ca4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for graphlearning-1.1.5-pp37-pypy37_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 ce883ae860cd89d0bf9806e6cd7901a0eca411e6ed214b759ca963f7001b98da
MD5 5e88faee9440a5db44b9dc9970622981
BLAKE2b-256 bf501a07d04a9b1d617067a21ba16390927c6d24690dd62d620ac201e6b19189

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for graphlearning-1.1.5-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 eb70d61e70e7141230d8a036ac04d81a7ca96dd46900cb2357439b7890443b2e
MD5 a27b948566ef5786ade13559f58c3913
BLAKE2b-256 f1347519475943769abd3ece4eae0405b49a5fbdcd595a244bddd05f948d44cb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for graphlearning-1.1.5-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 1acd8c66e73246b20e6977d8179f5c981ae4c6895a1df13967b30bfe7a86ac2e
MD5 598a70b1dd2f949ef86962bb824a3ad7
BLAKE2b-256 af32e931a62c1aa4b8366ddcdc584c1d13f48183bd147f3068de7e6253c915e3

See more details on using hashes here.

File details

Details for the file graphlearning-1.1.5-cp310-cp310-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for graphlearning-1.1.5-cp310-cp310-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 940ca6987690fd37723b26fb866760332ec1ce7f4eba5cfbdb9f4de6542090ba
MD5 e4f9cc3df1c2b2eda9ed96a69e04097a
BLAKE2b-256 7ce1ee6e6a7d120fe23e8f7e21232534bedf5d20e05fc6e7fb45f91a9e696c3d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for graphlearning-1.1.5-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 38a87ac33a76c05dec25e680fffed421a804f6c494e4a09544f7ca35ebfa4b95
MD5 525d81b89669eae086f9a8db6f845ba7
BLAKE2b-256 af86a211a90d5e1b4fc7c5ed3b6867df66e06e4e3392a2de883fa876a3f8eb82

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for graphlearning-1.1.5-cp39-cp39-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 8fc644cc8f5b9adb68e8499fa0895d39fd90c44b85b79295229822a832d1d157
MD5 de830406622fa215e4ce129e2781c4b3
BLAKE2b-256 c9d2e984aa28c2a0cb9e3cba3678f25c491b7090c77b5aab41c7915206c552ef

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for graphlearning-1.1.5-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 5b6ac1f9e73ea995279ae423175d6a0552e1fb50ddc3c0f4614e1efd0082e48c
MD5 5a8b4f105959f075c711b0a8cc31d1a6
BLAKE2b-256 c6935860f74f21f6a4e85d319f508bd4fb685c6e86f5eba4f17ab97136415d55

See more details on using hashes here.

File details

Details for the file graphlearning-1.1.5-cp38-cp38-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for graphlearning-1.1.5-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 8e2d70607b96baaa4aa0034ba4875d81bcef604b34d7bc373a6ed997e4606920
MD5 72269decffb7214c27ae5a9db58ce45d
BLAKE2b-256 2ede26509f178cea011372dd5eda08427363e04c73b608618ef718e0e34b78ac

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for graphlearning-1.1.5-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 ba706f4bf7be05b3880b86ad7d9239d82e8579748217240b13b6a766b8a70d13
MD5 3e7089d5386ddd532991914fa7c08f0b
BLAKE2b-256 af23871a78b04602a9f0f298ce3e932a73a9e0300656e2407f1a2b4ad18a08ff

See more details on using hashes here.

File details

Details for the file graphlearning-1.1.5-cp37-cp37m-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for graphlearning-1.1.5-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 05f699a694c443edb6e583fbe1a51e131c23cbf027f089211e25447a288505b9
MD5 4623dd5909b66f1e7b3d5f38cd539980
BLAKE2b-256 fcf6784c2d604ddf13a20a44bbc964f246c43c6365b77507ee71d3618995ce75

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