一、神经网络基础
近年来,机器学习领域的发展迅速,主要表现在多种神经网络架构的出现。尽管不同的神经网络架构相差甚远,但现有的神经网络架构可以分为几个类别:
卷积神经网路是前馈神经网路的特殊形式,FNN通常是全连接的神经网路,CNN则保留了局部链接性,CNN通常包含卷积层、池化层和数个全连接层。目前有数个经典的CNN 架构,如LeNet、AlexNet、VGG、和GoogleLeNet。
循环神经网络不仅仅从其他神经元接收信号和输入信息,同时有自身的历史信息。
图神经网络专门用来处理结构数据,如社交网络、分子结构、知识图谱等数据。
二、卷积图神经网络
卷积神经网络在深度学习领域取得了很大的成功,因此人们自认希望在图上定义卷积运算。这一方面的研究成果一般被分为两类:基于谱分解的方法和基于空间结构的方法,这两类方法各自均有很多变体。
2.1 基于谱分解的方法
基于谱分解的方法处理图的谱域相关表示,常用的有四种经典模型:Spectral NetWork、ChebNet、GCN、AGCN。
- Spectral Network通过计算图的拉普拉斯矩阵的特征分解,在傅里叶域中定义卷积计算。
- ChebNet利用切比雪夫多项式的前K阶逼近卷积核,省去了计算拉普拉斯矩阵特征向量的过程。
- GCN 在ChebNet的基础上将层级卷积运算的K限制为1,以缓解模型在节点的度分布范围较大的图上存在的局部结构过拟合的问题。GCN模型作为谱分解相关方法的简化,同样可以被视为一种基于空间结构的方法。
- AGCN自适应图卷积网络会学习“残差”图拉普拉斯矩阵并将其添加到原始的拉普拉斯矩阵中。
2.2 基于空间的方法
基于谱域的方法学习到的卷积核都依赖于拉普拉斯矩阵的特征基向量,取决于图的结构。这就意味着针对特定结构训练的模型不能直接应用于具有不同结构的图,即模型的泛化性能较差。
基于空间结构的方法直接在图上定义卷积运算,从而针对在空间上相邻的邻域进行运算。
主流基于空间的方法如下:
三、循环图神经网络
图神经网络的另一种趋势是在前向传播过程中使用GRU或LSTM等RNN的门控机制,这样可以弥补基础GNN的不足,并提高长距离信息传播的有效性。循环图神经网络与卷积图神经网络相比,在不同的层使用了相同的参数,这使得参数能够逐步收敛。卷积图神经网络在不同的层使用不同的参数,从而能够提取不同尺度的特征。
经典循环图神经网络有以下几种:
四、图注意力网络
注意力机制已成功用于许多基于序列的任务,例如机器翻译、机器阅读等。与GCN平等对待所有相邻节点不同,注意力机制可以为每个相邻节点分配不同的注意力分数,从而识别出较为重要的相邻节点。
GAT是堆叠简单的图注意力层来实现。
GaAN使用了多头注意力机制,区别在于GaAN使用键-值注意力机制和点积注意力机制,而GAT使用全连接层来计算注意力系数。
五、图残差网络
在神经网络的许多应用中,人们试着展开或堆叠图神经网络层,以获得更好的结果,因为更多的层(假设K层)可以使每个节点都能从K跳的相邻节点收集更多信息。但是实验表明,增加模型的深度无法改善模型性能,原因是更多的层会从成倍增加的邻域成员中传播噪声信息。
为了解决上述问题,一个很自然的想法是借鉴计算机视觉领域-使用残差。但是,使用残差链接,大多数深层GCN也不比双层GCN强。
所以使用跳跃连接解决上述问题: