Social network overlapping community discovery method and system

By integrating the viewpoint dynamics model and the label propagation algorithm, using the viewpoint convergence speed and multi-dimensional membership vectors, combined with the dynamic threshold mechanism, the randomness and computing efficiency problems of overlapping community discovery in social networks are solved, and more accurate and stable community recognition is achieved.

CN120386939APending Publication Date: 2025-07-29ZHENGZHOU UNIV +1
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202510560478.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-30
Publication Date
2025-07-29

AI Technical Summary

Technical Problem

The existing social network overlap community discovery method has shortcomings in randomness, overlap modeling and computing efficiency, and it is difficult to accurately and stably identify multiple community structures.

Method used

Fusion of the dynamic model of the perspective and the label propagation algorithm, and optimize the community discovery process by calculating the convergence speed and multi-dimensional membership vector between nodes, combined with the dynamic threshold mechanism.

Benefits of technology

It improves the accuracy and robustness of community discovery in social networks, reduces the randomness of propagation, accurately characterizes the overlapping community attributes of nodes, and enhances the generalization ability of algorithms in sparse and large-scale complex networks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120386939A_ABST
    Figure CN120386939A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of complex network analysis, and provides a social network overlapping community discovery method, which comprises the following steps: S1, calculating a potential influence value of each node, and screening out a set of core nodes in a network according to the influence values; s2, calculating the viewpoint convergence speed between the nodes by using the viewpoint value change in the DeGroot viewpoint dynamical model, and calculating the propagation weight between the nodes according to the average accumulated viewpoint difference value for measuring the viewpoint convergence speed; s3, constructing a membership degree vector for each node, and updating the membership degree vector in combination with the propagation weight in each round of propagation; s4, adaptively adjusting a community membership degree threshold value of label propagation according to the community network scale and the community characteristics, and allocating the community network attribution of the nodes according to the community membership degree threshold value; and S5, according to the propagation result of the initial label, carrying out community structure correction and redistribution of undistributed nodes. The defects of randomness, overlapping modeling and calculation efficiency of a traditional method are overcome.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of complex network analysis, and particularly to a method and system for discovering overlapping communities in a social network. The present invention is a consensus-driven overlapping community discovery that integrates opinion dynamics and label propagation, and is applicable to the automatic recognition and analysis of multiple community structures in complex scenarios such as social networks and recommendation systems. Background Art

[0002] Discovering overlapping communities in complex networks is an important task for analyzing the system structures of social networks, biological networks, etc. The traditional label propagation algorithm (LPA) has been widely used due to its nearly linear time complexity, but its mechanism relying on the majority voting of neighbor labels results in strong randomness of the results, especially insufficient stability in discovering overlapping communities (for example, algorithms such as SLPA and DLPA need to rely on historical labels or manual parameter adjustment and are difficult to accurately describe the multiple community membership characteristics of nodes). On the other hand, methods based on opinion dynamics models (such as the DeGroot model) capture similarities by simulating the opinion evolution between nodes, providing new ideas for community discovery. However, existing research (such as the method proposed by Morarescu et al. in 2011) does not consider the overlapping community structure and has a high computational complexity, making it difficult to adapt to large-scale networks. In recent years, some improved algorithms have tried to combine label propagation and opinion dynamics (such as the LPA-HK model), but still cannot effectively handle high-overlap scenarios due to the lack of a multi-dimensional label propagation strategy. In addition, existing methods (such as the CNLLP algorithm) rely on strict thresholds for determining overlapping nodes, resulting in a significant decrease in accuracy when the community structure is complex (Zhang et al., 2023). For example, the method based on clique filtering (Palla et al., 2005) is only applicable to small-scale networks due to the NP-hard problem, and the local expansion algorithm (Lancichinetti et al., 2009) is sensitive to the initial seed nodes and is prone to generating unstable results.

[0003] In summary, the existing technology has three major limitations: 1) Randomness of label propagation leads to fluctuations in community division; 2) Insufficient ability to model overlapping communities; 3) Strong parameter dependence and weak generalization ability. The present invention systematically solves the above problems by integrating the opinion convergence speed to quantify the association strength, designing a multi-dimensional membership degree vector, and a dynamic threshold mechanism. Summary of the Invention

[0004] Aiming at the above problems, the purpose of the present invention is to provide a method and system for discovering overlapping communities in a social network. By integrating an opinion dynamics model and a label propagation algorithm, using the opinion convergence speed to quantify the node association strength, and combining a multi-dimensional label propagation strategy and a dynamic threshold mechanism, the deficiencies of traditional methods in randomness, overlapping modeling, and computational efficiency are solved, and the accuracy and robustness of community discovery in complex networks are improved.

[0005] The above object of the present invention is achieved by the following technical solutions:

[0006] A method for discovering overlapping communities in a social network, comprising the following steps:

[0007] S1: Calculate the potential influence value of each node based on the node degree of each node and the number of common neighbors with neighbor nodes, and at the same time, screen out a set of core nodes with greater influence in the network according to the influence value;

[0008] S2: Calculate the opinion convergence speed between nodes using the change of opinion values in the DeGroot opinion dynamics model, and calculate the propagation weight between nodes according to the average cumulative opinion difference for measuring the opinion convergence speed;

[0009] S3: Construct a membership degree vector representing the membership relationship of each node to multiple communities, and update the membership degree vector in combination with the propagation weight in each round of propagation;

[0010] S4: Adaptively adjust the community membership threshold for label propagation according to the community network scale and community characteristics, so as to assign the attribution of the community network of nodes according to the community membership threshold;

[0011] S5: For the propagation result of the initial label, perform community structure correction and re - assignment of unassigned nodes to optimize the label propagation effect.

[0012] Further, in step S1, the potential influence value of each node is calculated based on the node degree of each node and the number of common neighbors with neighbor nodes, where the potential influence value NC(i) of each node v i is calculated according to the following formula:

[0013]

[0014] where |N(i)| is the degree of the i - th node v i in the network, that is, the number of neighbors of node v i , v j is a neighbor node of node v i , Nb(i) represents the neighbor set of node v i , and |N(i)∩N(j)| is the number of common neighbors of node v i and node v j .

[0015] Further, in step S1, screening out a set of core nodes with greater influence in the network according to the influence value is specifically:

[0016] Calculate the potential influence value of each node v∈V in the network as the potential of the community center according to the calculation rules of the potential influence value, and record the potential influence value of each node as NC(v);

[0017] Arrange in descending order according to the potential influence value NC(v) of each node, and obtain the node sequence rank=(v1,v2,…,v n );

[0018] Initialize the set of core nodes Select the node v1 ranked first as the first core node, let H = v1, and for each subsequent node v in the rank sequence i , if the subsequent node v i has no direct neighbor relationship with the nodes in the set of core nodes, then add the current subsequent node v i to the set H of core nodes until all nodes are traversed.

[0019] Furthermore, in step S2, use the change of opinion values in the DeGroot opinion dynamics model to calculate the opinion convergence speed between nodes, and calculate the propagation weight between nodes according to the average cumulative opinion difference measuring the opinion convergence speed, specifically:

[0020] The formula of the DeGroot opinion dynamics model is expressed as:

[0021]

[0022] where, x i (t + 1) is the opinion value of node v i at time t + 1, x j (t) is the opinion value of node v j at time t, Nb(i) is the neighbor set of v i , A ij is the influence weight of node v j on node v i , the weight is defaulted to 1, |N(i)| is the degree of node v i , at each time step t, each node updates its own opinion according to the above formula, specifically, node v i will consider the opinion values x j (t) of all its neighbors, and calculate the average of these opinions. The opinion value of the individual evolves iteratively with the model until the system reaches a steady state or reaches the preset maximum number of iterations;

[0023] The measure of the convergence speed of the viewpoints is described using the average cumulative opinion difference ACOD. The label propagation process in the community network is simulated multiple times. For any two nodes v in each simulation i and v j the cumulative opinion difference d(e ij ) between them is calculated using the following formula:

[0024]

[0025] where x i (t) and x j (t) represent the opinion values of nodes v i and v j at time step t respectively. During the calculation, t is an integer, where t1 is default taken as n is the total number of nodes, and t0 is usually set to usually set to

[0026] To reduce the influence of randomness, the experiment needs to be simulated multiple times, and then the results of multiple simulations are averaged to obtain the average cumulative opinion difference ACOD between two nodes v i and v j as d avg (e ij );

[0027] The propagation weight w i between node v j and its neighbor node v ij is defined as the following formula:

[0028] w ij =1 - d avg (e ij )

[0029] The smaller the average cumulative opinion difference ACOD, the larger the propagation weight w ij , that is, the stronger the influence of node v i on the label propagation of node v j .

[0030] Furthermore, in step S3, a membership degree vector representing the membership relationship of the node to multiple communities is constructed for each node, and the membership degree vector is updated in combination with the propagation weight in each round of propagation. Specifically:

[0031] Assume that there are h communities in the community network. The membership degree vector I i of node v i is defined as:

[0032] I i =(X i,1 ,Xi,2 , …, X i,k , …, X i,h )

[0033] Among them, X i,k represents the membership degree of node v i in the k-th community. In the membership degree vector I i , the sum of the membership degrees of the node to all communities is 1, that is:

[0034]

[0035] As the core node with greater influence in the community network, the membership degree vector is uniquely determined in the initial stage, that is, the membership degree of the k-th community to which it belongs is 1, and the remaining components are all 0, indicating the unique belonging of the core node and remaining unchanged during the propagation process. Based on the fact that when community discovery is first performed in the social network, the number of community networks takes the same value as the number of core nodes, both being h, the membership degree vector of the k-th core node is:

[0036] I k =(0, 0, …, 1, … 0), the k-th position is 1

[0037] Based on the fact that non-core nodes have no preference for any community initially, the membership degrees of non-core nodes to all h communities are evenly distributed. For non-core node v i , the formula for the initial membership degree vector at t = 0 is as follows

[0038]

[0039] For the propagation rounds with a preset fixed number of iterations, in each round of propagation, the membership degree vectors i of all the non-core nodes v are updated by weighting according to the propagation intensity of their neighbor nodes. The rule is:

[0040]

[0041] Among them, represents the membership degree vector of the non-core node v i after the (t + 1)-th round of propagation. Nb(i) represents the neighbor set of the non-core node v i , is the membership degree vector of node v j at the t-th round of propagation, and w ij is the propagation weight between node v i and its neighbor node v j ;

[0042] After each round of propagation, the membership vector is normalized to ensure that the sum of multi-dimensional labels in the membership vector is 1.

[0043] Further, in step S4, the community membership threshold of label propagation is adaptively adjusted according to the community network scale and community characteristics, so as to assign the belonging of the node to the community network according to the community membership threshold, specifically:

[0044] Judge the community network attribution of the node according to the information of each dimension in the membership vector of each node. Let the number of core nodes in the network be h, and the node v i The membership of the k-th community C k is, X ik , and the setting of the community membership threshold θ is as follows:

[0045]

[0046] Among them, α is the community density adjustment factor, which ensures that the community membership threshold decreases as the number of core nodes increases, avoiding large determination deviations caused by different community scales in complex community networks;

[0047] For each non-core node v i , if there is a unique community C k satisfying X ik ≥θ, then the non-core node v i is assigned to the community C k , if multiple communities in the community set {C1, C2,..., C k ,..., C h} simultaneously satisfy X ik ≥θ, then the non-core node v i is simultaneously assigned to multiple communities to form overlapping communities. If all X ik <θ, then the non-core node v i is marked as an unassigned node and needs to be processed through a subsequent reallocation mechanism.

[0048] Further, in step S5, for the propagation result of the initial label, community structure correction and reallocation of unassigned nodes are performed to optimize the label propagation effect, specifically:

[0049] Let the number of nodes in the community network be n, the number of core nodes be h, and the node scale of any community C k (k = 1, 2,... h) be |C k |. If the community scale satisfies the following formula:

[0050]

[0051] Then it is determined that C k is a significant community; otherwise, C k is marked as a non-significant community and split. After splitting, the nodes that originally belonged to the non-significant community and did not belong to any of the significant communities are reclassified as the unassigned nodes, where β is the threshold adjustment parameter;

[0052] The unassigned nodes are redistributed based on the dynamic redistribution algorithm of weighted neighborhood membership degree, specifically:

