论文信息 

论文标题:Towards Deeper Graph Neural Networks
论文作者:Meng Liu, Hongyang Gao, Shuiwang Ji
论文来源:2020, KDD
论文地址:download 
论文代码:download 

1 Introduction

问题引入:

  图卷积是领域聚合的代表,这些邻域聚合方法中的一层只考虑近邻,当进一步深入以实现更大的接受域时,性能会下降,这种性能恶化归因于过平滑问题( over-smoothing),即当感受域增大时,在传播和更新过程中将不同标签的节点的嵌入变得一样。

问题解决:

  提出 Deep Adaptive Graph Neural Network (DAGNN) 当感受域增大时,来自适应的接收领域信息。

2 Empircial and theoretical analysis of deep GNNs

  大多数流行的图卷积操作遵循邻域聚合(或消息传递)的方式,通过传播(propagating)相邻节点的表示并随后应用转换来(transformation)学习节点表示。一般图卷积的第 l 层可以描述为:

    ai()=PROPAGATION()({xi(1),{xj(1)jNi}})xi()=TRANSFORMATION ()(ai()).(1)

  典型代表 GCN 的前向传播过程可以表达为 :

    X()=σ(A^X(1)W())(2)

2.1 Quantitative Metric for Smoothness

  在这里,首先定义节点 i 和节点 j 的表示之间的欧氏距离的相似性度量:

    D(xi,xj)=12xixixjxj(3)

  注意:D(xi,xj)[0,1]

   基于 Eq.3 提出的节点 i  平滑度度量 SMVi

    SMVi=1n1jV,jiD(xi,xj)(4)

  故图 G 的平滑性度量如下:

    SMVG=1niVSMVi(4)

  显然,SMVG 和图平滑性呈负相关。

2.2 Why Deeper GNNs Fail?

对比试验:

  

  对于深度为 0 的 GNN ,可认为是只考虑了语义信息,没有考虑结构信息的 MLP。从上图观察到测试精度随着层数先增加后下降。

t-SNE 可视化的结果:

  节点表示随着层数的增加不断趋于相似,当层数达到 6 层时,节点表示已经很难分离。

  上述问题产生的原因:节点表示在大量的迭代中重复传播,特别是对于具有稀疏连接边的图,因此,从理论上讲,多次传播迭代并不足以产生过度平滑。

  

  本文认为由于转换和传播的纠缠,损害了 GNNs 的性能。论点来源于:首先,他们之间的参数交织在一起,当感受域增大时,需要更多的参数。因此,训练具有大量参数的深度GNN。这可能可以解释为什么 Figure 2 中多个GCN层的性能波动很大。其次,表示的转换和传播应该被视为两个独立的操作。

  从  Figure 2 和 Figure 1 所示 发现节点的类可以通过其初始特性完全预测,不使用任何图形结构信息,结果反而好。

  基于图结构的传播,在连接节点通常属于同一类的情况下,使同一类中的节点表示相似,从而简化分类任务。因此,表示转换和传播分别从特征和结构两个方面发挥着不同的作用。

  为了验证上述论点,解耦了 Eq.2 中的传播和转换 :

    Z=MLP(X)Xout=softmax(A^kZ)(6)

  其中

    • ZRn×c 表示由 MLP 网络从原始特征矩阵转换而来的新的特征矩阵;
    • c 为类数;

  变换后,应用  k  步传播推导出输出特征矩阵 Xout Rn×c,采用 softmax 计算分类概率。在这项工作中,我们系统地分析了这个方案,并揭示了它可以帮助构建更深层次的模型,而不遭受性能下降。

  在 Eq.6 中采用的不同层数表示的测试精度和平滑度度量值 Cora 上的结果如 Figure 4 所示

   

  在解决了特征转换和传播的纠缠之后,更深层次的模型能够利用更大的接受域而不影响性能退化。可以观察到,过度平滑的问题在一个大的接受域开始受影响,如在Cora 数据集上 75 hop 时,才出现平滑度度量值大大下降,度量值接近 0

  在实践中,通常不需要一个非常大的接受域,因为在一个被连接的组件中,最大的最短路径距离通常是一个可接受的小数字。因此,训练信号可以用少量的层传播到整个图中。具有 2 个或 3 个GCN层的图神经网络通常具有竞争能力,这就证明了这一点。

