Identification of top-K influential communities in big networks

Because communities are the fundamental component of big data/large data network graphs, community detection in large-scale graphs is an important area to study. Communities are a collection of a set of nodes with similar features. In a given graph there can be many features for clustering the nodes to form communities. Varying the features of interest can form several communities. Out of all communities that are formed, only a few communities are dominant and most influential for a given network graph. This might well contain influential nodes; i.e., for each possible feature of clustering, there will be only a few influential communities in the graph. Identification of such communities is a salient subject for research. This paper present a technique to identify the top-K communities, based on the average Katz centrality of all the communities in a network of communities and the distinctive nature of the communities. One can use these top-K communities to spread information efficiently into the network, as these communities are capable of influencing neighboring communities and thus spreading the information into the network efficiently.

of a community or of an entire network as well as top communities based on strength/ influence, the focus of interest could be limited to a set of nodes/communities capable of spreading information into the entire network. For example, consider an e-commerce business offer: instead of sending rewards coupons to all the users, instead, identify the top users, who are loyal and frequent buyers, and most likely to use the rewards coupons. Sending these top users rewards coupons will benefit the business. Other strategies can be applied to new or infrequent buyers.
In all previous studies on these problems, a community has been defined as a densely connected sub-graph. According to Faisal et al. [6], this focus ignores another key aspect, namely, influence or importance; these authors presented interesting scenarios that highlighted importance and need to find the most influential communities in a network. Previously, Doo [7] focused on detecting the top-K influential communities in undirected graphs. They defined the influence of a community as the minimum weight of nodes in that community; the top influential community was the one with largest influence value. On the other hand, Du et al. [8] ranked communities according to the strength of each community, which varies with time. In this paper, we define the strength of communities in terms of their average Katz Centralities, taking into consideration each community's distinctive nature. All the communities in this study were to connect to a maximum number of communities. If a community is immediately connected to more number of communities than others are, then it can influence them all. By this means, a message can be propagated to the maximum number of communities present in the graph.

Related work
Ample of work has been done to find the most influential community in a network. One of the most significant methods used include the classic centrality measures, such as degree, betweenness, or similar kind of measures.
Xie et al. [4] proposed a method to extract the community structure, which appeared to be connected by means of a unique spectral property of the graph Laplacian of the adjacency matrix. This group used such structural parameters as algebraic connectivity and node degree distribution for community exploration. Similar to our work, they took into consideration the edge structure; in addition, they used the greedy algorithm for modularity optimization. Li et al. [5] used another approach, which was to study the flooding time, which is the time taken for the information to spread from one node/ community to the other node/community. In this approach, processes were considered in which the topology of the graph at time t depended only on their topology at t-1. In their case, most of the dynamic graphs were Markovian and ergodic.
One emphatic approach for detecting the most influential community could be forecasted by detecting the number of nodes whose information radiates the most. One such model was proposed by Ma et al. [9], in which mining of social networks were done using heat-diffusion processes. Based on this, candidate was selected. The basic formula used for undirected social networks was: where there is a social network graph, G = (V, E), where V is the vertex set and V = {v 1 , v 2 , . . . v n }. E = v i , v j |there is an edge from vi to vj . The value f i (t) describes the heat at node v i at time t. f(t) denotes the vector consisting of f i (t). The heat should be proportional to the time period Δt, and the heat difference f j (t) − f i (t). α is the thermal conductivity, and E is the set of edges. Faisal et al. [6] proposed an approach of identifying the boundary nodes in a community, as they played a vital role in communication for energy-efficient graph processing. They calculated the similarity of the nodes by using the Jaccard similarity, which is given as: where Adj(i) and Adj j are the adjacent list of nodes i and j, respectively.
Sweeney et al. [10] used a game theoretic model to detect communities in large networks. Modified Laplacian matrices along with neighborhood similarities were used, and a given network was segregated into dense networks. Kim [11] computed the popularity of a node in a community. Wu et al. [12] described a new method using distance centrality, and detected the communities without a present community number by considering the most central node and determining the similarities among all other nodes. Zhang and Wu [13] found the core nodes for the local community detection, and Mahmood and Small [14] found that each node could only be represented efficiently as a linear combination of nodes spanning the same subspace.

