Table of Contents
Fetching ...

Exploiting the Structure of Two Graphs with Graph Neural Networks

Victor M. Tenorio, Antonio G. Marques

TL;DR

A novel graph-based deep learning architecture to handle tasks where two sets of signals exist, each defined on a different graph, and a self-supervised setup, where the focus is not on the output space but on the underlying latent space and the importance of leveraging the information of the two graphs is highlighted.

Abstract

Graph neural networks (GNNs) have emerged as a promising solution to deal with unstructured data, outperforming traditional deep learning architectures. However, most of the current GNN models are designed to work with a single graph, which limits their applicability in many real-world scenarios where multiple graphs may be involved. To address this limitation, we propose a novel graph-based deep learning architecture to handle tasks where two sets of signals exist, each defined on a different graph. First we consider the setting where the input is represented as a signal on top of one graph (input graph) and the output is a graph signal defined over a different graph (output graph). For this setup, we propose a three-block architecture where we first process the input data using a GNN that operates over the input graph, then apply a transformation function that operates in a latent space and maps the signals from the input to the output graph, and finally implement a second GNN that operates over the output graph. Our goal is not to propose a single specific definition for each of the three blocks, but rather to provide a flexible approach to solve tasks involving data defined on two graphs. The second part of the paper addresses a self-supervised setup, where the focus is not on the output space but on the underlying latent space and, inspired by Canonical Correlation Analysis, we seek informative representations of the data that can be leveraged to solve a downstream task. By leveraging information from multiple graphs, the proposed architecture can capture more intricate relationships between different entities in the data. We test this in several experimental setups using synthetic and real world datasets, and observe that the proposed architecture works better than traditional deep learning architectures, showcasing the importance of leveraging the information of the two graphs.

Exploiting the Structure of Two Graphs with Graph Neural Networks

TL;DR

A novel graph-based deep learning architecture to handle tasks where two sets of signals exist, each defined on a different graph, and a self-supervised setup, where the focus is not on the output space but on the underlying latent space and the importance of leveraging the information of the two graphs is highlighted.

Abstract

Graph neural networks (GNNs) have emerged as a promising solution to deal with unstructured data, outperforming traditional deep learning architectures. However, most of the current GNN models are designed to work with a single graph, which limits their applicability in many real-world scenarios where multiple graphs may be involved. To address this limitation, we propose a novel graph-based deep learning architecture to handle tasks where two sets of signals exist, each defined on a different graph. First we consider the setting where the input is represented as a signal on top of one graph (input graph) and the output is a graph signal defined over a different graph (output graph). For this setup, we propose a three-block architecture where we first process the input data using a GNN that operates over the input graph, then apply a transformation function that operates in a latent space and maps the signals from the input to the output graph, and finally implement a second GNN that operates over the output graph. Our goal is not to propose a single specific definition for each of the three blocks, but rather to provide a flexible approach to solve tasks involving data defined on two graphs. The second part of the paper addresses a self-supervised setup, where the focus is not on the output space but on the underlying latent space and, inspired by Canonical Correlation Analysis, we seek informative representations of the data that can be leveraged to solve a downstream task. By leveraging information from multiple graphs, the proposed architecture can capture more intricate relationships between different entities in the data. We test this in several experimental setups using synthetic and real world datasets, and observe that the proposed architecture works better than traditional deep learning architectures, showcasing the importance of leveraging the information of the two graphs.

Paper Structure

This paper contains 14 sections, 12 equations, 7 figures, 1 table.

Figures (7)

  • Figure 1: High-level overview of the proposed architecture. The input signal, defined over the input graph ${\mathcal{G}}_X$, gets processed by the GNN architecture $\psi^X_{\boldsymbol{\Theta}_X}$. After that, the underlying space, still defined over ${\mathcal{G}}_X$ is transformed by means of the function $\psi^Z_{\boldsymbol{\Theta}_Z}$ so that it is defined over the output graph ${\mathcal{G}}_Y$. After that, a new GNN architecture $\psi^Y_{\boldsymbol{\Theta}_Y}$ is applied using ${\mathcal{G}}_Y$ to get the output signal.
  • Figure 2: Modification of the architecture to find alternative representations of our data and possibly use them in downstream tasks. Here, we don't focus on the output space, but on the latent space instead, aiming to maximize the correlation between the transformed features ${\mathbf Z}_X'$ and ${\mathbf Z}_Y$ (we cannot use ${\mathbf Z}_X$ directly as it is defined on a different graph than ${\mathbf Z}_Y$). The learned representations can then be used in downstream tasks.
  • Figure 3: Node classification accuracy for the Cora graph dataset using two subgraphs. The subgraphs ${\mathcal{G}}_X$ and ${\mathcal{G}}_Y$ are drawn randomly by selecting one root node for each of them and, then, implementing a snowball sampling technique. The x-axis indicates the number of hops considered in the snowball sampling scheme used to build the graphs. The y-axis reports the classification accuracy measured over the test node set (subset of the nodes of ${\mathcal{G}}_Y$) averaged over 25 different graph realizations. The different lines correspond to the schemes introduced in Sections \ref{['SS:exp_setup']} and \ref{['SS:subgraph']}.
  • Figure 4: Sample images obtained in the image interpolation experiment, for the "coffee" image. The first row represents the input and output graphs ${\mathcal{G}}_X$ (a) and ${\mathcal{G}}_Y$ (c) and the input and output signals ${\mathbf X}$ (b) and ${\mathbf Y}$ (d). The second row represents the output of the GNN-based architecture proposed, IOGCN (e), and the alternative baselines, CNN (f), KNN (g) and IOMLP (h).
  • Figure 5: Error obtained in the image interpolation experiment, measured as the MSE between the original input image and the recovered image, by assigning the predicted color for a superpixel to every pixel within it. The x-axis represents the ratio between the number of nodes in ${\mathcal{G}}_Y$ and ${\mathcal{G}}_X$. The y-axis shows the MSE defined in \ref{['eq:mse']}. Each line corresponds to one of the schemes introduced in Section \ref{['SS:imageintr']}. The figure represents the mean MSE for 10 realizations of the selection of the pixels in ${\mathcal{V}}_Y^{tr}$, while the vertical lines represent their standard deviation.
  • ...and 2 more figures