Wasserstein Weisfeiler-Lehman Graph Kernels
Project description
WWL Package
Installation
To install wwl
, run the following:
$ pip install cython numpy
$ pip install wwl
Usage
WWL can be used to compute the pairwise kernel matrix between a list of Graphs.
The kernel function wwl
takes as input a list of igraph Graph
objects. It can also take their node features (if they are continuously attributed), the number of iterations for the embedding scheme,
the value for gamma in the Laplacian kernel, and a flag for sinkhorn approximations.
from wwl import wwl
# load the graphs
graphs = [ig.read(fname) for fname in graph_filenames]
# load node features for continuous graphs
node_features = np.load(path_to_node_features)
# compute the kernel
kernel_matrix = wwl(graphs, node_features=node_features, num_iterations=4)
# use in SVM
from sklearn.svm import SVC
train_index, test_index = np.load(train_index_path), np.load(test_index_path)
y = np.load(path_to_labels)
K_train = kernel_matrix[train_index][:,train_index]
K_test = kernel_matrix[test_index][:,train_index]
svm = SVC(kernel='precomputed') # For a Krein SVM, please refer to krein.py
svm.fit(K_train)
y_predict = svm.predict(K_test)
Please see utilities.wwl_custom_grid_search_cv
for a custom crossvalidation to cross-validate the number of iterations, gammas in the Laplacian kernel, and other parameters for the SVM.
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 Distribution
File details
Details for the file wwl-0.1.2.tar.gz
.
File metadata
- Download URL: wwl-0.1.2.tar.gz
- Upload date:
- Size: 7.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.22.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | df2ce1f8d57dee88706c4350ab9ff22d43fb9fe7596f6fafb408a65845a5c3e6 |
|
MD5 | 025211127a254a9d39940e52054967d8 |
|
BLAKE2b-256 | 96c08d0e8c1d5b9c92102173f42d6834c14d20ea3bbf2cb811c8eb4b8710718e |
File details
Details for the file wwl-0.1.2-py3-none-any.whl
.
File metadata
- Download URL: wwl-0.1.2-py3-none-any.whl
- Upload date:
- Size: 8.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.22.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 109dabcb32b7657f8a911bd9b098b7488c0e58031834e0e56a6c89a0b3484925 |
|
MD5 | 0af613cd1ed1d2968a7198266eb94b4e |
|
BLAKE2b-256 | 74bd11f5a76d34fc739432a4db2cd90ac95caa6e7ee4c0dc4222730c66016d02 |