Preliminaries
Katz centrality measures the relative influence of each node in a given network by taking into account the node's immediate neighbors as well as non-immediate nodes that could be connected to the node by way of its immediate neighbors. Similar to Sub graph centrality and Total communicability, Katz centrality covers both local and global influence of a node on the entire network. The matrix resolving (I − αA) −1 first was used to rank nodes in a network in the early 1950s, when Katz used the column sums to calculate node importance [15]. The Katz centrality score of a node i was given by either depending on whether broadcast or receiving scores were required (a directed graph) [16]. In an undirected graph in which the Adjacency matrix obtained is a symmetric matrix (A = A T ), either of the formulae can be used to compute Katz centrality scores. The column matrix containing all number ones may be replaced by an arbitrary (positive) preference vector, v as required. Katz centrality of node i counts all walks beginning at node i, penalizing the contribution of walks of length k by α k .
The bounds on α (0 < α < 1/ 1 ) ensure that the matrix I − αA is invertible and that the power series in (1) converges to its inverse. The bounds on α also force (I − αA) −1 to be nonnegative, as I − αA is a nonsingular M-matrix. Hence, both the diagonal entries α k A k and the row/column sums of (I − αA) −1 are positive, and thus can be used for ranking purposes.
Given a graph, G = (V, E), a walk of length m denotes a set of m nodes {v 1 , v 2 , v 3 , . . . , v m }, and E = {e 1 , e 2 , e 3 , . . .} is the set of edges. Then, A is the adjacency matrix of the network G, denoting the immediate connectivity among the nodes. The Katz centrality of a node v i is given by: where α is a constant called damping factor, which is usually considered to be less than the largest eigenvalue, λ (i.e., α < 1/λ 1 ) and β is a bias constant (also called the exogenous vector), which is used to avoid the zero centrality values. Hence, each node has a minimum, positive amount of centrality that it can transfer to other nodes by referring to them. In particular, when measuring the receiving capacity, the centrality of nodes that are never referred to is exactly this minimum positive amount. When measuring the broadcasting ability of a node, linked nodes have a higher centrality or the centrality of nodes that are never broadcasting to any other nodes. It follows that highly linked nodes have high centrality regardless of the centrality of the neighboring nodes. However, nodes that receive few links still may have high centrality if their neighboring nodes have a large centrality.
From (2), it is evident that Katz centrality is a parameter dependent index, i.e., it depends on α and β. Their values play a decisive role in obtaining Katz centrality values that fluctuate. Different choices of α and β lead to different centrality values, resulting in different node rankings. For instance, if α → 0+, then the Katz centrality reduces to a degree centrality [17]. If α → (1/λ 1 ), then it reduces to an eigenvector centrality [18]; for example, if α = (1/λ 1 ) and β = 0, then the Katz centrality is the same as the eigenvector centrality. Hence, these parameters can be taken as a medium to tune between the rankings of nodes based either on a local influence (short walks) or a global influence (long walks).
In case of undirected graphs, both the receiving and broadcasting abilities are alike [16]. However, this is not the case for directed graphs. Table 1 provides the limiting behavior of various schemes.
The right eigenvector of a person would be high if he or she is able to influence someone who already influences a great amount of people. The left eigenvector of a person would be high if someone who gets a great many votes is voting him or her.
Furthermore, (2) can be generalized for the entire graph as:  Fig. 1 to understand this concept in detail. For the given graph in Fig. 1, the corresponding adjacency matrix is as follows:

Consider the example in
The eigenvalues of A are (2.64, −1.77, −1.00, 0.72, −0.58). With the given eigenvalues, the largest value of A is λ = 2.64. Assume that α = 0.2 < 1/λ and β = 0.3. Then, the Katz centralities are: Therefore, nodes v 1 and v 3 have the highest Katz centrality, and would be the most influential nodes.
Katz gives the broadcasting ability of each node. Similarly, by using the same α and β values, the scores of each node for the Katz receive centrality scores are:  Therefore, from these two broadcast and receive score matrices, it can be inferred that Node 2 is ideal for initiating a rumor spread into the network and Node 7 is ideal node for receiving the latest rumors in the network.

Map equation framework
The clustering of the networks resembles the cartography of the traffic infrastructure for navigation, hence the term 'map' . In this framework, the modules are identified that tend to stay in a cluster for a longer time. In a study by Rosvall and Bergstrom [19], this can be seen as a real scenario because a place could be called a 'city' if the traffic remains for a relatively long time. The map equation is constructed on a flow-based infrastructure. A random walker's lodge in a community can have either shorter or longer description lengths. For a good community structure, a shorter length is favored. The random walker sometimes stays for a longer time at certain regions in a community. In those cases, the description can be condensed. It is better to derive the code length from the stationary distribution of the random walker on the nodes and links rather than measuring the code length of a long walk and dividing by the number of steps. In general, given a network with n nodes and weighted directed links W α!β between nodes α, β, 2, 1, 2, . . . , n, the conditional probability that the random walker steps from node α to node β is given by the relative link weight P α≥β = W α≥β / βW α≥β .
Infomap clustering [19] arrives at two descriptions by which a random walker spends more time within a cluster. It looks for a module partition M (i.e., a set of cluster assignments) of N nodes into m clusters that minimizes the following expected description length of a single step in a random walk on the graph: This equation has been efficiently demonstrated by Bae et al. [20]. and Shun et al. [21]. The Infomap algorithm shadows the Louvian method, to an extent. It initially augments compact communities, which is done by modularity in a local way. Summing over all node pairs gives the equation for modularity, Q: where n and m are the number of nodes and the number of links, respectively; s is a membership variable such that if node v belongs to some community h, then S h = 1. A is the adjacency matrix and k v is a node degree.

Discussion
Given a graph with a set of distinct communities C = {C 1 , C 2 , C 3 . . . C n } with |C| = n. This set of communities might represent various types of data, such as: • Facebook friends that belong to a community or group; • A group of users in Twitter who follow a celebrity or famous person; • A group of users who prefer a certain category of items on such e-Commerce websites as Amazon, eBay, or Flipkart; or s v s w + 1 2 • A set of groups in an organization.
Given this data, we tried to identify the most central communities that are capable of broadcasting given information into multiple communities. Most of the studies focused on finding the top influential communities based on the criteria: How far will the influence of a group or community propagate in a network?
In our work, the focus was on identifying the central communities that are capable of sending a message to the entire network with high influence values as well as into how many distinct communities; this information could be broadcasted immediately. In general, the influence of a message sent by a person in friends' network decreases as the path of the message transfer increases; the approach using Katz centrality captures this property by penalizing a k step walk with α k . For calculating the influence of a community over the entire network, we took into consideration the average Katz centrality score of individual nodes belonging to the community. At the community level, the interactions of the current community nodes with distinct neighboring community nodes were calculated to determine the number of distinct communities into which the current community could broadcast a message. By using the above two factors, a community could be ranked as an influential community. A 'community' was defined as an influential community if it had a high amount of average Katz centrality scores and if it was capable of broadcasting a given message into a maximum number of distinct communities out of all the communities in the network, apart from the current community under consideration. Using this approach, we tried to improve the rankings of communities by using fewer actors, yet still capable of sending the information to distinct communities.
To calculate the average influence value of each community, first, the influence values of each node that belongs to a community needs to be calculated. The Katz centrality for node i can be calculated as: where A is the adjacency matrix of the graph G with eigenvalues = { 1 , 2 , . . . , n }.
The Katz centrality computes the relative influence of a node within a network by measuring the number of the immediate neighbors (first-degree nodes) and also all other nodes in the network that connect to the node under consideration through these immediate neighbors. Extra weighting could be provided to the immediate neighbors by means of the parameter β. However, connections made with distant neighbors are penalized by an attenuation factor α, which should strictly be less than the inverse largest eigenvalue of the adjacency matrix in order for the Katz centrality to be computed correctly. The influence of a node on a distantly connected node will vary with this attenuation factor; this is analogous to real time, where the influence of a person on immediate neighbors would be relatively high compared to users who are connected to neighbors of the current user under consideration. The influence of the current user under consideration would be less, and reduces with as the length of the walk to another user increases.
In turn, the Katz centrality has two variations, Katz broadcast centrality and Katz receive centrality. Katz broadcast and receive centralities of node i can be calculated In the case of an undirected graph, where A = A T , either of the formulas could be used to calculate the broadcast and receive scores. In the case of a directed graph, C b Katz = [β(I − αA) −1 .1] i could be used to calculate the broadcast centrality score of node i. After calculating the Katz centralities of each user or node in the network, we take the average influence values of each community by taking into account the influence values of all the nodes that belong to a given community. This value accounts for the relative influence of a community on the entire network. CKatz_average(i) represents the community level influence on the network of communities. CKatz_average(i) for community C i with k number of nodes {n 1 , n 2 , n 3 , . . . , n k } is computed in the following manner: In general, there two types of communities: Hard and Soft communities. Within the scope of this paper, we only considered hard communities; that is, given a node i, it only belongs to one community k at a given time. After computing the Katz centralities of each community, out of all the communities present in the network apart from the current community under consideration, the distinct number were identified for immediate neighbors into whom each community was capable of broadcasting a given message. This can be calculated as: where |N| is the number of distinct neighboring communities and |TC| is the total number of communities within the network. After calculating the strength and normalized distinct neighboring communities value, the strength of community can be obtained by using: where |N i | represents the number of directly connected neighboring communities of community C i and |TC| represents the total number of communities in the network. After calculating the strength values of each community, all the communities are sorted in the descending order of their strength values in order to retrieve the top-K communities later.