[0053] The unassigned nodes are sorted by priority, and the membership degree vectors of the assigned nodes are frozen to avoid interference with the stability of the assigned communities by subsequent propagation. The redistribution order of the unassigned nodes is determined by the neighborhood information density NID. The neighborhood information density NID quantifies the ability of a node to obtain community information from its assigned neighbors. If an unassigned node is connected to multiple assigned nodes, then its neighborhood information density will be higher. The calculation of the neighborhood information density NID is as follows:

[0054]

[0055] where, w ij is the propagation weight between the unassigned node v i and its neighbor node v j , II j is an indicator function. If the neighbor node v j is an assigned node, then II j = 1; otherwise, II j = 0. All the unassigned nodes are sorted in descending order of NID(i) to form a priority processing queue Q = (v1, v2,... v a ), a is the number of unassigned nodes, and the nodes with high NID(i) are processed first to improve the accuracy;

[0056] The membership degree vectors are iteratively updated. For the unassigned node v i ∈Q, the membership degree vectors are updated only through the assigned neighbor nodes, and the update rule is as follows:

[0057]

[0058] where, Nb(i) represents the neighbor set of the non-core node v i , A is the set of assigned nodes, to ensure that the unassigned nodes only propagate information from the assigned nodes and do not consider the influence of other unassigned nodes, is the membership degree vector of v i after being updated again by the assigned neighbor node v j ; For the assigned neighbor node v j of the membership vector, and after updating, normalize the membership vector to ensure

[0059] After normalizing the membership vector I’, calculate the community membership threshold θ according to min(0.5, α / h) for community judgment, which is slightly lower than the threshold α in the initial community discovery. For the unassigned nodes, if there is a dominant community C k with the corresponding membership X ik exceeding the community membership threshold θ, then assign it to community C k . After the unassigned nodes are assigned, immediately add them to the set A of assigned nodes and update the neighborhood information density NID and the priority processing queue Q of their neighborhood unassigned nodes, and repeat the steps of the dynamic reallocation algorithm until all the unassigned nodes are processed.

[0060] A social network overlapping community discovery system for performing the social network overlapping community discovery method as described above, comprising:

[0061] A core node identification module, configured to calculate the potential influence value of each node according to the node degree of each node and the number of common neighbors with neighbor nodes, and at the same time screen out a set of core nodes with greater influence in the network according to the influence value;

[0062] A consensus-driven weighted label propagation module, configured to calculate the opinion convergence speed between nodes by using the change of opinion values in the DeGroot opinion dynamics model, and calculate the propagation weight between nodes according to the average cumulative opinion difference for measuring the opinion convergence speed;

[0063] A membership vector construction and propagation module, configured to construct a membership vector representing the membership relationship of each node to multiple communities for each node, and update the membership vector in combination with the propagation weight in each round of propagation;

[0064] A dynamic threshold adjustment module, configured to adaptively adjust the community membership threshold for label propagation according to the community network scale and community characteristics, so as to assign the attribution of the community network of nodes according to the community membership threshold;

[0065] A community correction and reallocation module, configured to perform community structure correction and reallocation of unassigned nodes for the propagation result of the initial label, and optimize the label propagation effect.

[0066] A computer device includes a memory and one or more processors. Computer code is stored in the memory. When the computer code is executed by the one or more processors, the one or more processors are caused to execute the method as described above.

[0067] A computer-readable storage medium stores computer code. When the computer code is executed, the method as described above is executed.

[0068] Compared with the prior art, the present invention has at least one of the following beneficial effects:

[0069] (1) Consensus-driven label propagation strategy: Quantify the opinion convergence speed between nodes through the DeGroot opinion dynamics model, use it as the label propagation weight, reduce the randomness of propagation, and improve the stability of the result.

[0070] (2) Multi-dimensional membership vector modeling: Construct the membership vector of nodes for multiple communities, combine with the dynamic threshold mechanism, accurately describe the overlapping community membership of nodes, and avoid the limitations of traditional single-label propagation.

[0071] (3) Adaptive parameter adjustment: Dynamically adjust the threshold according to characteristics such as network scale and community density, and enhance the generalization ability of the algorithm in sparse networks and large-scale complex networks. BRIEF DESCRIPTION OF THE DRAWINGS

[0072] Figure 1 It is the overall flowchart of the method for discovering overlapping communities in a social network of the present invention;

[0073] Figure 2 It is a schematic diagram comparing the ONMI values of each algorithm of the present invention on 6 artificial networks of different scales. Among them, (a) is the comparison schematic diagram on the artificial network LFR1, (b) is the comparison schematic diagram on the artificial network LFR2, (c) is the comparison schematic diagram on the artificial network LFR3, (d) is the comparison schematic diagram on the artificial network LFR4, (e) is the comparison schematic diagram on the artificial network LFR5, and (f) is the comparison schematic diagram on the artificial network LFR6;

[0074] Figure 3 It is the ablation experiment diagram of the non-DeGroot weighted propagation (NO-D) and the DeGroot weighted propagation (OUR S) of the present invention;

[0075] Figure 4 It is the overall structure diagram of the system for discovering overlapping communities in a social network of the present invention. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0076] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the following will clearly and completely describe the technical solutions in the embodiments of this application with reference to the accompanying drawings in the embodiments of this application. Apparently, the described embodiments are some, but not all, of the embodiments of this application. All other embodiments obtained by those of ordinary skill in the art based on the embodiments in this application without creative efforts shall fall within the protection scope of this application.

[0077] Those skilled in the art of this technology can understand that unless specifically stated otherwise, the singular forms "a", "an", "the", and "said" used herein may also include the plural forms. It should be further understood that the term "comprising" used in the specification of this invention means the presence of the described features, integers, steps, operations, elements, and / or components, but does not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or their groups.

[0078] First Embodiment

[0079] As Figure 1 shown, this embodiment provides a method for discovering overlapping communities in a social network, which is characterized by including the following steps:

[0080] S1: Calculate the potential influence value of each node based on the node degree of each node and the number of common neighbors with neighbor nodes, and simultaneously screen out a set of core nodes with greater influence in the network according to the influence value.

[0081] In this embodiment, step S1 is specifically as follows:

