Paper Reading: Towards Unsupervised Deep Graph Structure Learning


Paper Reading 是从个人角度进行的一些总结分享,受到个人关注点的侧重和实力所限,可能有理解不到位的地方。具体的细节还需要以原文的内容为准,博客中的图表若未另外说明则均来自原文。

论文概况 详细
标题 《Towards Unsupervised Deep Graph Structure Learning》
作者 Yixin Liu, Yu Zheng2 , Daokun Zhang1,3 , Hongxu Chen4 , Hao Peng5 , Shirui Pan1
发表会议 The ACM Web Conference 2022(WWW 2022)
发表年份 2022
会议等级 CCF-A
论文代码 https://github.com/GRAND-Lab/SUBLIME

作者单位:

  1. Monash University, Melbourne, VIC, Australia
  2. La Trobe University, Melbourne, VIC, Australia
  3. University of Technology Sydney, Sydney, NSW, Australia
  4. Beihang University, Beijing, China

研究动机

图神经网络 GNNs 在图数据分析任务(如节点分类、链接预测、节点聚类)中取得了显著成效,其核心机制是消息传递,即依赖图中已有的拓扑结构(邻接矩阵)来聚合邻居信息以学习节点表示。然而,GNNs 的性能建立在原始图结构高度可靠的假设上,现实中的图结构往往从复杂交互系统中提取,导致了该结构经常包含噪声(如错误连接、冗余边或缺失关系),损害了 GNNs 的表现。此外,GNNs 对显式结构的依赖也限制了其在无结构化数据上的应用,如图像、文本等样本间无显式关联的场景。
为了缓解上述问题,深度图结构学习 GSL 应运而生。这类方法将邻接矩阵参数化,并与 GNN 联合优化,通常以节点分类等下游任务为监督信号来学习更好的图结构。但现有 GSL 方法绝大多数属于监督学习范式,即依赖人工标注的节点标签来指导结构优化。这带来了三个关键问题:

  • 对标签的强依赖:标注成本高,且在无标签场景中无法应用。
  • 边分布偏差:监督信号通常仅覆盖少量节点(如半监督设置),导致与这些节点相关的边受到过多关注,而远离监督信号的节点间关系难以被充分学习,造成结构偏差。
  • 任务特定性:学到的结构往往过拟合于节点分类任务,缺乏泛化能力,难以直接用于其他任务(如链接预测、聚类)。

image
论文针对上述背景,本文的研究问题是:提出更普适、更实用的无监督图结构学习范式。其核心目标是无需任何外部标签,仅利用数据自身的信息来学习或优化图拓扑,如节点特征、可选的原始结构。使其可以应对两种任务场景:

  • 结构推断:当图结构完全缺失时,仅从节点特征自动学习反映样本间潜在关联的拓扑。
  • 结构精炼:当已有图结构但含有噪声时,对其去噪、补全,得到更高质量的图。

文章贡献

针对无监督图结构学习问题,本文提出了一个名为 SUBLIME 的模型。该模型的核心是一个结构自举对比学习框架,其工作流程包含两个循环:首先,模型通过图学习器和后处理器从数据中生成一个候选的优化图结构(学习者视图)。接着,通过对比学习使这个候选图与一个锚视图在节点表示上保持一致,从而为图结构优化提供自监督信号。其中,使用结构自举机制令学习目标能够自我迭代,通过用学习者视图的缓慢移动平均来动态更新锚视图,引导模型不断发现并修正图结构,最终输出一个高质量、通用且去偏的优化图。通过在 8 个基准数据集上广泛的对比实验、消融研究、鲁棒性分析和可视化,充分验证了所提方法的有效性。

本文方法

无监督图结构学习框架 SUBLIME 的结构如图所示,主要由两大模块构成:

SUBLIME 模块 功能
图结构学习模块 负责建模和正则化待学习的图拓扑
结构自举对比学习模块 通过自优化的监督信号来引导图结构学习

image

图学习器

图学习器是 GSL 流程的起点,其作用是通过一个参数化模型 \(\omega\) 来生成一个初步的邻接矩阵 \(\tilde{S} \in \mathbb{R}^{n \times n}\)。为了适应不同数据的特点,作者设计了不同的图学习器。全图参数化 FGP 学习器直接将邻接矩阵的每个元素建模为一个独立的可学习参数:

