Graph Neural Networks & Communities

Joost VanderBorgh
nieuwsgierigheid
Published in
3 min readOct 14, 2019

Abstract:

The goal is to examine several possibilities of how Graph Neural Networks can alter how we examine non-euclidian information. This discusses a straightforward example.

Nodes & Networks:

Given a graph G as seen below, we imagine an example where there is a teacher and a TA for a class. We imagine the following adjacency matrix, taken from UPenn’s ESE 303:

By plotting each edge (where a 1 exists) between each node (row/column), we arrive at the following plot:

This is what a social network looks like — a bunch of individuals (nodes) connected through a common interaction (edges).

Formal Maths:

To sharpen the maths behind this project, the following is helpful but not fully necessary to understand the scope of the project. We are given:

  1. a directed graph G(V, E);
  2. a node s
  3. a set of candidates to which s could create an edge.

Although not done in this project, we can label nodes to which s creates edges as destination nodes D = {d_1, …, d_k}; others that have no connection are called no-link nodes L = {l_1, …, l_n}.

The goal is to learn the parameters w of the strength function that assigns each edge a transition probability of making a connection. This strength function is f_w(phi_uv).

Graph Neural Networks

In essence, a GNN will update a node’s information from the nodes based on the information (h_1, h_2, … or h_5) it receives from other nodes (v_1, v_2, … or v_5).

By setting the teacher at, arbitrarly, Node 5 and the teaching assignment at Node 8, we can use a graph neural network to classify which students are closer to which teacher.

The results of this is as follows:

Why This Matters

By discussing elementary approaches to visualising node information and showing how communities can form in the classroom, we set the foundation for further studies and introduces another application of neural networks.

Sources:

--

--