Scalable Katz Ranking Computation in Large Static and Dynamic Graphs

Network analysis defines a number of centrality measures to identify the most central nodes in a network. Fast computation of those measures is a major challenge in algorithmic network analysis. Aside from closeness and betweenness, Katz centrality is one of the established centrality measures. In this paper, we consider the problem of computing rankings for Katz centrality. In particular, we propose upper and lower bounds on the Katz score of a given node. While previous approaches relied on numerical approximation or heuristics to compute Katz centrality rankings, we construct an algorithm that iteratively improves those upper and lower bounds until a correct Katz ranking is obtained. We extend our algorithm to dynamic graphs while maintaining its correctness guarantees. Experiments demonstrate that our static graph algorithm outperforms both numerical approaches and heuristics with speedups between 1.5x and 3.5x, depending on the desired quality guarantees. Our dynamic graph algorithm improves upon the static algorithm for update batches of less than 10000 edges. We provide efficient parallel CPU and GPU implementations of our algorithms that enable near real-time Katz centrality computation for graphs with hundreds of millions of nodes in fractions of seconds.

[1]  David A. Bader,et al.  cuSTINGER: Supporting dynamic graph algorithms for GPUs , 2016, 2016 IEEE High Performance Extreme Computing Conference (HPEC).

[2]  Chin-Wan Chung,et al.  Finding k-highest betweenness centrality vertices in graphs , 2014, WWW.

[3]  Rok Sosic,et al.  SNAP , 2016, ACM Trans. Intell. Syst. Technol..

[4]  Jérôme Kunegis,et al.  KONECT: the Koblenz network collection , 2013, WWW.

[5]  Franz Franchetti,et al.  Mathematical foundations of the GraphBLAS , 2016, 2016 IEEE High Performance Extreme Computing Conference (HPEC).

[6]  Leo Katz,et al.  A new status index derived from sociometric analysis , 1953 .

[7]  Laks V. S. Lakshmanan,et al.  Fast Matrix Computations for Pairwise and Columnwise Commute Times and Katz Scores , 2011, Internet Math..

[8]  Andrea Marino,et al.  Computing top-k Closeness Centrality Faster in Unweighted Graphs , 2017, ALENEX.

[9]  David A. Bader,et al.  A Dynamic Algorithm for Updating Katz Centrality in Graphs , 2017, ASONAM.

[10]  Tamara G. Kolda,et al.  Link Prediction on Evolving Data Using Matrix and Tensor Factorizations , 2009, 2009 IEEE International Conference on Data Mining Workshops.

[11]  Eisha Nathan,et al.  Approximating Personalized Katz Centrality in Dynamic Graphs , 2017, PPAM.

[12]  Mark Newman,et al.  Networks: An Introduction , 2010 .

[13]  Henning Meyerhenke,et al.  Computing Top-k Closeness Centrality in Fully-dynamic Graphs , 2017, ALENEX.

[14]  David A. Bader,et al.  Graph Ranking Guarantees for Numerical Approximations to Katz Centrality , 2017, ICCS.

[15]  David A. Bader,et al.  Hornet: An Efficient Data Structure for Dynamic Sparse Graphs and Matrices on GPUs , 2018, 2018 IEEE High Performance extreme Computing Conference (HPEC).

[16]  Sunghee Choi,et al.  Efficient algorithms for updating betweenness centrality in fully dynamic graphs , 2016, Inf. Sci..

[17]  Kurt C. Foster,et al.  A Faster Katz Status Score Algorithm , 2001, Comput. Math. Organ. Theory.

[18]  Justin Zhijun Zhan,et al.  Identification of top-K nodes in large networks using Katz centrality , 2017, Journal of Big Data.

[19]  Sergey Brin,et al.  The Anatomy of a Large-Scale Hypertextual Web Search Engine , 1998, Comput. Networks.

[20]  Christian Staudt,et al.  NetworKit: A tool suite for large-scale complex network analysis , 2014, Network Science.