深度图卷积网络系列文章(一)---Effective Training Strategies for Deep Graph Neural Networks

深度图神经网络的有效训练策略

这几天一直在看如何增加图卷积网络深度方面的问题,今天分享的一篇文章是Effective Training Strategies for Deep Graph Neural Networks。
文章地址:https://arxiv.org/abs/2006.07107
代码地址:https://github.com/miafei/NodeNorm
这篇文章的主要贡献是提出了一种归一化的方法,相比于BatchNorm在具有高方差特征的节点上表现很差的现象,这篇文章提出了一种节点归一化的方案:通过其自身的均值和标准差对每个节点的嵌入进行标准化,起到了减少特征相关性和增加模型平滑性的目的。

GNN的局限性

图神经网络(GNN)的性能往往会随着模型深度的增加而下降,这通常归因于先前的工作中过度平滑的问题。但是,我们发现尽管平滑度过高是一个因素,但造成这种现象的主要原因是训练难度和拟合度过高,我们通过实验研究代表性的GNN架构图卷积网络(GCN)进行研究。我们发现训练难度是由梯度消失引起的,可以通过添加残差连接来解决。更重要的是,过拟合是深层GCN的主要障碍,无法通过现有的正则化技术有效解决。
深度GCN也会遇到训练不稳定的问题,这会减慢训练过程。为了解决过度拟合和训练不稳定性的问题,我们提出了节点归一化(NodeNorm),该模型在训练过程中使用自己的统计信息对每个节点进行归一化。NodeNorm通过阻止隐藏嵌入的特征方面的相关性并相对于输入节点特征增加模型的平滑度来规范化深层GCN,从而有效地减少了过拟合。此外,它可以稳定训练过程,从而加快训练速度。
由于在堆叠的GC层中进行传播(propagation)导致节点嵌入变得难以区分,但是如下图1所示,发现传播操作的准确性比转换(transformation)操作的准确性还要高,所以认为过度平滑是一个原因,但不是主要原因。相反,转换操作的堆叠更容易导致性能下降。
深度图卷积网络系列文章(一)---Effective Training Strategies for Deep Graph Neural Networks
传播操作和转换操作对模型深度的影响:
深度图卷积网络系列文章(一)---Effective Training Strategies for Deep Graph Neural Networks

梯度消失造成训练困难

然后,我们进行进一步的实验,以研究GC层中的转换操作如何影响模型的深度。从图1 (b)可以看出,deep GCNs的训练精度很低,说明训练GCNs有一定难度。我们在GCNs的训练过程中检查了梯度,发现梯度消失造成了严重的训练困难。我们用平均梯度的最小对数绝对值(MLAMG)来说明梯度消失问题,计算如下,第t个历元第一层的梯度矩阵记为 G t G^t Gt
深度图卷积网络系列文章(一)---Effective Training Strategies for Deep Graph Neural Networks
较小的MLAMG意味着较小的梯度会传播到模型的最底层。 我们在图2(a)中绘制了具有不同深度的GCN的MLAMG。 我们可以看到,深层GCN受梯度消失的影响,因此无法拟合训练数据(图1(b))。 一些工作指出过度平滑是梯度消失的原因。 但是,如图2(a)所示,通过插入传播操作构建的变体不会遇到此问题。 相反在通过插入转换操作构建的变体中观察到梯度消失。 因此,我们认为GCN中的梯度消失是由GCN层中的转换操作而不是过度平滑引起的。

深度图卷积网络系列文章(一)---Effective Training Strategies for Deep Graph Neural Networks
为了解决梯度消失的问题,我们在GCN模型的每个隐藏层中都添加残差连接,得到GCN-res模型,其中
深度图卷积网络系列文章(一)---Effective Training Strategies for Deep Graph Neural Networks
从图2可以看出,GCN-res解决了梯度消失问题,并且与训练数据吻合良好。然而,我们仍然观察到随着深度的增加,GCN-res的性能在下降(图2 (b))。

过拟合和训练的不稳定性

如图3(a)所示,随着GCN-res模型的深入,训练和验证集之间的损失差距和准确性差距迅速增大。这意味着越来越严重的过拟合,而现有的正则化技术(Dropout)则无法解决(图3(b))。此外,如图3(c)所示,深层GCN-res模型的训练曲线在训练后期迅速振荡,显示出严重的训练不稳定性。结果,我们需要仔细调整一个小的学习率来训练模型,这会减慢训练过程。此外,由于训练的不稳定性,深层GCN-res模型的训练过程对正则化敏感。
如图3(b)所示,dropout为0.5可以改善具有浅和中深度的GCN-res模型的性能,但会损害具有64层的深GCN-res模型的性能。为了解决过度拟合和训练的不稳定性,我们考虑了标准化方法,这些方法已被证明可以使神经网络正规化并加速训练。其中,BatchNorm是使用最广泛的。尽管与GCN-res相比,它有助于加快训练过程(图3(c))并改善深层模型的性能,但使用BatchNorm的深层模型的性能仍然不如2层GCN-res模型(图3(b))。
深度图卷积网络系列文章(一)---Effective Training Strategies for Deep Graph Neural Networks

