【论文阅读】SCGC : Self-supervised contrastive graph clustering

news2025/1/6 22:11:05

论文地址:SCGC : Self-supervised contrastive graph clustering - ScienceDirect

代码地址: https://github.com/gayanku/SCGC


摘要

图聚类旨在发现网络中的群体或社区。越来越多的模型使用自编码器(autoencoders)结合图神经网络(GNN)来实现有效的聚类,并将结构信息融合进来。然而,基于卷积或注意力变体的GNN在动态融合方面存在不足,容易出现过度平滑、噪声、节点异质性等问题,计算开销较大,且通常需要完整图结构的存在。为此,作者提出了SCGC模型,它通过无增强的边对比损失实现动态的软结构融合。此外,还提出了SCGC*,它采用了更具表现力的新型距离度量——影响力(Influence),并结合作者的影响力增强对比(IAC)损失,所需的模型参数仅为原来的一半。SCGC和SCGC*模型能够动态融合具有辨别性的节点表示,共同细化软聚类分配,完全消除传统GNN中的卷积和注意力机制,仅使用简单的线性单元,却能高效地融合结构信息。它们对层深度不敏感;具有较强的鲁棒性,能抵抗过度平滑、错误边缘和异质性问题;支持批处理,且无增强,放宽了同质性假设,并能轻松并行化。作者在多个基准测试上显著超越了现有最先进的技术,包括图像、传感器数据、文本和引用网络,且效率非常高。具体而言,DBLP上的ARI提升了20%,NMI提升了18%;训练时间总体减少了55%,推理时间总体减少了81%。

引言

图研究因其高表达性和图结构数据的普遍性而受到越来越多的关注[1]。图的独特非欧几里得数据结构非常适合表示多样化的特征丰富的领域,用于机器学习[2]。许多现实世界的任务,如引文网络、社交网络和蛋白质-蛋白质相互作用分析,都依赖于图数据挖掘技术。图聚类通过将相似的节点分配到不同的组中来发现网络中的群体或社区[2]。聚类已被广泛应用于图像[3,4]、文本[5,6]和社交网络[7,8]。到目前为止,基于自编码器(AE)的深度聚类方法[6,9-11]已取得了最先进的性能。

为了利用结构中丰富的信息,许多研究者[2,6,11,12]将图神经网络(GNN)与自编码器(AE)结合使用[13]。尽管这些模型在聚类上取得了最先进的结果,但由于(a)过度平滑,(b)噪声邻居(异质性),和(c)the suspended animation problem[1],GNN在结构融合中的依赖性存在挑战。GNN通过堆叠层[14]促进不直接连接的节点之间的交互,从而导致过度平滑,使得节点表示变得不可区分,原因是过度混合[15]。为了缓解这一问题,大多数GNN是浅层的,无法从深层模型中受益。像GCNII[16]和FDGATII[1]这样的模型可以实现更高的深度,但仍然需要预先确定适当的深度,并使用计算开销较大的卷积或softmax注意力操作。

众所周知,结构信息表示了节点之间的潜在依赖关系[6]。然而,这种依赖关系可以是直接(局部)依赖,也可以是间接(非局部)依赖,涉及一个或多个任意组合的阶数。因此,使用固定的预选择卷积或其他层结构来逼近这种不可预测的潜在结构并非易事。最近,更多的研究者转向了更简单且高效的模型实现[4,15,17]。尽管已有研究[4,18]使用对比损失来学习图嵌入,但它们使用了昂贵的增强操作,并包含了基于卷积的GNN形式。

在这项工作中,如图1所示,作者展示了如何从主训练循环和推理中消除先前工作的GNN和AE,同时仍能在自监督图聚类中获得最先进的成果。作者通过无增强的边对比损失来融合结构,避免复杂的融合操作,还能够使用更简单的单一自监督。作者提出的深度聚类方法通过无增强的边对比损失学习动态的软结构融合,以强制执行图结构和聚类优化,而不是尝试匹配潜在的节点依赖动态。作者提出了两个模型:SCGC和SCGC*。在SCGC中,使用1-hop信息进行软结构融合,并保留AE,如先前工作中所述。在SCGC中,通过提出的IAC损失使用聚合的多跳信息(称之为影响力),并丢弃了AE。具体来说,在SCGC中,使用最少的预训练(30个epoch,子批处理)嵌入来有效且高效地替代训练过程中的AE。对于结构和特征融合,引入了一种新型的对比损失度量——影响力,并定义了具有放宽同质性假设的影响力增强对比(IAC)损失。此外,使用了基于软标签的自监督机制。

SCGC在计算上是高效的,因为它由简单的线性层(MLP)组成。没有昂贵的卷积、softmax操作或增强。无需通过模型传递邻接信息,从而将模型结构与潜在的节点依赖结构解耦。因此,SCGC结构可以在不同数据集之间保持不变,正如通过使用图像、文本和图模式的基准数据集所展示的那样。SCGC非常适合边缘和资源受限的应用。通过仅使用无增强的对比损失进行软结构融合,SCGC对噪声边缘具有更强的鲁棒性。此外,由于使用基于概率分布的自监督机制,该模型也对特征噪声和类别/标签噪声(即异质性)具有较强的鲁棒性。我们的主要贡献包括:

  • 提出了一种新型的深度聚类模型SCGC,消除了传统GNN在图聚类中的需求。SCGC完全将结构与图解耦,并将其转移到一个方便的损失函数中。
  • 引入了影响力度量作为复杂图结构的简单而强大的代理,提供了高效的计算过程,并提出了具有理论见解的影响力增强对比(IAC)损失,并展示了其实验优势。
  • 在6个基准测试(包括图像、传感器数据、文本和引文网络数据)上的实验表明,SCGC在准确性、训练和推理效率上超越了现有最先进的图聚类方法。

尽管现有的深度图聚类方法通常使用基于AE的重构损失最小化[20],作者证明了AE仅在最小初始化(30个epoch)时是必要的,并且作者的训练和推理阶段不需要AE。此外,通过学习一个结构感知的变换,图信息在推理时不再是必需的;因此,作者的模型对节点的缺失连接具有较强的鲁棒性。此外,大多数对比模型使用SimCLR[16]的噪声对比估计(NCE)方法,需要增强视图,通常每个epoch都需要增强,并假设数据是独立同分布(IID)的。其他模型假设连接的节点是相似的:同质性。相反,作者使用通过作者新颖的影响力度量学习到的软局部-全局结构融合。通过使用有效的基于损失的模型来传递结构,能够使用简单的MLP,避免了昂贵的增强、卷积和注意力机制。最终的模型更加高效和快速。SCGC同样适用于图像、文本和图数据。

模型

对于图中任意两个节点 i 和 j,不失一般性地假设节点 j 距离节点 i 有 R 个跳数(hop),如图 2(a) 所示,节点 j 的邻域信息需要通过中介节点 p,q,r,s传递才能到达节点 i。为了实现这一点,GNN(图神经网络)架构在训练和推理阶段携带并使用结构信息,例如通过邻接矩阵或消息传递。同时,堆叠层被用来增加感受野(receptive field)并覆盖多跳节点。然而,这种结合模糊了特征的重要性[25],并且导致当前最先进模型中复杂的结构和计算开销[4],如图 1 所示。

相反,作者提出一个单一的综合值来表示 i 和 j 之间的所有交互。实际上,就是一个单一的标量,如图 2(a) 所示,记作 γij。这可以通过用一组值替代图结构来极大地简化图结构,每条实际的图边 i,j对应一个标量值。由于现实世界的图通常是非常稀疏的,邻接矩阵 A 大多数元素为零[31],因此使用边(edges)进一步提高了可扩展性和效率。因此,GNN 架构不再需要层或更大的感受深度来捕获重要的多跳邻域信息。最终,模型变得更加简单且有效,并且避免了过拟合。作者将这种交互的综合体称为 影响力(Influence)。

