An adaptive overlapping community discovery method and system based on density peak
By calculating the edge link and point link strength between nodes, the community center is selected adaptively, and the node is allocated using probability vectors, the problem of inaccurate distance calculation and poor adaptability of the density peak overlap community discovery algorithm in the prior art is solved. Efficient overlapping community detection of complex networks is achieved.
Patent Information
- Application Number
- CN202111246835.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-10-26
- Publication Date
- 2024-12-13
- Estimated Expiration
- 2041-10-26
AI Technical Summary
The existing density peak overlap community found that the algorithm cannot accurately calculate the distance between nodes, and the adaptive selection of community centers is highly subjective and has high complexity, resulting in low detection efficiency and inability to effectively detect large-scale complex networks.
By calculating the edge link strength and point link strength between nodes, a distance matrix is constructed, the community center is selected adaptively, and the probability vector is used to allocate the remaining nodes to realize community division, reduce complexity, and improve detection efficiency.
Accurate overlapping community detection of complex networks is achieved, the detection complexity is reduced, efficiency is improved, and large-scale complex networks can be effectively handled.
Smart Images

Figure CN113987342B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the field of computer and communication technology, and more specifically, to a density peak-based adaptive overlapping community discovery method and system. Background Art
[0002] In real life, many complex systems can be modeled as a complex network for analysis, such as common blood networks, aviation networks, transportation networks, computer networks, literature citation networks, and social networks. Community discovery divides the community structure according to the degree of connection between network nodes and reasonably classifies the nodes in the network. Community overlap is an important feature in the network, that is, there are overlapping nodes between different communities. The detection of overlapping communities has important research value and scientific significance for network structure analysis and community division.
[0003] Existing community discovery algorithms still have the following shortcomings:
[0004] Most overlapping community discovery algorithms that use density peaks have the disadvantage of not being able to accurately calculate the distance between nodes. The reason is that most algorithms do not consider the impact of edges and common nodes on distance calculation; or they cannot adaptively select community centers, because after calculating the density and shortest distance of the nodes, it is necessary to subjectively select the community center from the decision graph, which is highly subjective; or due to the high complexity of the algorithm, it leads to low detection efficiency, long time, and inability to detect large-scale complex networks. Summary of the invention
[0005] The present invention provides an adaptive overlapping community discovery method based on density peak, aiming to improve the above problems.
[0006] The present invention is implemented in this way: an adaptive overlapping community discovery method based on density peak, the method specifically comprising the following steps:
[0007] S1. Calculate the edge link strength and point link strength between nodes based on the adjacency matrix of the node network;
[0008] S2, construct the distance matrix of the node network, and calculate the local density ρ and the shortest distance δ of each node based on the distance matrix;
[0009] S3, adaptively select the community center in the network through the local density ρ and the shortest distance δ of the node;
[0010] S4. Allocate the remaining nodes to communities corresponding to at least one community center based on the probability vectors of the remaining nodes, and determine overlapping communities based on the allocated community set.
[0011] Furthermore, the edge link strength calculation formula between node i and node j is as follows:
[0012]
[0013] Among them, A ij is the value of the element in the i-th row and j-th column of the adjacency matrix, w i 、w j They represent the sum of the weights of the connected edges of node i and node j respectively, and r is the maximum weight w of the sum of the weights of the connected edges of all nodes in the node network max With the minimum value w min The difference between ij is the set of common points between node i and node j, and η is a constant.
[0014] Furthermore, the formula for calculating the point link strength between node i and node j is as follows:
[0015]
[0016] Among them, vst ij is the point link strength value between node i and node j; N i + is the set of node i and its neighbor nodes, N j + is the set of node j and its neighbor nodes, V ij is the set of common points between node i and node j, and λ is a non-negative real number.
[0017] Further, calculate the distance dist between node i and node j ij , which constitutes the element value of the i-th row and j-th column in the distance matrix, dist ij The distance calculation formula is:
[0018]
[0019] Among them, lst ij is the edge link strength between node i and node j; vst ij is the point link strength between point i and point j, and ε is a constant.
[0020] Furthermore, the method for selecting a community center specifically includes the following steps:
[0021] Normalize the density ρ and the shortest distance δ of all nodes to get ρ * and δ * ;
[0022] Calculate ρ * and δ * The product γ of γ is then sorted in ascending order, and the sorted γ is defined as γ * , γ* The index corresponding to γ is defined as ind;
[0023] Targeting γ * For each node i in γ * Perform linear fitting on the nodes arranged before node i, and then calculate the estimated value γ′ corresponding to node i;
[0024] Calculate the γ difference Δγ of node i, Δγ = γ * -γ′,
[0025] Will γ * The elements in the middle are judged from the back to the front, and the difference Δγ is less than the average value. The minimum mark of the point is M, is the average value of all node differences Δγ, and adds nodes with subscripts greater than M to the candidate community center set;
[0026] Delete the candidate community centers that do not meet the following condition 1 from the candidate community center set to form the final community center set;
[0027] Condition 1: The local density and the shortest distance are both greater than the maximum values of the local density and the shortest distance of the k nearest neighboring nodes.
[0028] Furthermore, the allocation method of the remaining nodes is as follows:
[0029] Calculate the probability vector of each remaining node, that is, the probability that the remaining node belongs to each community center;
[0030] Assign the remaining nodes to the community with the highest probability;
[0031] Calculate the division between the probability value of the remaining nodes belonging to other communities and the maximum probability value, and assign the remaining nodes to the community corresponding to the division value greater than the given threshold.
[0032] Furthermore, the probability vector p of the remaining node i i The calculation formula is as follows:
[0033]
[0034] Among them, cc i represents the set of k nodes with a higher local density than node i and the closest distance to node i, p j Indicates cc i The probability vector of node j in , w ij represents the probability weight of node j relative to node i, and the probability weight w ij The formula is as follows:
[0035]
[0036] dist ij Represents the distance between node i and node j, dist im The distance between node i and node m.
[0037] The present invention is implemented as follows: a density peak-based adaptive overlapping community discovery system, the system comprising:
[0038] The social topic network modeling module selects key node words through keyword filtering, calculates the correlation between key node words, and constructs a node network;
[0039] The edge link strength calculation module calculates the edge link strength between nodes based on the adjacency matrix of the node network;
[0040] Point link strength calculation module, which calculates the point link strength between nodes based on the adjacency matrix of the node network;
[0041] The distance matrix calculation module calculates the distance between each node based on the edge link strength and point link strength of each node, that is, constructs a distance matrix;
[0042] Density peak calculation module, which calculates the local density ρ and shortest distance δ of each node based on the distance matrix;
[0043] The community center generation module adaptively selects the community center in the network through the local density ρ and the shortest distance δ of the nodes;
[0044] A node allocation module allocates the remaining nodes to a community corresponding to at least one community center based on the probability vectors of the remaining nodes;
[0045] The overlapping community discovery module determines the overlapping communities based on the assigned community sets.
[0046] Furthermore, the edge link strength calculation module calculates the edge link strength between each node based on the following formula:
[0047]
[0048] Among them, A ij is the value of the element in the i-th row and j-th column of the adjacency matrix, w i 、w j They represent the sum of the weights of the connected edges of node i and node j respectively, and r is the maximum weight w of the sum of the weights of the connected edges of all nodes in the node network max With the minimum value w min The difference between ij is the set of common points between node i and node j, and η is a constant.
[0049] Furthermore, the point link strength calculation module calculates the point link strength between each node based on the following formula:
[0050]
[0051] Among them, vst ij is the point link strength value between node i and node j; N i + is the set of node i and its neighbor nodes, N j + is the set of node j and its neighbor nodes, V ij is the set of common points between node i and node j, and λ is a non-negative real number.
[0052] The present invention uses edge link and point link strength to accurately calculate the distance between nodes, and uses a linear fitting method to adaptively select community centers. In the remaining node allocation stage, a probability vector is defined for each node to represent the probability of belonging to each community. The present invention has low complexity, a better effect on discovering overlapping communities, and better results in dividing large-scale complex networks. BRIEF DESCRIPTION OF THE DRAWINGS
[0053] Figure 1 A flow chart of a method for adaptively discovering overlapping communities based on density peaks provided in an embodiment of the present invention;
[0054] Figure 2 A schematic diagram of the structure of a density peak-based adaptive overlapping community discovery system provided in an embodiment of the present invention. DETAILED DESCRIPTION
[0055] The specific implementation modes of the present invention are further explained in detail below by describing the embodiments with reference to the accompanying drawings, so as to help those skilled in the art to have a more complete, accurate and in-depth understanding of the inventive concept and technical solution of the present invention.
[0056] Explanation of terms involved in the present invention:
[0057] Complex network: A complex network refers to a network that has some or all of the properties of self-organization, self-similarity, attractor, small world, and scale-free.
[0058] Community: A community is defined as a subset of all nodes in the network where the connections between nodes in the subset are closer than those between nodes outside the subset.
[0059] Overlapping communities: There are overlapping nodes between different communities.
[0060] Figure 1 A flow chart of an adaptive overlapping community discovery method based on density peak provided by an embodiment of the present invention, the method comprising the following steps:
[0061] S1. Calculate the edge link and point link strength between each node based on the adjacency matrix of the node network;
[0062] In the embodiment of the present invention, the process of obtaining the adjacency matrix of the node network is specifically as follows:
[0063] The key node words are selected through keyword filtering, the relevance of the key node words is calculated, and the node network is constructed. The relevance of the key node words is the weight of the edge between the two nodes in the node network. The specific process of constructing the node network is as follows:
[0064] After preprocessing the text data, combined with the selection of key words, word vectors and relevance were defined, and the topic network was constructed. The word vector definition formula is:
[0065] ω i →(p i1 ,…,p ij ,…,p ik )
[0066] Among them, ω i is the i-th word selected, k represents the total vocabulary in the entire sentence text; p ij Indicates the number of sentences in which the i-th and j-th words co-occur in the total sentence text.
[0067] The words selected in the text become node words in the node network, and the node word ω i ,ω j The correlation calculation formula is:
[0068]
[0069] Among them, p it represents the number of sentences in which the i-th word and the t-th word co-occur; p jt represents the number of sentences in which the jth word and the tth word co-occur; k represents the total number of words in the entire sentence text; the adjacency matrix of the node network is obtained based on the correlation calculation value between the node words, and the node words in the node network are called nodes in the adjacency matrix;
[0070] Edge link: lst ij The calculation formula for the edge link strength between node i and node j is:
[0071]
[0072] Among them, A ij is the element value of the i-th row and j-th column in the adjacency matrix. In the node network, it is defined as the weight value of the edge between node i and node j. The value is R(w i ,w j ), Ait , A tj They represent the weight of the edge between node i and node t, and the weight of the edge between node j and node t respectively; w i 、w j They represent the sum of the weights of the connected edges of node i and node j respectively, and r is the maximum weight w of the sum of the weights of the connected edges of all nodes in the node network max With the minimum value w min The difference between ij is the set of common points between node i and node j. Assuming that node g is connected to both node i and node j through connecting edges, then node g is the common point between node i and node j. η is a constant, and its value is 1.
[0073] Point link: The formula for calculating the point link strength between node i and node j is:
[0074]
[0075] Among them, vst ij is the point link strength value between node i and node j; N i + is the set of node i and its neighbor nodes, N j + is the set of node j and its neighboring nodes. The other nodes on the edges connected to node i are the neighboring nodes of node i. ij is the set of common points between node i and node j, and λ is a non-negative real number.
[0076] S2, construct the distance matrix of the node network, and calculate the local density ρ and the shortest distance δ of each node based on the distance matrix;
[0077] Calculate the distance dist between node i and node j ij , which constitutes the element value of the i-th row and j-th column in the distance matrix, dist ij The distance calculation formula is:
[0078]
[0079] Among them, lst ij is the edge link strength between node i and node j; vst ij is the point link strength between point i and point j, and ε is a constant with a value of 1.
[0080] With the local density ρ i Represents the density of node i, using the shortest distance δ iRepresents the shortest distance from node i to a node with a higher density than it. Since the distribution of nodes in complex networks is relatively sparse and the nature of the community is a local structure, the influence of global nodes on the local density of nodes needs to be considered when calculating local density. In this paper, only the influence of the k neighboring nodes closest to the node on the local density of the node is considered when calculating local density. The local density ρ i The definition of is as follows.
[0081]
[0082] Among them, KNN i represents the k nearest neighbor nodes to node i, k is the average number of neighbor nodes in the network, d c represents the cutoff distance;
[0083] The shortest distance δ for node i i The calculation formula is:
[0084]
[0085] Among them, δ i is the shortest distance between point i and a point with higher density.
[0086] S3, adaptively select the community center in the network through the node density ρ and the shortest distance δ;
[0087] In order to make the influence of ρ and δ on the selection of community centers consistent, ρ and δ need to have the same value range. Therefore, after completing the calculation of local density ρ and shortest distance δ, they are normalized. After normalizing the density ρ and shortest distance δ of the node, ρ is obtained. * and δ * ;
[0088] Only nodes with relatively large local density ρ and shortest distance δ can be selected as cluster centers. In order to improve the efficiency of cluster center selection, its ρ is calculated. * and δ * The product γ is calculated as:
[0089] γ=ρ * δ *
[0090] Then sort the calculated γ in ascending order and define the sorted γ in ascending order as γ * , γ * The index corresponding to γ is defined as ind;
[0091] Targeting γ * For each node i in γ *Linear fitting is performed on the nodes arranged before node i in the figure, and then the estimated value γ′ corresponding to node i is calculated. The calculation formula is:
[0092] γ′=a×γ * +b
[0093] Among them, a and b are the parameters obtained by linear fitting;
[0094] After the calculation of γ′ is completed, the difference Δγ is calculated, and the calculation formula is:
[0095] Δγ=γ * -γ′
[0096] Will γ * The elements in the middle are judged from the back to the front, and the difference Δγ is less than the average value. The minimum mark of the point is M, is the average value of all node differences Δγ, and adds nodes with subscripts greater than M to the candidate community center set. The addition formula is:
[0097] S0={ind t |M≤t≤|ind}
[0098] Among them, S0 is the set of candidate community centers.
[0099] Since the local density and shortest distance of the community center should be higher than those of its neighboring nodes, the local density and shortest distance of the community center should be greater than the maximum value of the local density and shortest distance of the k nearest neighboring nodes, respectively. The candidate community centers that do not meet the conditions are removed from the candidate community center set S0 to obtain the final community center set S.
[0100] S4. Assign the unassigned nodes to community centers based on the probability vectors of the unassigned nodes, and determine overlapping communities based on the assigned community sets.
[0101] The traditional remaining node allocation mechanism is to allocate nodes to the cluster with a higher local density and the closest cluster center. This allocation mechanism causes the node to belong to only one cluster, but in complex networks, there is the possibility that nodes belong to multiple communities. Therefore, this allocation mechanism is not applicable to overlapping community detection.
[0102] In order to enable the node allocation mechanism to distinguish overlapping nodes, the probability vector defined in the present invention represents the possibility of a node belonging to each community. For example, the probability vector of node i is represented as p i ={p i1 ,p i2 ,…,p i|S|}. When node i is the community center and the community it belongs to is t, the probability vector p of node i is i As shown below.
[0103]
[0104] That is, community center i is considered to belong to community t, but not to other communities. If node i is not a community center, its probability vector is determined by the k nodes with higher local density than it and closest to it. The probability vector p of node i is i As shown below:
[0105]
[0106] Among them, cc i represents the set of k nodes with a higher local density than node i and the closest distance to node i, p j Indicates cc i The probability vector of node j in , w ij represents the probability weight of node j relative to node i, and the probability weight w ij The formula is as follows:
[0107]
[0108] Calculate the degree of belonging to each community center for each node, that is, the probability of belonging to each community, assign the node to the community with the largest probability, and then calculate the value between the probability value of belonging to other communities and the maximum probability value. If it is greater than a given threshold, the node can be assigned to other communities; for example, in the probability vector of node i, if community r = argmax(p i ), node i is assigned to community r. The algorithm then calculates the probability p of other communities in the probability vector iv With the maximum probability p ir The ratio of p iv Satisfy p iv / p ir ≥ζ, then node i is considered to be a node in community v at the same time. Here, ζ is a pre-specified threshold. Overlapping communities and hot topics are determined based on the assigned community set.
[0109] Figure 2 A structural schematic diagram of an adaptive overlapping community discovery system based on density peak value provided in an embodiment of the present invention. For ease of description, only the part related to the embodiment of the present invention is shown. The system includes:
[0110] The social topic network modeling module selects key node words through keyword filtering, calculates the correlation between key node words, and constructs a node network;
[0111] After preprocessing the text data, combined with the selection of key words, word vectors and relevance were defined, and the topic network was constructed. The word vector definition formula is:
[0112] ω i →(p i1 ,…,p ij ,…,p ik )
[0113] Among them, ω i is the i-th word selected, k represents the total vocabulary in the entire sentence text; p ij Indicates the number of sentences in which the i-th and j-th words co-occur in the total sentence text.
[0114] The words selected in the text become node words in the node network, and the node word ω i ,ω j The correlation calculation formula is:
[0115]
[0116] Among them, p it represents the number of sentences in which the i-th word and the t-th word co-occur; p jt represents the number of sentences in which the jth word and the tth word co-occur; k represents the total number of words in the entire sentence text; the adjacency matrix of the node network is obtained based on the correlation calculation value between the node words, and the node words in the node network are called nodes in the adjacency matrix.
[0117] The edge link strength calculation module calculates the edge link strength between nodes based on the adjacency matrix of the node network. The edge link strength between node i and node j is calculated based on the following formula:
[0118]
[0119] Among them, A ij is the value of the element in the i-th row and j-th column of the adjacency matrix, w i 、w j They represent the sum of the weights of the connected edges of node i and node j respectively, and r is the maximum weight w of the sum of the weights of the connected edges of all nodes in the node network max With the minimum value w min The difference between ij is the set of common points between node i and node j, and η is a constant.
[0120] The point link strength calculation module calculates the point link strength between nodes based on the adjacency matrix of the node network. The point link strength between node i and node j is calculated based on the following formula:
[0121]
[0122] Among them, vst ijis the point link strength value between node i and node j; N i + is the set of node i and its neighbor nodes, N j + is the set of node j and its neighbor nodes, V ij is the set of common points between node i and node j, and λ is a non-negative real number.
[0123] The distance matrix calculation module calculates the distance between each node based on the edge link strength and point link strength of each node, that is, constructs a distance matrix, the distance between node i and node j is dist ij , which constitutes the element value of the i-th row and j-th column in the distance matrix, the distance dist ij The calculation formula is:
[0124]
[0125] Among them, lst ij is the edge link strength between node i and node j; vst ij is the point link strength between point i and point j, and ε is a constant.
[0126] The density peak calculation module calculates the local density ρ and the shortest distance δ of each node based on the distance matrix. The local density ρ i The calculation formula is as follows:
[0127]
[0128] Among them, KNN i represents the k nearest neighbor nodes to node i, k is the average number of neighbor nodes in the network, d c represents the cutoff distance;
[0129] The shortest distance δ for node i i The calculation formula is:
[0130]
[0131] Among them, δ i is the shortest distance between point i and a point with higher density.
[0132] The community center generation module adaptively selects the community center in the network through the local density ρ and the shortest distance δ of the nodes. The generation process of the community center is as follows:
[0133] Normalize the density ρ and the shortest distance δ of all nodes to get ρ * and δ * ;
[0134] Calculate ρ * and δ* The product γ of γ is then sorted in ascending order, and the sorted γ is defined as γ * , γ * The index corresponding to γ is defined as ind;
[0135] Targeting γ * For each node i in γ * Perform linear fitting on the nodes arranged before node i, and then calculate the estimated value γ′ corresponding to node i;
[0136] Calculate the γ difference Δγ of node i, Δγ = γ * -γ′,
[0137] Will γ * The elements in the middle are judged from the back to the front, and the difference Δγ is less than the average value. The minimum mark of the point is M, is the average value of all node differences Δγ, and adds nodes with subscripts greater than M to the candidate community center set;
[0138] Delete the candidate community centers that do not meet the following condition 1 from the candidate community center set to form the final community center set;
[0139] Condition 1: The local density and the shortest distance are both greater than the maximum values of the local density and the shortest distance of the k nearest neighboring nodes.
[0140] The node allocation module allocates the remaining nodes to the community corresponding to at least one community center based on the probability vector of the remaining nodes, wherein the allocation method of the remaining nodes is specifically as follows:
[0141] Calculate the probability vector of each remaining node, that is, the probability that the remaining node belongs to each community center;
[0142] Assign the remaining nodes to the community with the highest probability;
[0143] Calculate the division between the probability value of the remaining nodes belonging to other communities and the maximum probability value, and assign the remaining nodes to the community corresponding to the division value greater than the given threshold.
[0144] The probability vector p of the remaining node i i The calculation formula is as follows:
[0145]
[0146] Among them, cc i represents the set of k nodes with a higher local density than node i and the closest distance to node i, p j Indicates cc i The probability vector of node j in , w ijrepresents the probability weight of node j relative to node i, and the probability weight w ij The formula is as follows:
[0147]
[0148] dist ij Represents the distance between node i and node j, dist im The distance between node i and node m.
[0149] The overlapping community discovery module determines overlapping communities based on the assigned community set, and the nodes located in at least two communities are the overlapping parts of the communities.
[0150] The present invention is described above by way of example in conjunction with the accompanying drawings. It is obvious that the specific implementation of the present invention is not limited to the above-mentioned method. As long as various non-substantial improvements are made using the method concept and technical solution of the present invention, or the concept and technical solution of the present invention are directly applied to other occasions without improvement, they are all within the protection scope of the present invention.
Claims
1. An adaptive overlapping community discovery method based on density peak, characterized in that: The method specifically comprises the following steps: S1. Filter out key node words through keyword filtering, calculate the correlation between key node words, build a node network, and calculate the edge link strength and point link strength between nodes based on the adjacency matrix of the node network; S2, construct the distance matrix of the node network, and calculate the local density ρ and the shortest distance δ of each node based on the distance matrix; S3, adaptively select the community center in the network through the local density ρ and the shortest distance δ of the node; S4, assigning the remaining nodes to communities corresponding to at least one community center based on the probability vectors of the remaining nodes, and determining overlapping communities according to the assigned community sets; The method for selecting a community center includes the following steps: Normalize the density ρ and the shortest distance δ of all nodes to get ρ * and δ * ; Calculate ρ * and δ * The product γ of γ is then sorted in ascending order, and the sorted γ is defined as γ * , γ * The index corresponding to γ is defined as ind; Targeting γ * For each node i in γ * Perform linear fitting on the nodes arranged before node i, and then calculate the estimated value γ′ corresponding to node i; Calculate the γ difference Δγ of node i, Δγ = γ * -γ′, Will γ * The elements in the middle are judged from the back to the front, and the difference Δγ is less than the average value. The minimum mark of the point is M, is the average value of all node differences Δγ, and adds nodes with subscripts greater than M to the candidate community center set; Delete the candidate community centers that do not meet the following condition 1 from the candidate community center set to form the final community center set; Condition 1: The local density and the shortest distance are both greater than the maximum values of the local density and the shortest distance of the k nearest neighboring nodes.
2. The method for discovering overlapping communities based on density peak according to claim 1, characterized in that: The calculation formula for the edge link strength between node i and node j is as follows: Among them, A ij is the value of the element in the i-th row and j-th column of the adjacency matrix, w i 、w j They represent the sum of the weights of the connected edges of node i and node j respectively, and r is the maximum weight w of the sum of the weights of the connected edges of all nodes in the node network max With the minimum value w min The difference between ij is the set of common points between node i and node j, and η is a constant.
3. The method for discovering overlapping communities based on density peak according to claim 1, characterized in that: The formula for calculating the point link strength between node i and node j is as follows: Among them, vst ij is the point link strength value between node i and node j; N i + is the set of node i and its neighbor nodes, N j + is the set of node j and its neighbor nodes, V ij is the set of common points between node i and node j, and λ is a non-negative real number.
4. The method for discovering overlapping communities based on density peak according to claim 1, characterized in that: Calculate the distance dist between node i and node j ij , which constitutes the element value of the i-th row and j-th column in the distance matrix, dist ij The distance calculation formula is: Among them, lst ij is the edge link strength between node i and node j; vst ij is the point link strength between point i and point j, and ε is a constant.
5. The method for discovering overlapping communities based on density peak according to claim 1, characterized in that: The allocation method of the remaining nodes is as follows: Calculate the probability vector of each remaining node, that is, the probability that the remaining node belongs to each community center; Assign the remaining nodes to the community with the highest probability; Calculate the division between the probability value of the remaining nodes belonging to other communities and the maximum probability value, and assign the remaining nodes to the community corresponding to the division value greater than the given threshold.
6. The method for discovering adaptive overlapping communities based on density peaks according to claim 5, characterized in that: The probability vector p of the remaining node i i The calculation formula is as follows: Among them, cc i represents the set of k nodes with a higher local density than node i and the closest distance to node i, p j Indicates cc i The probability vector of node j in , w ij represents the probability weight of node j relative to node i, and the probability weight w ij The formula is as follows: dist ij Represents the distance between node i and node j, dist im The distance between node i and node m.
7. An adaptive overlapping community discovery system based on density peak, characterized in that: The system comprises: The social topic network modeling module selects key node words through keyword filtering, calculates the correlation between key node words, and constructs a node network; The edge link strength calculation module calculates the edge link strength between nodes based on the adjacency matrix of the node network; Point link strength calculation module, which calculates the point link strength between nodes based on the adjacency matrix of the node network; The distance matrix calculation module calculates the distance between each node based on the edge link strength and point link strength of each node, that is, constructs a distance matrix; Density peak calculation module, which calculates the local density ρ and shortest distance δ of each node based on the distance matrix; The community center generation module adaptively selects the community center in the network through the local density ρ and the shortest distance δ of the nodes; A node allocation module allocates the remaining nodes to a community corresponding to at least one community center based on the probability vectors of the remaining nodes; Overlapping community discovery module, which determines overlapping communities based on the assigned community sets; The method for selecting a community center in the community center generation module is as follows: Normalize the density ρ and the shortest distance δ of all nodes to get ρ * and δ * ; Calculate ρ * and δ * The product γ of γ is then sorted in ascending order, and the sorted γ is defined as γ * , γ * The index corresponding to γ is defined as ind; Targeting γ * For each node i in γ * Perform linear fitting on the nodes arranged before node i, and then calculate the estimated value γ′ corresponding to node i; Calculate the γ difference Δγ of node i, Δγ = γ * -γ′, Will γ * The elements in the middle are judged from the back to the front, and the difference Δγ is less than the average value. The minimum mark of the point is M, is the average value of all node differences Δγ, and adds nodes with subscripts greater than M to the candidate community center set; Delete the candidate community centers that do not meet the following condition 1 from the candidate community center set to form the final community center set; Condition 1: The local density and the shortest distance are both greater than the maximum values of the local density and the shortest distance of the k nearest neighboring nodes.
8. The density peak-based adaptive overlapping community discovery system according to claim 7, characterized in that: The edge link strength calculation module calculates the edge link strength between nodes based on the following formula: Among them, A ij is the value of the element in the i-th row and j-th column of the adjacency matrix, w i 、w j They represent the sum of the weights of the connected edges of node i and node j respectively, and r is the maximum weight w of the sum of the weights of the connected edges of all nodes in the node network max With the minimum value w min The difference between ij is the set of common points between node i and node j, and η is a constant.
9. The density peak-based adaptive overlapping community discovery system according to claim 7, characterized in that: The point link strength calculation module calculates the point link strength between nodes based on the following formula: Among them, vst ij is the point link strength value between node i and node j; N i + is the set of node i and its neighbor nodes, N j + is the set of node j and its neighbor nodes, V ij is the set of common points between node i and node j, and λ is a non-negative real number.
Citation Information
Patent Citations
Density peak clustering method based on local density and cluster center optimization
CN108280472A
Density peak clustering method based on natural nearest neighbors and shortest paths
CN110472677A