Implementation
The proposed model was implemented in R language, with RStudio, an integrated development environment (IDE); and by using IGraph packages extensively. An IGraph package was used for graph creation, both undirected and directed; community formation; and for capturing these details in a matrix. This matrix was parsed for community-wise boundary-node detection. Further, to rank the communities, the average value of the Katz broadcasting centrality for each community is computed (by using the Katz broadcast centralities of all nodes in each community). In turn this average Katz broadcast centrality of each community is multiplied by the normalized value of the number of distinct neighboring communities.

(5)
CKatz_average (i) = (n 1 + n 2 + n 3 + cdots + n k )/K The pseudo-code for populating a community matrix is given in Table 2. In this part of code, the input file (edge list format) is read and the graph object is created by using the read.graph() method of the IGraph package. The default graph object is a directedgraph object; in case the data is that of an undirected graph, the graph object needs to be converted to an undirected graph object. This can be done by using the as.undirected() method of the IGraph package. The graph object, either directed or un-directed, is passed to the Infomap.community() method to identify the communities in the network. The membership of each node is captured in a list object of the R language, in this case, c_List. Later, this list object is parsed by using the indexes to construct the community matrix. If a node i belongs to community k, then Community_Matrix [i, k] consists of k (community number). The later stages of the algorithm uses this community Matrix & c_List to identify the boundary nodes of each community and to identify how many distinct one-step neighboring communities connect to the current community.
For the Katz broadcast centrality, the pseudo code for the computation of the scores of each node is given in Table 3. For the Katz broadcast centrality, the score for node i can be obtained by computing β(I − αA) −1 .v i ; for the Katz receive centrality, the score for node i can be obtained by computing [β(I − αA T ) −1 .v] i . The pseudo-code in Table 3 is valid for both undirected and directed graph data. In the case of an undirected graph, Katz broadcasting and receiving scores are the same because A = A T , where matrix A is an adjacency matrix and symmetric in nature.
The pseudo-code for identifying distinct communities that are in the neighborhood of each community is given in Table 4. In order to identify each community's distinct neighbors, community_Matrix and membership list(c_List) are used. The community_ Matrix is parsed column-wise; whenever the algorithm finds a non-zero value, the node (row#) belongs to the community (column#). (In the community_Matrix, row numbers Table 2 Construction of the community matrix Table 3 Computation of the Katz broadcast centrality represent the node labels, whereas column numbers represent the community numbers.) All the outbound-edge neighbors of the current node are retrieved, and their membership is tested to know whether they belong to a neighboring community or not. In this way, all the details of distinct neighboring communities are captured for every community. After obtaining the list of distinct communities, unique function of the R language is applied to retrieve the unique neighbors; later, the length method of the R language is used to determine the number of unique neighboring communities. After obtaining the number of unique neighboring communities, the normalized value is calculated, as per line 21 in Table 4), and the values are stored in nMatrix. This process is repeated for each column of the community_Matrix.
In addition, temp_Sum is a variable that captures the sum of the Katz centrality scores of all the nodes that belong to a community, and count_nodes keeps track of the total number of nodes in a community. By using these two features, average Katz centrality scores of each community can be calculated, and the values are stored in kMatrix. This information is used to calculate the strength values of each community.
The pseudo-code for the calculation of each community's strength value is given in Table 5, kMatrix consists of the average Katz broadcasting scores of each community, and nMatrix consists of the normalized neighbor count of each community. Using these two values, strength of each community is calculated and stored in result matrix. Result Table 4 Detection of neighboring communities Table 5 Identification of a top-K community matrix is a two columned matrix, first column is used to store the community number and the second column is used to hold the strength values. Two columns facilitate the sorting operation, so as to keep track of community and community strength values after sorting. Later all the given communities are sorted in descending order of their strengths to allow us to pick the top-K communities.

