Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/giannisnik/segk
Learning Structural Node Representations using Graph Kernels
https://github.com/giannisnik/segk
graph-embeddings graph-mining node-embedding representation-learning
Last synced: 2 days ago
JSON representation
Learning Structural Node Representations using Graph Kernels
- Host: GitHub
- URL: https://github.com/giannisnik/segk
- Owner: giannisnik
- License: mit
- Created: 2019-11-26T14:50:29.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2024-02-02T11:15:51.000Z (10 months ago)
- Last Synced: 2024-08-03T13:14:21.205Z (3 months ago)
- Topics: graph-embeddings, graph-mining, node-embedding, representation-learning
- Language: Jupyter Notebook
- Size: 848 KB
- Stars: 6
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## Learning Structural Node Representations using Graph Kernels
Code for the paper [Learning Structural Node Representations using Graph Kernels](https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8869809).### Requirements
Code is written in Python 3.6 and requires:
* grakel 0.1b7
* scikit-learn 0.21### Basic Usage
To run *SEGK* on Barbell graph, execute the following command from the project home directory:
``python segk.py --path-to-edgelist datasets/barbell.edgelist --path-to-output-file embeddings/barbell.txt``#### Hyperparameters
The following three hyperparameters can be specified:
* radius: the maximum radius of the neighborhood subgraphs
* dim: the dimensionality of the generated embeddings
* kernel: the employed graph kernel (either the shortest path kernel or the weisfeiler lehman kernel)#### Input
The supported input format is an edgelist where the endpoints are separated by the space character:node1_id node2_id
#### Output
The output file contains *n* lines (where *n* is the number of nodes of the graph) as follows:node_id dim1 dim2 ... dimd
where dim1, ... , dimd is the *d*-dimensional representation learned by *SEGK*.### Experiments
In the project home directory, there are four jupyter notebooks that reproduce the experiments presented in the paper.### Cite
Please cite our paper if you use this code:
```
@article{nikolentzos2019learning,
title={Learning Structural Node Representations using Graph Kernels},
author={Nikolentzos, Giannis and Vazirgiannis, Michalis},
journal={IEEE Transactions on Knowledge and Data Engineering},
year={2019}
}
```