【论文阅读】Self-Supervised Learning of Graph Neural Networks: A Unified Review
论文题目:Self-supervised learning of graph neural networks: a comprehensive review
论文地址:https://arxiv.org/abs/2102.10757
1 Introduction
可以将SSL的前置任务分为两类:对比模型和预测模型。
两类的核心差异体现在其所需数据配对方式上:对比模型要求使用数据-数据配对进行训练,而预测系统则采用数据-标签配对的方式进行学习。值得注意的是,在这种配对关系中,标签信息并非外部获取而是由系统自主生成的(如图1所示)。

对比模型通常利用自监督来学习数据表示或为下游任务执行预训练。
该预测模型是基于监督学习的方法训练而成,在生成标签的过程中主要考虑了输入数据的关键特征,并且通过分析这些数据中的特定特征来构建相应的标签信息
由于图结构数据的独特性,在GNN上应用SSL有几个关键挑战:
- 自监督模型旨在从节点属性和图的结构拓扑中提取关键信息。
- 对比模型的主要困难在于如何获取高质量的图表示以及如何选择适合不同模型与数据集的编码器。
- 预测模型的核心关注点在于应生成什么样的标签以促进学习非平凡的表示来捕捉节点属性与图结构的信息。
不同类别的自监督学习方法概述如图2

2 Problem Formulation
2.1 Notation
让\mathcal{P}代表输入空间\mathcal{G}上无标签图的概率分布函数。基于提供的训练数据集\mathcal{D}, 我们可以通过从该数据集中等概率抽取样本来构建图的概率分布P。自监督学习机制可以通过利用生成的目标对比度损失函数来优化图编码器f的参数\theta, 以最小化由特定设计的自监督任务所定义的目标对比度损失\mathcal{L}_{\text{SSL}}(f, \mathcal{P})。
2.2 Paradigms for Self-Supervised Learning
基于自 supervision的学习范式涵盖了多种方法,其中包括 unsupervised 表示学习、unsupervised 预训练以及辅助型学习方法.
unsupervised representation learning
在无监督表示学习中进行建模时, 通常仅利用图数据集中的非标签节点及其邻接关系. 假设我们从服从分布\mathcal{P}的数据集中获取了图数据(A,X), 则该问题可被表述为:
f^* = arg \min_f \mathcal{L}_{ssl}(f,\mathcal{P})
此处f被定义为生成的数据分布模型中所涉及的预测部分,则图编码器f^*应被设计成能够在预测数据分布与真实数据分布之间实现最小化差异的目标模型
H^* = f^*(A,X)
可以将学习到的表示H^*用在下游任务中
unsupervised pretraining
- 利用无标签数据对图编码器f进行训练
- 在有监督微调阶段中,采用预训练权重f_{init}作为编码器初始化的基础
f^*,h^* = arg \min_{(f,h)} \mathcal{L}_{sup}(f,h, \mathcal{P})
with initialization
f_{init} = arg \min_f \mathcal{L}_{ssl}(f, \mathcal{P})
auxiliary learning
为了便于描述起见,我们定义\mathcal{Q}为图数据与标签的联合概率分布。同时,在这种情况下,\mathcal{P}被用来表示图数据的概率分布边际。
我们致力于掌握解码器f以及预测模型h的技术细节。其中h是通过在监督条件下完成对\mathcal{Q}参数的优化配置。而f则同时接受两种不同的训练策略:一种基于监督学习方法实现对\mathcal{P}的学习与优化,并且也支持自监督学习模式以进一步提升性能。
f^*,h^* = arg \min_{(f,h)} \mathcal{L}_{sup}(f,h, \mathcal{Q}) + \lambda \mathcal{L}_{ssl}(f, \mathcal{P})
3 Contrastive Learning
图对比学习的一个主要区别是:
- 该鉴别的目的是为每个视图生成一个表示
- 该系统采用基于深度学习的途径来获取视图特征
- 该编码器通过深度神经网络模型来实现对多模态数据特征的学习与提取过程
3.1 Overview of Contrastive Learning Framework

对比学习方法的框架
在图编码器领域中,主要采用图级编码方案;而节点级别的编码机制一般用于对齐节点与整体图的关系。
我们考虑一个图(A,X)及其上的多个变换操作\mathcal{T}_1,\dots,\mathcal{T}_k。这些操作通过施加一系列变换生成若干不同的视角\{w_1,\dots,w_k\}。随后通过一组编码器网络\{f_1,\dots,f_k\}将对应的原始数据分别作为其输入信息进行处理,并最终输出特征表示\{h_1,\dots,h_k\}
w_i = \mathcal{T}_i (A,X)
h_i = f_i(w_i), i = 1, \cdots, k
对比目标旨在通过训练编码器增强来自同一示例图的不同视图之间的内在一致性。其中一致性被定义为互信息\mathcal{I}(h_i,h_j)所度量,并将其形式化为
\max_{\{f_i\}_{i=1}^k} \frac{1} {\sum_{i \neq j} \sigma_{ij}} [\sum_{i \neq j} \sigma_{ij} \mathcal{I}(h_i,h_j)]
为了有效的计算互信息,通常使用某些估计量作为学习目标
在推理过程中以不同方式使用编码器的三个例子

- 采用多个视图的编码器,并通过结合(如求和或串联)来整合输出表示。
- 在推理过程中仅依赖主编码器以及相关的视图进行操作。
- 给定的图会被直接输入到一个独特的编码器中, 该编码器由所有共享的视图共同参与计算其表示。
3.2 Contrastive Objectives
3.2.1 Mutual Information Estimation
\mathcal{I}(x,y)衡量x和y的信息共享
\begin{aligned} \mathcal{I}(x, y) &\text{被定义为两个概率分布之间的Kullback-Leibler散度} \\ &= D_{KL}(p(x, y) \parallel p(x)p(y)) \\ &\text{同时也可以表示为概率分布的期望形式} \\ &= \mathbb{E}_{p(x, y)}\left[\log \frac{p(x, y)}{p(x)p(y)}\right] \end{aligned}
- D_{KL}:KL散度
3.3 Graph View Generation
分为三种类型:特征变换、结构变换、基于采样的变换
特征变换表示为:
\mathcal{T}_{feat}(A,X) = (A, \mathcal{T}_X(X))
结构变换表示为:
\mathcal{T}_{struct}(A,X) = (\mathcal{T}_A(A),X)
基于采样的变换表示为:
\mathcal{T}_{sample}(A,X) = (A[S;S],X[S])
此处的S为节点的子集,采样按行选取
3.3.1 Feature Transformations
Node attribute masking
随机的屏蔽所有节点的一小部分属性,用随机值或常数替代
\mathcal{T}_X^{(mask)}(X) = X*(1-1_m) + M*1_m
- M:带有掩码值的矩阵
- 1_m:掩码位置指示矩阵
Structure Transformations
两种类型的结构变换:边扰动、扩散
边扰动 :随机的添加或删除边
\mathcal{T}_A^{(pert)}(A) = A*(1-1_p) + (1-A)*1_p
- 1_p:扰动位置指示矩阵
扩散过程
\mathcal{T}_A^{(heat)}(A) = exp(tAD^{-1}-t)
\mathcal{T}_A^{(PPR)}(A) = \alpha(I_n-(1-\alpha)D^{-1/2}AD^{-1/2})^{-1}
**遵循中心性的边的去除:**通过中心性分数确定预先计算的概率以概率的方式随机删除边缘。
3.3.3 Sampling-Based Transformations
基于取样的变换:包括均匀采样、随机游走取样以及中心邻域采样
Uniform sampling
从全部节点中均匀采样一定数量的点以及相关的边构成子图
Ego-nets sampling
采样L阶邻居以及对应的边
w_{i} = T_{i}(A,X) 等于 (A[A(\cdot;\cdot),X(\cdot)]);其中 \cdot;\cdot 表示输入参数的位置占位符。
Random walk sampling
在 GCC 中提出基于从给定节点开始的随机游走对子图进行采样。
有p_{ij}的概率从v_i走到v_j,有p_r=0.8的概率回到起始节点
3.4 Graph Encoders
3.4.1 Node-Level and Graph-Level Representations
通过编码器最后一层节点特征x_v^{(K)}来获取节点v的表示h_v是最直接的方式。
在不同层次上提取的节点特征能够生成具有独特维度的节点级表示。为了消除向量维度上的这种差异,在所有层次上提取的节点特征之后应当施加线性变换以统一其表达空间
h_v = CONCAT([x_v^{(k)}]_{k=1}^K)W
为了节点排列不变性,求和和取平均是最常见的READOUT函数
\begin{aligned} h_{graph}\text{ is computed as the readout of } H \\ &= \text{The result is passed through the activation function } \sigma, \\ && \text{yielding } h_{graph}. \\ &= \text{The average over } |V|\text{ of the node features } \end{aligned}
4 Predictive Learning
将图的预测学习框架总结为:
- 掌握图重构技术意味着能够实现对给定图某些部分的重建。
- 理解如何进行图属性预测涉及学习给定图中复杂属性的行为。
- 基于伪标签的多阶段自监督训练是一种有效的学习方法。