The IGraph package
The IGraph package in R consists of routines for simple graphs and network analysis. It can handle large graphs very well, and provides functions for generating random and regular graphs, graph visualization, centrality methods and much more. Many community algorithms are available [22][23][24][25][26]; in our model, the infomap community-detection algorithm of IGraph library (in R language) was used to simulate communities from the given data file.
For generating a graph object using the IGraph package, node labels present in the input file (edge list file) when arranged in consecutive order and must start with the label 'zero'; the IGraph package expects the subsequent numbers to be in consecutive order. If the node labels in the input file are not present in this format-for example, if the edge list does not contain a node zero, then a node zero will be created by the IGraph package. This behavior might cause problems because an additional row will be created in the adjacency matrix; further, the inverse might not be computed as there is a chance for a determinant of matrix A to be zero. Even if the node labels are in the order as expected by the IGraph package-that is, the node labels start from zero and the rest of the labels are in consecutive order-then, the IGraph package increments each node by a value 'one' . In other words, a node with the label 'zero' is converted into a node with the label 'one' , a node with the label 'one' is converted into a node with the label 'two' , and so on. However, the type of conversion done by the IGraph package-incrementing the node labels by one-will not affect the results as long as all the node labels in the input file are in consecutive order from 0 to n nodes. After performing all the required operations on the converted node labels in the R environment, the results obtained can be converted back to an edge file format by subtracting 'one' from the node labels.
In order to make the effective use of the IGraph package's functionality, in our proposed model, we came up with a pre-processing algorithm (see Table 6), which reads the input file node label and aligns the node labels in the format as expected by the IGraph package. The preprocessing algorithm will make sure that the newly obtained file consists of node label 'zero'; in addition, it ensures that there are no missing nodes in the Table 6 Processing of input files input file, i.e., all the node labels are consecutively ordered. Please note that the preprocessing is required only if the input file is not present in the format as expected by the IGraph package.
After obtaining the pre-processed file, it was fed as input to construct the graph object (either undirected or directed). The infomap community-detection algorithm was run on top of the graph object to capture information obtained from communities in two ways. First, all the communities and nodes that are members of each community were captured. Second, the community to which each node belonged were captured using a list object in R language, with node labels as indexes and community numbers as elements for the corresponding node labels. Later, these two attributes were used to construct the community matrix, a matrix in which rows represent nodes, with the number of rows representing the total number of nodes in the graph and the columns representing the communities formed based in the graph topology, with number of columns as the total number of communities.
Initially, the community matrix was initialized to all zeroes; later, this matrix was populated with community numbers such that if a node i belonged to community k, then the element Community_Matrix [i, k] consists of k. The community matrix was used as the data structure, which was parsed column-wise (community-wise) to determine the nodes that fall into the community; then, the community matrix retrieves all the outbound neighbors and their community numbers to check if the outbound neighboring node belonged to a different community. If so, the neighboring community numbers was tracked, and the count of unique neighboring communities was retrieved for each community to be used in calculating the communities' strengths.

Conclusions
This paper presents a new way of calculating the top-K most influential communities in large networks. We designed a model that calculated the average Katz centrality of all the communities rather than following the standard approach using group centrality measures. After calculating the average, the communities connected to the most number of unique communities were considered, and defined as the community strength. We found that by contemplating the distinctive nature of the communities, the most influential one can be determined. From the experiments conducted on three sample datasets, the top 15 communities from all the datasets were ascertained, with the graphical representation. The approach followed in calculating the strengths gave importance to the communities capable of propagating information into distinct neighboring communities; the influence of the group was weighted over the network.
In the future, the model could be improved by considering the weights of edges. In addition, the internal nodal interaction could be improved by considering external community-community interactions.

Experimental environment
All the test cases and output graphs were obtained when executed on the proposed algorithm in Intel ® Xeon ® CPU E5-1607 0 @ 3.00 GHz with 16.0 GB RAM, which uses a 64-bit Windows Operating System.

