We can use GNNs to solve the semi-supervised community detection node-level task on graphs.
Let be a graph with diagonalizable adjacency matrix and node features . Suppose we have communities that we want to assign to the nodes.
As long as satisfies the conditions for finding a convolutional graph filter, namely that
- and
- for all
then there exists a graph convolution (or a 1-layer linear GNN) that approximates . The optimization problem then is the same as before:
Community Detection Optimization Problem
where is a surrogate of the 0-1 loss, each is the one-hot community vector of node , and is some parametric function of and
And we can choose our hypothesis class so that , a GNN with learnable parameters (this is the form of the function we defined in lecture 5)