You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I would like to use graph kernels for comparing graphs with multiple attributes. For instance, using GraphHopper or Propagation Kernels (not sure if WL kernels can do this.)
My graphs have both semantic labels (which can be seen as discrete) as well as continuous D-dim features. I would like to use the following node kernel:
in which $k_{\text{label}}$ is simply checking whether the label is the same (1 for same; 0 for else) and $k_{\text{feat}}$ a similarity based on the two input arrays $f_u$ and $f_{v}$, e.g. euclidean similarity:
I have set up my own (from scratch), but it is quite slow ... and I think this library can speed things up a bit. (In my case I use the p-th ordered rooted-walk graph kernels, similar as to: https://dl.acm.org/doi/10.1145/1964921.1964929, which is slightly different from the GraphHopper which using shortest path instead.)
Is there a way to set up a GraphHopper or Propagation Kernel that can handle these kind of node kernels? Is it possible in the first place in Grakel to work with such graphs (that have multiple node attributes)?
If you have any thoughts on this let me know.
Thanks,
Casper
The text was updated successfully, but these errors were encountered:
None of the kernels that are currently implemented in GraKeL support both discrete node labels and continuous node attributes. One workaround would be to initialize the Weisfeiler-Lehman kernel (which takes discrete labels into account) and use the GraphHopper kernel (which takes continuous features into account) as its base kernel. However, in such a kernel, the two node kernels are somewhat decoupled from each other.
Alternatively, you could extend some of the kernels that can handle continuous attributes (such as the GraphHopper kernel) to also take discrete labels into account using the formula that you suggested.
Hey there,
I would like to use graph kernels for comparing graphs with multiple attributes. For instance, using GraphHopper or Propagation Kernels (not sure if WL kernels can do this.)
My graphs have both semantic labels (which can be seen as discrete) as well as continuous D-dim features. I would like to use the following node kernel:
in which$k_{\text{label}}$ is simply checking whether the label is the same (1 for same; 0 for else) and $k_{\text{feat}}$ a similarity based on the two input arrays $f_u$ and $f_{v}$ , e.g. euclidean similarity:
I have set up my own (from scratch), but it is quite slow ... and I think this library can speed things up a bit. (In my case I use the p-th ordered rooted-walk graph kernels, similar as to: https://dl.acm.org/doi/10.1145/1964921.1964929, which is slightly different from the GraphHopper which using shortest path instead.)
Is there a way to set up a GraphHopper or Propagation Kernel that can handle these kind of node kernels? Is it possible in the first place in Grakel to work with such graphs (that have multiple node attributes)?
If you have any thoughts on this let me know.
Thanks,
Casper
The text was updated successfully, but these errors were encountered: