AutoGCL: Automated Graph Contrastive Learning via Learnable View Generators

https://arxiv.org/pdf/2109.10259

https://github.com/Somedaywilldo/AutoGCL

AutoGCL: Automated Graph Contrastive Learning via Learnable View Generators,2022,AAAI

总结:作者提出提出一种端到端自适应增强GCL模型AutoGCL。比较新奇的一点是AutoGCL中图编码器(GIN)输出的是一个概率矩阵,维度等于候选增强策略集合大小,然后通过GumbelSoftmax进行增强策略采样,从而保证view generator是端到端可微的。和现有自适应增强GCL方法(JOAO、AD-GCL)相比,AutoGCL不仅学习增强策略采样分布,每种增强策略还是learnable的(读完文章并没有发现这一点)。可视化结果比较亮眼,直观的说明了AutoGCL增强过程中可以保留label-related信息。

1. 简介

1.1 摘要

Contrastive learning has been widely applied to graph representation learning, where the view generators play a vital role in generating effective contrastive samples. Most of the existing contrastive learning methods employ pre-defined view generation methods, e.g., node drop or edge perturbation, which usually cannot adapt to input data or preserve the original semantic structures well. To address this issue, we propose a novel framework named Automated Graph Contrastive Learning (AutoGCL) in this paper. Specifically, AutoGCL employs a set of learnable graph view generators orchestrated by an auto augmentation strategy, where every graph view generator learns a probability distribution of graphs conditioned by the input. While the graph view generators in AutoGCL preserve the most representative structures of the original graph in generation of every contrastive sample, the auto augmentation learns policies to introduce adequate augmentation variances in the whole contrastive learning procedure. Furthermore, AutoGCL adopts a joint training strategy to train the learnable view generators, the graph encoder, and the classifier in an end-to-end manner, resulting in topological heterogeneity yet semantic similarity in the generation of contrastive samples. Extensive experiments on semi-supervised learning, unsupervised learning, and transfer learning demonstrate the superiority of our AutoGCL framework over the state-of-the-arts in graph contrastive learning. In addition, the visualization results further confirm that the learnable view generators can deliver more compact and semantically meaningful contrastive samples compared against the existing view generation methods.

对比学习已经被广泛用于图表示学习,其中view generators在生成有效对比样本中扮演了一个非常重要的角色。现有的大部分对比学习方法采用预定义好的视角生成方法,比如node drop或者edge perturbation,通常无法很好地适应输入数据或者保留原始语义结构。为了解决这个问题,本文我们提出了一种新的框架,命名为Automated Graph Contrastive Learning(AutoGCL)。具体来说,Auto采用了由自动增强策略协调的一个图视角生成器集合,其中每个图视角生成器学习以输入为条件的图概率分布。虽然AutoGCL中的图视角生成器在生成图视角的过程中保留了原始图大部分有代表性结构,但是自动增强学会在整个对比学习过程中引入足够的增强差异。另外,AutoGCL采用端到端的联合训练策略来训练可学习视角生成器、图编码器和分类器,可以生成拓扑结构不同但是具有相似语义的对比样本。半监督、无监督以及迁移学习中的大量实验证明了AutoGCL框架的优越性,优于SOTA图对比学习方法。另外,可视化结果进一步证明了,和现有视角生成方法相比,可学习视角生成器可以得到更紧凑、语义信息更丰富的对比样本。

1.2 本文工作

背景: 大部分GNN都是采用端到端有监督训练方式,需要大量fine-annotated样本。为了解决这个问题,研究人员提出了GAE、GraphSAGE等无(半)监督方法。最近,随着自监督学习在CV、NLP中的成功应用,很多图对比学习方法被提出,用于解决无监督图学习任务。

动机: 大部分现有GCL方法中使用的增强策略都是预定义好的,难以适应输入数据以及保留原始语义结构。现有的两个自适应增强方法JOAO,AD-GCL存在弊端。JOAO学习的是增强策略采样分布,其中增强策略是预定义好的,不是learnable。AD-GCL提出的是learnable edge droping增强,没有考虑node-level增强。

本文工作: 为了解决上述问题作者提出了一个新的框架AutoGCL,可以自动生成对比样本。作者认为一个理想的图视角生成器应该满足下列条件:

  1. topology和node feature,同时支持拓扑结构和节点特征增强;
  2. label-preserving,增强后的图要能够保留原始图的语义信息;
  3. adaptive,可以适应不同类型数据分布和大规模图;
  4. variances,提供对比所需的充足差异;
  5. end-to-end differentiable,模型端到端可微,可以快速反向传播。

作者总结了现有GCL方法中使用的增强策略,如下表所示:

作者提出的视角生成器同时包含node dropping和attribute masking。作者这里没有考虑edge perturbation,因为learnable方式进行边扰动,需要计算全邻接矩阵,在处理大规模图时,反向传播代价过高。

2. 方法

2.1 Learnable Graph View Generator

如上图1所示,针对每个节点,作者利用节点嵌入来预测选择某种增强策略的概率。可供选择的augmentation pool包含drop、keep和mask三种。公式表示如下:

hv(k1)=COMBINE(k)(hv(k2),av(k1))av(k)=AGGREGATE(k)({hu(k1):uN(v)})fv=GumbelSoftmax(av(k))xv=Aug(xv,fv)\begin{aligned} \boldsymbol{h}_{v}^{(k-1)} &=\mathrm{COMBINE}^{(k)}\left(\boldsymbol{h}_{v}^{(k-2)}, \boldsymbol{a}_{v}^{(k-1)}\right) \\ \boldsymbol{a}_{v}^{(k)} &=\mathrm{AGGREGATE}^{(k)}\left(\left\{\boldsymbol{h}_{u}^{(k-1)}: u \in \mathcal{N}(v)\right\}\right) \\ f_{v} &=\operatorname{GumbelSoftmax}\left(\boldsymbol{a}_{v}^{(k)}\right) \\ \boldsymbol{x}_{v}^{\prime} &=\operatorname{Aug}\left(\boldsymbol{x}_{v}, f_{v}\right) \end{aligned}