\[\tilde{S} = p_{\omega}^{FGP} = \sigma(\Omega) \]

其中 \(\omega = \Omega \in \mathbb{R}^{n \times n}\)\(\sigma\) 是非线性激活函数。该方法假设每条边的存在是相互独立的,优点是建模灵活、时间复杂度低,缺点在于参数量为 \(O(n^2)\),难以扩展到大规模图。
另一种度量学习的核心思想是先通过一个嵌入网络 \(h_{\omega}(\cdot)\) 将输入数据(特征 \(X\),或特征与原始结构 \(A\))映射为节点嵌入 \(E\),然后通过一个无参的度量函数 \(\phi(\cdot)\)(如余弦相似度)计算节点对的相似度来构建草图矩阵:

\[\tilde{S} = p_{\omega}^{ML}(X, A) = \phi(h_\omega(X, A)) = \phi(E) \]

该方法避免了 \(O(n^2)\) 的参数,更具可扩展性。根据嵌入网络 \(h_{\omega}(\cdot)\) 的不同,可以进一步分为以下三种具体实现:

度量学习的学习器类型 原理描述 特点 适用场景
Attentive 学习器 使用类似 GAT 的注意力网络,每层对输入特征进行逐元素的哈达玛积变换:\(E^{(l)} = \sigma([e_1^{(l-1)} \odot \omega^{(l)}, \cdots, e_n^{(l-1)} \odot \omega^{(l)}]^{\top})\) 参数和计算复杂度相对于特征维度 \(d\) 较低。假设不同特征对边形成的贡献不同,但特征间无强相关性 高维特征数据。
MLP 学习器 使用多层感知机作为嵌入网络:\(E^{(l)} = \sigma(E^{(l-1)} \Omega^{(l)})\) 考虑了特征间的相关性和组合,能生成信息量更大的嵌入。 特征维度适中、相关性强的数据。
GNN 学习器 使用 GCN 等图神经网络层作为嵌入网络,同时融合节点特征和原始图结构:\(E^{(l)} = \sigma(\tilde{D}^{-\frac{1}{2}}\tilde{A}\tilde{D}^{-\frac{1}{2}} E^{(l-1)} \Omega^{(l)})\),其中 \(\tilde{A}=A+I\) 假设节点间的连接不仅与特征相关,也与原始拓扑有关。 仅用于结构精炼任务,需要原始图 \(A\) 作为输入。

实践中,作者根据数据集的特点为每个数据集选择最合适的学习器,例如根据规模、特征维度、是否有原始图等因素。FGP 适用于小图,度量学习类适用于大图,其中 Attentive 适合高维特征,MLP 适合特征相关性强的情况,GNN 则在有原始图可用时用于结构优化。
image

后处理器

后处理器 \(q(\cdot)\) 的作用是将图学习器生成的、可能不规范的初步的邻接矩阵 \(\tilde{S}\),精炼成一个稀疏、非负、对称且归一化的标准邻接矩阵 \(S\)。第一步是稀疏化,用于将稠密的草图矩阵变为稀疏的 KNN 图,以提升计算效率和应用意义。对每个节点,只保留与其连接权重最高的 \(k\) 条边,其余置 0:

\[\tilde{S}_{ij}^{(sp)} = q_{sp}(\tilde{S}_{ij}) = \begin{cases} \tilde{S}_{ij}, & \tilde{S}_{ij} \in \text{top-k}(\tilde{S}_i) \\ 0, & \tilde{S}_{ij} \notin \text{top-k}(\tilde{S}_i) \end{cases} \]

为保持梯度流通,FGP 学习器不进行此步。对于大规模图,可采用基于批处理的近似 kNN 算法以节省内存。接着进行激活与对称化,该步骤用于确保边权值为非负,且图是无向的,即邻接矩阵对称。先通过激活函数 \(\sigma_q\)(对度量学习类用 ReLU,对 FGP 用 ELU)确保非负,再取平均以实现对称:

\[\tilde{S}^{(sym)} = q_{sym}(q_{act}(\tilde{S}^{(sp)})) = \frac{\sigma_q(\tilde{S}^{(sp)}) + \sigma_q(\tilde{S}^{(sp)})^{\top}}{2} \]

最后进行归一化将边权值规范到 \([0, 1]\) 范围内,并使训练更稳定。采用对称归一化:

\[S = q_{norm}(\tilde{S}^{(sym)}) = (\tilde{D}^{(sym)})^{-\frac{1}{2}} \tilde{S}^{(sym)} (\tilde{D}^{(sym)})^{-\frac{1}{2}} \]

其中 \(\tilde{D}^{(sym)}\)\(\tilde{S}^{(sym)}\) 的度矩阵。经过以上流程,得到的 \(S\) 就是一个可用于后续图神经网络的标准、高质量的优化后邻接矩阵。

多视图图对比学习

在得到经过后处理的标准邻接矩阵 \(S\) 后,需要解决的问题是:在没有外部标签的情况下,如何为图结构学习提供有效的监督信号?SUBLIME 利用数据自身,通过多视图图对比学习来获得自监督信号。此模块的目标是最大化学习者视图(基于当前学到的结构)与锚视图(一个稳定的学习目标)之间的一致性,从而引导 \(S\) 的优化。

图视图建立

学习者视图由学到的邻接矩阵 \(S\) 和特征矩阵 \(X\) 构成,记为 \(\mathcal{G}_l = (S, X)\)。在每次训练迭代中,\(S\) 及其参数都会被梯度更新,以探索最优结构。学习者视图的初始化为基于特征的 KNN 图锚视图用于为结构学习提供正确且稳定的引导,定义为 \(\mathcal{G}_a = (A_a, X)\)。不同任务的锚视图定义如下:

锚视图定义 说明
结构精炼 使用原始邻接矩阵作为锚结构:\(A_a = A\)
结构推断 使用单位矩阵作为锚结构:\(A_a = I\)

锚视图不通过梯度下降更新,而是通过结构自举机制进行更新,以保持目标的稳定性。

数据增强

为探索更丰富的语义信息并增加学习难度,作者在结构和特征两个层面应用了两种简单而有效的增强方案:

增强方案 说明 公式描述
特征掩码 随机选择一部分特征维度并将其掩码为 0 对于特征矩阵 \(X\),采样一个掩码向量 \(m^{(x)} \in \{0,1\}^d\)(每个元素以概率 \(p^{(x)}\) 为 1),则增强后的特征为 \(\overline{X} = [x_1 \odot m^{(x)}, \cdots, x_n \odot m^{(x)}]^{\top}\)
边丢弃 随机丢弃图中一部分边 对于邻接矩阵 \(A\),采样一个掩码矩阵 \(M^{(a)} \in \{0,1\}^{n \times n}\)(每个元素以概率 \(p^{(a)}\) 为 1),则增强后的邻接矩阵为 \(\overline{A} = A \odot M^{(a)}\)

SUBLIME 联合使用这两种增强来生成增强后的学习者视图和锚视图:

\[\overline{\mathcal{G}}_l = \left( \mathcal{T}_{ed}(S), \mathcal{T}_{fm}(X) \right), \quad \overline{\mathcal{G}}_a = \left( \mathcal{T}_{ed}(A_a), \mathcal{T}_{fm}(X) \right) \]

其中,\(\mathcal{T}_{ed}\)\(\mathcal{T}_{fm}\) 分别表示边丢弃和特征掩码变换:

组件 概率设置 原因
特征掩码 使用不同的概率:\(p_l^{(x)} \neq p_a^{(x)}\) 在两个视图中引入不同的上下文
边丢弃 使用相同的丢弃概率:\(p^{(a)}\) 两个视图的邻接矩阵本身已差异显著

节点级对比学习

在获得两个增强视图后,通过类似 SimCLR 的节点级对比学习来最大化它们之间的互信。首先使用GNN 编码器 \(f_{\theta}(\cdot)\)从增强图中提取节点表示,本文使用 2 层GCN:

\[H_l = f_{\theta}(\overline{\mathcal{G}}_l), \quad H_a = f_{\theta}(\overline{\mathcal{G}}_a) \]

然后使用一个 MLP 投影头 \(g_{\varphi}(\cdot)\) 将表示映射到另一个计算对比损失的潜在空间:

