InfoGraph: Unsupervised and Semi-supervised Graph-Level Representation Learning via Mutual Information Maximization

  • Fan-Yun Sun, Jordan Hoffmann, Vikas Verma, et al. InfoGraph: Unsupervised and Semi-supervised Graph-Level Representation Learning via Mutual Information Maximization[C]. In ICLR 2020.
  • 国立台湾大学、Mila-Quebec

    摘要(Abstract)

    1. 本文研究了无监督和半监督两种情况下的全图表示学习问题。图级表示在各种真实世界的应用中是至关重要的,例如预测分子的性质和社会网络中的社区分析。传统的基于图核的方法简单,但对于获得固定长度的图表示是有效的,但由于手工设计,它们的泛化能力较差。最近也有一些基于语言模型的方法(例如,Graph2vec),但它们倾向于只考虑某些子结构(例如,子树)作为图的表示。受无监督表示学习的最新进展的启发,本文提出了一种新的图级表示学习方法--InfoGraph。我们最大化图级表示和不同尺度(如节点、边、三角形)的子结构表示之间的互信息。通过这样做,图级表示对不同规模的子结构之间共享的数据方面进行了编码。此外,我们进一步提出了InfoGraph*,它是针对半监督场景的InfoGraph的扩展。InfoGraph*最大化InfoGraph学习的无监督图表示和现有监督方法学习的表示之间的互信息。因此,监督编码器从未标记的数据中学习,同时保留当前监督任务所支持的潜在语义空间。在图分类和分子性质预测任务上的实验结果表明,InfoGraph优于最先进的基线,InfoGraph*可以获得与最先进的半监督模型相当的性能。

    1 引言(Introduction)

    2 相关工作(Related Work)

    3 方法(Methodology)

    3.1 问题定义(Problem Definition)

    3.2 InfoGraph

    3.3 半监督InfoGraph(Semi-Supervised InfoGraph)

    4 实验(Experiments)

一、本文共提出了两个互信息最大化的模型:
1、InfoGraph:无监督学习,模型最大化整个图表征和不同粒度的子结构表征之间的互信息;
2、InfoGraph*:半监督学习,评估两个Model计算出来的Intermediate Representations之间的互信息,其中一个Model是无监督学习的InfoGraph模型,另一个模型使用的是有监督学习。

先介绍一下InfoGraph模型,再简单介绍一下InfoGraph模型。InfoGraph模型图如下:
image.png
*图1 InfoGraph的图解

N.A. 表示领域聚合。输入图通过图卷积和跳跃连接被编码成特征图。鉴别器将(全局表示,patch表示)对作为输入,并判断它们是否来自同一个图。InfoGraph使用分批处理方式生成所有可能的正样本和负样本。例如,考虑批次中有2个输入图和总共7个节点(或patch表示)的示例。对于蓝色图形的全局表示,鉴别器将有7个输入对,红色图形也是如此。因此,在这种情况下,鉴别器将采用14个(全局表示、patch表示)对作为输入。
二、InfoGraph模型架构
InfoGraph模型是基于DGI模型提出的,都是利用最大化Local Representation和Global Representation之间互信息,InfoGraph针对DGI模型的不足提出了一些改进方案。首先看一下InfoGraph模型运作流程:

首先,图卷积神经网络基于局部子图汇聚公式如下所示,基于互信息最大化的无监督和半监督图级表示学习InfoGraph-2020 - 图2代表基于互信息最大化的无监督和半监督图级表示学习InfoGraph-2020 - 图3层网络迭代后得到节点基于互信息最大化的无监督和半监督图级表示学习InfoGraph-2020 - 图4的表征
基于互信息最大化的无监督和半监督图级表示学习InfoGraph-2020 - 图5 (1)
为了得到Graph Representation,公式如下,其中基于互信息最大化的无监督和半监督图级表示学习InfoGraph-2020 - 图6表示基于互信息最大化的无监督和半监督图级表示学习InfoGraph-2020 - 图7层节点基于互信息最大化的无监督和半监督图级表示学习InfoGraph-2020 - 图8表征的Concat总和,基于互信息最大化的无监督和半监督图级表示学习InfoGraph-2020 - 图9是经过Readout函数得到的Global表征
基于互信息最大化的无监督和半监督图级表示学习InfoGraph-2020 - 图10 (2)
基于互信息最大化的无监督和半监督图级表示学习InfoGraph-2020 - 图11 (3)
基于互信息最大化的无监督和半监督图级表示学习InfoGraph-2020 - 图12 (4)
然后最大化Local Representation 基于互信息最大化的无监督和半监督图级表示学习InfoGraph-2020 - 图13和Global Representation 基于互信息最大化的无监督和半监督图级表示学习InfoGraph-2020 - 图14之间的互信息,公式如下
image.png
三、InfoGraph相对于DGI的改进
1、Readout用Sum替代了Average,提取更多关于图大小的信息;
2、用GIN代替了GCN,更强的图特征Encoder,更加关注Graph-Level特征;
3、用Batch数据获取更多更好的负样本,全局和局部点特征的组合;
4、把K层GNN中的所有节点特征Concat起来,得到不同规模的子图信息,Global表征因此有了不同规模的子图信息;
5、把Discrimination换成了更复杂的三层神经网络,还用了Relu作为非线性层,两个Embedding过神经网络后做点积。
四、InfoGraph*模型架构
InfoGraph模型的损失函数如下公式所示,其中基于互信息最大化的无监督和半监督图级表示学习InfoGraph-2020 - 图16代表监督学习的模型loss,基于互信息最大化的无监督和半监督图级表示学习InfoGraph-2020 - 图17代表InfoGraph无监督学习的损失函数loss,基于互信息最大化的无监督和半监督图级表示学习InfoGraph-2020 - 图18是超参控制二者之间的权重。而最后一项就是控制有监督模型和无监督模型预测结果之间的互信息最大化。
基于互信息最大化的无监督和半监督图级表示学习InfoGraph-2020 - 图19 (6)
InfoGraph
模型结构图如下所示
image.png
图2 InfoGraph(InfoGraph*)半监督版本图解
有两个具有相同体系结构的独立编码器,一个用于监督任务,另一个使用具有非监督目标(即等式4)的标记和非标记数据进行训练。我们通过部署一个鉴别器来鼓励两个编码器学习的两个表示的互信息高,该鉴别器将一对表示作为输入,并确定它们是否来自相同的输入图。
五、结论
InfoGraph模型在图分类任务上超过了最佳的无监督学习模型,并且获得了和使用半监督学习同样的性能
image.png

image.png