其中比较关键的一点就是上图中的“Sample”,作者采用GumbelSoftmax技术,其优点就是可微的,让模型可以端到端优化。

2.2 训练策略

对比学习中需要multiple views,因此AutoGCL中使用两个独立的生成器分别生成两个视角用于对比。另外,根据现有研究表明,一个好的positive view pair应该最大化label-related信息,同时最小化两者间的互信息(即相似度)。换句话说,就是两个视角间要同时保留原始图中的语义相似度,但是在结构上要尽可能存在variance。因此,如上图所示,作者定义了三种损失函数:

  • Similarity Loss LsimL_{sim},用于最小化两个视角间的互信息。如前文图1所示,在视角生成过程中会得到一个sampled augmentation choice矩阵,分别表示为A1A_1,A2A_2LsimL_{sim}定义为:

    Lsim=sin(A1,A2)sim(z1,z2)=z1z2z12z22\mathcal{L}_{\operatorname{sim}}=\sin \left(A_{1}, A_{2}\right)\\ \operatorname{sim}\left(\boldsymbol{z}_{1}, \boldsymbol{z}_{2}\right)=\frac{\boldsymbol{z}_{1} \cdot \boldsymbol{z}_{2}}{\left\|\boldsymbol{z}_{1}\right\|_{2} \cdot\left\|\boldsymbol{z}_{2}\right\|_{2}}

  • Contrastive Loss LclL_{cl},对比损失。假设data batch包含N张图,增强后得到2N个图视角,将同一张图的两个不同增强视角视为positive view pair。对比损失LclL_{cl}定义如下:

    (i,j)=logexp(sim(zi,zj)/τ)k=12N1[ki]exp(sim(zi,zk)/τ)Lcl=12Nk=1N[(2k1,2k)+(2k,2k1)]\begin{aligned} \ell_{(i, j)} &=-\log \frac{\exp \left(\operatorname{sim}\left(\boldsymbol{z}_{i}, \boldsymbol{z}_{j}\right) / \tau\right)}{\sum_{k=1}^{2 N} \mathbb{1}_{[k \neq i]} \exp \left(\operatorname{sim}\left(\boldsymbol{z}_{i}, \boldsymbol{z}_{k}\right) / \tau\right)} \\ \mathcal{L}_{\mathrm{cl}} &=\frac{1}{2 N} \sum_{k=1}^{N}[\ell(2 k-1,2 k)+\ell(2 k, 2 k-1)] \end{aligned}

    其中1[ki]{0,1}\mathbb{1}_{[k \neq i]} \in\{0,1\}为指示函数,τ\tau为温度参数。

  • Classification Loss LclsL_{cls},分类损失。对于标签为yy的图gg,增强视角表示为g1g_1g2g_2,分类损失定义为:

    Lcls=cls(F(g),y)+cls(F(g1),y)+cls(F(g2),y)\mathcal{L}_{\mathrm{cls}}=\ell_{\mathrm{cls}}(F(g), y)+\ell_{\mathrm{cls}}\left(F\left(g_{1}\right), y\right)+\ell_{\mathrm{cls}}\left(F\left(g_{2}\right), y\right)

    分类损失LclsL_{cls}用于半监督任务。

2.2.1 Naive Training Strategy(无监督/迁移学习)

  1. 对于无监督学习,由于不知道标签信息,因此训练时不使用LsimL_{sim},否则可能导致生成useless或者harmful样本。因为它只是encourage两个视角存在差异,不保留label-related信息。
  2. 和GraphCL一样,不仅仅最小化两个增强视角之间的对比损失,还考虑原始图(即下图第6行代码)。这一举措可以让view generator保留label-related信息。

2.2.2 Joint Training Strategy(半监督)

  1. 在无监督训练阶段,最小化对比损失优化分类器;
  2. 在有监督训练阶段,通过最小化LsimL_{sim}LclsL_{cls}优化分类器和两个view generator。

3. 实验

3.1 基础对比实验

3.1.1 无监督

采用5层GIN编码器,隐藏层大小128,学习率0.001,预训练30个epoch,90%数据用于训练,10%数据用于测试。

3.1.2 迁移学习

在ChEMBLog数据集上有监督预训练100个epoch,8个目标数据集上微调30个epoch。

3.1.3 半监督

10%数据用于训练,10%数据用于测试,其余80%作为无标签数据。

3.2 进一步分析

3.2.1 Learnable View Generators的作用

由于图数据集不好可视化,作者使用MNIST-Superpixel graphs进行实验,结果如下图所示:

可以看到,和GraphCL中方法相比,作者的方法可以保留更多的key nodes及语义特征,同时两个视角之间也存在足够的variance。

3.2.2 Joint Training Strategy的分析

从上图可以看出,naive训练策略损失下降很快,但是测试阶段的准确率低于联合训练策略,说明joint训练策略可以缓解模型过拟合。最后,作者还进行了可视化实验:

打赏
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2021-2022 Yin Peng
  • 引擎: Hexo   |  主题:修改自 Ayer
  • 访问人数: | 浏览次数:

请我喝杯咖啡吧~

支付宝
微信