\[Z_l = g_{\varphi}(H_l), \quad Z_a = g_{\varphi}(H_a) \]

使用对称归一化的温度缩放交叉熵损失(NT-Xent)来最大化同一节点在两个视图中的投影 \(z_{l,i}\)\(z_{a,i}\) 之间的一致性:

\[\begin{aligned} \mathcal{L} &= \frac{1}{2n} \sum_{i=1}^{n} \left[ \ell(z_{l,i}, z_{a,i}) + \ell(z_{a,i}, z_{l,i}) \right] \\ \ell(z_{l,i}, z_{a,i}) &= \log \frac{e^{\text{sim}(z_{l,i}, z_{a,i}) / t}}{\sum_{k=1}^{n} e^{\text{sim}(z_{l,i}, z_{a,k}) / t}} \end{aligned} \]

其中,\(\text{sim}(\cdot, \cdot)\) 是余弦相似度,\(t\) 是温度参数。

结构自举机制

如果锚结构 \(A_a\) 始终保持不变,如固定为原始图 \(A\) 或单位矩阵 \(I\),这会带来三个问题:

锚结构不变的问题 说明
错误信息继承 原始图中的噪声会持续污染学习过程,如缺失或冗余边
缺乏持续指导 一旦模型捕捉到固定锚图中的有限信息,后续训练将缺乏有效监督
对锚结构的过拟合 学到的结构会倾向于机械地模仿固定的锚结构,导致性能上限受限

为解决这些问题,本文受自举学习算法启发,设计了一个结构自举机制。其核心思想是:用学到的结构 \(S\)缓慢移动平均来逐步更新锚结构 \(A_a\),而非保持其不变。具体而言,给定一个衰减率 \(\tau \in [0,1]\),每 \(c\) 次迭代按如下方式更新锚结构:

\[A_a \leftarrow \tau A_a + (1 - \tau) S \]

这个机制有如下优势:

结构自举机制优势 说明
噪声衰减 随着更新,噪声边的权重在 \(A_a\) 中逐渐减小
目标进化 学习目标 \(A_a\) 在训练过程中动态进化,能持续提供新的有效信息,避免过拟合和训练停滞
自我增强 利用已学到的知识来改进学习目标,推动模型不断发现更优的结构
训练稳定 缓慢移动平均(通常设置 \(\tau > 0.99\))保证了训练的稳定性

训练流程

模型训练流程如伪代码所示,训练完成后将获得最终学习到的图拓扑 \(S\)
image

为将 SUBLIME 扩展到大规模图上,避免 \(O(n^2)\) 的复杂度,作者采用了以下措施:

扩展性机制 说明
度量学习类学习器 避免 FGP 学习器的大量参数
局部敏感哈希近似 在对 KNN 稀疏化中采用,于批处理中寻找近邻
小批次对比学习 不在全图上计算对比损失
增大自举更新的迭代间隔 \(c\) 例如 \(c \ge 10\),减少存储自举结构的内存开销

实验结果

数据集和实验设置

使用节点分类和节点聚类任务来评估学到的图拓扑的质量:

下游评估任务 说明
节点分类 在结构推断(从特征建图)和结构精炼(优化原始图)两种场景下进行,以 ACC 为指标
节点聚类 在结构精炼场景下进行,使用四个聚类指标:C-ACC、NMI、F1 和 ARI

在 8 个真实世界基准数据集上进行评估:

数据集类型 数量 数据集名称
图数据集 4 Cora, Citeseer, Pubmed, ogbn-arxiv
非图数据集 4 Wine, Cancer, Digits, 20news

节点分类任务对比了三类方法:

节点分类算法 对比模型
结构固定的 GNN GCN, GAT, GraphSAGE
有监督的深度 GSL LDS, GRCN, Pro-GNN, GEN, IDGL, SLAPS
无监督或弱监督的图改进方法 GDC, SLAPS-2s
传统分类器(结构推断) 逻辑回归、线性 SVM、MLP

节点聚类任务对比了三类方法:

节点聚类算法 对比模型
基于特征的方法 K-means, 谱聚类
基于结构的方法 DeepWalk, DNGR 等
属性图聚类方法 VGAE, ARGA, AGC, DAEGC