BatchNorm的缺点

我们分析了深度模型分类错误的节点的特征。我们观察到GCN-res和带有BatchNorm的GCN-res在具有高方差特征的节点上表现都很差。为此,我们定义以下节点方向的偏差,以度量每个单个节点的特征方差:

深度图卷积网络系列文章(一)---Effective Training Strategies for Deep Graph Neural Networks
其中 h i j l h_{ij}^l hijl表示节点 i i i在第 l l l层的隐藏嵌入的第 j j j个特征,而 μ i \mu_i μi是节点 i i i的嵌入向量的平均值。然后,我们按降序排列每一层的节点方向偏差,对Cora数据集中的所有节点进行排序,然后将排序后的节点平均分成十组。正式地,让 S 1 , . . , S 10 S_1,..,S_{10} S1,..,S10表示十个集合。
图4显示了十组的性能。我们可以看到,深度GCN-res模型在具有较高节点方向偏差的节点上的性能比其他节点差,并且BatchNorm无法解决此问题。
可能的原因是BatchNorm使用所有节点的统计信息执行按功能的规范化,因此无法调整每个单个节点的按节点的偏差。为了解决这个问题,我们提出了一种节点标准化方法,该方法可确保所有节点具有相同的方差,从而在所有节点上提供良好的整体性能。
深度图卷积网络系列文章(一)---Effective Training Strategies for Deep Graph Neural Networks

NodeNorm

提出的节点归一化的方案

我们提出节点标准化(NodeNorm),以通过其自身的均值和标准差对每个节点的嵌入进行标准化。 令 h i l h_i^l hil表示具有 d l d_l dl维特征的节点 i i i的嵌入向量。NodeNorm操作:
深度图卷积网络系列文章(一)---Effective Training Strategies for Deep Graph Neural Networks
代码段
深度图卷积网络系列文章(一)---Effective Training Strategies for Deep Graph Neural Networks

其中 μ i l \mu_i^l μil σ i l \sigma_i^l σil是上式中定义的节点 i i i的节点平均数和偏差。没有引入额外的可学习参数,从而降低了过度拟合的风险。 带有NodeNorm的GCN-res层变为

深度图卷积网络系列文章(一)---Effective Training Strategies for Deep Graph Neural Networks

减少特征相关性

可以通过对隐藏特征进行去相关来缓解过拟合。 因此,我们研究了NodeNorm是否可以减少特征相关性。 我们比较了三个64层模型的隐藏特征之间的相关性:GCN-res,带有BatchNorm的GCN-res和带有NodeNorm的GCN-res。 具体来说,我们计算底层(第22层),中间层(第44层)和顶层(第64层)的特征相关矩阵的Frobenius范数,如图5(a)所示。 可以观察到,使用NodeNorm训练的模型具有比其他模型更少的相关特征,这表明NodeNorm可以有效地减少过度拟合。
深度图卷积网络系列文章(一)---Effective Training Strategies for Deep Graph Neural Networks

实验结果

我们首先研究我们提出的NodeNorm是否可以缓解性能下降问题。如表1所示。使用NodeNorm增强的深度模型显著优于基线。此外,在这些基准数据集上,深度GNNs的性能第一次与浅模型相当,甚至更好(参见表1和表2)。
深度图卷积网络系列文章(一)---Effective Training Strategies for Deep Graph Neural Networks
深度图卷积网络系列文章(一)---Effective Training Strategies for Deep Graph Neural Networks

为了进一步展示NodeNorm的作用。我们确定了一个场景,其中深度模型特别有益。考虑半监督节点分类任务:对于一些标签率非常低的图。我们可以看到,对于我们的方法和基线,更深层次的模型比浅层次的模型获得更好的性能。
另外,随着标签率的降低。最好的性能是通过使用NodeNorm越来越深入的模型实现的。从中我们可以看到,随着标签率的下降,需要更多的层的明显趋势。事实上,在所有这三种情况下,我们的64层模型的性能都优于2层模型。我们的方法使深模型能够取得更好的性能,特别是当每个类只有5个标签。
此外,从选表1和表3中我们可以看到,我们的方法在性能上比基线的方差更小。
深度图卷积网络系列文章(一)---Effective Training Strategies for Deep Graph Neural Networks

结论

在本研究中,我们发现随着模型深度的增加,GCNs性能衰减问题的主要原因是训练难度和过拟合。前者可以通过残差连接来解决,而后者不能通过现有的正则化技术来解决。此外。深度GCN-res的训练不稳定。为了解决过拟合和训练不稳定性问题,我们提出了NodeNorm,它使用自己的统计数据对每个节点进行规范化。经验评价表明,我们的方法通过抑制特征相关性和增加平滑度的,输入节点特征来正则化深度模型。我们还确定了一个深度GNN模型优于浅层模型的场景,即低标签率。大量的实验验证了所提方法的有效性。结果表明,该方法可以很好地推广到各种流行的GNN体系结构和数据集。