论文阅读: Efficient Maximum -Plex Computation over Large Sparse Graphs

引言

图模型被广泛应用于数据分析领域,如社交媒体、通信网络、协作网络、网页图和互联网,因为它能自然地捕捉实体之间的关係。这些应用中的图数据通常是全局稀疏但局部密集的。识别局部密集的子图在很多应用中非常重要,如在社交网络中识别大规模社区结构以理解网络内部的互动模式。

一个经典的稠密子图概念是团(clique),要求每一对顶点之间都有一条边。然而,团的概念过于严格,现实网络中的大规模紧密连接的社区很少表现为团。为此,文献中提出了多种松弛的团模型,如𝑘-plex。𝑘-plex允许每个顶点最多缺少𝑘个邻居。计算最大𝑘-plex和枚举最大𝑘-plex的问题在最近引起了越来越多的关注。然而,现有的算法在效率方面仍然存在局限,特别是在处理大型稀疏图时

主要贡献

  1. 新框架:设计了一个新框架,用于在大型稀疏图上计算最大𝑘-plex,通过迭代地从图中提取小的稠密子图,并对每个提取的子图进行分支界限搜索来解决问题。
  2. CTCP算法:提出了一种高效的图减小算法CTCP,通过顶点和边的削减来减小输入图的大小。CTCP计算的缩小图比现有技术具有更低的时间複杂度。
  3. BBMatrix算法:开发了一种新的分支界限算法BBMatrix,针对从输入图中提取的稠密子图,使用邻接矩阵表示其输入图,并利用一阶和二阶信息来进行削减和上界估计

框架细节

  • 新框架描述:
    该框架分为两个部分:

    1. 部分一:计算初始的较大𝑘-plex 并用 CTCP 进行图的减小。CTCP 通过核心和 truss 削减来减小图的大小,使其成为既是核心又是 truss 的最大子图。
    2. 部分二:迭代地从图中提取小的稠密子图,并用 BBMatrix 计算每个包含指定顶点的最大𝑘-plex。

kPlexS算法详解

kPlexS 是针对最大𝑘-plex计算问题设计的新算法。该算法通过结合 CTCP 和 BBMatrix 这两个核心技术,在大型稀疏图上高效地计算最大𝑘-plex。

1. CTCP算法

CTCP(Core-Truss Co-Pruning)是一种图减小算法,其主要目的是减少输入图的规模。CTCP通过以下两个步骤进行图的削减:

  • 核心削减:将所有度数小于𝑙𝑏 + 1 − 𝑘的顶点移除,将图减小到其(𝑙𝑏 + 1 − 𝑘)-core。
  • truss 削减:将参与小于𝑙𝑏 + 1 − 2𝑘个三角形的边移除,将图减小到其(𝑙𝑏 + 1 − 2𝑘)-truss。

CTCP 的时间複杂度为O(𝛿 (𝐺) × |𝐸 |),其中𝛿 (𝐺) 是图的退化度。CTCP 不仅在预处理步骤中使用,还在每次从图中移除顶点后进行迭代调用,以进一步减小图的大小

2. BBMatrix算法

BBMatrix 是专门针对从输入图中提取的稠密子图设计的分支界限算法。该算法使用邻接矩阵来表示其输入图,并利用一阶和二阶信息来进行削减和上界估计。BBMatrix 的核心技术包括:

  • 邻接矩阵表示:BBMatrix 使用邻接矩阵来表示其输入图,这使得增量地维护一阶和二阶信息变得更加高效。

  • 分支规则和削减规则:BBMatrix 使用一系列分支规则和削减规则来优化分支界限搜索过程。特别是,它利用了一阶和二阶信息来进行上界估计和削减,从而提高了算法的效率。

  • 增量计算技术:在递归过程中,BBMatrix 使用增量技术来高效地应用上界估计和削减

    在这里插入图片描述

    上图展示了BBSearch算法的流程,主要用于计算图中的最大𝑘-plex。流程如下:

    1. 开始:从一个BBSearch实例(g, k, S, lb)开始,其中g是图,k是允许的最大缺邻数,S是当前的部分解,lb是下界。
    2. 选择顶点:通过分支规则(BR1和BR2)选择一个分支顶点u。
    3. 包括顶点u
      • 将顶点u加入部分解S。
      • 应用简化规则(RR1-RR5)来简化实例。
      • 计算实例的上界(UB1和UB2)。如果不被修剪,则递归处理新实例。
    4. 排除顶点u
      • 将顶点u从图g和部分解S中排除。
      • 应用简化规则(RR1-RR5)来简化实例。
      • 计算实例的上界(UB1和UB2)。如果不被修剪,则递归处理新实例。

    这里展示了如何递归地选择顶点并用简化规则来计算最大𝑘-plex。

实验结果

  • 实验设置:论文在两个基准图集合上进行了广泛的实验。结果显示,在给定的时间限制内,kPlexS 算法总是能够比最先进的算法(BnB、Maplex 和 KpLeX)解决更多的图实例

    在这里插入图片描述

    上图展示了六种算法(kPlexS、kPlexF、KpLeX、BnB-ct、Maplex、BnB)在实际图集合上解决实例数量的比较。结果显示,kPlexS和kPlexF总能在不同时间限制内解决最多的实例,其中kPlexS在50秒内解决的实例数超过了其他算法在1800秒内的结果。kPlexS的优越性来自于其在密集子图提取和分支界限搜索中应用的二阶技术。

    在这里插入图片描述

    上表展示了在𝑘 = 5时,四种算法(kPlexS、KpLeX、Maplex、BnB)对22个真实图进行预处理的结果。表中的数据包括预处理时间、启发式计算的𝑘-plex大小(P)、以及简化后的图的顶点数(|Vₖ|)和边数(Eₖ)。结果显示,kPlexS在大多数图上的预处理时间最快,且在简化图的顶点和边数方面效果显着。KpLeX的预处理时间与kPlexS相当,但在某些图上的表现略逊。Maplex和BnB的预处理时间相对较长,特别是BnB在某些图上的处理时间非常高。

结论

这篇论文提出了一种新算法 kPlexS,通过引入新的框架和技术,大大提高了在大型稀疏图上计算最大𝑘-plex 的效率。kPlexS 结合了 CTCP 和 BBMatrix 这两个核心技术,不仅在实验中显示了显着的性能优势,而且在多种应用领域中具有重要的实用价值。未来的研究可以在动态图、分佈式计算和异构图等方面进一步优化和扩展该算法。同时,kPlexS 可广泛应用于社交网络分析、生物信息学、通信网络优化、电子商务和推荐系统、知识图谱构建、金融风险管理和网络安全等领域。例如,在社交网络分析中,它可以帮助识别社区和评估影响力;在生物信息学中,它可以用于识别功能模块和基因调控机制;在通信网络中,它可以优化网络拓扑结构和流量管理。这些应用展示了 kPlexS 在处理大规模图数据方面的潜力和广泛的应用前景。

论文地址:https://dl.acm.org/doi/10.14778/3565816.3565817

  • 18
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值