影响力 能够有效地捕获局部和全局结构,并对异质性具有较强的鲁棒性通常,GNN 架构很难确定在哪个深度(或跳数)下,连接邻居信息对捕获局部和全局结构最有帮助。不同的数据集显示了不同程度的同质性和异质性。因此,在没有先验信息的情况下,选择深度(跳数)可能并非最优。例如,对于同质性数据集,1-hop 设计更为合适,因为相互连接的节点更有可能是相似的[4,27]。对于异质性数据集,这些数据集更可能包含不同标签的节点相互连接,研究人员已经提出了使用固定跳数的设计[6,11,19],或者提出了通过堆叠层来学习跳数的混合设计[25]。如图 2(a) 所示,使用组合交互不会假设任何特定的跳数,而是使所有跳数信息都可以用于学习。

计算 影响力 并非易事,因为存在相互依赖关系。例如,节点 r 也受到节点 m,n的影响,并且这部分影响会在通过 r 时与节点 j 的影响力结合。由于所有节点都会受到其他节点的影响,因此需要一种计算简单且高效的方法来获得 影响力。在第 3.1.1 节中,作者提出了一种优雅且简单的机制,基于矩阵的性质和图边的稀疏性来计算 影响力

在第 3.1 节中,作者展示了 影响力 度量如何作为损失函数使用,称为 IAC(影响力增强对比)损失。最后,作者推导了提出的 SCGC 架构,它使用 IAC 损失来处理结构,并使用基于 KL 散度的自监督来进行聚类。聚类本质上是无监督的[32],而 MLP(多层感知机)通常是有监督的。

与以前的 GNN 架构不同,SCGC 不包含 GNN,而是使用一个简单且计算高效的 MLP 来进行图聚类,使用 IAC 损失来处理结构,并基于 KL 散度的自监督进行聚类。IAC 是无增强且边对比的,与大多数对比损失方法不同。此外,与以前使用多模态融合的最先进模型不同,SCGC 使用单一模态,避免了需要进行昂贵的多次优化和端点融合,但如表 2 所示,它取得了更好的结果。此外,如图 6 所示,作者实现了更高的效率。

3.1. Influence Augmented Contrastive (IAC) Loss

如图 2(a) 所示,图形从一个独特的能力中受益:多个深度下的非邻接节点可以对一个节点产生任意的不相似且可加的影响。通过使用前一节定义的 影响力(Influence),可以更广泛地捕捉这些来自局部和全局邻域的可加效应,并且适用于给定的深度 R。尽管它可以携带更丰富的信息,但重要的是,影响力 通过结合间接的远距离节点,放宽了同质性(homophily)假设。以往的 GNN 模型天真地假设一个固定的深度关系,即通过超参数搜索得到的单一 r。典型的 GNN 层试图通过一个固定的层结构来利用这一特性。然而,这个层结构需要与潜在的影响力结构对齐。此外,GNN 层普遍应用于所有节点,因此错误地假设所有节点从不同深度效应中获得相同的影响(本质上是假设只有一个固定的 r)。因此,GNN 模型往往是次优的。此外,大多数 GNN 模型由于过度平滑问题(over smoothing)无法超过 2 层深度,像 FDGATII[1] 和 GCNII[16] 等模型试图解决这一问题。相比之下,影响力 是一种简单且高效的替代方案。

作者将 影响力 γij作为加权因子,应用于一种特定但流行的对比损失[4],以便为第 i 个节点公式化 IAC 损失,其表达式为:

其中,τ 是温度参数,γij是节点 i 和节点 j 之间连接的 影响力,且对于所有 k∈{1,2,…,B},k≠i。目前,使用所有节点 N,而不是批量 B,因此 B=N。

本质上,对于每个节点,其累积的 R-hop 邻域影响力用于区分正样本,将其与所有节点进行对比。IAC 损失 鼓励有影响力的节点在嵌入空间中比没有影响力的节点更接近。

图 2(b) 说明了 IAC 损失 的公式化过程。在接下来的两个子节中,将概述如何计算累积影响力,并提供相似性度量方法的详细信息,即距离(distance)。

3.1.1. 确定影响力

图中的高阶关系和高阶邻近性是通过邻接矩阵的幂次来获取的。将邻接矩阵 A 提升到 r-次方提供了关于图中节点在第 r 距离(或深度或跳数)上的高阶连接信息 [4,31]。

对于归一化的邻接矩阵 A^:

其中,I是自连接矩阵,D 是对角矩阵,且 r-次方提供了节点 i 和节点 j 之间的第 r 跳关系的强度 [4]。与以往所有的研究不同,作者提出通过所有节点关系的加性形式来计算影响力,而不是将其限制在某个特定的第 r 跳邻域内。具体来说,将归一化邻接矩阵的第 R 次累积幂定义为影响力 I^R,如图 2(a) 所示。因此:

重要的是,I^R包含了从 1 到 R 的所有之前邻域跳关系的聚合集。图 3 是 IAC 过程的可视化。归一化邻接矩阵 A^ 的各次幂,直到第 R 次,都被聚合以得到 I^R。

直观地来说,邻接矩阵 A^的每一幂次表示图中一对节点之间特定长度路径的数量。具体而言,A^r 的 ij-th 边给出节点 i 和节点 j 之间的 r-长度路径数。路径数越多,表示节点对之间的旅行方式越多,连接性越强。通过累加这些幂次,影响力聚合了关于各种长度路径的信息,从而捕捉图的整体连接性和结构。将幂次累加直到某个深度 R 可以捕获节点间在 R 跳距离内的累积连接性,跨越从局部到全局的结构信息。

计算 I^R只需要在训练前进行一次,使用邻接矩阵,且开销非常小。在大规模图中,可以使用稀疏实现来计算 I^R。实际的图通常是极其稀疏的,邻接矩阵 A 大多数是零 [31]。此外,I^R 的计算完全不涉及模型的学习过程,不涉及昂贵的张量操作,且边缘计算可以轻松地并行化。

边缘 γij 的影响力可以表示为:

需要注意的是,只有当节点 j 从其 r-跳邻域的节点 i 获得非零影响时,γij才会取得非零值。总结如下:

与本研究中影响力的定义不同,[4] 提出了基于余弦相似度的 NContrast (NC) 损失用于分类,其中每个节点仅考虑第 r 跳邻域,而不是更全面的加性影响力。具体来说,NContrast 仅使用图 3 中的一个 A^r,并且仅适用于有监督的分类任务。NC 可以被视为更通用的 IAC 损失的一个特定情况。作者采用 [4] 的方法进行自监督聚类,使用公式 (1) 和:

对于批次 B 的完整 IAC 或 NC 对比损失为:

请注意,尽管公式 (5) 对于 IAC 和 NC 看似相同,但它们每个在计算 ℓi时使用不同的 γij。IAC 使用更具信息量的聚合邻域 I^R。

3.1.2. 相似性函数

采用在谱聚类中常用的高斯核函数来计算两个样本之间的相似性,定义为:

其中,τ是一个超参数,表示方差或温度。由于:

以下相似性函数可以作为一个高效的替代:

3.2. 通过置信度增强的自监督聚类

图聚类本质上是无监督的。为此,使用基于概率分布的置信软标签作为聚类增强的自监督机制,如图 2(c) 所示。与现有的工作 [2,10,19] 类似,首先获得嵌入 zi 和聚类中心 μ之间的软聚类分配概率 qiu,其中 u 是聚类,使用学生的 t-分布 [33] 作为核函数来衡量相似性,以处理尺度不同的聚类并便于计算 [2],公式如下:

其中,聚类中心 μ是通过在预训练自编码器(AE)上进行 K-means 聚类初始化的,η是学生 t-分布的自由度。在所有实验中,将 Q作为所有样本的聚类分配分布,并且保持 η=1\,如以往的工作 [6,11] 所示。

靠近聚类中心的节点在 Q 中具有更高的软分配概率。通过将 Q 提升到平方并归一化,定义了一个目标分布 P,该分布强调了置信度较高的分配,定义如下:

为了使数据表示更接近聚类中心,并提高聚类的内聚性,最小化 Q 和 P分布之间的 KL 散度损失,这迫使当前的分布 Q 接近更有置信度的目标分布 P,通过使用分布 Q 来监督聚类分配 P,然后通过最小化 KL 散度来反向监督分布 Q,具体为:

