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

背景

在很多应用中,例如欺诈检测、社区挖掘和图压缩等,需要从有向图中找到密度最高的子图,这被称为有向最密子图问题(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

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值