[0082] For each node v i , the calculation rule of the potential influence value NC(i) is calculated using the following formula:

[0083]

[0084] where |N(i)| is the degree of the i-th node v i in the network, that is, the number of neighbors of the node v i , v j is the neighbor node of the node v i , Nb(i) represents the neighbor set of the node v i , and |N(i)∩N(j)| is the number of common neighbors of the node v i and the node v j .

[0085] Screen out a set of core nodes with greater influence in the network according to the influence value. The specific algorithm for core node identification is:

[0086] Calculate the potential influence value of each node v∈V in the network according to the calculation rule of the potential influence value as the potential of the community center, and record the potential influence value of each node as NC(v);

[0087] Arrange in descending order according to the potential influence value NC(v) of each node to obtain the sorted node sequence rank(v1, v2,... v n ), where NC(v1) ≥ NC(v2)... ≥ NC(v n );

[0088] Initialize the set of the core nodes Select the node v1 ranked first as the first core node, let H = v1, and for each subsequent node v in the rank sequence i , if the subsequent node v i has no direct neighbor relationship with the nodes in the set of the core nodes, then add the current subsequent node v i to the set H of the core nodes until all nodes are traversed.

[0089] S2: Calculate the opinion convergence speed between nodes using the change of opinion values in the DeGroot opinion dynamics model, and calculate the propagation weight between nodes according to the average cumulative opinion difference that measures the opinion convergence speed.

[0090] In this embodiment, step S2 is specifically as follows:

[0091] Calculate the opinion convergence speed between nodes through the opinion values of the nodes in the DeGroot opinion dynamics model as an index to measure the tightness of node association. According to the calculated convergence speed, perform weighted regulation on the label propagation process to ensure that the label is preferentially propagated between nodes with higher opinion consistency and reduce the randomness of propagation.

[0092] The formula of the DeGroot opinion dynamics model is expressed as:

[0093]

[0094] where, x i (t + 1) is the opinion value of node v i at time t + 1, x j (t) is the opinion value of node v j at time t, Nb(i) is the neighbor set of v i , A ij is the influence weight of node v j on node v i , the weight is defaulted to 1, |N(i)| is the node v iThe degree. At each time step t, each node updates its view according to the above formula. Specifically, node v i considers the view values x j (t) of all its neighbors, and calculates the average of these views. The view value of an individual evolves iteratively with the model until the system reaches a steady state or a preset maximum number of iterations;

[0095] The measure of the view convergence speed is described using the average cumulative view difference ACOD. Multiple simulations are performed on the label propagation process of the community network. For any two nodes v i and v j in each simulation, the cumulative view difference (ACOD) d(e ij ) is calculated using the following formula:

[0096]

[0097] where x i (t) and x j (t) represent the view values of nodes v i and v j at time step t. During the calculation, t is an integer, where t1 is default taken as n is the total number of nodes, and t0 is usually set to usually set to

[0098] To reduce the influence of randomness, the experiment needs to be simulated multiple times (10 times by default in this embodiment), and then the results of multiple simulations are averaged to obtain the average cumulative view difference ACOD between two nodes v i and v j as d avg (e ij );

[0099] The propagation weight w i between node v j and its neighbor node v ij is defined by the following formula:

[0100] w ij =1 - d avg (e ij )

[0101] Therefore, the smaller the average cumulative view difference ACOD, the larger the propagation weight w ij , that is, the stronger the influence of node v i on the label propagation of node v j .

[0102] S3: constructing a membership vector for each node, which represents the node's membership to multiple communities, and updating the membership vector in combination with the propagation weight in each round of propagation.

[0103] In this embodiment, step S3 is specifically as follows:

[0104] A membership vector is constructed for each node, representing its membership to multiple communities, ensuring accurate representation of the node's multiple attributes in overlapping communities. By combining membership vector updates with consensus-driven network weighting, the intensity of label propagation is dynamically adjusted during the label propagation process, ensuring stable label diffusion across multiple communities.

[0105] Assume that there are h communities in the community network and node v i The membership vector I i Defined as:

[0106] I i =(X i,1 ,X i,2 ,…,X i,k ,…,X i,h )

[0107] Among them, X i,k Represents node v i The membership degree of the kth community, i.e., the degree of belonging, is expressed in the membership vector I i In the example, the sum of the node's membership to all communities is 1, that is:

[0108]

[0109] Core nodes are nodes with greater influence and dense connections in the network, and have strong community representation. In order to stabilize the label propagation process, the membership vector of the core node with greater influence in the community network is uniquely determined in the initial stage, that is, the membership of the kth community to which it belongs is 1, and the remaining components are all 0, indicating the unique affiliation of the core node and remains unchanged during the propagation process. Therefore, the core node always maintains complete influence on the community to which it belongs during the propagation process. Based on the fact that the number of community networks and the number of core nodes are the same as h when the community is first discovered in the social network, the membership vector of the kth core node is:

[0110] I k =(0,0,…,1 k ,…0), the kth position is 1

[0111] Based on the fact that non-core nodes have no preference for any community initially, the membership degrees of the non-core nodes are evenly distributed among all h communities. To avoid numerical instability during the propagation process, the initial membership degree values need to be normalized. The non-core node v i has the following initial membership degree vector at t = 0:

[0112]

[0113] This uniform initialization reflects the maximum uncertainty of non-core nodes in community assignment initially, and this uncertainty will be gradually optimized during the vector label propagation process.

[0114] Set the number of propagation rounds with a preset fixed number of iterations. During each round of propagation, all the non-core nodes v i 's membership degree vector is weighted and updated according to the propagation strength of its neighbor nodes, and the rule is:

[0115]

[0116] where, represents the membership degree vector of the non-core node v i after the (t + 1)-th round of propagation, Nb(i) represents the neighbor set of the non-core node v i , is the membership degree vector of node v j at the t-th round of propagation, and w ij is the propagation weight between node v i and its neighbor node v j ;

[0117] After each round of propagation, the membership degree vector is normalized to ensure that the sum of multi-dimensional labels in the membership degree vector is 1.