KL 散度更新模型的方式更加平滑,并减少了对嵌入的剧烈扰动 [6]。此外,它可以兼顾 SCGC 的结构优化和特征优化目标。

3.3. 初始聚类中心和嵌入

为了获得初始嵌入 z 和聚类中心 μ,作者使用基于自编码器(AE)的子批次预训练阶段,通过最小化原始数据 X和重构数据 X^ 之间的重构损失,即:

编码器和解码器定义如下:

3.4. 最终提出的模型

初步实验表明,使用 IAC 后,一旦获得了可接受的聚类中心 μ,特征重构目标就变得冗余。自编码器可以仅通过编码器(MLP)替代(公式 11),这将减少一半的参数数量和训练开销。因此,提出了两个模型变种,分别是基于 AE 的 SCGC 和基于 MLP 的 SCGC*,它们的目标函数分别为:

  • SCGC:

  • SCGC*:

其中,α>0 是平衡结构引入的超参数,β>0控制聚类优化的超参数。

实验


挺有新意的,但是数据集没有大规模数据,可以试一下大数据集测试一下。。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何利用Logo设计免费生成器创建专业级Logo

在当今的商业世界中,一个好的Logo是品牌身份的象征,它承载着公司的形象与理念。设计一个专业级的Logo不再需要花费大量的金钱和时间,尤其是当我们拥有Logo设计免费生成器这样的工具时。接下来,让我们深入探讨如何利用这些工具来创…

蓝桥杯-Python

