An Unsupervised Framework for Comparing Graph Embeddings

Bogumil Kaminski, Pawel Pralat, Francois Theberge
5/29/2019
cs.SIcs.LG

Official code: KrainskiL/CGE.jl (11 stars, MIT, last commit 2024-04-08).

Abstract

Graph embedding is a transformation of vertices of a graph into set of vectors. Good embeddings should capture the graph topology, vertex-to-vertex relationship, and other relevant information about graphs, subgraphs, and vertices. If these objectives are achieved, they are meaningful, understandable, and compressed representations of networks. They also provide more options and tools for data scientists as machine learning on graphs is still quite limited. Finally, vector operations are simpler and faster than comparable operations on graphs. The main challenge is that one needs to make sure that embeddings well describe the properties of the graphs. In particular, the decision has to be made on the embedding dimensionality which highly impacts the quality of an embedding. As a result, selecting the best embedding is a challenging task and very often requires domain experts. In this paper, we propose a ``divergence score'' that can be assign to various embeddings to distinguish good ones from bad ones. This general framework provides a tool for an unsupervised graph embedding comparison. In order to achieve it, we needed to generalize the well-known Chung-Lu model to incorporate geometry which is interesting on its own rights. In order to test our framework, we did a number of experiments with synthetic networks as well as real-world networks, and various embedding algorithms.

View on arXivView PDF

Code Implementations(1)

KrainskiL/CGE.jlOfficial100%
MIT

Julia package to Compare Graph Embeddings

114Julia, ShellJul 11, 20202 years agoMIT
cligraph-clusteringgraph-embeddingsjulia

Similar Papers

Cite this paper

@article{kaminski2019unsupervised,
  title  = {An Unsupervised Framework for Comparing Graph Embeddings},
  author = {Bogumil Kaminski and Pawel Pralat and Francois Theberge},
  year   = {2019},
  eprint = {1906.04562},
  archivePrefix = {arXiv},
  url    = {https://arxiv.org/abs/1906.04562}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/1906.04562.svg)](https://codeofpaper.com/paper/1906.04562)

Discussion