From 231c050f88c07382784200e922335103c8414d39 Mon Sep 17 00:00:00 2001 From: jajupmochi Date: Thu, 3 Jun 2021 01:29:26 +0200 Subject: [PATCH] [To finish] Remove dummy labels in treelet kernel (for the contest.) --- gklearn/kernels/treelet.py | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/gklearn/kernels/treelet.py b/gklearn/kernels/treelet.py index d546e74..08be407 100644 --- a/gklearn/kernels/treelet.py +++ b/gklearn/kernels/treelet.py @@ -369,13 +369,13 @@ class Treelet(GraphKernel): def _compute_single_kernel_series(self, g1, g2): - self._add_dummy_labels([g1] + [g2]) +# self._add_dummy_labels([g1] + [g2]) canonkeys_1 = self._get_canonkeys(g1) canonkeys_2 = self._get_canonkeys(g2) kernel = self._kernel_do(canonkeys_1, canonkeys_2) return kernel - +# @profile def _kernel_do(self, canonkey1, canonkey2): """Compute treelet graph kernel between 2 graphs. @@ -392,6 +392,23 @@ class Treelet(GraphKernel): keys = set(canonkey1.keys()) & set(canonkey2.keys()) # find same canonical keys in both graphs vector1 = np.array([(canonkey1[key] if (key in canonkey1.keys()) else 0) for key in keys]) vector2 = np.array([(canonkey2[key] if (key in canonkey2.keys()) else 0) for key in keys]) + +# vector1, vector2 = [], [] +# keys1, keys2 = canonkey1, canonkey2 +# keys_searched = {} +# for k, v in canonkey1.items(): +# if k in keys2: +# vector1.append(v) +# vector2.append(canonkey2[k]) +# keys_searched[k] = v + +# for k, v in canonkey2.items(): +# if k in keys1 and k not in keys_searched: +# vector1.append(canonkey1[k]) +# vector2.append(v) + +# vector1, vector2 = np.array(vector1), np.array(vector2) + kernel = self.sub_kernel(vector1, vector2) return kernel