机器学习 监督学习论文_论文阅读|浅谈图上的自监督学习——对比学习

前言: 本文将围绕最近一些在图上自监督学习的论文,对其中“Contrastive Learning”的内容进行一些解读,包括一些自监督学习的思路。主要论文具体信息如下:
第一篇论文为2020的一篇综述(论文链接),论文的第一作者为清华大学的Xiao Liu,具体信息如下:

第二篇论文为ICML2020的一篇论文(论文链接),论文的第一作者为加拿大Autodesk AI Lab的Kaveh Hassani,具体信息如下:

代码链接:https://github.com/kavehhassani/mvgrl
第三篇论文为KDD2020的一篇论文(论文链接),论文的第一作者为清华大学的Jiezhong Qiu,具体信息如下:

代码链接:THUDM/GCC
专栏作者 | 李家郡,中国人民大学信息学院
一、自监督学习背景
首先,介绍《Self-supervised Learning: Generative or Contrastive》,其内容覆盖了CV、NLP、Graph三个方向自监督学习的成果。而本文会将主要目光放在Graph上的自监督学习。
文章将自监督学习主要分为三类:Generative、Contrastive、Adversarial(Generative-Contrastive)。目前,个人认为大部分Graph研究的目光都集中在Contrstive Learning上。个人拙见,原因可能与图学习的任务有关,图学习的任务主要集中在分类上(节点分类、图分类),对比学习天然会比生成学习更适用于分类任务,所以或许当生成满足某种性质的随机图任务成为主流之后,生成式模型就会成为主流。而对抗式(Adversarial)的学习,则会在生成式学习、对比式学习都达到瓶颈时,得到更好的发展。目前,在图领域,并未看到Adversarial Learning有惊人表现的文章。
当笔者首次接触自监督学习时
本文的重点将聚焦于Contrastive Learning这一发展轨迹的深入探讨,并在Generative Learning方面主要参考《Self-supervised Learning: Generative or Contrastive》一书的基本认识。
二、Generative Self-Supervised Learning
综述主要概述了四种基于生成机制的自监督学习方法,在这些方法中还有一种是前三种方法的融合版本。值得注意的是,在图神经网络领域,则倾向于采用第三种方案作为基础框架,并且该方案在后续章节中的实验表格中有所展示。至于混合型生成模型及其相关技术,则在此处不做详细讨论
Auto-Regressive (AR) Model
Autoregressive models can be viewed as a form of Bayesian network structure. Autoregressive models originated as statistical techniques for analyzing time series data. The two fundamental models in time series analysis are AR and MA. The theoretical foundation of AR models is rooted in Bayesian methods, which rely on a coherent framework for updating beliefs based on evidence. Each node's distribution can be conditioned on the states of other nodes, allowing for the computation of its probability distribution. This principle is particularly well-suited for applications like graph generation and expansion, where dependencies between elements are crucial. Linear regression represents one of the most basic and widely used predictive modeling techniques.
Flow-based Model
Flow-based models旨在估计数据的复杂高维分布。此方法也可寻找到与统计相关的其他方法。其基本思想与广义线性回归模型相似,在使用潜变量来推断未知的复杂分布方面具有相似性
Auto-Encoding (AE) Model
与主成分分析方法具有类似的思路,在机器学习领域中
三、Contrastive Self-Supervised Learning
综上所述
对比学习最初旨在通过Noise Contrastive Estimation(NCE)来学习目标对象之间的差异性。这种差异性本质上即为衡量相似程度的关键因素。然而实际上这一概念其实是一个主观性较强的概念,在某种程度上它取决于任务需求的具体定义。在信息挖掘领域通常我们所说的挖掘信息就是在增加衡量对象间相似程度的指标以提升数据处理效率与分析效果之间的重要平衡点。在这一领域中最早的方法之一就是DeepWalk该算法基于节点到达概率计算其间的相似性从而实现对网络结构的理解与分析过程在此基础上的各种改进方法逐渐被提出与完善起来。其中一种典型的做法就是构建高效的模型架构以更好地捕捉数据中的潜在关系与模式其中训练这类模型主要有两种方法一种是通过定义损失函数并采样正负样本使得损失函数最小化从而优化参数;另一种则是直接求解损失函数的极值问题进而找到最优解的过程中往往采用矩阵分解等数学工具来进行求解运算以提高计算效率与模型性能表现效果显著的是这种方法的核心在于设计有效的损失函数以准确反映数据间的内在联系

所谓图上的对比学习即是对于任意两个节点若越相似(属于同一类)其图表示就会相互接近而具体选择哪些节点作为正例/负例则直接决定了最终的分类效果
由于这个损失函数的分母较为复杂难以计算,并且在负样本数量增多时问题更加突出。传统的做法通常是采用其等价形式进行训练,并采用Skip-Gram with Negative Sampling(SGNS)模型作为示例来进行学习:


而Deep InfoMax 则是在NCE的基础上,走出了另一个道路,其目标为:

