2023年图对比学习论文解读

论文题目:Boosting Graph Contrastive Learning via Graph Contrastive Saliency

代码链接:https://github.com/weicy15/GCS

会议:Proceedings of the 40 th International Conference on Machine Learning

目录

摘要

1 引言

2 公式说明

2.1 图表示学习

2.2 图对比学习

3 方法详解

3.1 图对比学习的无监督语义筛选

图对比显著性

迭代优化

3.2 基于图对比显著性的增强

4 实验

4.1 与最先进方法的比较(RQ1)

4.2 GCS捕获语义的有效性(RQ2) 

4.3 消融实验

摘要

主流的图对比学习(GCL)往往倾向于随机图增强,通过依赖于图上的随机节点放弃边缘扰动。随机增强不可避免地会导致训练过程中语义信息的损坏,并迫使网络错误地关注语义不相关的环境背景结构。

为了解决这些限制并提高泛化,我们提出了一种新的GCL自监督学习框架,该框架可以利用所提出的基于梯度的图对比显著性(saliency)(GCS)自适应筛选出图中与语义相关的子结构。

其目标是通过对比学习来识别图中最具语义判别性的结构,这样我们就可以通过利用显著性来生成语义上有意义的增强。

1 引言

图神经网络(gnn)是非欧几里德结构数据建模的强大框架。GNN需要标注,相比之下,自监督学习(SSL)可以在没有标记工作的情况下对模型进行有效的表示学习。

对比学习是SSL最流行的范例之一,图对比学习(GCL)技术开始出现( 2020)。在不同的算法变体中,有效的图增强构造是GCL方法取得成功的基础。

这导致了实现良好的表示泛化的两点内在缺陷:

•语义信息损坏。随机增强容易破坏图的语义信息,破坏图的预测结构。例如,分子中的特定拓扑结构对化学功能至关重要。随机增大可能会破坏这种结构。

•过分强调环境信息。图的预测结构有时仅由一小部分节点/边子集决定,其余大多数节点/边是与语义无关的环境背景信息。随机增强可能会错误地鼓励gnn在对比学习期间关注主导背景信息,而不是语义。

因此本文提出了无监督图对比显著性(GCS)学习方法,GCS方法不需要下游任务知识。GCS仅利用基于梯度的显著性度量(gradient-based saliency measurements)来帮助分解图的语义和环境背景结构。

利用GCS的语义和环境结构分解,我们提出的增强方法 (1)构建GCL的正样本对,保留图中的语义; (2)通过故意破坏下一个GCL的已识别语义构建负样本,来抑制环境背景信息。供后续图卷积层训练使用。(这段话实际上就是讲了如何构建正负样本)    

2 公式说明

2.1 图表示学习

图表示学习旨在学习一个编码器f,得到的图嵌入可以进一步用于下游任务。在下游任务中,为每个图分配一个标签。我们学习另一个模型q来预测标签,可以表示为q(f(Gi))。

我们采用GNNs作为编码器f,第k次迭代中,在第k次迭代中,使用节点v的邻域eq?N_%7Bv%7D更新v节点表示eq?%5Ctextbf%7Bh%7D_%7Bv%7D%5E%7Bk-1%7D,节点v的向量表示为:

7ca9b2e2cb204231bc37c1d22e7122e2.png

其中eq?f_%7Baggregate%7D%28%5Ccdot%20%29是一个可训练函数,它将节点表示集映射到一个聚合向量,eq?f_%7Bcombine%7D是另一个可训练函数,它将节点v的当前表示eq?%5Ctextbf%7Bh%7D_%7Bv%7D%5E%7Bk-1%7D和聚合向量映射到v的更新表示eq?%5Ctextbf%7Bh%7D_%7Bv%7D%5E%7Bk%7D。 

按照上面公式的定义,经过消息传递的K次迭代后,大多数GNN后面会使用池化技术,得到图表示为:

3b8de68a042940d59264078bbcf5b007.png

现有的图表示学习方法一般在eq?f_%7Bcombine%7Deq?f_%7Baggregate%7D%28%5Ccdot%20%29eq?f_%7Bpool%7D三个方面做文章。

2.2 图对比学习

图对比学习(GCL)通常遵循InfoMax原则(1988),其目的是学习一个使图与其表示之间的互信息或对应关系最大化的编码器f(·):

204d32a30eb644fc8725518e99b1ad74.png

为了优化上式, GCL方法通常学习f(·)使得语义相似的样本(正样本对)互相靠近,并将与图G语义上不同的图样本(即负样本)推离G。正样本对通常通过图上的节点扰动等图数据增强(GDA)过程生成。GCL的目标为:

9cab7b54e3eb4865a88a269ced3d7403.png

在实践中,互信息I(·,·)通常很难估计,可以用对比损失函数来近似,比如NCE,InfoNCE。

3 方法详解

我们的动机有以下两个:

①识别训练数据中哪些部分/节点最能保留图的语义内容,这部分代表图的内在真实潜在类别;

②识别互补节点,即"环境"的变化会引起语义无关部分变化,这个部分称为互补节点(与①中语义内容互补)。

通过这种"语义"和"环境"的分解,GCS可以生成多样化的数据增强,提高语义相似图之间的不变性,并抑制环境变化带来的虚假相关性。然后使用增强来构造正负样本,以较小的偏差进行后续的图对比学习,从而提高泛化能力。

3.1 图对比学习的无监督语义筛选

