论文信息

论文标题:Bootstrapped Representation Learning on Graphs
论文作者:Shantanu Thakoor, Corentin Tallec, Mohammad Gheshlaghi Azar, Rémi Munos, Petar Veličković, Michal Valko
论文来源:2021, ArXiv
论文地址:download 
论文代码:download

1 介绍

  研究目的:对比学习中不适用负样本。

  本文贡献:

    • 对图比学习不使用负样本

2 方法

2.1 整体框架(节点级对比)

   

    上面是 online network,下面是 target network 。

  步骤:

    • 步骤一:分别应用随机图增强函数 $\mathcal{A}_{1}$ 和 $\mathcal{A}_{2}$,产生 $G$ 的两个视图:$\mathbf{G}_{1}=   \left(\widetilde{\mathbf{X}}_{1}, \widetilde{\mathbf{A}}_{1}\right)$ 和 $\mathbf{G}_{2}=\left(\widetilde{\mathbf{X}}_{2}, \widetilde{\mathbf{A}}_{2}\right) $;
    • 步骤二:在线编码器从其增广图中生成一个在线表示 $\widetilde{\mathbf{H}}_{1}:=\mathcal{E}_{\theta}\left(\widetilde{\mathbf{X}}_{1}, \widetilde{\mathbf{A}}_{1}\right)$;目标编码器从其增广图生成目标表示 $\widetilde{\mathbf{H}}_{2}:=\mathcal{E}_{\phi}\left(\widetilde{\mathbf{X}}_{2}, \widetilde{\mathbf{A}}_{2}\right) $;
    • 步骤三:在线表示被输入到一个预测器 $p_{\theta}$ 中,该预测器  $p_{\theta}$  输出对目标表示的预测  $\widetilde{\mathbf{Z}}_{1}:=   p_{\theta}\left(\widetilde{\mathbf{H}}_{1}, \widetilde{\mathbf{A}}_{1}\right)$,除非另有说明,预测器在节点级别工作,不考虑图信息(仅在 $\widetilde{\mathbf{H}}_{1}$ 上操作,而不是 $\widetilde{\mathbf{A}}_{1}$)。

2.2 BGRL更新步骤

更新 $\theta$

  在线参数 $\theta$(而不是 $\phi$),通过余弦相似度的梯度,使预测的目标表示 $\mathbf{Z}_{1}$ 更接近每个节点的真实目标表示 $\widetilde{\mathbf{H}}_{2}$。

    $\ell(\theta, \phi)=-\frac{2}{N} \sum\limits _{i=0}^{N-1} {\large \frac{\widetilde{\mathbf{Z}}_{(1, i)} \widetilde{\mathbf{H}}_{(2, i)}^{\top}}{\left\|\widetilde{\mathbf{Z}}_{(1, i)}\right\|\left\|\widetilde{\mathbf{H}}_{(2, i)}\right\|}} \quad\quad\quad(1)$

  $\theta$ 的更新公式:

    $\theta \leftarrow \operatorname{optimize}\left(\theta, \eta, \partial_{\theta} \ell(\theta, \phi)\right)\quad\quad\quad(2)$

  其中 $ \eta $ 是学习速率,最终更新仅从目标对 $\theta$ 的梯度计算,使用优化方法如 SGD 或 Adam 等方法。在实践中,

  我们对称了训练,也通过使用第二个视图的在线表示来预测第一个视图的目标表示。

更新 $\phi$

  目标参数 $\phi$ 被更新为在线参数 $\theta$ 的指数移动平均数,即:

    $\phi \leftarrow \tau \phi+(1-\tau) \theta\quad\quad\quad(3)$

  其中 $\tau$ 是控制 $\phi$ 与 $ \theta$ 的距离的衰减速率。

  只有在线参数被更新用来减少这种损失,而目标参数遵循不同的目标函数。根据经验,与BYOL类似,BGRL不会崩溃为平凡解,而 $\ell(\theta, \phi)$ 也不收敛于 $0$ 。

2.3. 完全非对比目标

  对比学习常用的负样本带来的问题是:

    • 如何定义负样本  
    • 随着负样本数量增多,带来的内存瓶颈;

  本文损失函数定义的好处:

    • 不需要对比负对 $\{(i, j) \mid i \neq j\} $ ;
    • 计算方便,只需要保证余弦相似度大就行;

2.4.图增强函数

  本文采用以下两种数据增强方法:

    • 节点特征掩蔽(node feature masking)
    • 边缘掩蔽(edge masking)

3 实验

数据集

  

  数据集划分:

    • WikiCS: 20 canonical train/valid/test splits
    • Amazon Computers, Amazon Photos——train/validation/test—10/10/80%
    • Coauthor CS, Coauthor Physics——train/validation/test—10/10/80%

