Browse Source

Fix pickle problem.

v0.2.x
jajupmochi 4 years ago
parent
commit
ca1f2b535b
1 changed files with 14 additions and 15 deletions
  1. +14
    -15
      gklearn/kernels/common_walk.py

+ 14
- 15
gklearn/kernels/common_walk.py View File

@@ -86,17 +86,12 @@ class CommonWalk(GraphKernel):
elif self.__compute_method == 'geo':
do_fun = self._wrapper_kernel_do_geo
parallel_gm(do_fun, gram_matrix, self._graphs, init_worker=self._init_worker_gm,
parallel_gm(do_fun, gram_matrix, self._graphs, init_worker=_init_worker_gm,
glbv=(self._graphs,), n_jobs=self._n_jobs, verbose=self._verbose)
return gram_matrix
def _init_worker_gm(gn_toshare):
global G_gn
G_gn = gn_toshare
def _compute_kernel_list_series(self, g1, g_list):
self.__check_graphs(g_list + [g1])
self.__add_dummy_labels(g_list + [g1])
@@ -152,19 +147,12 @@ class CommonWalk(GraphKernel):
itr = range(len(g_list))
len_itr = len(g_list)
parallel_me(do_fun, func_assign, kernel_list, itr, len_itr=len_itr,
init_worker=self._init_worker_list, glbv=(g1, g_list), method='imap_unordered',
init_worker=_init_worker_list, glbv=(g1, g_list), method='imap_unordered',
n_jobs=self._n_jobs, itr_desc='calculating kernels', verbose=self._verbose)
return kernel_list
def _init_worker_list(g1_toshare, g_list_toshare):
global G_g1, G_g_list
G_g1 = g1_toshare
G_g_list = g_list_toshare

def _wrapper_kernel_list_do_exp(self, itr):
return itr, self.__kernel_do_exp(G_g1, G_g_list[itr], self.__weight)

@@ -291,4 +279,15 @@ class CommonWalk(GraphKernel):
if len(self.__edge_labels) == 0 or (len(self.__edge_labels) == 1 and self.__edge_labels[0] == SpecialLabel.DUMMY):
for i in range(len(Gn)):
nx.set_edge_attributes(Gn[i], '0', SpecialLabel.DUMMY)
self.__edge_labels = [SpecialLabel.DUMMY]
self.__edge_labels = [SpecialLabel.DUMMY]
def _init_worker_gm(gn_toshare):
global G_gn
G_gn = gn_toshare
def _init_worker_list(g1_toshare, g_list_toshare):
global G_g1, G_g_list
G_g1 = g1_toshare
G_g_list = g_list_toshare

Loading…
Cancel
Save