2.3 Theoretical Analysis of Very Deep Models

  在本节对过平滑问题做一个严格推导。

  A^=D~1A~A^=D~12A~D~12,是两种常用的传播机制。行平均归一化 A^ 用于 GraphSAGE [9] 和 DGCNN [38],对称的标准化 A^ 用于 GCN 。下面,我们通过证明 A^kA^kk 趋于无穷时的收敛性来描述过平滑问题。

  假设 e=[1,1,,1]R1×n 是一个值全为 1 的行向量,函数 Ψ(x)=xsum(x) 将向量规范化为和为 1,函数 Φ(x)=xx 使一个向量标准化,使其大小为 1

  THEOREM 3.1. Given a connected graph  G, limkA^k=Π , where  Π  is the matrix with all rows are  π  and  π=Ψ(eD~) .

  THEOREM 3.2. Given a connected graph  G, limkA^k=Π , where  Π=Φ(D~12eT)(Φ(D~12eT))T.

  从上述两个定理中,我们可以分别推导出在无限深度模型中 k 趋于无穷时 A^kA^k 的精确收敛值。因此,应用无限层迭代传播信息相当于利用一步 Π  或  Π 传播特征。Π 的行是相同的,Π 的行与相应节点的度的平方根值成正比。因此,Π  或  Π 的行是线性不可分割的,利用它们作为传播机制会产生难以区分的表示,从而导致过平滑问题。

  为了证明这两个定理,我们首先引入以下两个引理。这两个引理的证明可以在附录中找到A.5和A.6.

  Lemma 3.3. Given a graph G, λ is an eigenvalue of A^ with left eigenvector vlR1×n and right eigenvector vrRn×1 if and only if λ is an eigenvalue of A^ with left eigenvector vlD~12R1×n and right eigenvector D~12vrRn×1 .

  Lemma 3.4. Given a connected graph G, A^ and A^ always have an eigenvalue 1 with unique associated eigenvectors and all other eigenvalues λ satisfy |λ|<1 . The left and right eigenvectors of A^ associated with eigenvalue 1 are eD~R1×n and eTRn×1, respectively. For A^ , they are eD~12R1×n and D~12eTRn×1 .

  这两个定理适用于图神经网络中经常研究的连通图。对于一个不连通的图,这些定理也可以应用于它的每个连通组件,这意味着无限次应用这些传播机制将在每个连通组件中产生难以区分的节点表示。

  上述定理表明,过平滑将使节点表示不可分割,并提供了常用传播机制的精确收敛值。理论上,我们已经证明了在超平滑模型中是不可避免的。此外,收敛速度是我们在实践中应该考虑的一个更重要的因素。在数学上,根据 Eq.7 的说法,收敛速度依赖于除传播矩阵的 1 以外的其他特征值,特别是第二大特征值。直观地说,传播矩阵由相应图的拓扑信息决定的。这可能是我们在第2.2节中观察到的稀疏连通图只有在应用极深模型时,稀疏连接图才会出现过度平滑的原因。

3 Method

  整体框架如下:

   

  该框架分解为:转换(transformation)、 传播(propagation)、自适应调整(adaptive adjustment)

  公式化:

    Z=MLP(X)Rn×cH=A^Z,=1,2,,kRn×cH=stack(Z,H1,,Hk)Rn×(k+1)×cS=σ(Hs)Rn×(k+1)×1S~=reshape(S)Rn×1×(k+1)Xout =softmax( squeeze (S~H))Rn×c(8)

  其中

    • c 是节点类的数量;
    • ZRn×c 是通过将 MLP 网络应用于原始特征矩阵而推导出的特征矩阵;
    • A^=D~12A~D12,其中 A~=A+I 是一个表示模型深度的超参数;
    • sRc×1 是一个可训练的投影向量;
    • σ() 是一个激活函数;

  S=σ(Hs) 利用这种自适应调整机制,DAGNN可以自适应地平衡来自每个节点的本地和全局邻域的信息。显然,转换过程 Z=MLP(X) 和自适应调整过程 S=σ(Hs) 具有可训练的参数,而在传播过程 H=A^Z,=1,2,,k 中没有可训练的参数,从而形成了一个参数高效的模型。

  在 DAGNN 中,最终的表示形式 Xout  被用作最终的预测。因此,所有带标签的样本的交叉熵损失都可以计算为

    L=iVLp=1cY[i,p]lnXout[i,p](9)

  其中:

    • VL 为标记节点的集合
    • YRn×c 为标记指标矩阵
    • c 是类的数量

4 Experiment 

  节点分类:

  

  