直推式学习——基线实验

  图编码器采用 $\text{GCN$ Encoder 。

  

大图上的直推式学习——基线实验

  结果:

  

归纳式学习——基线实验

  编码器采用 GraphSAGE-GCN (平均池化)和 GAT 。

  结果:

  

4 结论

  介绍了一种新的自监督图表示学习方法BGRL。通过广泛的实验,我们已经证明了我们的方法与最先进的方法具有竞争力,尽管不需要负例,并且由于不依赖于投影网络或二次节点比较而大大降低了存储需求。此外,我们的方法可以自然地扩展到学习图级嵌入,其中定义消极的例子是具有挑战性的,并且所有的目标不具有规模。

论文解读(BGRL)《Bootstrapped Representation Learning on Graphs》的更多相关文章

  1. 论文解读(MVGRL)Contrastive Multi-View Representation Learning on Graphs

    Paper Information 论文标题:Contrastive Multi-View Representation Learning on Graphs论文作者:Kaveh Hassani .A ...

  2. 论文解读(JKnet)《Representation Learning on Graphs with Jumping Knowledge Networks》

    论文信息 论文标题:Representation Learning on Graphs with Jumping Knowledge Networks论文作者:Keyulu Xu, Chengtao ...

  3. 论文阅读 Dynamic Graph Representation Learning Via Self-Attention Networks

    4 Dynamic Graph Representation Learning Via Self-Attention Networks link:https://arxiv.org/abs/1812. ...

  4. 论文解读《Deep Resdual Learning for Image Recognition》

    总的来说这篇论文提出了ResNet架构,让训练非常深的神经网络(NN)成为了可能. 什么是残差? "残差在数理统计中是指实际观察值与估计值(拟合值)之间的差."如果回归模型正确的话 ...

  5. 论文解读( N2N)《Node Representation Learning in Graph via Node-to-Neighbourhood Mutual Information Maximization》

    论文信息 论文标题:Node Representation Learning in Graph via Node-to-Neighbourhood Mutual Information Maximiz ...

  6. 论文解读(GRCCA)《 Graph Representation Learning via Contrasting Cluster Assignments》

    论文信息 论文标题:Graph Representation Learning via Contrasting Cluster Assignments论文作者:Chun-Yang Zhang, Hon ...

  7. 论文阅读 Inductive Representation Learning on Temporal Graphs

    12 Inductive Representation Learning on Temporal Graphs link:https://arxiv.org/abs/2002.07962 本文提出了时 ...

  8. 论文解读(SUGRL)《Simple Unsupervised Graph Representation Learning》

    Paper Information Title:Simple Unsupervised Graph Representation LearningAuthors: Yujie Mo.Liang Pen ...

  9. 论文解读(AutoSSL)《Automated Self-Supervised Learning for Graphs》

    论文信息 论文标题:Automated Self-Supervised Learning for Graphs论文作者:Wei Jin, Xiaorui Liu, Xiangyu Zhao, Yao ...

随机推荐

  1. 定位一个oom问题

    当系统出现oom问题时,我们一般的定位思路是怎样的? 系统OOM常见的原因有: 1.用户态内存需求过多,资源不足: 2.大页配置不正确: 3.水位线值异常: 4.slab内存过多: 5.rcu异常: ...

  2. 『现学现忘』Docker基础 — 31、实现MySQL同步数据

    目录 1.搜索镜像 2.拉取镜像 3.查看镜像 4.启动镜像 5.操作容器 (1)在MySQL中创建数据库 (2)外部连接Dokcer容器中的MySQL服务 (3)查看挂载情况 (4)测试MySQL服 ...

  3. 痞子衡嵌入式:IAR内部C-SPY调试组件配套宏文件(.mac)用法介绍

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是IAR内部C-SPY调试组件配套宏文件(.mac)用法. 痞子衡之前写过一篇 <JLink Script文件基础及其在IAR下调用 ...

  4. Vue指令02——v-on指令和v-show的使用

    Vue指令02--v-on指令和v-show的使用 v-on指令 格式1:v-on:事件="方法" 格式2:@事件="方法" 格式3:@事件="方法( ...

  5. leedcode算法

    1.LeetCode - 合并两个链表 2. 3. 链表是否有环       https://jingyan.baidu.com/article/066074d69afb8d83c31cb068.ht ...

  6. 什么是内部类?Static Nested Class和Inner Class的不同?

    内部类就是在一个类的内部定义的类,内部类中不能定义静态成员,内部类可以直接访问外部类中的成员变量,内部类可以定义在外部类的方法外面,也可以定义在外部类的方法体中.在方法外部定义的内部类前面可以加上st ...

  7. Zookeeper 对于 Kafka 的作用是什么?

    Zookeeper 是一个开放源码的.高性能的协调服务,它用于 Kafka 的分布式应用. Zookeeper 主要用于在集群中不同节点之间进行通信 在 Kafka 中,它被用于提交偏移量,因此如果节 ...

  8. JRE、JDK、JVM 及 JIT 之间有什么不同?

    JRE 代表 Java 运行时(Java run-time),是运行 Java 引用所必须的.JDK 代 表 Java 开发工具(Java development kit),是 Java 程序的开发工 ...

  9. 有哪些类型的通知Advice?

    Before - 这些类型的 Advice 在 joinpoint 方法之前执行,并使用 @Before 注解标记进行配置. After Returning - 这些类型的 Advice 在连接点方法 ...

  10. python中模块制作、发布、安装

    模块的发布 需要在当前目录下 模块的安装 真实制作发布一个包 包的制作 (1)将写好的包放在moudelTest目录下 (2)moudelTest目录下创建一个setup.py文件(格式上面有介绍) ...