GraphMAE2(解码增强型掩码自监督图学习器)

news/2024/12/28 19:33:29/文章来源:https://www.cnblogs.com/zzrt216/p/18636749

GraphMAE2: A Decoding-Enhanced Masked Self-Supervised Graph Learner

解码增强型掩码自监督图学习器

背景

​ 近年来,自监督学习(Self-supervised Learning,SSL)得到了广泛的探索,特别是生成式自监督学习在自然语言处理以及其他人工智能领域已经取得了新兴的成功,像 BERT 和 GPT 就被广泛采用。图自监督学习包括对比式与生成式两种方法,然而,对比学习却在图自监督学习领域占据主导地位,但对比学习严重依赖结构数据增强以及复杂的训练策略,而生成式自监督学习在图领域,尤其是图自动编码器(Graph Autoencoders,GAEs)方面的进展,到目前为止还未达到其在其他领域所展现出的潜力。作者提出了一种掩码图自动编码器 GraphMAE,旨在缓解生成式自监督图学习中存在的问题。具体而言,GraphMAE的重点不再是重构图结构,而是通过掩码策略以及缩放余弦误差(scaled cosine error)函数来着重进行特征重建。然而,掩码特征重建的性能依赖于输入特征的可判别性,并且通常容易被特征中的干扰影响。因此,为了解决这个问题,提出了GraphMAE2框架,关键在于提出了多视图随机再掩码以减少输入特征的过拟合和隐藏层的表示预测以获得更具有信息的目标。

动机

  • 生成式自监督图学习中存在的问题:

GAEs 能够在与对比式自监督学习方法的对比中全面取得优势,尤其在节点和图分类任务方面,而这些任务已经在神经网络编码器的推动下取得了显著进展,但其发展至今仍落后于对比式学习。为了弥补这一差距,作者对现有的 GAEs 进行了分析,并识别出了可能对 GAEs 发展产生负面影响的一些问题。需要注意的是,尽管之前的 GAEs 可能单独解决了以下问题中的一两个,但没有一个能同时应对这四个挑战。

  1. 结构信息过度强调问题:大多数 GAEs 将链路重建作为目标,以此来促进邻居间的拓扑紧密性 ,正因如此,以往的 GAEs 通常在链路预测和节点聚类任务上表现较好,但在节点和图分类任务中的表现却不尽如人意,这是因为节点和图分类更需要挖掘节点自身特征以及节点与周围节点之间深层次的语义、特征关联等信息,并非仅仅关注边的连接情况。
  2. 特征重建稳健性问题:对于那些利用特征重建的 GAEs,它们中的大多数仍采用常规架构,这存在学习到平凡解的风险。然而,在自然语言处理中,通过对输入进行破坏然后尝试恢复的去噪自动编码器已被广泛采用,这种思路或许也适用于图领域。
  3. 均方误差(MSE)的敏感性和不稳定性问题:所有现有的具有特征重建功能的 GAEs都采用均方误差(MSE)作为评判标准,且没有采取额外的预防措施。但MSE 会受到特征向量范数变化以及维度灾难的影响进而可能导致自动编码器的训练崩溃。
  4. 解码器架构表达能力问题:多数GAEs将多层感知机(MLP)作为解码器。在语言领域,目标通常是包含丰富语义的独热向量,而在图领域,我们的大多数目标是信息量相对较少的特征向量(除了化学图等中的一些离散属性外)。在这种情况下,这种简单的解码器(MLP)可能不足以弥合图特征中编码器表示与解码器目标之间的差距。
  • 掩码特征重构的问题:

输入的节点特征矩阵X本身包含噪声,也就是说节点特征语义不准确,而在掩码特征重建中,恢复区分性较弱的节点特征这一目标可能会引导模型去拟合不准确的目标以及噪声,从而带来潜在的负面影响。

  • GraphMAE框架的不足:

image

当使用区分度更低的节点特征(采用主成分分析,即 PCA)时,与有监督的方法相比,GraphMAE 对输入特征的可区分性更为敏感。在所有情况中,图注意力网络(GAT)都被用作基础架构(骨干网络)。

GraphMAE2框架:

image
framework

多视图随机再掩码的解码过程(Multi-view random re-mask decoding)

在GraphMAE框架采用GNN作为decoder的基础上,提出多视图随机再掩码的解码过程策略,类似于半监

督的随机传播策略。得到的K个不同的H都会进行特征重构。这种解码的随机性起到了正则化的作用,可防止网络记住输入X中的意外模式,因此训练将对输入特征中的干扰不那么敏感。采用缩放余弦误差函数来度量重建误差,并对各视图下的误差求和以用于训练。

\[L_{\text{input}}=\frac{1}{|\widetilde{V}|} \sum_{j = 1}^{K} \sum_{v_{i} \in \widetilde{V}}\left(1-\frac{\mathbf{x}_{i}^{\top} \mathbf{z}_{i}^{(j)}}{\left\|\mathbf{x}_{i}\right\| \cdot\left\|\mathbf{z}_{i}^{(j)}\right\|}\right)^{\gamma} \]

隐藏层表示预测(Latent representation prediction)

与 “先掩码再预测” 的思路一致,这部分的重点在于构建一个额外的、富含信息的预测目标,该目标受输入特征的直接影响最小。提出利用神经网络作为一个目标生成器,从未被掩码的图中生成一个隐藏层的预测目标。目标生成器网络与编码器共享相同的架构,但使用不同的权重集。在预训练期间,未掩码图首先通过目标生成器以生成目标表示$$ \bar{X} $$。然后将掩码图 G(A, Xm) 的编码结果H投影到表示空间,从而得到$$ \bar{Z} $$于潜在预测。编码器和投影网络经过训练,以匹配目标生成器在掩码节点上的输出。

虽然促使目标生成器输出的表示与编码器输出的表示在未掩码节点上保持一致对 GraphMAE2 框架有一些好处,但这些好处并不显著。这可能是因为掩码操作本身就充当了一种特殊的数据增强形式。GraphMAE2 的目标是利用未掩码图的输出来指导掩码节点的预测,而不是像知识蒸馏和对比学习方法那样最大化两个增强视图的一致性。

目标生成器的参数 通过编码器权重的指数移动平均值进行更新,使用权重衰减 βϕ ← βϕ + (1 - β)θ

\[L_{\text{latent}}=\frac{1}{N} \sum_{i}^{N}\left(1-\frac{\bar{z}*{i}^{\top} \bar{x}*{i}}{\left|\bar{z}*{i}\right| \cdot\left|\bar{x}*{i}\right|}\right)^{\gamma} \]

\[\ell = \mathcal{L}_{\text{input}} + \lambda \mathcal{L}_{\text{latent}} \]

扩展到大规模图

自监督学习通常受益于相对更大的模型容量,即更宽和更深的网络。然而,图神经网络(GNNs)在堆叠更多层时会面临过度平滑(over - smoothing)和过度压缩(over - squashing)等问题。一种规避这些问题的可行方法是通过提取局部子图来解耦图神经网络的感受野和深度。增加网络层数(深度增加)会导致感受野扩大,但也会引发过平滑和过压缩问题,导致模型性能下降。解耦感受野和深度可以在避免这些问题的同时,让模型能够更好地利用图中的局部和全局信息。

在掩码特征预测的背景下,GraphMAE2 更倾向于连接良好的局部结构,该论文利用局部聚类算法来寻找局部且密集的子图,采用了基于谱域的PPR-Nibble算法。这种策略减小了训练和推理之间的差异,因为它们都是在提取的子图上进行的。在 GraphMAE2 中,自监督学习是在一个簇内的所有节点上进行的。

实验

通过两种设置来评估GraphMAE2:(i)线性探测和(ii)微调

(i)使用小批量训练在大规模数据集上进行线性探测的结果如下图:
image

(ii)在大规模数据集上,使用仅占训练数据总量 1% 和 5% 的已标注数据来对预训练的 GNN 进行微调(fine-tuning)实验后的相关结果呈现情况如下图:
image

  • 对于所有基线方法,采用图注意力网络 (GAT) 作为编码器和解码器的骨干网络
  • 其中包括对比学习方法(GRACE 、BGRL 、CCA - SSG、GGD )和生成方法 GraphMAE,GraphMAE2
  • GraphMAE 和 GraphMAE2 基于所提出的局部聚类算法进行训练
  • 对于上述两种情况,使用随机种子进行 10 次实验,并报告平均准确率和标准方差

线性探测结果分析:

  • 从表 3 所示的线性探测结果来看,GraphMAE2 在所有数据集上都取得了比所有自监督基线更好的结果。这表明在无监督设置下,所提出的 GraphMAE2 方法能够学习到更具判别性的特征表示。
  • 尤其值得注意的是,在 MAG - Scholar - F 和 Papers100M 这两个数据集上,GraphMAE2 相较于 GraphMAE 分别有 1.91% 和 2.35%(绝对差值)的提升,这些结果充分彰显了所提出改进措施的重要性。

微调结果分析(半监督设置下对预训练模型微调):

  • 从表 4 呈现的结果可知,GraphMAE2 的自监督预训练对下游监督训练是有益处的,能带来显著的性能提升。
  • 还需要注意的是,在 ogbn - Papers100M 数据集上,只有 GraphMAE2 和 GraphMAE 比随机初始化模型产生了更好的性能,而所有对比学习的基线方法在预训练后都没能带来性能提升,一个可能的原因是这些基线方法所采用的数据增强技术在该数据集上没能发挥作用。

可扩展神经网络:

可扩展神经网络指的是能够处理大规模图数据的神经网络模型,论文中提到的可扩展神经网络主要关注节点级别的任务,例如节点分类。为了实现可扩展性,论文采用了以下策略:

  • 局部聚类: 使用局部聚类算法(如 PPR-Nibble)将大图分割成多个小的、密集连接的子图。这种方法可以有效地降低计算复杂度,并允许模型在子图上进行训练和推理。

  • 掩码特征预测: 使用掩码特征预测作为自监督学习的目标,这可以利用未标记的数据来预训练模型,从而提高模型在下游任务上的性能。

常用的可扩展 GNN 技术: 除了局部聚类和掩码特征预测之外,其他常用的可扩展 GNN 技术还包括:

  • 采样方法: 通过采样一部分节点和边来构建训练子图。

  • 去耦传播和特征变换: 将消息传播和特征变换操作分离,以减少计算复杂度。

Ablation studies

image

总结

​ 首先,该论文分析了输入特征的可判别性会阻碍当前为获取良好性能所做的种种尝试。在图自监督学习里,输入特征的可判别性十分关键,如果特征难以区分不同节点或者不同图结构的差异,那么基于这些特征去进行后续的学习任务,比如分类、预测等,就很难达到理想的效果,这也是目前相关研究面临的一个重要阻碍因素。接着,该论文提出了一个名为 GraphMAE2 的框架,旨在通过对预测过程施加正则化来解决上述问题。正则化操作可以约束模型的学习过程,避免过拟合等情况,让模型在进行特征预测时更加合理、稳定,有助于提升模型的泛化能力,使得模型在面对不同的图数据时都能有较好的表现。重点关注了解码阶段,并且引入了潜在表示目标以及在输入重构过程中引入随机性。这种新颖的解码策略有着重要意义,在实际的大规模基准测试中,它显著地提升了模型的性能。在大规模数据集场景下,数据的复杂性和规模都对模型性能提出了很高要求,而这种解码策略能够更好地挖掘数据中的信息,使得模型可以更准确地进行特征重构和预测,进而在各类基准测试任务中展现出更出色的性能表现。这项工作进一步表明,节点级别的信号能够为掩码图自监督学习提供充足的监督信息,并且值得在后续研究中进一步深入探索。这意味着在图自监督学习领域,研究者可以更多地围绕节点层面的信息挖掘、利用等方面开展工作,或许能够发现更多提升图自监督学习性能的方法和机制,推动整个领域不断向前发展。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/860509.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PTA第7~8次大作业分析及总结

一、前言 本次Blog为第七~八次大作业的总结。两次大作业主要考察抽象类及继承方面的相关内容,是在第六次大作业基础上的进一步升级,难度大幅提升,由于前面的作业我没有很好地完成,这两次大作业也没有拿到好成绩,这也算是提醒我:在进行一个设计时要提前为后续更加预留空间…

python3网络爬虫开发实战-第2版PDF免费下载

本书介绍了如何利用 Python 3 开发网络爬虫。本书为第 2 版,相比于第 1 版,为每个知识点的实战项目配备了针对性的练习平台,避免了案例过期的问题。另外,主要增加了异步爬虫、JavaScript 逆向、App 逆向、页面智能解析、深度学习识别验证码、Kubernetes 运维及部署等知识点…

Java大作业总结

Java大作业总结 目录Java大作业总结一.前言第七次大作业1.设计与分析2.踩坑心得(一)电阻值处理(二)设备状态更新顺序3.改进建议(一)错误处理与异常机制(二)性能优化(三)代码结构调整第八次大作业1.设计与分析2.踩坑心得3.改进建议期末总结 一.前言 这2次大作业都是前…

题目集 7 - 8 总结性 Blog

一、前言 在本学期的学习旅程中,题目集 7 和题目集 8 犹如两座重要的里程碑,引领我们在编程的道路上不断探索与前行。这两个题目集总计包含了2道题目,它们犹如一把把钥匙,开启了面向对象编程世界的大门,引领我们逐步深入其中,领略其复杂与精妙之处。题目集 7 宛如基石,着…

PHP_network

PHP PHP基础教程 语法PHP 脚本以<? php 开头 ,以?>结尾php语句以 ;结尾,php代码块的关闭标签也会自动标名 ;php支持的三种注释 //单行注释 单行注释 /* 多行注释 */php中,所有用户定义的函数、类和关键词都对大小写不敏感; 但所有变量都对大小写敏感变量 变量规则…

Python读取栅格图像并对像元数据处理后导出到表格文件中

本文介绍基于Python语言中的gdal模块,读取一景.tif格式的栅格遥感影像文件,提取其中每一个像元的像素数值,对像素值加以计算(辐射定标)后,再以一列数据的形式将计算后的各像元像素数据保存在一个.csv格式文件中的方法~本文介绍基于Python语言中的gdal模块,读取一景.tif格…

22207321-王郅坚-第三次BLOG

前言 这两次电器控制系统的开发迭代,涵盖了不同的编程知识点、设计思路与系统逻辑。第一次迭代实现了一个基础的电器控制系统,通过简单的电器类型和基本操作设置,实现了电器状态的管理与切换。这一阶段主要考察基本数据结构的使用、输入输出处理、以及简单的判断与循环逻辑。…

OO7-8次作业总结

Java习题集总结:家居强电电路模拟设计与优化 前言 在本阶段的学习中,我们完成了以家居强电电路模拟程序为核心的Java习题集任务,共涉及两套题目。两次习题集在内容设计上有明显的层级递进,不仅加深了我们对Java语言的理解,也培养了我们解决实际工程问题的能力。 习题特点:…

8086汇编(16位汇编)学习笔记08.函数

https://bpsend.net/thread-138-1-2.html函数结构 函数结构的演变 函数的结构并不是随随便便就出来的而是解决了很多问题之后,大家统一认为那个结构是最好的一种方式 例如:模拟函数实现2个数相加 不用函数实现两个数相加 ;这是栈段 stack segment stackdb 512 dup(0) stack en…

JAVA 7~8次题目集总结

本次完成了7~8次的题目集是接着上次的家居强电电路模拟程序-1和家居强电电路模拟程序-2后续迭代功能拓展 完成了家居强电电路模拟程序-3和家居强电电路模拟程序-4 家居强电电路模拟程序-3相比较之前的升级了电路其中线路中包含多个串联起来的并联电路以及增加了新的受控电路元件…

[4422] 08 无代码工具:如何做到不写代码就能高效交付?

在开始今天的课程前,我们先来简单回顾下上节课的思考题:低代码工具主要面向什么样的用户群体呢?低代码工具本质上是对组件化开发流程的简化,但在开发过程中,仍然可能进行编码调试。因此,它面向的用户群体应该是具有一定技术基础的开发人员,专业的后端开发也可以使用这类…