对比实验

结构推断场景下的节点分类性能如下表所示,在完全无标签指导的情况下,SUBLIME 在 8 个数据集中的 3 个上取得了最佳性能,并在其余数据集上获得次优结果。这说明了其通过自监督对比学习引导 GSL 的有效性。使用 kNN 图作为输入的固定结构 GNNs 通常优于传统特征分类器,说明考虑样本间关系是有益的。GSL 方法普遍优于固定结构的 GNNs,表明了结构优化的重要性。无监督 GSL 方法(如 SUBLIME, GDC, SLAPS-2s)能够取得与有监督方法相竞争的结果,显示了无监督范式的潜力。
image
结构精炼场景下的节点分类性能如下,可见 SUBLIME 的性能优于或相当于所有基线方法,包括有监督的 GSL 方法。这表明 SUBLIME 能够有效地利用自监督信号来改进原始(可能带噪声的)图。
image
结构精炼场景下的节点聚类性能如下表所示,可见 SUBLIME 在大多数指标上超越了基线方法。这验证了其学到的拓扑结构具有通用性,不仅适用于其训练目标(对比学习),也能显著提升其他下游任务(如聚类)的性能。
image

消融实验

通过调整结构自举机制中的衰减率 \(\tau\) 来验证其必要性,当 \(\tau = 1\) 时锚图永不更新(即无自举机制)。不使用自举机制(\(\tau=1\))时,分类准确率平均下降约 1.5%,证明了该机制能提升所学图的质量。
image
\(\tau=1\) 时,训练约 1500 轮后会出现明显的性能下降,表明缺乏动态目标导致后期缺乏有效监督。\(\tau\) 在 [0.999, 0.99999] 区间内时,性能能稳定收敛到较高水平。\(\tau\) 过小(如0.99)会导致更新过于激进,早期学习到的欠佳结构会快速污染锚图,可能引起训练不稳定和性能下降。
image

敏感性分析

对于锚视图的特征掩码概率 \(p^{(x)}\),结果可见在 0.6~0.8 之间时效果较好。学习者视图的掩码概率 \(p_l^{(x)}\) 在 0~0.7 之间时,模型表现相对不敏感。概率过大(>0.8)会过度破坏特征信息,导致性能下降。对于 kNN 邻居数 \(k\),不同数据集有不同的最优 \(k\) 值(Cora: 30, Citeseer: 20, Pubmed: 15)。\(k\) 过大或过小都会损害性能:\(k\) 太小会限制有益邻居的数量;\(k\) 太大会引入噪声连接。
image

鲁棒性分析

在 Cora 数据集上通过随机删除或添加一定比例(0% 到 90%)的边来模拟不同强度的对抗性攻击,并比较 SUBLIME 与 GCN 及抗攻击 GSL 方法 Pro-GNN 的表现。结果可见 SUBLIME 在两种攻击设置下均取得优于或相当的结果,当边删除率很高(攻击强度大)时,SUBLIME 表现出更显著的性能优势,证明其对严重的结构破坏具有更强的鲁棒性。
image

可视化分析

从 Cora 数据集中选取两个类别(Case Base 和 Rule Learning)的节点及其连接进行可视化,对比原始图、有监督 GSL 方法 Pro-GNN 学到的图和 SUBLIME 学到的图。可视化可见与原始图相比,SUBLIME 学到的图中类内边显著增多,类间边很少,说明其能有效发现语义相似节点间的连接。Pro-GNN 学到的图中,有标签节点之间的连接远多于无标签节点,体现了监督信号带来的边分布偏差。SUBLIME 为同一类别内的所有节点(无论是否有标签)都平等地建立了连接,展现了其无监督学习的均衡性优势。
image

优点和创新点

个人认为,本文有如下一些优点和创新点可供参考学习:

  1. 提出无监督图结构学习范式,实现了无需外部标注、仅从数据自身学习通用图拓扑结构的方法。
  2. 涉及了融合对比学习与结构自举的创新框架,通过构建双视图对比损失提供自监督信号,并利用可自我进化的锚图实现持续稳定的结构优化。
posted @ 2026-04-02 20:04  乌漆WhiteMoon  阅读(36)  评论(0)    收藏  举报