You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

run_ssp_symonly.py 1.6 kB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. #!/usr/bin/env python3
  2. # -*- coding: utf-8 -*-
  3. """
  4. Created on Sun Dec 23 16:40:52 2018
  5. @author: ljia
  6. """
  7. import functools
  8. from libs import *
  9. import multiprocessing
  10. from gklearn.kernels.ssp_sym import structuralspkernel
  11. from gklearn.utils.kernels import deltakernel, gaussiankernel, kernelproduct
  12. dslist = [
  13. {'name': 'Letter-med', 'dataset': '../datasets/Letter-med/Letter-med_A.txt'},
  14. # node nsymb
  15. {'name': 'ENZYMES', 'dataset': '../datasets/ENZYMES_txt/ENZYMES_A_sparse.txt'},
  16. # node symb/nsymb
  17. ]
  18. estimator = structuralspkernel
  19. mixkernel = functools.partial(kernelproduct, deltakernel, gaussiankernel)
  20. param_grid_precomputed = {'node_kernels':
  21. [{'symb': deltakernel, 'nsymb': gaussiankernel, 'mix': mixkernel}],
  22. 'edge_kernels':
  23. [{'symb': deltakernel, 'nsymb': gaussiankernel, 'mix': mixkernel}]}
  24. param_grid = [{'C': np.logspace(-10, 10, num=41, base=10)},
  25. {'alpha': np.logspace(-10, 10, num=41, base=10)}]
  26. for ds in dslist:
  27. print()
  28. print(ds['name'])
  29. model_selection_for_precomputed_kernel(
  30. ds['dataset'],
  31. estimator,
  32. param_grid_precomputed,
  33. (param_grid[1] if ('task' in ds and ds['task']
  34. == 'regression') else param_grid[0]),
  35. (ds['task'] if 'task' in ds else 'classification'),
  36. NUM_TRIALS=30,
  37. datafile_y=(ds['dataset_y'] if 'dataset_y' in ds else None),
  38. extra_params=(ds['extra_params'] if 'extra_params' in ds else None),
  39. ds_name=ds['name'],
  40. n_jobs=multiprocessing.cpu_count(),
  41. read_gm_from_file=False)
  42. print()

A Python package for graph kernels, graph edit distances and graph pre-image problem.