Facebook dataset
The strength values for the Facebook dataset were dependent on every individual node influence on the network since individual node-centrality values were calculated as the average as well as at the community-community level; also included were the number of communities to which this community could directly contribute its Katz centrality value.
This dataset consisted of 4039 nodes and 88,234 edges. Varying the number of communities formed by using the infomap community detection algorithm tested the data; for each set of communities, also varied was the α value, used to compute the Katz centrality values of each node over the entire graph. Largest λ value obtained for the value for the network would not change with the number of communities formed, and the largest λ value was 0.006. The metrics used in distributing the data using IGraph's infomap method were the number of trails as 10 and modularity value as TRUE. Using the infomap community-detection method, 91 and 94 communities were formed in the first and the second attempt. Every time, the number of communities gets varied.
For each set of communities formed, the α value was varied as {0.003, 0.005}. Any value of α could be considered as far as it was less than the value of the highest λ value. After calculating the individual nodes for the Katz centrality values, community-wise average values were calculated. After that, the number of distinct neighboring communities was perceived for each community, and then strength values for each community were calculated. The next step after calculating the strength values of each community was to sort the obtained results in descending order in order to determine the top-K communities, which in these experiments were the top 15.
With |C| = 91 and alpha value as 0.003, Table 7 shows the top 15 communities ranked in the descending order of their community numbers. Please note that the community numbers were arbitrary; they were not given numbers on the basis of the number of nodes contained in the community. Figure 3 gives the graphical representation of top 15 communities given in Table 10, with α = 0.003.
With |C| = 91 and when alpha value is increased from 0.003 to 0.005, Table 8 consists the top 15 communities ranked in the descending order of their strength values. Figure 4 gives the graphical representation of the top 15 communities given in Table 7 with α = 0.005.
With the same graph object, and by using infomap clustering algorithm, another set of communities with |C| = 94 was generated. With |C| = 94 and the alpha value as 0.003, Table 9 consists the top 15 communities ranked in the descending order of their strength values. Figure 5 gives the graphical representation of the top 15 communities given in Table 9 with α = 0.003.
With |C| = 94 and alpha value as 0.005, Table 10 consists the top 15 communities ranked in the descending order of their strength values. Figure 6 gives the graphical representation of the top 15 communities given in Table 10 in descending order of their strength values, with α = 0.005.

Autonomous systems dataset
This dataset consisted of 6474 nodes and 13,895 edges. The data was tested by varying the number of communities formed by using the infomap community-detection   algorithm on the data; for each set of communities, we tested by varying the α value. Largest λ value obtained for the value of the network would not change with the number of communities formed, and the largest λ value was 0.061. The metrics used in distributing the data using IGraph's infomap method were the number of trails as 10 and the modularity value as TRUE. Using the infomap community-detection method, 406 and 411 communities were formed in the first and the second attempts. For each set of communities formed, the α value was varied as {0.018, 0.020}. After calculating the Katz centrality values for individual nodes, community-wise average values were calculated. After that, the number of distinct neighboring communities was perceived for each community, and the strength values for each community were calculated. The next step after calculating the strength values of each community was to sort the results obtained in descending order to pick the top-K communities, which were the top 15 in these experiments. The graph outline was the same as the Facebook dataset, with the x axis representing the top 15 communities in the ascending order and the y axis representing the strength of the communities. Initially, the α value was taken as 0.018, and then incremented to 0.020.
With |C| = 406 and the alpha value as 0.018, Table 11 shows the top 15 communities ranked in the descending order of their strength values. Figure 7 gives the graphical representation of the top 15 communities given in Table 11 with α = 0.018.  With |C| = 406 and the alpha value as 0.020, Table 12 consists the top 15 communities ranked in the descending order of their strength values. Figure 8 gives the graphical representation of the top 15 communities given in Table 11 with α = 0.020.
With the same graph object, and by using infomap clustering algorithm, another set of communities with |C| = 411 was generated. With |C| = 411 and the alpha value as 0.018, Table 13 consists the top 15 communities ranked in the descending order of their strength values. Figure 9 gives the graphical representation of the top 15 communities given in Table 13 with α = 0.018.
With |C| = 411 and alpha value as 0.020, Table 14 consists the top 15 communities ranked in the descending order of their strength values. Figure 10 gives the graphical representation of the top 15 communities given in Table 14 with α = 0.020.