1. 冒泡排序 算法步骤: 比较相邻元素,如果第一个大于第二个则交换从左往右遍历一遍,重复第一步,可以保证最大的元素在最后面重复上述操作,可以得到第二大、第三大、… n int(input()) a list(map(int, input()…

数据库实时会话管理,性能问题诊断后的临门一脚

目录 前言 实时会话管理 DBdoctor 实时会话功能 1.实时会话列表 2.结束会话 3.操作历史 4.SQL分析 结语 前言 在之前的文章中我们介绍了DBdoctor性能洞察功能,它能够快速量化数据库连接会话单条SQL的资源消耗,实现性能问题快速根因定位并给出优…

GBase 8s 数据库备份还原

每一天都是一个新的篇章,等待着你去书写属于自己的故事!!! 一:备份 1.1.下载脚本文件,并上传到数据库服务器上相应目录。 解压后目录为: 说明: dbcomm.sh:导出注释脚本…

PHP框架+gatewayworker实现在线1对1聊天--发送消息(6)

文章目录 发送消息原理说明发送功能实现html部分javascript代码PHP代码 发送消息原理说明 接下来我们发送聊天的文本信息。点击发送按钮的时候,会自动将文本框里的内容发送出去。过程是我们将信息发送到服务器,服务器再转发给对方。文本框的id为msgcont…

DuckDB:密钥管理器及其应用

密钥管理器(Secrets Manager)为所有使用密钥的后端提供了统一的用户界面。密钥信息可以被限定范围,因此不同的存储前缀可以有不同的密钥信息,例如允许在单个查询中连接跨组织的数据。密钥也可以持久化,这样就不需要在每次启动DuckDB时都指定它…

告别Kibana:Elasticsearch 桌面客户端的新变革

告别Kibana:Elasticsearch 桌面客户端的新变革 在大数据处理与分析领域,Elasticsearch 及其相关技术的应用日益广泛。长期以来,Kibana 在数据可视化与查询管理方面占据重要地位,但随着技术的不断发展,用户对于更高效、…

模块化通讯管理机在物联网系统中的应用

安科瑞刘鸿鹏 摘要 随着能源结构转型和智能化电网的推进,电力物联网逐渐成为智能电网的重要组成部分。本文以安科瑞ANet系列智能通信管理机为例,探讨其在电力物联网中的应用,包括数据采集、规约转换、边缘计算、远程控制等技术实践&#…

AAAI 2025论文分享┆一种接近全监督的无训练文档信息抽取方法:SAIL(文中附代码链接)

本推文详细介绍了一篇上海交通大学乐心怡老师课题组被人工智能顶级会议AAAI 2025录用的的最新论文《SAIL: Sample-Centric In-Context Learning for Document Information Extraction》。论文的第一作者为张金钰。该论文提出了一种无需训练的、以样本为中心的、基于上下文学习的…

SAP物料主数据界面增加客制化字段、客制化页签的方式

文章目录 前言一、不增加页签,只增加客制化字段二、增加物料主数据页签 前言 【SAP系统MM模块研究】 #SAP #MM #物料 #客制化 #物料主数据 项目上难免会遇到客户要在物料主数据的界面上,增加新字段的需求。 实现方式有: (1&…

ROS2软件架构全面解析-学习如何设计通信中间件框架

前言 ROS(Robot Operating System) 2 是一个用于开发机器人应用的软件平台,也称为机器人软件开发工具包 (SDK)。 ROS2是ROS1的迭代升级版本 ,最主要的升级点是引入DDS(Data Distribution Service)为基础的…

接口自动化测试流程、工具及其实践

🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快 一、接口自动化测试简介 接口自动化测试是指通过编写脚本或使用自动化工具,对软件系统的接口进行测试的过程。接口测试是软件测试中的一种重要测试类…

香橙派5plus单独编译并安装linux内核无法启动的原因分析与解决记录

1 说明 我依照官方手册编译单独编译linux内核,安装后重启出现内核启动失败的问题,编译和安装步骤如下:# 1. 克隆源码 git clone --depth1 -b orange-pi-6.1-rk35xx https://github.com/orangepi-xunlong/linux-orangepi# 2 配置源码 make rockchip_linu…

数据库知识汇总1

一. 数据库系统概述 信息需要媒体(文本、图像视频等)表现出来才能被人类所获取,媒体可以转换成比特或者符号,这些称为数据; 数据/信息的特点:爆炸式增长、无限复制、派生; 数据库是指长期长期…

Win32汇编学习笔记03.RadAsm和补丁

Win32汇编学习笔记03.RadAsm和补丁-C/C基础-断点社区-专业的老牌游戏安全技术交流社区 - BpSend.net 扫雷游戏啊下补丁 在扫雷游戏中,点关闭弹出一个确认框,确认之后再关闭,取消就不关闭 首先第一步就是确认关闭按钮响应的位置,一般都是 WM_CLOSE 的消息 ,消息响应一般都在过…

OSPF特殊区域(open shortest path first LSA Type7)

一、区域介绍 1、Stub区域 Stub区域是一种可选的配置属性。通常来说,Stub区域位于自治系统的边界,例如,只有一 个ABR的非骨干区域。在这些区域中,设备的路由表规模以及路由信息传递的数量都会大量减少。 kill 4 5类type 传递1 …

论文解读之Generative Dense Retrieval: Memory Can Be a Burden

本次论文解读,博主带来生成式稠密检索:记忆可能成为一种负担的论文分享 一、简介 生成式检索根据给定的查询,自回归地检索相关的文档标识符,在小规模的文档库中表现不错,通过使用模型参数记忆文档库,生成…

vue,使用unplugin-auto-import避免反复import,按需自动引入

项目库:https://github.com/unplugin/unplugin-auto-import 参考: https://juejin.cn/post/7012446423367024676 https://cloud.tencent.com/developer/article/2236166 背景: vue3项目中,基本所有页面都会引入vue3框架的api&…

[深度学习] 大模型学习1-大语言模型基础知识

大语言模型(Large Language Model,LLM)是一类基于Transformer架构的深度学习模型,主要用于处理与自然语言相关的各种任务。简单来说,当用户输入文本时,模型会生成相应的回复或结果。它能够完成许多任务&…

OCR图片中文字识别(Tess4j)

文章目录 Tess4J下载 tessdataJava 使用Tess4j 的 demo Tess4J Tess4J 是 Tesseract OCR 引擎的 Java 封装库,它让 Java 项目更轻松地实现 OCR(光学字符识别)功能。 下载 tessdata 下载地址:https://github.com/tesseract-ocr/…