Source code for the paper On Valid Optimal Assignment Kernels and Applications to Graph Classification, Nils M. Kriege, Pierre-Louis Giscard, Richard C. Wilson, NIPS 2016.
The graph kernels contained in this package can be computed via a command line interface. Run the shell script kkernel
to see a list of all available kernels and parameters.
The following command computes the Weisfeiler-Lehman optimal assignment kernel with 0 to 4 refinement steps for the data set ENZYMES:
./kkernel -d ENZYMES wloa -h 0,1,2,3,4
For each value of h
the kernel matrix is computed and stored in the directory gram
using the LIBSVM file format.
Run ant
to build kgraph.jar
from source.
The repository contains the data set ENZYMES only. Further data sets are available from the website Benchmark Data Sets for Graph Kernels. Please note that in our experimental comparison the edge labels, if present, were ignored. In order to reproduce the published results, please delete the files DS_edge_labels.txt
, where DS
is the name of the data set.
When using our code please cite:
@InCollection{NIPS2016_6166,
title = {On Valid Optimal Assignment Kernels and Applications to Graph Classification},
author = {Kriege, Nils M. and Giscard, Pierre-Louis and Wilson, Richard},
booktitle = {Advances in Neural Information Processing Systems 29},
publisher = {Curran Associates, Inc.},
year = {2016},
editor = {D. D. Lee and M. Sugiyama and U. V. Luxburg and I. Guyon and R. Garnett},
pages = {1623--1631}
}
If you have any questions, please contact Nils Kriege.
A Matlab implementation of the Weisfeiler-Lehman optimal assignment kernel is available from Matlab File Exchange.