Graph Neural Network learning algorithm and applications Shujia Zhang
What is Deep Learning?
Enable computers to mimic human behaviour Artificial Intelligence Machine Learning Subset of ML algorithms using complex artificial neural networks F Deep Learning Subset of AI to make machine learn from data
Deep Learning Convolutional Graph Neural Network Neural Network (GNN) (CNN) Graph of Graphs (GoGs) Learning algorithm and applications
Data Representations Numeric: made of numbers Plain vector Sequences Trees Categorical: made of words Female 1 0 Male 0 1 Graph
Data Representations Plain vectors Sequences Trees Graph User events sequence
Data Representations Plain vectors Sequences Trees Graph
Data Representations Plain vectors Sequences Trees Graph
Graph of Graphs The nature of a node in a graph is of a more complicated structure than plain numeric vectors The node in a graph is described by another graph Theoretically, such structure can be extended to be with infinite depth Both the nodes and edges in the graph can be attached with labels
Web Spam Detection One-level GoGs Level 1: web documents connected via hyperlinks Documents are described by content-based and link-based feature vectors
Web Document Categorisation Three-level GoGs Level 1: web documents connected via hyperlinks Level 2: section of text within XML formatting elements Level 3: word tokens in section of text
Human Action Recognition
Step 2 Delaunay Triangulations Sequence of triangle graphs Step 1 Interest points Dense trajectories HOG, HOF, MBH
Human Action Recognition Two-level GoGs Level 1 Sequence of frames Level 2 Delaunay Triangulation of each frame u1 n1 u2 n2 u3 n3
How to encode GoGs structure using neural networks?
Graph Neural Network A graph is processed node by node sum of states in a random order Label For a node in graph, the sum of the state vectors of neighboring nodes hidden are computed and concatenated to its own label vector The algorithm guarantees a convergence of the state nodes to a stable and unique solution states outputs
Deep Graph Neural Network Encoding Network Encode Graph-of-Graphs The architecture of the sum of states Label hidden network depends on the depth and size of the graphs states Feedforward and backpropagation through graph structure and network output Output Network sum of states Label hidden structure states output
Iterative Feed Forward Initiate states for all nodes Compute sum of states of all neighboring nodes Feed forward through hidden to state layer Iterate the process until the states for all the nodes are stable
Iterative Feed Forward Initiate states for all nodes Compute sum of states of all neighboring nodes Feed forward through hidden to state layer Iterate the process until the states for all the nodes are stable
Iterative Back Propagation BP the error from the topmost level through the levels until we reach the deepest level of graph and update the parameters of the networks in the process Iterative BP iterates same number of times as the number of feed forwarding required to reach stable states
Deep Graph Neural Networks Compute the states: from the deepest level k of GoGs, to level k-1, k-2,..., 0 Compute outputs at the topmost level 0, and form an error function Back propagate the error and compute the gradients until we reach the deepest level k Update the network parameters and repeat the process
What are the applications of GNN and GoGs?
Web Spam Detection One-level GoGs for both properties of individual pages and relationship among pages Content-based and linked-based numeric feature vectors The GNN model produced AUC 0.951 which outperformed others in the competition
Human Action Recognition Two-level GoGs Level 1 Sequence of frames Level 2 Delaunay Triangulation of each frame u1 n1 u2 n2 u3 n3
Human Action Recognition GoGs and GNN provide a deep learning based framework for human action recognition problem Different visual descriptors can be arranged in a spatial and temporal representation
Conclusion & Discussion The significance of the GoGs representation is that various features and structures from different depth in the problem domain are described without abstracting the intrinsic connections among them, and GNN is capable of encoding all the elements in a GoGs as a whole The problem still remains in such approach is that it is not easy to determine a good architecture, e.g. how many layers required? how many neurons in each layer? etc The computational cost can be high depends on depth of GoGs and structure of GNN
? Q&A