【论文阅读】Evaluating Modules in Graph Contrastive Learning

代码链接:https://github.com/thunlp/OpenGCL

摘要

图对比学习方法对比了语义上相似和不相似的样本对,以将语义编码为节点或图嵌入。然而,大多数现有的工作只进行了模型级的评估,并没有探索模块的组合空间来进行更全面和系统的研究。为了进行有效的模块级评估,我们提出了一个将GCL模型分解为四个模块的框架:

  1. 一个采样器,生成锚、正样本和负样本(节点或图);
  2. 一个编码器和一个读出函数,获得样本嵌入;
  3. 一个鉴别器,评分每个样本对(锚-正和锚-负);
  4. 一个估计器,定义损失函数。

在此框架上,我们在节点和图分类任务上进行了广泛的架构设计和超参数设置的控制实验。具体来说,我们设法量化单个模块的影响,研究模块之间的交互作用,并将整体性能与当前的模型架构进行比较。我们的关键发现包括一套针对GCL的模块级指南,例如,来自LINE和DeepWalk的简单采样器是强大和鲁棒的;与Sum读出相关的MLP编码器可以在图分类上实现竞争性能。最后,我们将我们的实现和结果发布为OpenGCL,这是一个模块化的工具包,可以方便地进行复制、标准模型和模块评估以及简单的扩展。

1 准备工作

给定图 G = ( V , E ) \mathcal{G}=(\mathcal{V},\mathcal{E}) G=(V,E),其中 V \mathcal{V} V是顶点集, E \mathcal{E} E是边集,图结构可以用邻接矩阵 A \pmb{A} AAA表示。在某些情况下,图 G \mathcal{G} G中的节点与特征 X \pmb{X} XXX相关联。图表示学习旨将图的子结构(节点、边、子图等)映射为低维嵌入。

在我们得到节点表示后,我们可以通过一个读出函数来总结图级表示。学习到的表示通常用于下游的图学习任务。本文主要研究了节点分类和图分类任务。

2 所提出的框架

我们提出了一个图对比学习的模块化框架,它由四个模块组成:

  1. 上下文采样器。 对于每个batch,上下文采样器选择一个锚 x x x,一个正上下文 k + k^+ k+ N N N个负上下文 { k i − } i = 1 N \{k_i^-\}^N_{i=1} {ki}i=1N
  2. 编码器。 编码器 E n c E_{nc} Enc将选定的数据点映射为分布向量。更具体地说,我们通过节点编码器学习节点嵌入,并通过接下来的读出函数获得图嵌入。
  3. 鉴别器。 鉴别器 D i s c Disc Disc根据每个锚-上下文对之间的一致性对该对进行评分。该评分函数定义为:
    在这里插入图片描述
  4. 互信息估计器。 互信息估计器 I E s t I_{Est} IEst定义了损失函数,它强制正对(锚和正上下文)的表示必须接近,负对(锚和负上下文)的表示是正交的。我们对优化目标的定义如下:
    在这里插入图片描述

接下来,我们将详细讨论每个模块可能的实例化。
在这里插入图片描述

2.1 采样器

在这里插入图片描述

2.2 编码器

在这里插入图片描述

2.3 鉴别器

大部分采用点积,而DGI双线性鉴别器。

2.4 估计器

在这里插入图片描述


在这里插入图片描述
表1总结了几种有影响力的算法如何一致地适应我们的框架。

3 实验

在这里插入图片描述
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值