对这个目标函数意义感兴趣的可以直接阅读原文,在这里我们主要聚焦于图学习方面的内容,并试图从中获得一些启发性思考。在研究深度信息最大化(Deep InfoMax)方面时,深度图信息最大化(DGI)模型尤为突出。其关键在于通过融合局部特征与全局信息来提升表示能力。具体而言,在基于图卷积网络(GCN)的技术基础之上,DGI模型采用了读出函数提取节点特征,并结合拓扑结构信息生成表征。值得注意的是,DGI仍然采用了传统的GCN框架,通过构造负样本(即节点特征经过重新排列后与拓扑结构相结合的方式),使得生成的节点表示能够更好地匹配正样本(即节点自身拓扑属性与特征属性相结合的情况)。然而,由于在每次训练过程中都需要重新排列节点的特征向量,这种对比样本生成方式计算开销较大,因此在实际应用中通常会采用批处理策略来优化计算效率
其实在应用的过程中各种方法都源自于不同领域的借鉴并带来了显著的效果尤其是NLP领域中将文本视为一种特殊的图结构是非常有成效的接下来我们将探讨如何将一些方向转化为适用于图学习的新方法及其成果
Contrastive Multi-View Representation Learning on Graphs
该论文发表于ICML 2020会议,并聚焦于图数据上的对比多视图表示学习方法。研究者在三个GCN基准数据集上均展现了卓越的效果。深入探讨该论文的主题时会发现其思想来源往往成为后续工作的灵感源泉——真正创造性的想法往往需要极高的天赋与努力;而无奇不有的创意实则极为罕见——大多数研究则致力于对现有方法进行改进或将其应用于新的场景中
Multi-View实际上是基于DGI的一种拓展,在全局与局部互信息上做出了创新性的提升。这种观点主要参考自《Learning Representations by Maximizing Mutual Information Across Views》一文中关于改进DIM方法的研究:Augmented Multi-scale DIM (AMDIM)。该研究认为可以通过不同的增强数据方法来定义局部与全局互信息损失函数。具体而言,在DIM中,则是基于不同增强视图之间的对比(而非单一视图生成的"Real"与"Fake"对比),从而更有效地利用全局信息。
多视图方法在图像处理中是一种增强效果的方法,MVRLG则将其视为图的不同多视图视角,并提出了基于这一思路的核心算法框架.其核心代码本质上就是DGI算法的核心部分,主要区别在于该框架提出了两个图卷积网络(GCN),每个网络分别对应一种特定的视图.通过评估正负样本之间的差异性,并结合交换正样本在各个视图中的表现来分析负样本特征的变化规律,从而实现节点嵌入向量的有效学习.此外,该方法还能够提取图谱特征并生成图表示信息,最终用于完成图分类任务.
该模型由Multi-View提出,并从左侧开始定义不同类型的扩散机制(包括ADJ、PPR和热核),随后在这些扩散机制上进行采样。并利用DGI框架构建两个GNN网络。通过对特征的重新排列生成负样本。随后将其中一个扩散机制下的输入作为另一个GNN网络的输入,并与之前所提到的共享MLP结合使用,在与交换后的负样本之间进行对比学习。

A novel framework for contrastive multi-view representation learning, applied to both node and graph levels.
尽管被称为Multi-View,在这项研究中主要围绕这两个视图之间的关系展开实验研究。论文中指出,在增加视图数量时可能会出现整体效果下降的情况。受图像发展思路的影响,在两个视图之间展开对比学习可能有助于扩展研究范围。《Contrastive Multiview Coding》一文中指出同一物体可以从多个视角(通过不同数据增强手段实现),理论上来讲这些视角可能是无限多的。本文的目标则是整合这些多维度的信息并对其进行系统性训练。
GCC: Graph Contrastive Coding for Graph Neural Network Pre-Training
在图形领域中遵循CMC框架的工作
本研究中使用以下图形作为案例进行分析:其中左侧标注为红色的小圆圈代表输入节点。通过选择任意一个起始点执行广度优先搜索至第r层即可获得对应的r-ego网络结构。受限于r-ego网络框架内的情况应用随机游走算法(RWR)能够得到一系列具有代表性的子图集合;而受限于其他起始点的情况下应用RWR算法得到的一系列子图则可被视为反例集

源自 《GCC: Graph Contrastive Coding for Graph Neural Network Pre-Training》
在《Are Graph Convolutional Networks Fully Exploiting Graph Structure? 》一文中探讨了RWR与其1WL-test之间的密切关联。就认为这两种方法在基于Multi-View执行自监督学习方面存在共同特征在于,RWR本质上等同于PPR算法原因不言而喻,因为每当深入进行一次随机游走时返回到初始节点的可能性逐渐增大,而返回的可能性是按照比例递增的,因此向下一层次移动的可能性则逐步下降,并按照度值均匀分配给邻接节点这正是PPR算法的本质所在因此导出子图所遵循的分布模式实际上与各个节点对应的PPR分布有着密切关联GCC作为一种预训练方法后续采用何种GCN架构其实并不十分关键只需生成足够的正负样本类似于图片训练的做法将这些样本输入至GCN网络中进行训练即可值得注意的是原文采用了GIN模型
同样的,在图上实施自监督学习也会面临负例不足的问题。这一研究巧妙地运用了自监督学习领域的最新成果——Momentum contrastive learning(Moco)。该方法的优势体现在其创新之处在于仅需微调这些参数的变化量即可实现目标效果。具体而言,在Moco中采用了动量机制(Momentum),即通过正样本参数去更新负样本参数,并且这种更新幅度被严格控制以防止过度影响模型性能。值得注意的是,在解决这一关键问题上(即减少负样本数量的影响),SimCLR和Moco都展现出了各自的独特优势与解决方案策略
在当前的研究中关于自监督学习《Self-supervised Learning: Generative or Contrastive》这一研究详细阐述了这一领域的总结表格随后作者特别整理了该研究中关于图自监督学习的部分并进一步补充和完善了Multi-View相关的内容如下表

四、未来可能的工作
当前在自监督领域对图神经网络的研究成果较为丰富,在GCC框架中MoCo已被成功应用于其中。那么MVRLG是否能实现类似效果呢?其推广至超过两个GCN节点时效果逐渐减弱的原因尚待深入探讨。这一领域的发展主要得益于图像领域理论研究的进步,在此背景下具体的数据结构类型在此研究领域的影响力相对较低。然而自监督的核心思想始终发挥着关键作用。当前研究仍面临如何高效扩展的问题,在这一过程中改进负样本筛选效率成为亟待解决的关键问题。
