当前位置: X-MOL 学术VLDB J. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Efficient ( $$\alpha $$ α , $$\beta $$ β )-core computation in bipartite graphs
The VLDB Journal ( IF 2.8 ) Pub Date : 2020-03-04 , DOI: 10.1007/s00778-020-00606-9
Boge Liu , Long Yuan , Xuemin Lin , Lu Qin , Wenjie Zhang , Jingren Zhou

The problem of computing (\(\alpha , \beta \))-core in a bipartite graph for given \(\alpha \) and \(\beta \) is a fundamental problem in bipartite graph analysis and can be used in many applications such as online group recommendation and fraudsters detection Existing solution to computing (\(\alpha , \beta \))-core needs to traverse the entire bipartite graph once and ignore the fact that real-world graphs are often dynamic. Considering the real bipartite graph can be very large and dynamically updated, and the requests to compute (\(\alpha , \beta \))-core can be issued frequently in real applications, the existing solution is too expensive to compute the \((\alpha ,\beta )\)-core. In this paper, we present an efficient algorithm for (\(\alpha , \beta \))-core computation based on a novel index such that the algorithm runs in linear time regarding the result size (thus, the algorithm is optimal since it needs at least linear time to output the result). We prove that the index only requires O(m) space where m is the number of edges in the bipartite graph. We also devise an efficient algorithm with time complexity \(O (\delta \cdot m)\) for index construction where \(\delta \) is bounded by \(\sqrt{m}\) and is much smaller than \(\sqrt{m}\) in practice. Moreover, we discuss efficient algorithms to maintain the index when the bipartite graph is dynamically updated. We show that we can decide whether a node in the index should be updated or not by visiting its neighbors. Based on this locality property, we propose an efficient index maintenance algorithm which only needs to visit a local subgraph near the inserted or removed edge. Finally, we show how to implement our index construction and maintenance algorithms in parallel. The experimental results on real and synthetic graphs (more than 1 billion edges) demonstrate that our algorithms achieve up to 5 orders of magnitude speedup for computing \((\alpha ,\beta )\)-core, up to 3 orders of magnitude speedup for index construction and up to 4 orders of magnitude speedup for index maintenance, respectively, compared with existing techniques.

中文翻译:

二分图中的有效($$ \ alpha $$α,$$ \ beta $$β)核计算

对于给定的\(\ alpha \)\(\ beta \)计算二部图中的(\(\ alpha,\ beta \))核的问题是二部图分析中的一个基本问题,可以在许多情况下使用在线群组推荐和欺诈者检测等应用程序现有的计算(\(\ alpha,\ beta \))核心解决方案需要遍历整个二部图一次,而忽略现实世界中的图通常是动态的这一事实。考虑到实二部图可能很大并且可以动态更新,并且计算(\(\ alpha,\ beta \))核的请求可以在实际应用中频繁发出,因此现有解决方案对于计算\( (\ alpha,\ beta)\)-核心。在本文中,我们提出了一种基于新索引的(\(\ alpha,\ beta \))核计算的高效算法,使得该算法在结果大小方面线性运行(因此,该算法是最优的,因为它至少需要线性时间才能输出结果)。我们证明索引仅需要Om)空间,其中m是二部图中的边数。我们还设计了一种有效的算法,该算法具有时间复杂度\(O(\(delta \ cdot m)\),用于索引构造,其中\(\ delta \)\(\ sqrt {m} \)限制,并且比\( \ sqrt {m} \)在实践中。此外,我们讨论了在二分图动态更新时维护索引的有效算法。我们展示了可以通过访问邻居来决定是否更新索引中的节点。基于这种局部性,我们提出了一种高效的索引维护算法,该算法仅需要访问插入或移除的边缘附近的局部子图。最后,我们展示了如何并行实现索引构建和维护算法。在实数图和合成图(超过10亿条边)上的实验结果表明,我们的算法可将计算\(((\ alpha,\ beta)\)的速度提高多达5个数量级核心,与现有技术相比,索引构建最多可提高3个数量级,索引维护最多可提高4个数量级。
更新日期:2020-03-04
down
wechat
bug