论文信息

论文标题:Label-invariant Augmentation for Semi-Supervised Graph Classification
论文作者:Han Yue, Chunhui Zhang, Chuxu Zhang, Hongfu Liu
论文来源:2022,NeurIPS
论文地址:download
论文代码:download

1 Introduction

  我们提出了一种图对比学习的标签不变增强策略,该策略涉及到下游任务中的标签来指导对比增强。值得注意的是,我们不生成任何图形数据。相反,我们在训练阶段直接生成标签一致的表示作为增广图。

2 Methodology

2.1 Motivation

  数据增强在神经网络训练中起着重要的作用。它不仅提高了学习表示的鲁棒性,而且为训练提供了丰富的数据。

  例子:(使用 $50%$ 的标签做监督信息。数据增强:node dropping, edge perturbation, attribute masking, subgraph sampling)

  

  显然有些数据增强策略(或组合)对于模型训练又负面影响。本文进一步使用 MUTAG 中的 $100%$ 标签训练模型,然后以每种数据增强抽样概率 $0.2$ 选择数据增强图,发现 80% 的数据增强图和原始图标签一致,约 $20%$ 的数据增强图和原始图标签不一致。

2.2 Label-invariant Augmentation

  整体框架:

  

  四个组成部分:

    • Graph Neural Network Encoder
    • Classifier
    • Label-invariant Augmentation
    • Projection Head

  出发点:对于一个有标记的图,我们期望由增强表示预测的标签与地面真实标签相同。

2.2.1 Graph Neural Network Encoder

  GCN layer :

    $G^{(l+1)}=\sigma\left(\tilde{D}^{-\frac{1}{2}} \tilde{A} \tilde{D}^{-\frac{1}{2}} G^{(l)} \theta_{G}^{(l)}\right)\quad\quad\quad\quad(1)$

  其中:

    • $G^{(l)}$ denotes the matrix in the l -th layer, and $G^{(0)}=X$
    • $\sigma(\cdot)=\operatorname{ReLU}(\cdot)$

  池化 (sum):

    $H=\operatorname{Pooling}(G)\quad\quad\quad\quad(2)$

2.2.2 Classifier

  基于图级表示,我们使用带有参数 $\theta_{C}$ 的全连接层进行预测:

    $C^{(l+1)}=\operatorname{Softmax}\left(\sigma\left(C^{(l)} \cdot \theta_{C}^{(l)}\right)\right)\quad\quad\quad\quad(3)$

  其中,$C^{(l)}$ 表示第 $l$ 层的嵌入,输入层 $C^{(0)}=H^{O}$ 或 $C^{(0)}=H^{A}$ 分别表示原始表示和增强图表示。实验中,采用了一个 2 层多层感知器,得到了对原始表示 $H^{O}$ 和增强表示 $H^{A}$ 的预测 $C^{O}$ 和 $C^{A}$。

2.2.3 Label-invariant Augmentation

  不对图级表示做数据增强,而是在原始图级表示$H^{O}$上做微小扰动得到增强图级表示。

  在实验中,首先计算所有图的原始表示的质心,得到每个原始表示与质心之间的欧氏距离的平均值为 $d$,即:

    $d=\frac{1}{N} \sum_{i=1}^{N}\left\|H_{i}^{O}-\frac{1}{N} \sum_{j=1}^{N} H_{j}^{O}\right\|\quad\quad\quad\quad(4)$

  然后计算增强图表示 $H^{A}$:

    $H^{A}=H^{O}+\eta d \Delta\quad\quad\quad\quad(5)$

  其中 $\eta$ 缩放扰动的大小,$\Delta$ 是一个随机单位向量。

  为实现标签不变增强,每次,随机生成多个扰动,并选择符合标签不变属性的合格候选增强。在这些合格的候选对象中,选择了最困难的一个,即最接近分类器的决策边界的一个,以提高模型的泛化能力。

2.2.4 Projection Head

  使用带有参数 $\theta_{P}$ 的全连接层,从图级表示中得到对比学习的投影,如下所示:

    $P^{(l+1)}=\sigma\left(P^{(l)} \cdot \theta_{P}^{(l)}\right) \quad\quad\quad\quad(6)$

  采用一个 2 层多层感知器,从原始表示 $H^{O}$ 和增广表示 $H^{A}$ 中得到投影 $P^{O}$ 和 $P^{A}$。

2.2.5 Objective Function

  目标函数包括对比损失和分类损失。对比损失采用 NT-Xent,但只保留正对部分如下:

    $\mathcal{L}_{P}=\frac{-\left(P^{O}\right)^{\top} P^{A}}{\left\|P^{O}\right\|\left\|P^{A}\right\|} \quad\quad\quad\quad(7)$

  对于分类损失,采用交叉熵,其定义为:

    $\mathcal{L}_{C}=-\sum_{i=1}^{c}\left(Y_{i}^{O} \log P_{i}^{O}+Y_{i}^{O} \log P_{i}^{A}\right) \quad\quad\quad\quad(8)$

  其中,$Y^{O}$ 是输入图的标签,$c$ 是图类别的数量。本文只计算带标签的图的 $\mathcal{L}_{C}$。$\text{Classifier}$  的改进将有助于标签不变的增强,反过来有利于分类器的训练。

  结合等式 $\text{Eq.7}$ 和 $\text{Eq.8}$ ,总体目标函数可以写成如下:

    $\underset{\Theta}{\text{min}} \quad\mathcal{L}_{P}+\alpha \mathcal{L}_{C}\quad\quad\quad\quad(9)$

3 Experiments

3.1 Datasets

  

3.2 Semi-supervised graph classification results

  

3.3 Algorithmic Performance

  

3.4 In-depth Exploration

