Page 186 - 《软件学报》2026年第1期
P. 186
刘子扬 等: 图对比学习方法综述 183
已被证明能够训练出有效的节点嵌入表征, 该表征可用于包括节点分类、图分类、链接预测等一系列下游任务.
从理论上来看, 图对比学习中使用的图神经网络已被证明可以和 Weisfeiler-Lehman 图同构测试同样有效 [60] ; 从实
用性角度来看, 图对比学习不仅在通用的图挖掘任务上奏效, 在推荐系统、异常检测等任务上也有不错的应用效
果 [49,50,61−64] . 因此, 针对某一具体任务如何设计图对比学习算法, 就变得十分迫切且有意义.
对比学习这一思想最早在 2014 年被大家所研究. 当时 Chopra 等人 [65] 首次提出了孪生结构, 在这一结构中, 模
型从数据本身学习出相似性度量, 并且模型学习使用的编码函数同时处理由原始数据生成的两组数据. 之后, 众多
不同的对比学习工作被相继提出. 比较典型的对比学习算法包括: (1) Skip-thought vectors [66] : 一种基于循环神经网
络的对比学习方法, 通过将一组连续的句子视为一个整体来学习其语义表示. 该方法通过将前文和后文的句子进
行比较来学习语义信息, 从而在无标签数据集上进行训练. (2) Paragraph2Vec [67] : 一种基于神经网络的对比学习方
法, 用于学习文本段落的向量表示. 该方法通过将不同的段落进行比较来学习其语义信息, 从而能够捕捉到文本中
的复杂模式. (3) SimCLR [68] : 一种轻量级的对比学习方法, 用于学习图像的向量表示. 该方法通过将不同的图像进
行比较来学习其视觉信息, 从而能够捕捉到图像中的细微差别. (4) InfoMin [69] : 一种基于信息论的对比学习方法,
旨在最大化不同视图之间的信息量. 该方法通过使用随机游走或扩散过程来生成多个视图, 并使用神经网络来学
习视图之间的相似性. (5) Disentanglement [70] : 一种基于分解的对比学习方法, 旨在将数据中的不同因素或模式进
行解耦, 从而更好地学习数据的特性. 该方法使用随机游走或扩散过程来生成多个视图, 并使用神经网络来学习视
图之间的相似性.
图对比学习研究早在 2019 年就已被众多学者所关注. 作为早期的图对比学习算法之一, 2019 年, Veličković等
人 [39] 提出了 DGI 算法, 这一算法基于信息论中的互信息概念构建了自监督图学习的优化目标, 并适用于截断式学
习和直推式学习两种图学习模式. 在此之后, 不少图对比学习算法被相继提出. 比如, (1) GraphCL [40] : 一种针对图
数据的对比学习方法, 通过使用负采样技术来采样无标签的图数据. 该方法通过将同一个图的不同视图进行比较
来学习其相似性, 并将不同图的视图进行比较来学习其差异性. GraphCL 可以用于多图分类、推荐系统等任务.
(2) GRACE [41] : 一种基于 InfoNCE 损失函数的图对比学习方法. 基于原始输入图, GRACE 通过添加随机扰动生成
两个图视角, 并在两个图视角之间最大化同一节点的表征相似性以及最小化不同节点的表征相似性.
随着时间的推移, 图对比学习的研究方向逐渐偏向学习结构的设计以及在不同任务中如何有效地融入图对比
学习. 前者侧重于分析并重新设计图对比学习中不同阶段的模型结构, 后者则侧重于将图对比学习作为主要或辅
助技术应用于实际问题, 以期最大程度地发挥图对比学习在解决实际问题时的效益. 图对比学习方法种类繁多, 它
们往往会在每个阶段采用不同的方案设计. 以图数据增强阶段为例, InfoGraph [42] 和 GraphCL [40] 等图对比学习算法
采用了固定式的图数据增强设计; AD-GCL [43] 、LP-InfoMin [44] 和 LP-InfoBN [44] 等图对比学习算法采用了可学习的
图数据增强设计; 最近两年, 研究人员开始关注无增强的图对比学习算法的设计, 这类算法往往不需要对输入的图
数据进行增强, 可直接应用于原图进行对比学习, 其中代表性的工作包括 SimGRACE [45] 、SimGCL [46] 和 AFGRL [47] .
[49]
[50]
[48]
此外, 针对不同的应用任务, 图对比学习的设计也会相应地有所不同. 例如: RGCL 、AdaGCL 、KGCL 、HGCL [61]
[62] [63] [64]
等是针对推荐系统任务特殊设计的图对比学习算法; GCCAD 、SL-GAD 、ANEMONE 等则是针对异常检
测任务特殊设计的图对比学习算法.
2 图对比学习相关概念及定义
本节就图对比学习算法的相关概念和基本知识予以介绍. 图对比学习的基本流程如图 2 所示. 图对比学习算
法一般包括: 图数据增强、图神经网络编码和对比训练这 3 个阶段. 在第 1 个阶段中, 图数据增强的主要目的是基
ˆ
ˇ
G、G; 在第 2 个阶段中, 图神经网络编码的主要目的是接收图视角
于输入的原始图数据 G, 生成两个新的图视角
ˆ ˇ ˆ Z、 ˇ Z; 在第 个阶段中, 对比训练的主要目的是基于节点嵌入表
G、G, 进而提取出两个图视角上的节点嵌入表征 3
ˆ Z、 ˇ Z, 设计一个图对比学习优化目标
征 (例如 InfoNCE 损失函数), 同时使得同一节点的表征相似度最大化且不
同节点的表征相似度最小化. 以下是 3 个阶段在常规情况下的具体介绍与形式化表示.

