|
- #!/usr/bin/env python3
- # -*- coding: utf-8 -*-
- """
- Created on Wed Aug 19 16:55:17 2020
-
- @author: ljia
-
- @references:
-
- [1] S Vichy N Vishwanathan, Nicol N Schraudolph, Risi Kondor, and Karsten M Borgwardt. Graph kernels. Journal of Machine Learning Research, 11(Apr):1201–1242, 2010.
- """
-
- from gklearn.kernels import SylvesterEquation, ConjugateGradient, FixedPoint, SpectralDecomposition
-
-
- class RandomWalk(SylvesterEquation, ConjugateGradient, FixedPoint, SpectralDecomposition):
-
-
- def __init__(self, **kwargs):
- self._compute_method = kwargs.get('compute_method', None)
- self._compute_method = self._compute_method.lower()
-
- if self._compute_method == 'sylvester':
- self._parent = SylvesterEquation
- elif self._compute_method == 'conjugate':
- self._parent = ConjugateGradient
- elif self._compute_method == 'fp':
- self._parent = FixedPoint
- elif self._compute_method == 'spectral':
- self._parent = SpectralDecomposition
- elif self._compute_method == 'kon':
- raise Exception('This computing method is not completed yet.')
- else:
- raise Exception('This computing method does not exist. The possible choices inlcude: "sylvester", "conjugate", "fp", "spectral".')
-
- self._parent.__init__(self, **kwargs)
-
-
- def _compute_gm_series(self):
- return self._parent._compute_gm_series(self)
-
-
- def _compute_gm_imap_unordered(self):
- return self._parent._compute_gm_imap_unordered(self)
-
-
- def _compute_kernel_list_series(self, g1, g_list):
- return self._parent._compute_kernel_list_series(self, g1, g_list)
-
-
- def _compute_kernel_list_imap_unordered(self, g1, g_list):
- return self._parent._compute_kernel_list_imap_unordered(self, g1, g_list)
-
-
- def _compute_single_kernel_series(self, g1, g2):
- return self._parent._compute_single_kernel_series(self, g1, g2)
|