A scikit-learn compatible library for graph kernels
Project description
GraKeL: A library for graph kernels
GraKeL is a library compatible with the project of scikit-learn
Installation
The GraKeL library requires:
- Python (>=2.7, >=3.5)
- NumPy (>=1.8.2)
- SciPy (>=0.13.3)
- Cython (>=0.27.3)
- cvxopt (>=1.2.0) [optional: lovasz]
- future (>=0.16.0) (for python 2.7)
Installing Dependencies
You can install the dependencies as follows:
$ pip install extension>=extension_version
or
$ pip install -r requirements.txt
Installing the development-version
To install the development-version using pip execute:
$ pip install grakel-dev
Getting Started
Two pointers to get you started:
Testing
You first need to build the package's c++ extensions locally by executing:
$ python setup.py build_ext -i
To test the package, execute:
$ nosetests
For executing unit_tests or use a testing-interface for testing the kernel
module:
$ python grakel/tests/test_kernels.py --help
usage: test_kernels.py [-h] [--verbose] [--problematic] [--slow]
[--ignore_warnings] [--dataset DATASET] [--normalize]
[--develop | --all | --main]
A test file for all kernels
optional arguments:
-h, --help show this help message and exit
--verbose print kernels with their outputs on stdout
--problematic allow execution of problematic test cases in development
--slow allow execution of slow test cases in development
--ignore_warnings ignore warnings produced by kernel executions
--dataset DATASET chose the datset you want the tests to be executed
--normalize normalize the kernel output
--develop execute only tests connected with current development
--all execute all tests
--main execute the main tests [default]
For testing graph_kernels
:
$ python grakel/tests/test_graph_kernel.py --help
usage: test_graph_kernels.py [-h] [--verbose] [--problematic] [--slow]
[--normalize] [--ignore_warnings]
[--dataset DATASET] [--develop | --all | --main]
A test file for all kernels
optional arguments:
-h, --help show this help message and exit
--verbose print kernels with their outputs on stdout
--problematic allow execution of problematic test cases in development
--slow allow execution of slow test cases in development
--normalize normalize the kernel output
--ignore_warnings ignore warnings produced by kernel executions
--dataset DATASET chose the datset you want the tests to be executed
--develop execute only tests connected with current development
--all execute all tests
--main execute the main tests [default]
And for testing the Graph
class:
$ python grakel/tests/test_graph.py --help
usage: test_graph.py [-h] [--verbose] [--ignore_warnings]
A test file for all `Graph` type objects
optional arguments:
-h, --help show this help message and exit
--verbose verbose outputs on stdout
--ignore_warnings ignore warnings produced by kernel executions
You can also execute the kernel test locally through a test-main-function as
$ python -m grakel.tests
Contributing
To learn how to integrate your own kernel and how to contribute to the GraKeL project, please read the sections Write your own kernel and Contributing in the Documentation, respectively.
License
GraKeL comes with a BSD 3-clause license (as with scikit-learn). It contains the C++ source code of BLISS (a library for graph isomorphism) which is LGPL licensed. Futhermore its optional dependency in the package of cvxopt (a tool for solving convex-optimization problems) comes with a GPL license.
Citation
If you use GraKeL in a scientific publication, please cite our paper:
@article{siglidis2018grakel,
title={GraKeL: A Graph Kernel Library in Python},
author={Siglidis, Giannis and Nikolentzos, Giannis and Limnios, Stratis and Giatsidis, Christos and Skianis, Konstantinos and Vazirgiannis, Michalis},
journal={arXiv preprint arXiv:1806.02193},
year={2018}
}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
File details
Details for the file grakel-dev-0.1a6.zip
.
File metadata
- Download URL: grakel-dev-0.1a6.zip
- Upload date:
- Size: 1.1 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.14.0 pkginfo/1.4.2 requests/2.19.1 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.26.0 CPython/3.7.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a5357a5bf23f6d22f0ffa3c031f7da88b1dfe29731d73bbab92b516e31bed80c |
|
MD5 | 1791d9dc0c850ff1797a754567a65de8 |
|
BLAKE2b-256 | c1d8e28e0449f584ee7117cd62c2b87c78f2fb29ae05470e6850b4ecc9a02fae |
File details
Details for the file grakel_dev-0.1a6-cp37-cp37m-win_amd64.whl
.
File metadata
- Download URL: grakel_dev-0.1a6-cp37-cp37m-win_amd64.whl
- Upload date:
- Size: 617.3 kB
- Tags: CPython 3.7m, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.7.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2cecbf74aeb9f29963d8482c1b60964e74a3e61079f5c7feddc0f1371770adc7 |
|
MD5 | 38502973c02c890b145063ad7f35232d |
|
BLAKE2b-256 | 76facf21676f2efa6b107c4f8b0a58b6f8eb9383bfb054259913b78808cec1f3 |
File details
Details for the file grakel_dev-0.1a6-cp37-cp37m-manylinux1_x86_64.whl
.
File metadata
- Download URL: grakel_dev-0.1a6-cp37-cp37m-manylinux1_x86_64.whl
- Upload date:
- Size: 1.5 MB
- Tags: CPython 3.7m
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.14.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/38.2.4 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.6.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6ac9add2b8db07df60fbcf3e279fa42e246e1fa05db7411d1c473f017343c60e |
|
MD5 | a35836889e97cea27e10355506b77603 |
|
BLAKE2b-256 | 1ddba2e5353d0b4140dc235071f5dcfd0282417a6d4b73dd3798f348128adadf |
File details
Details for the file grakel_dev-0.1a6-cp37-cp37m-manylinux1_i686.whl
.
File metadata
- Download URL: grakel_dev-0.1a6-cp37-cp37m-manylinux1_i686.whl
- Upload date:
- Size: 1.4 MB
- Tags: CPython 3.7m
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.14.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/38.2.4 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.6.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c748fd5d6a6de608c5249982058809974f3efa634a158b8d2f1bfffcb18f71b0 |
|
MD5 | 276e2443fdcf7b49bd56bdb4b8d5306d |
|
BLAKE2b-256 | b20ef4c48cdd2501c24c6a15258f544e262b1c348881ef7697897d7aff0a7781 |
File details
Details for the file grakel_dev-0.1a6-cp37-cp37m-macosx_10_6_intel.whl
.
File metadata
- Download URL: grakel_dev-0.1a6-cp37-cp37m-macosx_10_6_intel.whl
- Upload date:
- Size: 900.0 kB
- Tags: CPython 3.7m, macOS 10.6+ intel
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.14.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.7.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 42072961cdac216ab291a398d816bfcce2d1eb81cd26fedb27db5e48ebb4b89b |
|
MD5 | 00f426dae87e3b27a513ccb644109b8a |
|
BLAKE2b-256 | 1887296f0441df397cb326d3d2f71c3864d42076dd6511d799a04217a047a7e0 |
File details
Details for the file grakel_dev-0.1a6-cp36-cp36m-win_amd64.whl
.
File metadata
- Download URL: grakel_dev-0.1a6-cp36-cp36m-win_amd64.whl
- Upload date:
- Size: 642.8 kB
- Tags: CPython 3.6m, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.6.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4ee8bad6633291232bec0db9cfab1dac47e12e9c413c646596733bb47815bd50 |
|
MD5 | 4f6523d2b8c109c708b7bb5b9fcc1e7c |
|
BLAKE2b-256 | 2bc5a9a501a639147cbb361aad23066fd0f8b9e44a39cbf2c5f28ab3f0ce8f2f |
File details
Details for the file grakel_dev-0.1a6-cp36-cp36m-manylinux1_x86_64.whl
.
File metadata
- Download URL: grakel_dev-0.1a6-cp36-cp36m-manylinux1_x86_64.whl
- Upload date:
- Size: 1.5 MB
- Tags: CPython 3.6m
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.14.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/38.2.4 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.6.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b02202486f9a6c730fa1e018652267a81ede85ebc67b3bc3f50215275c84724e |
|
MD5 | fc92aeb9ac8f454bdbb73780dc9348d3 |
|
BLAKE2b-256 | f8fc430cae1b661c5472f094c96b43288b5de50564db0769bef5040923197ba5 |
File details
Details for the file grakel_dev-0.1a6-cp36-cp36m-manylinux1_i686.whl
.
File metadata
- Download URL: grakel_dev-0.1a6-cp36-cp36m-manylinux1_i686.whl
- Upload date:
- Size: 1.4 MB
- Tags: CPython 3.6m
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.14.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/38.2.4 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.6.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e566445d751428e005d3f9deb4306c58b86d6c8a2af1fb45e38452bc9be40483 |
|
MD5 | df0f129b513d324a75476a9850ea2695 |
|
BLAKE2b-256 | b17e9f25b85fbb124bcb6e7833af82641b7d6a3256c84be539f3b6fed01a0fc9 |
File details
Details for the file grakel_dev-0.1a6-cp36-cp36m-macosx_10_6_intel.whl
.
File metadata
- Download URL: grakel_dev-0.1a6-cp36-cp36m-macosx_10_6_intel.whl
- Upload date:
- Size: 916.3 kB
- Tags: CPython 3.6m, macOS 10.6+ intel
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.14.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.6.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a81ba389832919c5392f5ea5c5b011f8c913920cf35a7d7a98be50f41720f7fa |
|
MD5 | e927e75ebddecaa3d79861ed5d9ba559 |
|
BLAKE2b-256 | 6e97b943cc73c76ee4d90037157d4dfb4ad9fef8f2cc73c3b968deaab8ecaff2 |
File details
Details for the file grakel_dev-0.1a6-cp35-cp35m-win_amd64.whl
.
File metadata
- Download URL: grakel_dev-0.1a6-cp35-cp35m-win_amd64.whl
- Upload date:
- Size: 614.9 kB
- Tags: CPython 3.5m, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.14.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.2.0 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.5.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 096fedf880ebec7cb3e298b2e971c719f23bbf146b3490d690eac56849cc90cb |
|
MD5 | d1b5b429e20ca8ed3835cbde75243a03 |
|
BLAKE2b-256 | 26ed764a8604ae067040ec41388295e360dbd567c0f5f4655b6999fafee2eb2c |
File details
Details for the file grakel_dev-0.1a6-cp35-cp35m-manylinux1_x86_64.whl
.
File metadata
- Download URL: grakel_dev-0.1a6-cp35-cp35m-manylinux1_x86_64.whl
- Upload date:
- Size: 1.5 MB
- Tags: CPython 3.5m
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.14.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/38.2.4 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.6.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9846bf3d66c48da4e40839dbecff16bba46531ee72209644fd975b6d3f7086ed |
|
MD5 | 8aca9d1d8d94bf3294e175a8422fb4b9 |
|
BLAKE2b-256 | 0a6a7824eb733e7bac313df8ae613e5981af2740663673bac27960dfaf100006 |
File details
Details for the file grakel_dev-0.1a6-cp35-cp35m-manylinux1_i686.whl
.
File metadata
- Download URL: grakel_dev-0.1a6-cp35-cp35m-manylinux1_i686.whl
- Upload date:
- Size: 1.4 MB
- Tags: CPython 3.5m
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.14.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/38.2.4 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.6.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 59c49f0e49cc30631a118bdac5d4824b4455de2676b8c48661cb719a34abeb1e |
|
MD5 | 50030ba96657652565a21bae7ceb635f |
|
BLAKE2b-256 | 4d7eafbc0a378342a57f91be8fa18eefc11301595bd8aaf31b56a330f48a8596 |
File details
Details for the file grakel_dev-0.1a6-cp35-cp35m-macosx_10_6_intel.whl
.
File metadata
- Download URL: grakel_dev-0.1a6-cp35-cp35m-macosx_10_6_intel.whl
- Upload date:
- Size: 898.8 kB
- Tags: CPython 3.5m, macOS 10.6+ intel
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.14.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.5.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 380f3fb5be41530edf79b65136e4118ee37e1e3ab5a3a3a7f17d4c71dfa8620d |
|
MD5 | 11f085287acdebea1f862a2452350230 |
|
BLAKE2b-256 | 39603580303973aea87a112e01b0a63591d541ad53f4ec91d03b88ffc27948fa |
File details
Details for the file grakel_dev-0.1a6-cp27-cp27mu-manylinux1_x86_64.whl
.
File metadata
- Download URL: grakel_dev-0.1a6-cp27-cp27mu-manylinux1_x86_64.whl
- Upload date:
- Size: 1.4 MB
- Tags: CPython 2.7mu
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.14.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/38.2.4 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.6.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c5dbcdd566a94968b80af6d74e11180775f4115849218415f4630aefb8c7218d |
|
MD5 | 08a682d1950758d4417b16dd5924be75 |
|
BLAKE2b-256 | a31a3a3b3ab848576ff3a39590f767fda84a05c7b0819a2215f159b187c31062 |
File details
Details for the file grakel_dev-0.1a6-cp27-cp27mu-manylinux1_i686.whl
.
File metadata
- Download URL: grakel_dev-0.1a6-cp27-cp27mu-manylinux1_i686.whl
- Upload date:
- Size: 1.3 MB
- Tags: CPython 2.7mu
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.14.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/38.2.4 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.6.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 32b20351d4adf212ba4a58ae8041cb612983906fa2c289da8294a6bffb73a3df |
|
MD5 | 734c949b9ffedd86a3bb11b33e8ba8f7 |
|
BLAKE2b-256 | 0cb54b56a719ecb41934802e5ff5fe6c478ed644df42e53b75ca75a3fbdbb5ca |
File details
Details for the file grakel_dev-0.1a6-cp27-cp27m-win_amd64.whl
.
File metadata
- Download URL: grakel_dev-0.1a6-cp27-cp27m-win_amd64.whl
- Upload date:
- Size: 627.2 kB
- Tags: CPython 2.7m, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.14.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/2.7.14
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 16c4aca32ffc1e32005dde68a5b841de6140dff2f9a880dc8a4a253d9c4928a7 |
|
MD5 | 506d71ae11b24cfe7c2e2d401554789b |
|
BLAKE2b-256 | 0514000868755024a31f96630bf05ff973779e91e8f353334cd08077d1af8213 |
File details
Details for the file grakel_dev-0.1a6-cp27-cp27m-manylinux1_x86_64.whl
.
File metadata
- Download URL: grakel_dev-0.1a6-cp27-cp27m-manylinux1_x86_64.whl
- Upload date:
- Size: 1.4 MB
- Tags: CPython 2.7m
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.14.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/38.2.4 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.6.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2c5c03ebf2dab0ab0b65d8c7c047835ee42e1c481d749257706264e32dbe8bf3 |
|
MD5 | 88cf75eed000a683b1b2497233b8f519 |
|
BLAKE2b-256 | 0841ca46520fab549e03c1106fb26964e956b8e35766511fb7f74fb58ce22191 |
File details
Details for the file grakel_dev-0.1a6-cp27-cp27m-manylinux1_i686.whl
.
File metadata
- Download URL: grakel_dev-0.1a6-cp27-cp27m-manylinux1_i686.whl
- Upload date:
- Size: 1.3 MB
- Tags: CPython 2.7m
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.14.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/38.2.4 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.6.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c3d4af22721132f79514771a0e2b13a550d25cbca59564161a68d7704f292925 |
|
MD5 | acc39d167ed56785c98d5367500d43e5 |
|
BLAKE2b-256 | ad62a5ddc2408821c8aa8170da792bfab1ff44fabad7fd8f599a6f0c22c21c9a |
File details
Details for the file grakel_dev-0.1a6-cp27-cp27m-macosx_10_6_intel.whl
.
File metadata
- Download URL: grakel_dev-0.1a6-cp27-cp27m-macosx_10_6_intel.whl
- Upload date:
- Size: 912.3 kB
- Tags: CPython 2.7m, macOS 10.6+ intel
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.14.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/39.2.0 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.6.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 88a4398b89c9145065b310837346f5e9505984d477d9e44197723df75138389d |
|
MD5 | 1ea9278637d2aa10f6b1ae9b1e21785a |
|
BLAKE2b-256 | a41e9753c00152faa2e1d49a556b735538b1d39ef4eeb1b43d814cba1dcac751 |