[0118] Avoid numerical overflow and maintain the probabilistic interpretability of membership degrees. During the weighted propagation of the membership degree vector, since the membership degrees of nodes may fluctuate continuously, it is theoretically impossible to guarantee complete convergence. To balance algorithm stability and computational efficiency, this paper adopts the method of presetting a fixed number of propagation iterations (default is 5) instead of the termination condition based on the convergence criterion.

[0119] S4: Adaptively adjust the community membership degree threshold for label propagation according to the community network scale and community characteristics, so as to assign the belonging of nodes to the community network according to the community membership degree threshold. To improve the stability of overlapping community discovery in complex networks.

[0120] In this embodiment, step S4 is specifically:

[0121] Judge the community network attribution of a node according to the information of each dimension in the membership degree vector of each node. Let the number of core nodes in the network be h, and node v i For the k-th community C k The membership degree is, X ik The setting of the community membership degree threshold θ is as follows:

[0122]

[0123] Among them, α is a community density adjustment factor, which ensures that the community membership degree threshold decreases as the number of core nodes increases, and avoids large judgment deviations caused by different community scales in complex community networks; the core idea of this adjustment mechanism is that when a certain value X in the membership degree vector of a node ik exceeds the threshold θ, the node will be regarded as belonging to the community corresponding to this membership value. By default, α = 2, and its value basis is: when the core nodes are evenly distributed, the expected membership degree mean of each community is 1 / h. Therefore, α = 2 corresponds to a threshold that is twice the mean value, which can effectively suppress the misclassification of noise nodes.

[0124] For each of the non-core nodes v i , if there is a unique community C k that satisfies X ik ≥θ, then the non-core node v i is assigned to the community C k , if multiple communities in the community set {C1, C2,..., C k ,…, C h} simultaneously satisfy X ik ≥θ, then the non-core node v i is simultaneously assigned to multiple communities, forming overlapping communities. If all X ik <θ, then the non-core node v i is marked as an unassigned node and needs to be processed through a subsequent reallocation mechanism.

[0125] S5: For the propagation result of the initial label, perform community structure correction and reallocation of unassigned nodes to optimize the label propagation effect.

[0126] In this embodiment, step S5 is specifically:

[0127] Let the number of nodes in the community network be n, the number of core nodes be h, and the node scale of any community C k (k = 1, 2,... h) be |C k |. If the community scale satisfies the following formula:

[0128]

[0129] Then judge C k is a significant community, otherwise C k The nodes that are marked as non-significant communities and split are reclassified as unassigned nodes after the split. β is a threshold adjustment parameter; the default value is β = 2, which requires the community size to be no less than half of the average community size of the entire network.

[0130] During the propagation of membership vectors, a small number of marginal nodes may be so far away from all core nodes that their community memberships in the vector fall below the preset threshold, resulting in no community affiliation. Furthermore, some nodes may lose their original community affiliation due to non-explicit community splits. These nodes are generally referred to as unassigned nodes.

[0131] The unassigned nodes are reallocated using a dynamic reallocation algorithm based on weighted neighborhood membership, specifically:

[0132] 1) Prioritization of unassigned nodes

[0133] Prioritize the unassigned nodes and freeze the membership vectors of the assigned nodes to prevent the stability of the assigned communities from being disturbed by subsequent propagation. The order of reallocation of the unassigned nodes is determined by the Neighborhood Information Density (NID), which quantifies the ability of a node to obtain community information from its assigned neighbors. If an unassigned node is connected to multiple assigned nodes, its neighborhood information density will be higher. The neighborhood information density (NID) is calculated as follows:

[0134]

[0135] Among them, w ij For the unassigned node v i and its neighbor node v j The propagation weight between j is the indicator function, if the neighbor node v j For allocated nodes, II j =1, otherwise II j = 0, all the unassigned nodes are sorted in descending order according to NID(i) to form a priority processing queue Q = (v1, v2, ... v a ), a is the number of unassigned nodes, and nodes with high NID(i) are processed first to improve the accuracy;

[0136] 2) Iterative update of membership vector

[0137] Perform iterative update of the membership vector. For the unassigned node v i ∈Q, the membership vector update is only through the assigned neighbor nodes, and the update rule is as follows:

[0138]

[0139] where Nb(i) represents the neighbor set of the non-core node v i , A is the set of assigned nodes to ensure that the unassigned node only propagates information from the assigned nodes, without considering the influence of other unassigned nodes. is the membership vector of v i after being updated again by the assigned neighbor node v j , is the membership vector of the assigned neighbor node v j , and at the same time, after the update, the membership vector needs to be normalized to ensure

[0140] the membership vector After normalization, calculate the community membership threshold θ according to min(0.5, α / h) for community judgment, where it is slightly lower than the threshold α in the initial community discovery. For the unassigned node, if there is a dominant community C k corresponding membership X ik exceeds the community membership threshold θ, it is assigned to community C k . After the unassigned node is assigned, it is immediately added to the set A of assigned nodes and the neighborhood information density NID and the priority processing queue Q of its neighborhood unassigned nodes are updated, and the steps of the dynamic reassignment algorithm are repeated until all the unassigned nodes are processed.

[0141] Second Embodiment

[0142] In this embodiment, the performance of the algorithm provided in the first embodiment is compared using four real network datasets widely used in the field of community discovery. Table 1 shows the specific information of the 4 real datasets.

[0143] (1) Karate: This dataset comes from a karate club and records the friendship relationships between club members. Due to leadership issues, the club split into two communities.

[0144] (2) Dolphin: This dataset simulates the social network of a dolphin group, and dolphins are naturally divided into two communities according to gender.

[0145] (3) Pollbooks: This dataset is derived from book purchase data on Amazon, recording the situation where multiple purchasers bought two books simultaneously. This network shows three communities related to books.

[0146] (4) Football: This dataset is a social network of American college football games, recording the confrontation relationships between different football teams. This network contains 12 communities.

[0147] Table 1: Specific information of four real datasets

[0148]

[0149] Table 2: Overlapping modularity of different algorithms in real networks

[0150]

[0151]

[0152] Table 3: ONMI of different algorithms in real networks

[0153]

