Contrastive Multi-View Representation Learning on Graphs(图上对比性多视图表示学习)
文章目录
1. 来源
Proceedings of the 37 th International Conference on Machine
Learning(ICML), 2020.
2. 动机
1)基于GNNs的方法仍然需要专门的编码器来学习图或节点级表示。
2)如何将多视图增强方法应用于图数据。
为了解决上述两个问题,引入了一种自监督的方法来训练图编码器,通过最大化从不同的图的结构视图编码的表示之间的MI。我们表明,我们的方法在不需要专门架构的情况下,在节点和图分类任务上都优于以前的具有显著边际的自监督模型。
为了进一步改进节点和图分类任务上的对比表示学习,论文系统地研究了我们的框架的主要组成部分,并令人惊讶地表明,与视觉对比学习不同:
- (1) 增加视图的数量,即增加,到超过两个视图并不能提高性能,最佳性能是通过对比一阶邻居的编码和一般的图扩散。
- (2) 与对比图形图或多尺度编码相比,跨视图对比节点和图编码在两个任务上都获得了更好的结果。
- (3) 与可微池(DiffPool)等分层图池方法相比,一个简单的图读出层在这两个任务上都取得了更好的性能。
- (4) 应用正则化(提前停止除外)或归一化层对性能有负面影响。
通过利用这些发现,论文得以提出模型。
3. 模型框架
4. 方法介绍
4.1 总览
受启发于最近的多视图对比学习视觉表示学习,论文方法学习节点和图节点表示最大化节点表示一个视图和图表示,反之亦然,取得更好的结果相比对比全局或多尺度编码节点和图分类任务。如上图所示,方法由以下组件组成:
- 一种增强机制,该机制将样本图转换为同一图的相关视图。我们只将扩充应用于图的结构,而不是初始节点特征。接下来是一个采样器,它从两个视图中对相同的节点进行子采样,即,类似于在视觉域中的裁剪。
- 两个专用的gnn,即图编码器,每个视图对应一个,然后是一个共享的MLP,即投影头,以学习两个视图的节点表示。
- 一个图池化层,即读出函数,然后是一个共享的MLP,即投影头,以学习两个视图的图表示。
- 一种鉴别器,它将一个视图的节点表示与另一个视图的图表示进行对比,反之亦然,并对它们之间的一致性进行评分。
4.2 增强机制
动机1:最近在自我监督视觉表征学习方面的研究表明,对比图像的一致和不一致视图允许编码器学习丰富的表征。视图是通过标准的增强功能生成的图像不同,例如,裁剪、旋转、扭曲颜色等,因此在图上定义视图并不是一项简单的任务。
做法:考虑图上的两种类型的增强:
- (1)在初始节点特征上操作的特征空间增强,例如,掩蔽或添加高斯噪声;
- (2)通过添加/去除边、使用最短距离或扩散矩阵生成全局视图。
具体做法: 前一种增强可能会有问题,因为许多基准测试都不包含初始节点特性。此外,我们观察到,在任何一个空间上掩蔽或添加噪声都会降低性能。因此,论文选择生成一个全局视图,然后进行子抽样。 经验表明,在大多数情况下,通过将邻接矩阵转换为扩散矩阵,并将这两个矩阵视为同一图结构的两个同余视图来获得最好的结果。论文猜想,由于邻接矩阵和扩散矩阵分别提供了图结构的局部和全局视图,因此最大化从这两个视图学习到的表示之间的一致性,允许模型同时编码丰富的局部和全局信息。
扩散用等式表示(1)。其中
T
∈
R
n
×
n
T∈R^{n×n}
T∈Rn×n是广义转移矩阵,
Θ
\Theta
Θ是决定全局-局部信息比值的加权系数。
两种计算扩散的方法:
4.3 编码器
论文框架允许网络架构的各种选择,没有任何约束。为了简单起见,模型选择并采用常用的图卷积网络(GCN)作为基本图编码器。
模型使用一个读出函数类似于跳跃知识网络(JK-Net),连接的总和节点表示在每个GCN层,然后给他们一个单层前馈网络有一个一致的维度大小之间的节点和图形表示:
在推理时,模型聚合表示从两个视图在节点和图水平通过总结:
和返回他们作为图和节点表示,来实现下游任务。
4.4 训练
为了训练编码器端到端和学习丰富的节点和图级表示无关的下游任务,利用深度信息Max(Hjelmetal.,2019)方法和最大化两个视图之间的MI通过对比节点表示一个视图与图表示的其他视图,反之亦然。目标的定义如下:
5. 实验
5.1 节点分类
5.2 节点聚类
6. 总结
论文介绍了一种自监督的方法来学习节点和图级表示,通过对比编码从两个结构的观点的图,包括一阶邻居和一个图扩散。实验发现,与视觉表示学习不同,增加视图的数量或对比多尺度编码并不能提高性能。利用这些发现,模型在线性评估协议下的8个节点和图分类基准中实现了最新的自监督学习,并在8个基准中的4个中优于强监督基线。