论文信息

论文标题:MGAE: Masked Autoencoders for Self-Supervised Learning on Graphs
论文作者:Qiaoyu Tan, Ninghao Liu, Xiao Huang, Rui Chen, Soo-Hyun Choi, Xia Hu
论文来源:2022, ArXiv
论文地址:download 
论文代码:download

1 Introduction

  MAE 在图上的应用。

2 Method

  整体框架:

  

2.1 Encoder

  本文的掩藏目标是随机掩藏一部分(30%)边,然后考虑 GCN、GraphSage 作为主干网络提取特征信息,对于被掩藏的边将通过 Decoder 训练得到。

  掩藏策略:

    • Undirected masking:将图看成无向图,删除 $(u,v)$ 之间的边,对应于 $A$ 中的两条边;
    • Directed masking:将图看成有向图,删除 $(u,v)$ 之间的边,对应于 $A$ 中的一条有向边;

  注意:上述两种策略边掩藏率是设置一样的。

2.2 Cross-correlation decoder

  由于Encoder 采用的是基于消息传递机制的 Encoder,所以最终只得到被保留部分的节点潜在嵌入。

  Encoder $K$ 层传播结构共生成的保留节点嵌入矩阵 $\left\{\mathbf{H}^{(1)}, \mathbf{H}^{(2)}, \cdots, \mathbf{H}^{(K)}\right\}$,对于存在的保留节点进行 cross-correlations 操作,即

    $\mathbf{h}_{e_{v, u}}=\|_{k, j=1}^{K} \mathbf{h}_{v}^{(k)} \odot \mathbf{h}_{u}^{(j)}$

  其中:

    • $\|$ 表示连接;
    • $\odot$ 表示元素乘法;
    • $\mathbf{h}_{e_{v, u}} \in \mathbb{R}^{d K^{2}}$ 表示节点 $v$ 和节点 $u$ 之间的交叉表示,分别考虑它们的 $k$ 阶邻域和 $j$ 阶邻域;

  为避免过于复杂,通常 $K=2$。

  假设剩余的节点有 $m$ 个,那么输入到对应的 MLP Decoder  的将有 $m(m-1)$ (无向图)个特征向量,最终预测 $(u,v)$ 直接边存在的概率通过下式生成:

    $y_{v, u}=\operatorname{MLP}\left(\mathbf{h}_{v}^{(K)}, \mathbf{h}_{u}^{(K)}\right)$

2.3 Reconstruction target

  MGAE解码器,只重建掩码的边,目标函数如下:

    $\mathcal{L}=-\sum\limits _{(v, u) \in \mathcal{E}_{\text {mask }}} \log \frac{\exp \left(\mathbf{y}_{v u}\right)}{\sum_{z \in \mathcal{V}} \exp \left(\mathbf{y}_{v z}\right)}$

  为加速训练,本文采用负采样策略。

2.4 Algorithm

  整体算法如下:

  

3 Experiments

数据集

  

Link prediction

  

Node classifification

  

4 Conclusion

  图上边掩码AE。

修改历史

2022-06-17 创建文章

论文解读目录