[0154] From the experimental results in Table 2 and Table 3, it can be seen that OD-LPA (OURS) shows good accuracy in different types of real networks. Although the algorithm results fluctuate due to the random assignment of opinion values by the DeGroot model during evolution, the overall fluctuation is not large, so it can also indicate that the algorithm has good stability. In the Karate network, the advantage of OD-LPA is very obvious, and it can discover the completely correct community structure. This is mainly because this network community itself is composed of two communities generated by opinion divergence. In the Football network, the overlapping modularity Q ov is slightly lower than that of LPANNI, but significantly better than that of CNLLP and SLPA. This is because the community structure of the Football network is hierarchically complex, with 115 nodes divided into 12 real communities, and the community scale gap is large. The propagation strategy of LPANNI based on triangle density is more adaptable to this locally dense connection, while OD-LPA, to avoid over-segmentation, splits and redistributes nodes for extremely small-scale communities through community correction, resulting in general community discovery results in the face of this special situation. Since the number of overlapping nodes and the number of communities to which the overlapping nodes belong in the four real datasets are both small, even though CNLLP has deficiencies in the way of judging overlapping nodes, the overall performance is still good.

[0155] The LFR artificial network is an artificially generated network used to test and evaluate community discovery algorithms. This network model simulates the community structure in real-world networks by precisely controlling the community structure of the network and is widely used in social network analysis and the research of graph algorithms. To compare the performance of algorithms in multi-scale networks, the present invention selects 6 LFR-generated networks of different scales; where: n is the number of network nodes; k is the average degree of the network; k max is the maximum degree of the network; mu is the mixing parameter, which controls the proportion of nodes in the neighbors of a node that do not belong to the same community, that is, determines the ratio of the edges within the community to the edges between communities. When the mu value is large, the connections between communities will increase, resulting in a more blurred community structure; C min 、C max are the number of nodes in the smallest and largest scale communities; on is the number of overlapping nodes in the network; om is the number of communities to which the overlapping nodes belong. In this experiment, a total of 6 LFR networks of different scales are generated in this paper. While keeping the other parameters of each network unchanged, the number om of communities to which the overlapping nodes belong varies within the range of [2, 6] to observe the adaptability of different algorithms when the complexity of the community structure increases. The other parameters of the LFR networks of each scale are shown in Table 4, and the number of communities to which the overlapping nodes belong is 2 to 6 for all of them.

[0156] Table 4: Details of the artificially synthesized network

[0157]

[0158] The experiment takes the number of communities to which the overlapping nodes belong as the abscissa and the normalized mutual information (ONMI) as the ordinate to explore the changes in the performance of each algorithm as the complexity of the overlapping community increases in generated networks of different scales. The experimental results are as Figure 2 shown. In all LFR networks, OD-LPA (OURS) generally performs best in terms of the ONMI index, and its performance remains stable as the degree of overlap increases. Specifically: For medium-scale networks (LFR1, LFR2): OD-LPA shows the highest ONMI value, significantly superior to other algorithms, indicating that this method can accurately identify medium-scale overlapping communities. In large-scale networks (LFR5, LFR6): As om increases, LPANNI has a slight advantage in the initial iteration, but OD-LPA gradually surpasses LPANNI when om > 4 by virtue of its multi-dimensional membership modeling and ACOD weighted propagation mechanism, showing stronger stability. And CNLLP based on label propagation layer by layer of core nodes can only obtain better ONMI values when om is 2 or 3 because its judgment method for nodes belonging to multiple communities is too strict, resulting in a decrease in the accuracy of the algorithm division when the community overlap degree is high.

[0159] To further verify the contribution of the consensus-driven weighted mechanism in the OD-LPA algorithm to the final community division effect, this paper designed an ablation experiment, and the results are as Figure 3 shown. After removing the consensus module (denoted as NO-D), the ONMI values on all datasets decreased to varying degrees. Among them, the performance of the Football and Pollbooks networks decreased most significantly, by approximately 12.6% and 13.6% respectively; the Dolphin network followed, with a decrease of approximately 3.9%; while the Karate network only decreased by 3.8%, almost maintaining the optimal performance. The above results indicate that the consensus-driven weighted propagation mechanism plays a significant role in improving the accuracy and stability of label propagation, especially in networks with complex community structures, uneven connection densities, and obvious multiple node memberships. Its essence lies in regulating the propagation path through the view convergence speed, making the labels more likely to spread within regions with stronger internal consistency, thus avoiding the boundary blurring and label confusion caused by random diffusion in traditional label propagation. On the other hand, even in the case of removing the consensus mechanism, OD-LPA still performs well on multiple datasets. Especially in the Karate network with a simple structure and clear community boundaries, it is hardly affected, indicating that the overall framework of the algorithm has good robustness. However, in networks such as Football or Pollbooks with strong overlapping structures and community heterogeneity, the lack of the consensus-driven mechanism will significantly weaken the algorithm's ability to depict fine-grained community boundaries. This further proves the important role of this module in enhancing the adaptability and generalization ability of the algorithm.

[0160] The third embodiment

[0161] As Figure 4 shown, this embodiment provides a social network overlapping community discovery system for executing the social network overlapping community discovery method of the first embodiment, including:

[0162] A core node identification module 1, configured to calculate the potential influence value of each node according to the node degree of each node and the number of common neighbors with neighbor nodes, and simultaneously screen out a set of core nodes with greater influence in the network according to the influence value;

[0163] A consensus-driven weighted label propagation module 2, configured to calculate the view convergence speed between nodes by using the change of view values in the DeGroot view dynamics model, and calculate the propagation weight between nodes according to the average cumulative view difference measuring the view convergence speed;

[0164] A membership degree vector construction and propagation module 3, configured to construct a membership degree vector representing the membership relationship of each node to multiple communities for each node, and update the membership degree vector in combination with the propagation weight in each round of propagation;

[0165] A dynamic threshold adjustment module 4, configured to adaptively adjust the community membership threshold of label propagation according to the community network scale and community characteristics, so as to assign the belonging of the community network of nodes according to the community membership threshold;

[0166] A community correction and re - distribution module 5, configured to perform community structure correction and re - distribution of unassigned nodes for the propagation result of the initial label, so as to optimize the label propagation effect.