Wikipedia dataset
This dataset consists of 7115 nodes and 103,689 edges. The data was tested by varying the number of communities formed by using the infomap community-detection algorithm on the data; for each set of communities, the α value, used in computing the   Katz centrality values of each node over the entire graph, was varied. Largest λ value obtained for the value for the network would not change with the number of communities formed, and the largest λ value was 0.022. The metrics used in distributing the data using IGraph's infomap method were the number of trails as 10 and the modularity value   as TRUE. Infomap community detection method is used to identify communities in the network. We ran our proposed algorithm twice for each data set by varying the number of communities in the network. The number of communities formed in the first run is 499 and the number of communities formed in the second run is 508. For each set of communities formed, the α value was varied as {0.018, 0.020}. Any value of α could be considered as long as it is less than the value of the highest λ value. After calculating the Katz centrality values for individual nodes, community-wise average values were calculated. After that, the number of distinct neighboring communities was perceived for each community, and then the strength values for each community were calculated. The next step after calculating the strength values of each community was to sort the obtained results in descending order in order to pick the top-K communities, which were the top 15 in these experiments.
The graph outline was same as for the Facebook dataset, with the x-axis representing the top 15 communities in the ascending order and the y-axis representing the strength of the communities. Initially, the α value was taken as 0.018, and then was incremented to 0.020.
With |C| = 499 and alpha value as 0.018, Table 15 consists of the top 15 communities, ranked in the descending order of their strength values. Figure 11 gives the graphical representation of the top 15 communities given in Table 15 with α = 0.018.
With |C| = 499 and alpha value as 0.020, Table 16 consists of the top 15 communities, ranked in the descending order of their strength values. Figure 12 gives the graphical representation of the top 15 communities given in Table 16, with α = 0.020.
With |C| = 508 and alpha value as 0.018, Table 17 consists of the top 15 communities, ranked in the descending order of their strength values. Figure 13 gives the graphical representation of the top 15 communities given in Table 17, with α = 0.018. With |C| = 508 and alpha value as 0.020, Table 18 consists of the top 15 communities, ranked in the descending order of their strength values. Figure 14 gives the graphical representation of the top 15 communities given in Table 18, with α = 0.020.   . 12 The graph of top-15 communities when α = 0.020 Table 18 gives the run time of each dataset. Please note that in these experiments, different sets of communities were generated for each dataset, and the alpha values were varied. However, varying the alpha value would not affect the run time for a set of communities since Algorithm 3 in Table 4 mainly was based on the community_Matrix, which is not dependent on Katz centralities of nodes. If the alpha values are varied for a set of communities, still we get the same run time values. Figure 15 gives the graphical representation of the run time analysis for Table 18.

Availability of datasets
The datasets used as a part of the experiments were obtained from the Stanford Large Network Dataset Collection (SNAP). The proposed model was evaluated against three different datasets obtained from SNAP; two of them were undirected graphs and one was a directed graph. All the three datasets contained more than 1000 nodes and 10,000 edges shown in Table 19.

Facebook dataset
Social Circles, consisting of 'circles' (or 'friends' lists'), were obtained from Facebook. This data was collected by SNAP from survey participants using the Facebook app. The dataset included node features (profiles), circles, and ego networks. Replacing the  Dataset statistics Nodes 4039 and edges 88,234. We used this information (i.e., edge file) as the test dataset for evaluating the algorithm, and constructed communities using the infomap community-detection algorithm of the IGraph package. We tested our algorithm against this undirected dataset multiple times by using the infomap algorithm to generate a different number of communities each time; every time, the nodes that were close to each other were grouped together to represent a community. This dataset [27] supports the conclusion of this article.

Autonomous systems dataset
According to Wikipedia [28], an autonomous system "is a collection of connected Internet Protocol (IP) routing prefixes under the control of one or more network operators on behalf of a single administrative entity or domain that presents a common, clearly defined routing policy to the Internet". The graph of routers comprising the Internet can be organized into sub-graphs, called autonomous systems (AS). Each AS exchange traffic flows with some neighbors (peers). We can construct a communication network of who-talks-to-whom from the border gateway protocol (BGP) logs. In contrast to citation networks, where nodes and edges only get added (and not deleted) over time, the AS dataset exhibits both the addition and deletion of nodes and edges over time. This notion helped us to evaluate our algorithm again with multiple communities generated by the infomap community-detection algorithm.
Dataset statistics Nodes 6474 and edges 13,895. The dataset [29] supports the conclusion of this article.

Wikipedia dataset
Wikipedia is a free encyclopedia, written collaboratively by volunteers around the world. A small part of Wikipedia contributors are administrators, who are users with access to additional technical features that aid in maintenance. In order for a user to become an