Negative Pairs

  现有的图对比学习方法将来自不同源样本的增广图视为负对,并对这些负对采用实例级判别。由于这些方法分离了 pre-train 阶段和 fine-tuning 阶段,因此负对包含了来自不同源样本的增强样本,但在下游任务中具有相同的类别。

  Figure 4(a) 显示了我们在四个数据集上有负对和没有负对的 GLA 的性能。可以看到,与没有负对的默认设置相比,有负对的性能显著下降,而负对在所有四个数据集上都表现一致。与现有的图对比方法不同,GLA 集成了预训练阶段和微调阶段,其中以自监督的方式设计的负对不利于下游任务。这一发现也与最近的[10,9]在视觉对比学习领域的研究结果相一致。

   

4 Conclusion

  本文研究了图的对比学习问题。从现有的方法和训练前的方法不同,我们提出了一种新的图标签不变增强(GLA)算法,该算法集成了训练前和微调阶段,通过扰动在表示空间中进行标签不变增强。具体来说,GLA首先检查增广表示是否服从标签不变属性,并从合格的样本中选择最困难的样本。通过这种方法,GLA在不生成任何原始图的情况下实现了对比增强,也增加了模型的泛化。在8个基准图数据集上的半监督设置下的广泛实验证明了我们的GLA的有效性。此外,我们还提供了额外的实验来验证我们的动机,并深入探讨了GLA在负对、增强空间和策略效应中的影响因素。

论文解读(GLA)《Label-invariant Augmentation for Semi-Supervised Graph Classification》的更多相关文章

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

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

  2. 论文解读(GIN)《How Powerful are Graph Neural Networks》

    Paper Information Title:<How Powerful are Graph Neural Networks?>Authors:Keyulu Xu, Weihua Hu, ...

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

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

  4. 论文解读(SEP)《Structural Entropy Guided Graph Hierarchical Pooling》

    论文信息 论文标题:Structural Entropy Guided Graph Hierarchical Pooling论文作者:Junran Wu, Xueyuan Chen, Ke Xu, S ...

  5. 论文解读(SUBLIME)《Towards Unsupervised Deep Graph Structure Learning》

    论文信息 论文标题:Towards Unsupervised Deep Graph Structure Learning论文作者:Yixin Liu, Yu Zheng, Daokun Zhang, ...

  6. 论文解读(GSAT)《Interpretable and Generalizable Graph Learning via Stochastic Attention Mechanism》

    论文信息 论文标题:Interpretable and Generalizable Graph Learning via Stochastic Attention Mechanism论文作者:Siqi ...

  7. 论文解读(GMT)《Accurate Learning of Graph Representations with Graph Multiset Pooling》

    论文信息 论文标题:Accurate Learning of Graph Representations with Graph Multiset Pooling论文作者:Jinheon Baek, M ...

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

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

  9. 论文解读(PPNP)《Predict then Propagate: Graph Neural Networks meet Personalized PageRank》

    论文信息 论文标题:Predict then Propagate: Graph Neural Networks meet Personalized PageRank论文作者:Johannes Gast ...

  10. 论文解读(DropEdge)《DropEdge: Towards Deep Graph Convolutional Networks on Node Classification》

    论文信息 论文标题:DropEdge: Towards Deep Graph Convolutional Networks on Node Classification论文作者:Yu Rong, We ...

随机推荐

  1. Mybatis 懒加载使用及源码分析

    Mybatis 懒加载的使用 什么是懒加载?懒加载的意思就是在使用的时候才去加载,不使用不去加载,相反的就叫饥饿加载或者立即加载.懒加载在Mybatis中一般是存在与联合查询的情况,比如查询一个对象的 ...

  2. Spring源码-入门

    一.测试类 public class Main { public static void main(String[] args) { ApplicationContext applicationCon ...

  3. 【Java】学习路径56-TCP协议 发送、接收

    与UDP不同的是,TCP协议使用的是Socket,而不是DatagramSocket,这是要作区分的. 构造Socket对象的时候,可以直接指定ip地址与端口号.此时需要抛出异常. import ja ...

  4. 【java】学习路径42-六种字符流使用实例

    第一种 OutputStreamWriter OutputStreamReader 第二种 FileWriter FileReader 第三种 BufferedWriter BufferedReade ...

  5. Spring5事务管理

    事务管理是什么? 相当于过滤器,如果这一进程中上一个操作正常执行完后提交数据已经发生改变,但是下一个操作中出现了异常,这样就会影响数据的查看. 典型例子:银行转账,甲方已经转钱给乙方(甲方已扣钱),乙 ...

  6. Python入门系列(一)安装环境

    python是什么 python是一门很受欢迎的语言,除了不能生孩子以外,其它都可以做. 它擅长的领域是脚本工具和科学数据这一块,比如大数据,数据分析什么的. python安装 为了演示和验证教程可用 ...

  7. 简单创建一个SpringCloud2021.0.3项目(二)

    目录 1. 项目说明 1. 版本 2. 用到组件 3. 功能 2. 上一篇教程 3. 创建公共模块Common 4. 网关Gateway 1. 创建Security 2. Security登陆配置 3 ...

  8. rtmp/rtsp/hls公网测试地址

    相信大家在调试播放器的时候,都有这样的困惑,很难找到合适的公有测试源,以下是大牛直播整理的真正可用的直播地址源. 其中,rtmp和rtsp的url,用https://github.com/daniul ...

  9. Sys_Bulkload 工具使用

    一.介绍 sys_bulkload是KingbaseES提供的快速加载数据的命令行工具.用户使用sys_bulkload工具能够把一定格式的文本数据简单.快速的加载到KingbaseES数据库中,或将 ...

  10. 【python】生成一段连续的日期

    date-gen.py import datetime def date_generate(start_date, end_date): print(f'Hi, {start_date}, {end_ ...