GCS的总体框架如下图所示。蓝色节点表示语义信息,而红色节点表示环境信息。在每次迭代中,左上为原始图,左下为前一次迭代得到的残差图(通过掩码原始图中新获得的显著性节点)。右下子图表示模型学习到的显著性得分,颜色越深表示显著性得分越高。右上是GCS通过对右下图的显著性分数进行阈值处理而确定的语义节点和环境节点的合成图。GCS通过多次迭代对显著性结果进行细化,并在第三次迭代中得到最终的增广,即右上图。

7d852fab400647c7b04fe2e3815c0a9c.png

图对比显著性(GCS)迭代(T = 3)过程及基于GCS生成的增强视图。蓝色:语义内容;红色:环境内容;灰色(较深):显著性得分(较高);黑色:最终语义通过阈值显著性得分;白色:最终环境内容的阈值显著性得分。 

图对比显著性

基本思路是在G '上寻找使互信息I(G ', G)最大化的关键语义子结构,其中G ' = t(G)是语义相似的图G的增积。同时,这些子结构应保持判别性,以区分G与其他图。

基本思路是在G '上寻找使互信息I(G ', G)最大化的关键语义子结构,其中G ' = t(G)是语义相似的图G的增积。同时,这些子结构应保持其独特性,以区分G与其他图。我们将图表示定义为:

40f67e8171fc43a68a4e5d7fefff7f4b.png

其中eq?%5Ctextbf%7Bh%7D_%7Bv%7D%5Cin%20%5Cmathbb%7BR%7D%5Ed是节点v的最后一层(第K层)表示eq?%5Ctextbf%7Bh%7D_%7Bv%7D%5E%7Bk%7D,为了简单起见,我们省略了它的下标K。通过计算互信息eq?I%5Cleft%20%28h_%7B%7BG%7D%27%7D%2Ch_%7BG%7D%20%5Cright%20%29相对于eq?h_%7Bv%7D%2Cv%5Cin%20%7BV%7D%27的第p维的梯度,来定位G的语义上重要的子结构:

23589b3c927948e2bcc6eb1396be5146.png

维度p的“重要性权重”为:

c57631b6ffb64874b2b78247bba0b4c4.png

其中ReLU(·)用于丢弃负信号。我们将每个节点v的显著性分数eq?%5Comega%20_%7Bv%7D定义为节点表示的所有维度的加权和,得到: 

bf23746149054d09826fc20e7c373e10.png

对于边显著性分数,取相应节点显著性分数的平均值:2。在计算节点和边的显著性分数后,在超参数eq?%5Cphi_%7Bnode%20%7D%2C%5Cphi_%7Bedge%7D处分别用阈值法对分数进行二值化以生成相应的节点掩码向量eq?M_%7BV%7D%5Cin%20%5Cmathbb%7BR%7D%5E%7B%7CV%7C%7D和边掩码向量eq?M_%7BE%7D%5Cin%20%5Cmathbb%7BR%7D%5E%7B%7CE%7C%7D,即:

4cb7917018a24fafba8cc31de78bc001.png

迭代优化

移除旧的已识别的语义内容来构建新的G ',再计算新的互信息I(hG ', hG),然后识别G '中剩余的新的显著结构,使新的I(hG ', hG)最大化,最后更新Eq.(4)。这个过程可以迭代多次来最好地筛选G中的语义结构,并得到最终的显著性分数eq?%5Comega%20_%7Bv%7D

这里第t次迭代中的显著区域将在Gt+1中被掩盖,这使得我们的GCS过程能够探索未被掩盖的区域。迭代T次后,我们使用T时刻的掩码向量eq?M_V%5ETeq?M_E%5ET作为节点掩码,表示该节点或边是否被认为是图g的语义。

b4a770c2f5304abd8419ec2199c51e39.png

3.2 基于图对比显著性的增强

在第4.1节中获得掩码eq?M_V%5ETeq?M_E%5ET之后,将输入图G分解为语义子图eq?G%5Es和环境子图eq?G%5Ee,在此基础上生成新的增强。

4 实验

实验解决以下两个研究问题:

RQ1:提出的基于GCS的增强是否提高了预训练主干在下游任务上的性能?

RQ2: GCS在图中捕获语义上重要的结构方面有多有效?

4.1 与最先进方法的比较(RQ1)

对于无监督图级分类任务,我们使用未标记数据使用不同的GCL方法训练图编码器,然后使用标记数据固定表示模型并训练分类器。我们使用来自TU Dataset 数据集,使用隐藏层维度为128的5层GIN (2019)作为图编码器,并使用SVM(support vector machines)作为分类器。GIN训练的batch size为128,学习率为0.001。

实验结果与三类方法进行比较,①图核方法,如Graphlet Kernel (GL) 、WeisfeilerLehman子树Kernel (WL) 和Deep Graph Kernel (DGK) ;②其他无监督图学习方法,如node2vec 、sub2vec 和graph2vec;③最近的GCL方法,如InfoGraph、GraphCL、JOAO、AD-GCL 和RGCL。

921051a4f0a542ec8e2ebf52001abde9.png

4.2 GCS捕获语义的有效性(RQ2) 

实验在MNIST-Superpixel数据集上对捕获语义的GCS的有效性进行了评估。

图2说明了GCS有效捕获语义的能力,这些高质量的正样本可以帮助图编码器在对比学习过程中避免语义损坏。相反,GraphCL的随机增强方法可能会删除语义上必要的节点,从而导致显著的语义变化。例如,GraphCL方法无法识别9的右下部分,从而将其语义信息从9更改为0。类似地,在GraphCL视图中,8的语义被转换为与6有点相似的语义。

e2809a56ac574fc787210ebaf38f02c8.png

4.3 消融实验

这个部分验证本文提出的semantic-preserving augmentation 和 hard negative augmentation 两个部分的有效性。

2be27853c27f4efca91133d20b32e6d7.png

 

 

 

  • 28
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值