From ed1cc429975f35efd49d8d40881897600191c97b Mon Sep 17 00:00:00 2001 From: jajupmochi Date: Fri, 6 Nov 2020 10:44:08 +0100 Subject: [PATCH] Add graph kernel metadata. --- gklearn/kernels/__init__.py | 2 ++ gklearn/kernels/metadata.py | 36 ++++++++++++++++++++++++++++++++++++ gklearn/tests/test_graph_kernels.py | 11 ++++++++++- 3 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 gklearn/kernels/metadata.py diff --git a/gklearn/kernels/__init__.py b/gklearn/kernels/__init__.py index 5740c77..6ffef06 100644 --- a/gklearn/kernels/__init__.py +++ b/gklearn/kernels/__init__.py @@ -7,6 +7,8 @@ __version__ = "0.1" __author__ = "Linlin Jia" __date__ = "November 2018" +from gklearn.kernels.metadata import GRAPH_KERNELS, list_of_graph_kernels + from gklearn.kernels.graph_kernel import GraphKernel from gklearn.kernels.common_walk import CommonWalk from gklearn.kernels.marginalized import Marginalized diff --git a/gklearn/kernels/metadata.py b/gklearn/kernels/metadata.py new file mode 100644 index 0000000..d00d5d7 --- /dev/null +++ b/gklearn/kernels/metadata.py @@ -0,0 +1,36 @@ +#!/usr/bin/env python3 +# -*- coding: utf-8 -*- +""" +Created on Fri Nov 6 10:11:08 2020 + +@author: ljia +""" + +# The metadata of all graph kernels. +GRAPH_KERNELS = { + ### based on walks. + 'common walk': '', + 'marginalized': '', + 'sylvester equation': '', + 'fixed_point': '', + 'conjugate gradient': '', + 'spectral decomposition': '', + ### based on paths. + 'shortest path': '', + 'structural shortest path': '', + 'path up to length h': '', + ### based on non-linear patterns. + 'weisfeiler-lehman subtree': '', + 'treelet': '', + } + + +def list_of_graph_kernels(): + """List names of all graph kernels. + + Returns + ------- + list + The list of all graph kernels. + """ + return [i for i in GRAPH_KERNELS] \ No newline at end of file diff --git a/gklearn/tests/test_graph_kernels.py b/gklearn/tests/test_graph_kernels.py index f1c480a..fe72e09 100644 --- a/gklearn/tests/test_graph_kernels.py +++ b/gklearn/tests/test_graph_kernels.py @@ -52,6 +52,14 @@ def chooseDataset(ds_name): return dataset +def test_list_graph_kernels(): + """ + """ + from gklearn.kernels import GRAPH_KERNELS, list_of_graph_kernels + assert list_of_graph_kernels() != [i for i in GRAPH_KERNELS] + + + @pytest.mark.parametrize('ds_name', ['Alkane', 'AIDS']) @pytest.mark.parametrize('weight,compute_method', [(0.01, 'geo'), (1, 'exp')]) @pytest.mark.parametrize('parallel', ['imap_unordered', None]) @@ -433,9 +441,10 @@ def test_WLSubtree(ds_name, parallel): if __name__ == "__main__": + test_list_graph_kernels() # test_spkernel('Alkane', 'imap_unordered') # test_StructuralSP('Fingerprint_edge', 'imap_unordered') - test_WLSubtree('Acyclic', 'imap_unordered') +# test_WLSubtree('Acyclic', 'imap_unordered') # test_RandomWalk('Acyclic', 'sylvester', None, 'imap_unordered') # test_RandomWalk('Acyclic', 'conjugate', None, 'imap_unordered') # test_RandomWalk('Acyclic', 'fp', None, None)