Skip to content

Tool to convert datasets from "Benchmark Data Sets for Graph Kernels" (K. Kersting et al., 2016) into a format suitable for deep learning research.

License

Notifications You must be signed in to change notification settings

LeviBorodenko/dortmund2array

Repository files navigation

dortmund2array

Tool to convert datasets from Benchmark Data Sets for Graph Kernels (K. Kersting et al., 2016) into a format suitable for deep learning research in graph classification.


Installation

Simply run pip install dortmund2array to install the command-line interface. The only dependencies are numpy networkx pandas.

Output

Given any benchmark dataset, this tool will create a file DATASET.pickle that contains a pickled list. At index i the list has a dictionary with the adjacency matrix, the graph signal (also known as graph feature matrix) and the corresponding label for the ith graph.

{
    "adjacency":    ...  # as numpy array. Shape: (nodes, nodes)
    "graph_signal": ...  # as numpy array. Shape: (nodes, features)
    "label":        ...  # usually a scalar.
}

The graph signal is an array of shape (nodes, features) where the features are either attributes given by the dataset or if no attributes are available, we simply take the node labels as attributes.

How to use

Simply get the dortmund2array command line tool via pip install dortmund2array.

usage: dortmund2array [-h] [--version] [--output OUTPUT_FOLDER]
                      [--input INPUT_FOLDER]

Tool to convert datasets from 'Benchmark Data Sets for Graph Kernels' (K.
Kersting et al., 2016)

optional arguments:
  -h, --help            show this help message and exit
  --version             show program's version number and exit
  --output OUTPUT_FOLDER, -o OUTPUT_FOLDER
                        Output folder.
  --input INPUT_FOLDER, -i INPUT_FOLDER
                        Input folder containing the dataset of the same name.
  -e                    Output edge list instead of adjacency for each
                        graph.

Thus, download and unzip a dataset. Make sure the folder-name agrees with the dataset-name on the files inside of it. If you for instance download MUTAG and the corresponding folder is .\MUTAG\ and you want the array data saved in .\MUTAG_array\ then you need to simply run:

dortmund2array -i ./MUTAG/ -o ./MUTAG_array/

Requirements

Make sure you meet all the dependencies inside the requirements.txt.

About

Tool to convert datasets from "Benchmark Data Sets for Graph Kernels" (K. Kersting et al., 2016) into a format suitable for deep learning research.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages