首页 > 其他分享 >论文摘要:Efficient Algorithms for Densest Subgraph Discovery on Large Directed Graphs

论文摘要:Efficient Algorithms for Densest Subgraph Discovery on Large Directed Graphs

时间:2024-07-29 14:55:49浏览次数:15  
标签:Directed core Approx Densest Subgraph Core DDS 算法 Exact

背景

在很多应用中,例如欺诈检测、社区挖掘和图压缩等,需要从有向图中找到密度最高的子图,这被称为有向最密子图问题(Directed Densest Subgraph, DDS)。DDS问题在社交网络、Web图和知识图谱等领域有着广泛的应用。例如,在社交网络中,可以用来检测假粉丝,在Web图中,可以用来发现网络社区。然而,现有的DDS解决方案在效率和可扩展性方面存在问题。例如,对于一个仅有三千条边的图,一些最好的确定性算法(确定最密子图的算法)需要三天的时间来完成计算。

在这里插入图片描述

上图为假粉丝检测的示意图。图中显示了一个微型博客网络,其中的边表示“关注”关係。通过发出DDS查询,返回了两组用户 S* 和 T*。与其他用户相比,d(在 T* 中)拥有异常多的粉丝(a,e,f,g,h )在 S* 中。这可能表明 d 向 S*中的用户贿赂,让他们关注自己。

挑战

DDS问题的目标是找到一个子图,使得该子图的密度在所有子图中是最高的。给定一个有向图 G=(V,E),DDS问题旨在找到两组顶点 S * 和 T *,使得从 S *到 T * 的边数与顶点数的平方根之比最大化。现有的解决方案主要面临两个挑战:一是计算複杂度高,无法处理大规模图数据;二是近似算法的精度和效率不理想。

创新算法

为了解决上述问题,本文提出了两类创新算法:确定性算法(DC-Exact)和近似算法(Core-Approx)。

确定性算法 (DC-Exact)

这个算法基于[x,y]-core的概念,并採用了分而治之的策略来提高效率。

[x,y]-core 概念
  • 定义:给定两组顶点 S 和 T,如果 S 中的每个顶点至少有 x 条出边连接到 T,并且 T 中的每个顶点至少有 y 条入边来自 S,则该子图称为[x,y]-core。
  • 意义:通过[x,y]-core,可以将问题规模大大缩小到图的一个密集子区域,这使得找到最密子图变得更加高效。
实现原理
  1. 内部循环优化:引入[x,y]-core 的概念,减小需要处理的图的规模。

  2. 外部循环优化:提出了一种分而治之的策略,大大减少了需要考虑的 ∣S∣ / ∣T∣ 的可能值的数量,从而优化了外部循环。

  3. 算法流程:

    • 枚举所有可能的 ∣S∣ / ∣T∣值。
    • 使用二分搜索来猜测最大密度的值。
    • 为每个 ∣S∣ / ∣T∣值构建流网络,并运行最大流算法来计算最小st割(利用最大流算法来找到从源点(source, s)到汇点(sink, t)的最大流量,从而确定如何将图分割为两部分,使得割边(cut edges)的总容量最小)。
    • 更新密度最大的子图。
    • 总时间複杂度为 O(n^3 m log n),但实际运行中通过上述优化大幅减少计算量。

近似算法 (Core-Approx)

这个算法基于[ x * , y * ]-core 的概念,通过计算一个2-近似解来提高效率。

[ x *, y *]-core 概念(在所有可能的[x, y]-core 中,拥有最大 x * y 值的核心子图)
  • 定义:在所有[x,y]-core中,找到使 x * y 最大的[ x *, y * ]-core。理论上证明,这个[x * , y * ]-core 是DDS问题的2-近似解。
  • 意义:这样的core不仅计算简单,且能在实际应用中提供接近最优的解。
实现原理
  1. 计算[x*, y]-core*:通过有效的算法计算[x*, y*]-core,该算法的时间複杂度为
    O ( m ( n + m ) ) O(\sqrt{m}(n+m)) O(m ​(n+m))

  2. 算法流程:

    • 计算[ x * , y * ]-core。
    • 返回该core作为2-近似解。

结果报告与结论

结果报告

实验结果显示,确定性算法DC-Exact在处理具有约6500个顶点和51000条边的图时,速度提升了六个数量级。而近似算法Core-Approx则能够在亿级别的图数据上进行扩展,比现有的2-近似算法快六个数量级。

在这里插入图片描述

上图展示了精确算法在前五个数据集(MO、TC、OF、AD 和 AM)上的效率结果。由于这些算法无法在更大的数据集上在合理时间内完成计算,因此图中没完整纪载这些结果。可以看到,Core-Exact 比最先进的精确算法 Exact 至少快 2 倍,最多可快 100 倍,另外DC-Exact 比 Exact 和 Core-Exact 分别快了六个和五个数量级。主要原因是 DC-Exact 採用了分而治之的策略,显着减少了需要考虑的 ∣S∣ / ∣T∣ 值的数量

在这里插入图片描述

上图展示了近似算法在八个数据集上的运行时间,条形图触及上边界表示算法在200小时内无法完成。可以观察到,BS-Approx和FKS-Approx是最没效率的算法,而KS-Approx几乎在所有数据集上最有效。Core-Approx是第二有效的,其次是PM-Approx,且Core-Approx比BS-Approx和FKS-Approx分别快六个和三个数量级。此外,Core-Approx能处理亿级别的图数据,并在保持高质量结果的同时实现高效率。

结论

本文提出的创新算法有效地解决了DDS问题中的效率和可扩展性问题,特别是在处理大规模数据集时。未来的研究可以在以下几个方面进行拓展:

  1. 算法优化:进一步优化算法的时间複杂度,使其能够处理更大规模的图数据。
  2. 应用扩展:将这些算法应用于更多实际场景,如生物网络分析和推荐系统。
  3. 理论完善:深入研究[x,y]-core的理论性质,探索更多关于密集子图的特性。

这些算法在实际应用中具有广泛的潜力,特别是在处理大规模社交网络、Web图和知识图谱等领域,能够提供高效且精确的数据分析工具。

论文地址: https://dl.acm.org/doi/10.1145/3318464.3389697

标签:Directed,core,Approx,Densest,Subgraph,Core,DDS,算法,Exact
From: https://blog.csdn.net/m0_62361730/article/details/140770684

相关文章

  • SolidJS-forceDirectedGraph(1)
    使用solidJS实现力导向图力导向图参考:https://observablehq.com/@d3/force-directed-graph/2原始代码与分析chart={//Specifythedimensionsofthechart.constwidth=928;constheight=600;//Specifythecolorscale.constcolor=d3.scaleOrdina......
  • Personalized Subgraph Federated Learning,FED-PUB,2023,ICML 2023
    个性化子图联邦学习paper:PersonalizedSubgraphFederatedLearningcodeAbstract更大的全局图的子图可能分布在多个设备上,并且由于隐私限制只能在本地访问,尽管子图之间可能存在链接。最近提出的子图联邦学习(FL)方法通过在局部子图上分布式训练图神经网络(gnn)来处理局......
  • Verification -- Basic Concepts ~ 3. Directed Verification
    DirectedVerificationDirectedVerification是一种功能验证,其中创建测试用例以执行数字设计的特定特性或功能。测试用例是根据规范的知识和设计的预期行为来设计的。DirectedVerification通常用于验证过程的早期阶段,即在执行随机或压力测试之前,因为他可以帮助快速识别错误并......
  • vue 首次加载项目,控制台报错: Redirected when going from "/" to "/login"
    第一次加载加载页面时报错如下:Redirectedwhengoingfrom"/"to"/login"viaanavigationguard. ![image](https://img2023.cnblogs.com/blog/1880163/202310/1880163-20231025113840444-1010075971.png)后续在地址栏直接添加/login,index,错误页面等均正常无报错.路由......
  • Metropolis Algorithms for Representative Subgraph Sampling
    目录概主要内容MetropolisgraphsamplingH\¨{u}blerC.andKriegelH.,BorgwardtK.andGhahramaniZ.Metropolisalgorithmsforrepresentativesubgraphsampling.ICDM,2008.概提出了一种尽可能保持拓扑结构的子图采样方法.主要内容假设我们有一个大图\(G\),......
  • vue-router.esm.js:2065 Uncaught (in promise) Error: Redirected when going from "
    原因:  vue-router路由版本更新产生的问题,导致路由跳转失败抛出该错误;真正的原因是由于返回了一个Promise对象,正常的跳转由then方法执行当正常的路由跳转,被"路由导航守卫"拦截并重新指定路由时,由于this.$router.push()返回的是Promise对象,此时then方法不能正常执......
  • [VLDB 2012]Efficient Subgraph Matching on Billion Node Graphs
    [VLDB2012]EfficientSubgraphMatchingonBillionNodeGraphs重点了解实现star-join的具体过程。分解query和STwigs排序文中把star叫做STwigs,每一个STwigs查询为\(q=(r,L)\),其中r是跟节点标签,L是子节点标签合集。点的选择性:\(f(v)=deg(v)/freq(v.label)\)分解算法:每次......
  • [VLDBJ 2019]Distributed Subgraph Matching on Timely Dataflow
    [VLDBJ2019]DistributedSubgraphMatchingonTimelyDataflow只关注这篇中的subgraphmatching的内容定义\(g=(V_g,E_g,L_g)\)分别表示点、边,以及把任意点或边映射成label的函数。如果是无标签图则会映射为空。对于任意点\(\mu\inV_g\),定义\(N_g(\mu)\)为它的邻居节......
  • [SIGMOD 2020]In-Memory Subgraph Matching An In-depth Study
    In-MemorySubgraphMatching:AnIn-depthStudy一篇subgraphmatching的survey总结文章共分析了8中代表性的内存式子图匹配算法,在过滤、排序、扩展、优化四个方面做了对比。定义文中的重要符号表生成树的概念:生成树是一个连通图的最小连通子图问题定义子图同构问题是......
  • [VLDBJ 2022]Privacy and efficiency guaranteed social subgraph matching
    Privacyandefficiencyguaranteedsocialsubgraphmatching动机目标是在不影响查询处理的同时保护隐私其中的子图匹配算法PGP查询会先被分解为星形结构(11行),拿这些分解得到的子图去做匹配实验数据集三个N分别表示类型、属性和标签数量。待补充......