[0167] A computer - readable storage medium stores computer code, and when the computer code is executed, the above - mentioned method is executed. Those of ordinary skill in the art can understand that all or part of the steps in the various methods of the above - mentioned embodiments can be completed by instructing relevant hardware through a program. This program can be stored in a computer - readable storage medium, and the storage medium can include: read - only memory (ROM, Read Only Memory), random access memory (RAM, Random Access Memory), magnetic disk or optical disc, etc.

[0168] The above - mentioned are only the preferred embodiments of the present invention. The protection scope of the present invention is not limited to the above - mentioned embodiments. All technical solutions within the idea of the present invention belong to the protection scope of the present invention. It should be noted that for those of ordinary skill in the technical field, several improvements and refinements can be made without departing from the principle of the present invention, and these improvements and refinements should also be regarded as the protection scope of the present invention.

[0169] The technical features of the above - mentioned embodiments can be combined arbitrarily. For the sake of concise description, not all possible combinations of the technical features in the above - mentioned embodiments are described. However, as long as there is no contradiction in the combination of these technical features, it should be considered as the scope recorded in this specification.

[0170] It should be noted that the above - mentioned embodiments can be freely combined according to needs. The above - mentioned are only the preferred embodiments of the present invention. It should be pointed out that for those of ordinary skill in the technical field, several improvements and refinements can be made without departing from the principle of the present invention, and these improvements and refinements should also be regarded as the protection scope of the present invention.

Claims

1. A method for discovering overlapping communities in a social network, characterized in that Including the following steps: S1: Calculate the potential influence value of each node based on the node degree of each node and the number of common neighbors with neighboring nodes. Meanwhile, filter out a set of core nodes with greater influence in the network according to the influence value; S2: Calculate the opinion convergence rate between nodes using the change in opinion value in the DeGroot opinion dynamics model, and calculate the propagation weight between nodes according to the average cumulative opinion difference that measures the opinion convergence rate; S3: Construct a membership degree vector representing the membership relationship of each node to multiple communities, and update the membership degree vector in combination with the propagation weight in each round of propagation; S4: Adaptively adjust the community membership threshold of label propagation according to the community network scale and community characteristics, so as to assign the belonging of the node to the community network according to the community membership threshold; S5: For the propagation result of the initial label, perform community structure correction and reallocation of unassigned nodes to optimize the label propagation effect.

2. The method for discovering overlapping communities in a social network according to claim 1, wherein In step S1, according to the node degree of each node and the number of common neighbors with neighbor nodes, the potential influence value of each node is calculated, where the potential influence value NC(i) of each node v i is calculated according to the following formula: where |N(i)| is the degree of the i-th node v in the network i , that is, the number of neighbors of node v i . v j is a neighbor node of node v i . Nb(i) represents the neighbor set of node v i . |N(i)∩N(j)| is the number of common neighbors of node v i and node v j .

3. The method for discovering overlapping communities in a social network according to claim 2, wherein In step S1, filtering out a set of core nodes with greater influence in the network according to the influence value is specifically as follows: Calculate the potential influence value of each node v∈V in the network as the potential of the community center according to the calculation rule of the potential influence value, and record the potential influence value of each node as NC(v); Arrange in descending order according to the potential influence value NC(v) of each node to obtain a node sequence rank=(v1, v2, …, v n ); Initialize the set of the core nodes Select the node v1 ranked first as the first core node, let H = v1, for each subsequent node v in the rank sequence i , if the subsequent node v i has no direct neighbor relationship with the nodes in the set of the core nodes, then add the current subsequent node v i to the set H of the core nodes until all nodes are traversed.

4. The method for discovering overlapping communities in a social network according to claim 1, characterized in that, In step S2, calculating the opinion convergence rate between nodes using the change in opinion value in the DeGroot opinion dynamics model, and calculating the propagation weight between nodes according to the average cumulative opinion difference that measures the opinion convergence rate is specifically as follows: The formula of the DeGroot opinion dynamics model is expressed as: Among them, x i (t + 1) is the opinion value of node v i at time t + 1, x j (t) is the opinion value of node v j at time t, Nb(i) is the set of neighbors of v i , A ij is the influence weight of node v j on node v i , the weight is defaulted to 1, |N(i)| is the degree of node v i , at each time step t, each node updates its own opinion according to the above formula. Specifically, node v i will consider the opinion values x j (t) of all its neighbors, and calculate the average value of these opinions. The opinion value of an individual evolves iteratively with the model until the system reaches a steady state or reaches the preset maximum number of iterations; The measure of the convergence speed of the said viewpoints is described using the average cumulative opinion difference ACOD. The label propagation process of the community network is simulated multiple times. For any two nodes v i and v j in each simulation, the cumulative opinion difference d(e ij ) between them is calculated using the following formula: Among them, x i (t) and x j (t) respectively represent the opinion values of nodes v i and v j at time step t. During the calculation, t is an integer, where t1 is default taken as n is the total number of nodes, and t0 is usually set as usually set as To reduce the influence of randomness, the experiment needs to be simulated multiple times, and then the results of multiple simulations are averaged to obtain the average cumulative opinion difference ACOD between two nodes v i and v j to be d avg (e ij ); Node v i and its neighbor node v j The propagation weight w ij is defined by the following formula: w ij = 1 - d avg (e ij ) The smaller the average cumulative opinion difference ACOD, the larger the propagation weight w ij is, that is, the node v i has a stronger influence on the label propagation of node v j .

5. The method for discovering overlapping communities in a social network according to claim 1, wherein In step S3, constructing a membership degree vector representing the membership relationship of each node to multiple communities, and updating the membership degree vector in combination with the propagation weight in each round of propagation is specifically as follows: Suppose there are h communities in the community network, and the membership vector I of node v i is defined as: i is defined as: I i =(X i,1 , X i,2 , …, X i,k , …, X i,h ) Among them, X i,k represents the membership degree of node v i in the k-th community. In the membership degree vector I i the sum of the membership degrees of the nodes to all communities is 1, that is: As the core node with greater influence in the community network, the membership degree vector is uniquely determined in the initial stage, that is, the membership degree of the kth community to which it belongs is 1, and the rest of the components are all 0, indicating the unique belonging of the core node and remaining unchanged during the propagation. Based on the fact that the number of community networks when first performing community discovery in the social network takes the same value as the number of core nodes, both are h, then the membership degree vector of the kth core node is: I k = (0, 0, …, 1, … 0), with the k-th position being 1 Based on the fact that non-core nodes have no preference for any community initially, the membership degrees of the non-core nodes to all h communities are uniformly distributed, and for the non-core node v i the formula for the initial membership degree vector at t = 0 is shown as follows The number of propagation rounds with a preset fixed number of iterations. During each round of propagation, for all the non-core nodes v i of the membership degree vector is weighted and updated according to the propagation strength of its neighbor nodes. The rule is as follows: Among them, represents the membership degree vector of the non-core node v i after the (t + 1)-th round of propagation, and Nb(i) represents the neighbor set of the non-core node v i ; is the membership degree vector of node v j at the t-th round of propagation, and w ij is the propagation weight between node v i and its neighbor node v j ; After each round of propagation, the membership degree vector is normalized to ensure that the sum of the multi-dimensional labels in the membership degree vector is 1.