4.1 Graph Reconstruction
4.1.1 Non-Probabilistic Graph Autoencoders
GAE: 重建邻接矩阵
计算重建后的邻接矩阵:
\hat{A} = g(H) = \sigma(HH^T) \\ H = f(A,X)
通过\hat{A}和A之间的交叉熵损失优化。
GraphSAGE: 基于不同的目标(包括负采样)对邻接矩阵进行自监督
superGAT:基于图嵌入模型框架中对注意力机制进行优化设计,在训练图注意力网络的过程中作为自我监督辅助损失从而促进学习出更具有表现力的注意力机制
MGAE 是一种基于去噪自编码器的思想构建的方法。该方法通过结合单层自编码器f_\theta与目标函数来实现对节点属性在随机损坏情况下的重建。
\sum_{i=1}^m\|X-f_\theta(A, \tilde{X}_i) \|^2 + \lambda \| \theta \|^2
H_i := f_\theta(A,\tilde{X}_i)被认为是重构的表示
可以通过叠加多层相近结构的单层自编码器来提升整体性能,并使顶层提取到的特征作为下游任务的基础表示
\sum_{i=1}^m \|H^{(l-1)} - H_i^{(l)} \|^2 + \lambda \| \theta_l \|^2 \\ H_i^{(l)} = f_{\theta_l}(A, \tilde{H}_i^{(l-1)})
GALA :该研究开发了一种基于对称编码器和解码器的多层自动编码器模型,并其主要区别在于与现有的 GAE 和 MGAE 不同。
基于拉普拉斯锐化的应用来构建解码器,在促进每个节点的解码表示与其邻居的质心保持差异的基础上进行设计。其中该层通过拉普拉斯锐化技术实现对节点表示与邻域质心差异的捕捉。
\hat{X}^{(l)} = 2 \hat{X}^{(l-1)} - D^{-1}AX^{(l-1)}
重建特征矩阵通过优化均方误差\| \hat{X} - X \|^2
\hat{X} = g(A,H), H = f(A,X)
Attribute masking 也被称为graph inpainting ,它是基于graph autoencoder框架设计的一种策略,在这种框架下通过对被屏蔽节点属性的重构来实现图编码器的预训练过程。对于一个具有随机屏蔽节点属性的图来说,在此过程中编码器f会计算出节点级别的表示H,并采用线性投影层作为解码器g来进行被屏蔽属性的重建。
4.1.2 Variational Graph Autoencoders
VGAE: 基于变分自编码器的思想构建了该模型。通过图卷积网络对已有图进行编码处理,从而推导出节点向量表示的概率分布,并从推导出的概率分布中采样生成相应的节点向量。随后通过解码器模块重建目标图结构。其损失为:
\mathbb{E}_{q(H|A,X)}[logp(A|H)]-KL[q(H|A,X) \| p(H)]
q(H|A,X) = \prod_{i=1}^{|V|} \mathcal{N}(h_i)|\mu_i(A,X), \Sigma_i(A,X)
ARGA/ARVGA 借助对抗网络实现自编码器的正则化训练,在此过程中,生成的潜在变量被引导使其概率分布符合高斯先验。除了编码器和解码器之外,鉴别器被设计用于区分由编码器生成的假数据样本与从高斯分布中随机采样的真实数据样本。基于此可知,在对抗性正则化的框架下所获得的潜变量分布与设定的高斯先验之间存在等价的关系;因此可以推导出在理论上论证表明,在这种情况下所获得的结果不仅能够达到VGAE的效果水平,并且其性能表现更为优异
SIG-VAE :替代为其推断机制的部分被多层次随机结构取代,在变分图自动编码器中构建更灵活的潜在变量模型。
4.1.3 Autoregressive Reconstruction
GPT-GNN: 构建了一个基于自回归机制的模型用于图重构。在输入的一个随机遮蔽的图中,该模型依次生成一个被遮蔽的节点及其关联边,并评估当前迭代过程中生成这些节点和边的可能性。通过逐步构建这些特征关系,该模型最终能够完整地重建整个图结构。
4.2 Graph Property Prediction
除了重构之外,在实施自监督式的预测任务方面也存在有效的解决方案。具体而言,在图数据中未显式编码的主要特性通常被用来构建任务模块。这些主要特性主要包括网络拓扑结构特性和数据分布特征以及结合领域背景的知识点。
S^2GRL:提取邻接矩阵以表征任意两指定的节点间的k-hop连通性预测 ,其目的是使任何两节点间的关系不仅限于直接相连的情况。
对于任意两个节点组成的编码表示,在图中通过预测头进行分类任务。在该研究中使用了S^2GRL模型来进行编码器与预测头的联合优化以计算这对节点之间的距离
元路径预测:通过自监督学习机制促进异构图知识表示。对于长度为l的元路径而言,在其组成部分t_1到t_l之间建立关联关系具有重要意义。基于给定的异构图及其k个预定义的元路径,在模型训练过程中,编码器f以及由多个预测头{g_i}_{i=1}k}$共同作用于节点嵌入提取与生成任务相关的特征信息。通过训练编码器$f$及其预测头集合${g_i}_{i=1}k}$,模型得以学习判断两个节点间是否存在各条指定元路径的连接关系。
GROVER:通过两个预测学习任务对分子图数据执行自监督学习 。
在上下文属性预测任务中,编码模块和预测单元被设计用于分析其k层邻接范围内的原子键计数特征。
在领域知识的自我监督下应用图级模体预测任务,在预定义的模体集合中选取一个合适的模型作为输入;通过图级识别机制判断各个模体是否存在,并将其视为一个多标签分类问题进行求解。
4.3 Multi-Stage Self-Training
被预测的对象不包括来自输入图像的真实类别标记,在前一步骤的结果基础上生成了辅助类别标记。
M3S :应用 DeepCluster 和对齐机制在多阶段自训练的基础上生成伪标签
在每个阶段对节点嵌入执行 K-Means 聚类,并将聚类结果与真实标签进行对齐。只有当当前阶段分类器的预测结果与聚类结果一致时,才会将具有聚类伪标签的节点加入标记集用于下一阶段的自监督训练。相较于基础多阶段自监督方法而言,M3S将DeepCluster和优化机制视为一种自我监控机制,并因此实现了更强大的自监督学习能力。
5 Summary of Learning Tasks and Datasets
自监督学习任务主要包含两类:图层次的归纳学习与节点层面的推断学习
数据集:

5.1 Graph-Level Inductive Learning
在多个数据集上进行
包括用于图级学习任务的常用数据集划分为三类:化学分子相关数据集合、蛋白质相关领域研究集合和社交网络相关的数据分析集合。
5.2 Node-Level Transductive Learning
7 Conclusion
在预测性学习领域中,在基于标签生成机制的基础上,我们将现有的方法分类为三种主要类型:图谱重建、属性预测以及自我训练。