5 Conclusion

  在本文中,我们考虑了当前深度图神经网络中存在的性能退化问题,并对深层图神经网络提出了新的见解。我们首先对这个问题进行了系统的分析,并认为影响网络性能的关键因素是表示转换和传播的纠缠。我们建议将这两个操作解耦,并证明了没有这种纠缠的深度图神经网络可以利用大的接受域,而不会受到性能下降的影响。此外,在建立非常深的模型时,我们对上述策略进行了理论分析,这可以作为对过度平滑问题的严格和温和的描述。利用我们的见解,DAGNN被提出进行节点表示学习,并能够从大的和自适应的接受域捕获信息。根据我们的综合实验,我们的DAGNN比目前最先进的模型取得了更好的性能,特别是在训练样本有限的情况下,这证明了它的优越性。

附录

Lemma 3.3 证明:

  If λ is an eigenvalue of A^ with left eigenvector vl and right eigenvector vr
  thus ,we have vlA^=λvl and A^vr=λvr
  then, We right multiply the first eigenvalue equation with D~12 and left multiply the second eigenvalue equation with D~12
  so, (vlD~12)D~12A~D~12=λ(vlD~12)D~12A~D12(D~12vr)=λ(D~12vr)
  hence, λ is also an eigenvalue of A^ with left eigenvector vlD~12 and right eigenvector D~12vr.

Lemma 3.4 证明:

  首先,证明:“ A^ and A^ always have an eigenvalue 1 with unique associated eigenvectors and all other eigenvalues λ satisfy |λ|<1 . ”

  We have  A^eT=eT  because each row of  A^  sums to 1 .Therefore, 1 is an eigenvalue of  A^ .

  Suppose that there exists an eigenvalue  λ  that  |λ|>1  with eigenvector  v , then the length of the right side in  A^kv=λkv  grows exponentially when  k  goes to infinity. This indicates that some entries of  A^k  shoulde be larger than 1 . Nevertheless, all entries of  A^k  are positive and each row of  A^k  always sums to 1 , hence no entry of  A^k  can be larger than 1, which leads to contradiction. 

  From Lemma 3.3,  A^  and  A^  have the same eigenvalues. Therefore,  A^  and  A^  always have an eigenvalue 1 and all eigenvalues  λ  satisfy  |λ|1.

  其次,证明 “The left and right eigenvectors of A^ associated with eigenvalue 1 are eD~R1×n and eTRn×1, respectively. For A^ , they are eD~12R1×n and D~12eTRn×1 .”

  We then compute the eigenvectors associated with eigenvalue 1. Obviously, eT is the right eigenvector of A^ associated with eigenvalue 1 .

  Next, assume vl is the left eigenvector of A^ associated with eigenvalue 1 and thus vlD~12 is the left eigenvector of A^ associated with eigenvalue 1 .

  We know A^ is a symmetric matrix, whose left and right eigenvectors associated with the same eigenvalue are simply each other's transpose. Hence, we utilize vlD~12=(D~12eT)T to obtain vl=eD~ . After deriving the eigenvectors of A^ associated with eigenvalue 1, corresponding eigenvectors of A^ can be computed by Lemma 3.3.

Theorem 3.1 证明:

  A^  can be viewed as a transition matrix because all entries are nonnegative and each row sums to 1 . The graph  G  can be further regarded as a Markov chain, whose transition matrix  P  is  A^ . This Markov chain is irreducible and aperiodic because the graph  G  is connected and self-loops are included in the connectivity. If a Markov chain is irreducible and aperiodic, then  limkPk=Π , where  Π  is the matrix with all rows equal to  π  and  π  can be computed by  πP=π , s.t.  iπi=1 . It is obvious that  π  is the unique left eigenvector of  P  and is normalized such that all entries sum to 1 . Hence,  limkA^k=Π , where  Π  is the matrix with all rows are  π  and  π=Ψ(eD~)  from Lemma  3.4 .

Theorem 3.2 证明:

  Although A^ cannot be processed as a transition matrix like A^ , it is a symmetric matrix, which is diagonalizable. We have A^=QΛQT , where Q is an orthogonal matrix whose columns are normalized eigenvectors of A^ and Λ is the diagonal matrix whose diagonal entries are the eigenvalues. Then the kth power of A^ can be computed by

    A^k=QΛQTQΛQT=QΛkQT=i=1kλinviviT(7)

  where vi is the normalized right eigenvector associated with λi . From Lemma 3.4, A^ always has an eigenvalue 1 with unique associated eigenvectors and all other eigenvalues λ satisfy |λ|<1 . Hence, limkA^k=Φ(D~12eT)(Φ(D~12eT))T.

posted @   别关注我了,私信我吧  阅读(2192)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
历史上的今天:
2020-05-02 删除字符串中的所有相邻重复项
2020-05-02 用两个栈实现队列
2020-05-02 删除最外层的括号
Live2D
点击右上角即可分享
微信分享提示