6. The method for discovering overlapping communities in a social network according to claim 5, wherein In step S4, adaptively adjusting the community membership threshold of label propagation according to the community network scale and community characteristics, so as to assign the belonging of the node to the community network according to the community membership threshold is specifically as follows: Judging the community network attribution of a node according to each dimension information in the membership degree vector of each node. Let the number of core nodes in the network be h, and the node v i The membership degree to the k-th community C k is, X ik , and the setting of the community membership degree threshold θ is as follows: Among them, α is the community density adjustment factor, which ensures that the community membership threshold decreases as the number of core nodes increases, avoiding excessive determination deviation due to different community scales in complex community networks; For each of the non-core nodes v i , if there exists a unique community C k that satisfies X ik ≥θ, then the non-core node v i is assigned to the community C k . If multiple communities in the community set {C1, C2, …, C k , …, C h} simultaneously satisfy X ik ≥θ, then the non-core node v i is simultaneously assigned to multiple communities, forming overlapping communities. If all X ik <θ, then the non-core node v i is marked as an unassigned node and needs to be processed through a subsequent reallocation mechanism.

7. The method for discovering overlapping communities in a social network according to claim 6, wherein In step S5, for the propagation result of the initial label, performing community structure correction and reallocation of unassigned nodes to optimize the label propagation effect is specifically as follows: Let the number of nodes in the community network be n, the number of core nodes be h, and any community C k (k = 1, 2,... h) has a node size of |C k |. If the community size satisfies the following formula: Then C is determined k as a significant community, otherwise C k is marked as a non-significant community and split. After splitting, the nodes that originally belonged to the non-significant community and did not belong to any of the significant communities are reclassified as the unassigned nodes, where β is a threshold adjustment parameter; Reallocate the unassigned nodes based on the dynamic reallocation algorithm based on weighted neighborhood membership, specifically as follows: Perform priority sorting on the unassigned nodes, and freeze the membership vectors of the assigned nodes to avoid interference with the stability of the assigned communities by subsequent propagation. The reallocation order of the unassigned nodes is determined by the neighborhood information density NID, which quantifies the ability of a node to obtain community information from its assigned neighbors. If an unassigned node is connected to multiple assigned nodes, its neighborhood information density will be higher. The calculation of the neighborhood information density NID is as follows: where w ij is the propagation weight between the unallocated node v i and its neighbor node v j , II j is an indicator function. If the neighbor node v j is an allocated node, then II j = 1; otherwise, II j = 0. For all the unallocated nodes, they are sorted in descending order according to NID(i) to form a priority queue Q = (v1, v2,... v a ), where a is the number of unallocated nodes. Nodes with high NID(i) are processed first to improve the accuracy; Perform the iterative update of the membership vector. For the unassigned node v i ∈Q, the membership vector update is only performed through the assigned neighbor nodes, and the update rule is as follows: where Nb(i) represents the neighbor set of the non-core node v i and A is the set of assigned nodes to ensure that the unassigned nodes only propagate information from the assigned nodes, without considering the influence of other unassigned nodes for v i is the membership degree vector after being updated again by the assigned neighbor node v j ; is the membership degree vector of the assigned neighbor node v j , and after the update, the membership degree vector needs to be normalized to ensure that The membership degree vector After normalization, the community membership degree threshold θ is calculated according to min(0.5, α / h) for community judgment, where α is slightly lower than the threshold in the initial community discovery. For the unassigned nodes, if there is a dominant community C k The corresponding membership degree X ik exceeds the community membership degree threshold θ, it is assigned to community C k . After the unassigned nodes are assigned, they are immediately added to the set A of the assigned nodes, and the neighborhood information density NID and the priority processing queue Q of their neighborhood unassigned nodes are updated. The steps of the dynamic reallocation algorithm are repeated until all the unassigned nodes are processed.

8. A social network overlapping community discovery system for performing the social network overlapping community discovery method according to any one of claims 1-7, characterized in that, Including: A core node identification module, configured to calculate the potential influence value of each node according to the node degree of each node and the number of common neighbors with neighbor nodes, and simultaneously screen out a set of core nodes with greater influence in the network according to the influence value; A consensus-driven weighted label propagation module, configured to calculate the opinion convergence speed between nodes by using the change of opinion values in the DeGroot opinion dynamics model, and calculate the propagation weight between nodes according to the average cumulative opinion difference for measuring the opinion convergence speed; A membership vector construction and propagation module, configured to construct a membership vector representing the membership relationship of a node to multiple communities for each node, and update the membership vector in combination with the propagation weight in each round of propagation; A dynamic threshold adjustment module, configured to adaptively adjust the community membership threshold of label propagation according to the community network scale and community characteristics, so as to assign the belonging of the node to the community network according to the community membership threshold; A community correction and reallocation module, configured to perform community structure correction and reallocation of unassigned nodes for the propagation result of the initial label, so as to optimize the label propagation effect.

9. A computer device, including a memory and one or more processors, wherein computer code is stored in the memory, and when the computer code is executed by the one or more processors, the one or more processors execute the method according to any one of claims 1 to 7.

10. A computer-readable storage medium, wherein the computer-readable storage medium stores computer code, and when the computer code is executed, the method according to any one of claims 1 to 7 is executed.

Citation Information

Cited By

  • Network information dissemination method and system

    CN121547411A

  • A network information propagation method and system

    CN121547411B