摘要:本文我们将主要介绍各种典型的图神经网络的网络架构和训练方法。
本文我们将主要介绍各种典型的图神经网络的网络架构和训练方法。文章《A Comprehensive Survey on Graph Neural Networks》[1]提供了一个全面的图神经网络(GNNs) 概述,并且将最新的图神经网络分为四类,即递归图神经网络(RecGNNs)、卷积图神经网络(ConvGNNs)、图自动编码器(GAEs)和时空图神经网络(STGNNs)。在图神经网的实际应用中,卷积图神经网络的使用最为广泛,因此,本文将重点介绍ConvGNNs一类网络模型,如上图GNN Roadmap所示。
1. 欧式空间卷积
在讲卷积图神经网络(非欧空间做卷积)之前,我们先来回顾下卷积神经网络(欧式空间做卷积)的过程。有一张如下图所示的66的image,我们在做卷积的时候,通常会使用一个固定大小的卷积核,比如33,然后根据设置的步长滑动整张6*6的image,在每一次滑动之处与原图相应位置做内积。如下图为卷积核滑动两次之后的结果。
但是对于非欧空间的图结构,我们无法找到一个固定大小的卷积核去滑动整个图区域,如下图所示。
这时我们就要针对图的特殊结构,借助欧式空间的卷积方法和图结构特征,提出两种卷积图神经网络的卷积方案:
方案一:
参考CNN的思想,对每个节点的邻居进行某种方式的加权求和,即Spatial-based convolution。
方案二:
参考传统的信号处理的方法,对原始信号进行处理,引入滤波器来定义图卷积,图卷积运算被解释为从图信号中去除噪声,即Spectral-based convolution。
本篇我们将主要介绍基于空间的卷积图神经网络方法和对应的典型的网络架构。
2. Spatial-based Convolution
在讲基于空间的卷积图神经网络方法之前,我们先引入两个术语:
lAggregate:
用当前层的某节点邻居状态特征更新下一层该节点的状态特征(下左图)。比如下图,我们想要将(下标代表节点的索引,上标代表当前在第几层卷积操作)通过图卷积的方式转变成,我们可以通过某种加权求和的方式将 Layer i的以及的邻居节点的feature整合起来,从而得到的feature,其它节点一样的道理,最后得到Layer i+1的hidden state。
lReadout:
把所有节点的状态特征集合起来代表整个图的状态特征(下右图)。即采用某种sum或者average的方式将所有nodes的feature抽象成一个hidden state,并以此代表整张图的feature。
2.1 图神经网络(Neural Network for Graphs,NN4G)[2]
而readout层则通过对每一层的所有节点信息的取平均,即下图中所有紫色节点 ,从而获得每一层图的representation,并对每一层的信息通过求和平均的方式进行整个图的representation更新,即:
对于NN4G,其具体的计算过程可以用下面这幅图概括。NN4G也是卷积图神经网络的代表性结构,后续的卷积图神经网络都是或多或少的在NN4G的基础上做一些简单的修改(Aggregate)而获得。所以理解NN4G的运算流程对于理解基于空间的卷积图神经网络至关重要。
2.2 扩散卷积神经网络(Diffusion Convolutional Neural Network, DCNN)[3]
2.3混合模型(Mixture Model Networks, MoNET)[4]
2.4图采样聚合模型(Graph Sample and aggregate, GraphSAGE)[5]
2.5 图注意神经网络(Graph Attention Networks, GAT)[6]
3. 总结
本篇博文主要介绍了Spatial-based Convolution(基于空间的卷积图神经网络),以NN4G为基础,分别介绍了DCNN,MONET,GrapgSAGE,GAT等卷积图神经网络结构以及其实现的方式。对于想要在图神经网络进行实践的同学,可以先学习一些开源的图神经网络框架。目前完成度较好的图神经网络框架主要是基于PyTorch和MXNet的DGL (Deep Graph Library)和PyG (PyTorch Geometric)。
参考文献
[1] ] Wu Z , Pan S , Chen F , et al. A Comprehensive Survey on Graph Neural Networks[J]. IEEE Transactions on Neural Networks and Learning Systems, 2019.
[2] A. Micheli, "Neural Network for Graphs: A Contextual Constructive Approach," in IEEE Transactions on Neural Networks, vol. 20, no. 3, pp. 498-511, March 2009, doi: 10.1109/TNN.2008.2010350.
[3] https://arxiv.org/abs/1511.02136
[4] https://arxiv.org/pdf/1611.08...
[5] https://arxiv.org/pdf/1706.02...
[6] https://arxiv.org/pdf/1710.10...
[7]https://mp.weixin.qq.com/s?__...
[8]. http://speech.ee.ntu.edu.tw/~...
本文分享自华为云社区《深入浅出图神经网络应用场景》,原文作者:就挺突然。