论文解读(MGAE)《MGAE: Masked Autoencoders for Self-Supervised Learning on Graphs》的更多相关文章

  1. 论文解读(node2vec)《node2vec Scalable Feature Learning for Networks》

    论文题目:<node2vec Scalable Feature Learning for Network>发表时间:  KDD 2016 论文作者:  Aditya Grover;Adit ...

  2. 论文解读(ClusterSCL)《ClusterSCL: Cluster-Aware Supervised Contrastive Learning on Graphs》

    论文信息 论文标题:ClusterSCL: Cluster-Aware Supervised Contrastive Learning on Graphs论文作者:Yanling Wang, Jing ...

  3. 论文解读(GraphDA)《Data Augmentation for Deep Graph Learning: A Survey》

    论文信息 论文标题:Data Augmentation for Deep Graph Learning: A Survey论文作者:Kaize Ding, Zhe Xu, Hanghang Tong, ...

  4. 论文解读(gCooL)《Graph Communal Contrastive Learning》

    论文信息 论文标题:Graph Communal Contrastive Learning论文作者:Bolian Li, Baoyu Jing, Hanghang Tong论文来源:2022, WWW ...

  5. 论文解读《Momentum Contrast for Unsupervised Visual Representation Learning》俗称 MoCo

    论文题目:<Momentum Contrast for Unsupervised Visual Representation Learning> 论文作者: Kaiming He.Haoq ...

  6. 论文解读(MLGCL)《Multi-Level Graph Contrastive Learning》

    论文信息 论文标题:Structural and Semantic Contrastive Learning for Self-supervised Node Representation Learn ...

  7. 论文解读(GraphMAE)《GraphMAE: Self-Supervised Masked Graph Autoencoders》

    论文信息 论文标题:GraphMAE: Self-Supervised Masked Graph Autoencoders论文作者:Zhenyu Hou, Xiao Liu, Yukuo Cen, Y ...

  8. 论文解读(MaskGAE)《MaskGAE: Masked Graph Modeling Meets Graph Autoencoders》

    论文信息 论文标题:MaskGAE: Masked Graph Modeling Meets Graph Autoencoders论文作者:Jintang Li, Ruofan Wu, Wangbin ...

  9. 论文解读(GCC)《Efficient Graph Convolution for Joint Node RepresentationLearning and Clustering》

    论文信息 论文标题:Efficient Graph Convolution for Joint Node RepresentationLearning and Clustering论文作者:Chaki ...

随机推荐

  1. redis迁移第三篇(cluster forget)

    1.删除错误节点,带有 fail,noaddr , 这种需要用 cluster forget redis集群迁移之后,由于之前的误操作,导致pod日志里面出现这样的错误,出现一会好一会不好的情况,就是 ...

  2. Handler异步通信系统

    handler是Android给我们提供用来更新UI的一套机制,也是一套消息处理机制,我们可以发消息,也可以通过它处理消息. Handler机制主要的几个角色:Handler,Message,Loop ...

  3. Java函数的学习

    函数的定义 - 定义的位置:定义在类的内部 - 组成部分: 函数修饰符 类型 函数名(形式参数){ 局部变量: 注释: 函数体: } 函数的调用 - 调用函数时使用 : `函数名():` - 函数在执 ...

  4. 3.5 常用Linux命令

    1.touch命令 touch命令用于创建空白文件或设置文件的时间,语法格式为"touch [参数] 文件名称". 2.mkdir命令 mkdir命令用于创建空白的目录,英文全称为 ...

  5. .Net IDE智能提示汉化(.Net6、AspNetCore)

    .Net IDE智能提示汉化(.Net6.AspNetCore) 先上现成的.net6汉化文件,可以手动下载后参照 如何为 .NET 安装本地化的 IntelliSense 文件 进行安装.或者使用后 ...

  6. HttpServletResponse & HttpServletRequest

    web服务器接收到客户端的http请求,针对这个请求,分别创建一个代表请求的HttpServletRequest对象,代表响应的一个HttpServletResponse: 如果要获取客户端请求过来的 ...

  7. 使用 Python 来自动回微信

    准备 Python3 Python Itchat库(可以通过pip install itchat来安装) (可选)Python Pymongo库(可以通过pip install pymongo来安装) ...

  8. Linux学习教程 | 全文目录

    本教程最大的特点是通俗易懂,并且非常详细,花费 7 天时间即可快速了解 Linux. 第一章 Linux简介 1.1 操作系统是什么,操作系统概述 1.2 Linux是什么,有哪些特点? 1.3 Li ...

  9. Linux服务器安全加固10条建议

    以下是服务器安全加固的步骤,本文以腾讯云的CentOS7.7版本为例来介绍,如果你使用的是秘钥登录服务器1-5步骤可以跳过. 设置复杂密码 服务器设置大写.小写.特殊字符.数字组成的12-16位的复杂 ...

  10. C# 随机给一个全部信息都未知的类类型,如何获取该类的类名、属性个数、属性名、属性的数据类型、属性值?

    一.场景假设 假设现在有一个泛型类T的实例对象t,该T类的全部信息都未知. 要求:打印输出实例对象t的类名.属性个数.属性名.属性的数据类型.属性值. 二.解决问题 1.我们根据输出的内容要求定义一个 ...