论文解读(GCA)《Graph Contrastive Learning with Adaptive Augmentation》
论文信息
论文标题:Graph Contrastive Learning with Adaptive Augmentation
论文作者:Yanqiao Zhu、Yichen Xu3、Feng Yu4、Qiang Liu、Shu Wu、Liang Wang
论文来源:2021, WWW
论文地址:download
论文代码:download
1 介绍
出发角度:倾向于保持重要的结构和属性不变,同时干扰可能不重要的边连接和特征。
自适应数据增强方面:
- 拓扑结构:基于节点中心性度量,突出重要连接;
- 语义信息:对不重要的节点属性添加噪声;
2 方法
2.1 框架及算法
框架如下:

算法流程:

编码器:
$\begin{aligned}\mathrm{GC}_{i}(\boldsymbol{X}, \boldsymbol{A}) &=\sigma\left(\hat{D}^{-\frac{1}{2}} \hat{\boldsymbol{A}} \hat{D}^{-\frac{1}{2}} \boldsymbol{X} \boldsymbol{W}_{i}\right)\quad\quad\quad(12) \\f(\boldsymbol{X}, \boldsymbol{A}) &=\mathrm{GC}_{2}\left(\mathrm{GC}_{1}(\boldsymbol{X}, \boldsymbol{A}), \boldsymbol{A}\right)\quad\quad\quad(13)\end{aligned}$
损失函数
$\mathcal{J}=\frac{1}{2 N} \sum\limits _{i=1}^{N}\left[\ell\left(\boldsymbol{u}_{i}, v_{i}\right)+\ell\left(v_{i}, \boldsymbol{u}_{i}\right)\right]\quad\quad\quad(2)$
其中:
$log {\large \frac{e^{\theta\left(u_{i}, v_{i}\right) / \tau}}{\underbrace{e^{\theta\left(\boldsymbol{u}_{i}, \boldsymbol{v}_{i}\right) / \tau}}_{\text {positive pair }}+\underbrace{\sum_{k \neq i} e^{\theta\left(\boldsymbol{u}_{i}, \boldsymbol{v}_{k}\right) / \tau}}_{\text {inter-view negative pairs }}+\underbrace{\sum_{k \neq i} e^{\theta\left(\boldsymbol{u}_{i}, \boldsymbol{u}_{k}\right) / \tau}}_{\text {intra-view negative pairs }}}}\quad\quad\quad(1) $
2.2 Adaptive Graph Augmentation
2.2.1 Topology-level augmentation
利用 $\text{Eq.3}$ 中的概率从原始边集合中采样一个边子集合
$P\{(u, v) \in \widetilde{\mathcal{E}}\}=1-p_{u v}^{e}\quad\quad\quad(3)$
其中:
- $(u, v) \in \mathcal{E}$;
- $p_{u v}^{e}$ 是删除边 $ (u, v)$ 的概率;
- $\widetilde{\mathcal{E}}$ 将作为生成视图的边集合;
分析知: $p_{u v}^{e}$ 应该反映边 $ (u, v)$ 的重要性,目的是为了加大破坏不重要的边的可能,同时在增强视图中保持重要的边。
节点中心性量化了节点的重要性,本文为边 $(u, v)$ 定义边中心性 $w_{u v}^{e}$,用于衡量边$(u, v)$ 对两个相连节点的影响。给定节点中心性度量 $\varphi_{c}(\cdot): \mathcal{V} \rightarrow \mathbb{R}^{+}$,将边中心性定义为两个相邻节点中心性得分的均值,即 $w_{u v}^{e}=\left(\varphi_{c}(u)+\varphi_{c}(v)\right) / 2$。在有向图上,只使用尾部节点的中心性,即 $w_{u v}^{e}=\varphi_{c}(v) $,因为边的重要性通常是它们指向的节点。
接下来,根据每条边的中心性值来计算它的概率。由于采用度作为节点中心性这种度量方法在不同数量级上变化差别过大,所以本文首先设置 $s_{u v}^{e}=\log w_{u v}^{e}$ 以缓解具有高度密集连接的节点的影响。然后通过将边中心性的值转换为概率:
$p_{u v}^{e}=\underset{}{\text{min}} \left(\frac{s_{\max }^{e}-s_{u v}^{e}}{s_{\max }^{e}-\mu_{s}^{e}} \cdot p_{e}, \quad p_{\tau}\right)\quad\quad\quad(4)$
其中,$p_{e}$ 是一个控制去除边的总体概率的超参数,$s_{\max }^{e}$ 和 $\mu_{s}^{e}$ 是 $s_{u v}^{e}$ 的最大值和平均值。而 $p_{\tau}<1$ 是一个临界概率(cut-off probability),对于边中心性高的边,采用 $p_{\tau}$ 删除,用于降低重要边被删除的可能性,对于边中心性低的边,采用 ${\large \frac{s_{\max }^{e}-s_{u v}^{e}}{s_{\max }^{e}-\mu_{s}^{e}} \cdot p_{e}} $ 删除,用于提高不重要的边被删除的可能性。
这里提供三种 节点中心性度量 方法:
1、点度中心性(Degree centrality):节点度本身可以是一个中心性度量。在有向网络上,使用内度,因为有向图中的一个节点的影响主要是由指向它的节点赋予的。
2、特征向量中心性(Eigenvector centrality):基本思想是一个节点的中心性是相邻节点中心性的函数。也就是说,与你连接的人越重要,你也就越重要。
3、PageRank中心性(PageRank centrality):基于有向图
对于 PageRank 中心性分数计算公式如下:
$\sigma=\alpha A D^{-1} \sigma+1\quad\quad\quad(5)$
其中,$\sigma \in \mathbb{R}^{N}$ 是每个节点的 PageRank中心性得分的向量,$\alpha$ 是一个阻尼因子,它可以防止图中的 sinks 从连接到它们的节点中吸收所有 ranks。这里设置$\alpha=0.85$。对于无向图,我们对转换后的有向图执行PageRank,其中每条无向边都被转换为两条有向边。
例子:

从图中可以看出,三种方案存在细微差别,但都强调了连接两个教练(橙色节点)的边,而较少关注边缘节点。
2.2.2 Node-attribute-level augmentation
节点特征隐藏:
$\widetilde{\boldsymbol{X}}=\left[x_{1} \circ \tilde{\boldsymbol{m}} ; \boldsymbol{x}_{2} \circ \tilde{\boldsymbol{m}} ; \cdots ; \boldsymbol{x}_{N} \circ \widetilde{\boldsymbol{m}}\right]^{\top}$
其中:$\widetilde{m}_{i} \sim \operatorname{Bern}\left(1-p_{i}^{f}\right)$,即用 $1-p_{i}^{f}$ 的概率取 $1$,用 $p_{i}^{f}$ 的概率取 $0$ ;
这里 $p_{i}^{f}$ 应该反映出节点特征的第 $i$ 个维数的重要性。我们假设经常出现在有影响的节点中的特征维度应该是重要的,并定义特征维度的权重如下。
对于稀疏的 one-hot 节点特征,即$x_{u i} \in\{0,1\}$,对于任何节点 $u$ 和特征维 $i$,我们计算维度 $i$ 的权重为
$w_{i}^{f}=\sum\limits _{u \in \mathcal{V}} x_{u i} \cdot \varphi_{c}(u)\quad\quad\quad(7)$
其中,$\varphi_{c}(\cdot)$ 是一个用于量化节点重要性的节点中心性度量。第一项 $x_{u i} \in\{0,1\}$ 表示节点 $u$ 中维度 $i $ 的出现,第二项 $\varphi_{i}(u)$ 表示每次出现的节点重要性。
对于稠密、连续的节点特征 $\boldsymbol{x}_{u}$,其中 $x_{u i}$ 表示节点 $u$ 在维度 $i$ 处的节点特征的值,这里不能按上述稀疏情况下的计算方式。本文用绝对值 $\left|x_{u i}\right|$ 来测量节点 $u$ 的 $i$ 维的特征值的大小:
$w_{i}^{f}=\sum\limits _{u \in \mathcal{V}}\left|x_{u i}\right| \cdot \varphi_{c}(u)\quad\quad\quad(8)$
与 Topology-level augmentation 类似,我们对权值进行归一化,以获得表示特征重要性的概率。形式上:
${\large p_{i}^{f}=\min \left(\frac{s_{\max }^{f}-s_{i}^{f}}{s_{\max }-\mu_{s}^{f}} \cdot p_{f}, p_{\tau}\right)} \quad\quad\quad(9)$
其中,$s_{i}^{f}=\log w_{i}^{f}$,$s_{\max }^{f}$ 和 $\mu_{s}^{f}$ 分别为 $ s_{i}^{f}$ 的最大值和平均值, $p_{f}$ 是控制特征增强的总体幅度的超参数。
3 实验
3.1 数据集

【 Wiki-CS、Amazon-Computers、Amazon-Photo、Coauthor-CS、Coauthor-Physics 】
3.2 实验结果
基线实验:

消融实验:

灵敏度分析:

4 总结
开发了一种自适应数据增强对比学习框架。
论文解读(GCA)《Graph Contrastive Learning with Adaptive Augmentation》的更多相关文章
- 论文解读(SimGRACE)《SimGRACE: A Simple Framework for Graph Contrastive Learning without Data Augmentation》
论文信息 论文标题:SimGRACE: A Simple Framework for Graph Contrastive Learning without Data Augmentation论文作者: ...
- 论文解读(GROC)《Towards Robust Graph Contrastive Learning》
论文信息 论文标题:Towards Robust Graph Contrastive Learning论文作者:Nikola Jovanović, Zhao Meng, Lukas Faber, Ro ...
- 论文解读(GGD)《Rethinking and Scaling Up Graph Contrastive Learning: An Extremely Efficient Approach with Group Discrimination》
论文信息 论文标题:Rethinking and Scaling Up Graph Contrastive Learning: An Extremely Efficient Approach with ...
- 论文解读(MLGCL)《Multi-Level Graph Contrastive Learning》
论文信息 论文标题:Structural and Semantic Contrastive Learning for Self-supervised Node Representation Learn ...
- 论文阅读 Dynamic Graph Representation Learning Via Self-Attention Networks
4 Dynamic Graph Representation Learning Via Self-Attention Networks link:https://arxiv.org/abs/1812. ...
- 论文解读《Deep Resdual Learning for Image Recognition》
总的来说这篇论文提出了ResNet架构,让训练非常深的神经网络(NN)成为了可能. 什么是残差? "残差在数理统计中是指实际观察值与估计值(拟合值)之间的差."如果回归模型正确的话 ...
- 论文解读(SUGRL)《Simple Unsupervised Graph Representation Learning》
Paper Information Title:Simple Unsupervised Graph Representation LearningAuthors: Yujie Mo.Liang Pen ...
- 论文解读(GraphDA)《Data Augmentation for Deep Graph Learning: A Survey》
论文信息 论文标题:Data Augmentation for Deep Graph Learning: A Survey论文作者:Kaize Ding, Zhe Xu, Hanghang Tong, ...
- 论文解读(GRCCA)《 Graph Representation Learning via Contrasting Cluster Assignments》
论文信息 论文标题:Graph Representation Learning via Contrasting Cluster Assignments论文作者:Chun-Yang Zhang, Hon ...
随机推荐
- futter环境安装
镜像下载.域名解析.时间同步请点击 阿里巴巴开源镜像站 Flutter是谷歌开发的一款开源.免费的基于Dart语言的UI框架,可以快速在IOS和Android上构建高质量的原生应用.它的最大的特点是跨 ...
- EasyUI 之datagrid 使用 【DataGrid属性解释】
可选的参数 DataGrid 属性 覆写了 $.fn.datagrid.defaults. 参数名 类型 描述 默认值 title string Datagrid面板的标题 null iconCls ...
- 分治FFT/NTT
粘板子: #include<cstdio> #include<cstring> #include<algorithm> using namespace std; t ...
- Java思考——如何使用Comparable按照我们指定的规则排序?
练习: 存储学生对象并遍历,创建TreeSet集合使用无参构造方法,并按照年龄从小到大的顺序排序,若年龄相同再按照姓名的字母顺序排序 分析: 1.创建学生类,成员变量name,age;无参构造,带参构 ...
- overflow原理?
overflow: hidden能清除块内子元素的浮动影响. 因为该属性进行超出隐藏时需要计算盒子内所有元素的高度, 所以会隐式清除浮动 创建BFC条件(满足一个): float的值不为none: o ...
- 如果有大量的 key 需要设置同一时间过期,一般需要注意什么?
如果大量的 key 过期时间设置的过于集中,到过期的那个时间点,redis 可能 会出现短暂的卡顿现象.一般需要在时间上加一个随机值,使得过期时间分散一 些.
- 学习FastDfs(一)
一.简介 FastDFS是一个开源的轻量级分布式文件系统,由跟踪服务器(tracker server).存储服务器(storage server)和客户端(client)三个部分组成 fastfds有 ...
- 2.安装Spark与Python练习
一.安装Spark <Spark2.4.0入门:Spark的安装和使用> 博客地址:http://dblab.xmu.edu.cn/blog/1307-2/ 1.1 基础环境 1.1.1 ...
- Python - Datetime库简介
- 如何更愉快地使用em —— 别说你懂CSS相对单位
前段时间试译了Keith J.Grant的CSS好书<CSS in Depth>,其中的第二章<Working with relative units>,书中对relative ...