A non-negative matrix factorization community detection method based on latent structure and attributes

By combining nonnegative matrix factorization algorithms that incorporate topological, attribute, and potential structural information, this method addresses the problem of existing methods failing to comprehensively consider network information, achieving more accurate community detection and improving the accuracy and efficiency of detection results.

CN115935044BActive Publication Date: 2026-03-27CHONGQING UNIV OF POSTS & TELECOMM
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-12-29
Publication Date
2026-03-27

AI Technical Summary

Technical Problem

Existing community network detection methods fail to simultaneously consider topological information, attribute information, and potential structural information, resulting in inaccurate community detection results.

Method used

By combining topological structure, attribute information, and latent structure information, a community detection model is established using a nonnegative matrix factorization algorithm. The latent structure matrix is ​​calculated using the Jaccard similarity coefficient, and sparse constraints are introduced to optimize the iterative update rules of the community member matrix, thereby enabling the joint learning of community members, community-community, and community attribute matrices.

Benefits of technology

It improves the accuracy of community detection, fully explores the potential structural information of the community network, enhances the accuracy of the community member matrix, reduces node attribute interference, and improves the efficiency of community detection.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115935044B_ABST
    Figure CN115935044B_ABST
Patent Text Reader

Abstract

The application provides a non-negative matrix factorization community detection method based on latent structure and attribute, and relates to the field of community network detection. The method mainly solves the problem that the existing method does not sufficiently utilize community network information. The method comprises the following steps: firstly, preprocessing community network data, and representing information in the network; calculating an adjacency matrix, an attribute matrix and a latent structure matrix; establishing a community detection model mainly based on direct topological structure and attribute information and supplemented by latent structure information; calculating an iterative updating rule; setting the number of iterations, initializing a community member matrix, two community-community matrices and the latent structure matrix, and adjusting a weight parameter; performing iteration to obtain a target matrix; and finally discovering a community according to the iteration result community member matrix.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of community network detection, and in particular to a non-negative matrix factorization community detection method combining topological structure information, attribute information and potential structure information. BACKGROUND

[0002] With the rapid development of science and technology, network detection has attracted much attention of researchers and is taken as an important topic, one of the important reasons is that network detection can better help to understand various types of networks and mine important information hidden in the network; here the so-called network refers to various systems composed of highly interconnected entities in nature and society, including neural networks, traffic networks, social networks and their protein interaction networks, etc. Networks often have a common feature that the nodes in the same group are closely related and the nodes in different groups are sparsely related, and this group-by-group node set is defined as a community; analyzing these communities is of great significance to understanding the deep characteristics and functions of the network, for example, finding research teams in co-authorship networks; in the field of biological information, finding biological molecules with the same structure and function by dividing biological molecules, and finding protein complexes in protein-protein interaction networks (PPI); finding similar user groups in online social networks and providing important reference information for public opinion analysis, urban planning, Internet development and hazard prevention, etc.

[0003] The most widely used methods at present are modularity, minimum cut and non-negative matrix factorization (NMF); among them, the purpose of modularity is to divide the network into disjoint sets by ensuring that the number of edges in a group is significantly greater than the expected number of edges, which greatly expands the research of community detection; and the minimum cut is to divide the network into disjoint subgraphs so as to minimize the cut between these subgraphs.

[0004] Non-negative matrix factorization algorithm (NMF) is widely applied to various fields of artificial intelligence. NMF can effectively process large-scale data and obtain a matrix with practical significance. Compared with other methods, the non-negative matrix factorization method has the following advantages: 1) better interpretability: after performing non-negative constraint matrix decomposition on a network, a community member matrix is obtained, and each element in the matrix can be understood as the probability or intensity of the node belonging to the corresponding community, which makes the community detection result have better interpretability. 2) can integrate node related information: the node related information (such as node attribute information) is integrated into the objective function to guide the iterative optimization of the objective function together, so as to improve the clustering effect. Therefore, non-negative matrix factorization has become an important method for community detection. In recent years, the research on non-negative matrix factorization for community detection has also gradually increased, and various non-negative matrix factorization variants have been generated. The main principle is to extract a feature matrix from a community network, obtain a community feature matrix and a community member matrix through factor decomposition, and finally obtain a community by processing the community member matrix.

[0005] Although there are many non-negative matrix factorization methods applied to community network detection at present, the traditional NMF algorithm only uses the topological structure of the network and does not consider the related attribute information of the network nodes, or only considers the attribute information without considering the topological structure information, or considers the topological structure and related attribute information, but does not consider the potential structure information of the community network nodes. For example, user A and B have a direct connection relationship (such as mutual acquaintance and both have published D type tweets), B and C have a direct connection relationship (such as mutual acquaintance and both have published D type tweets), and from the topological structure, only the link relationship between B and A and C can be obtained, and the potential similar information between A and C cannot be obtained. Therefore, how to obtain the potential network information from complex network data is an important research direction, and how to obtain a more accurate community member matrix and improve the algorithm efficiency is the core of the research in this field.

[0006] In summary, the existing community network detection method does not consider the topological structure information and attribute information at the same time, and does not consider the potential topological structure relationship between network nodes. SUMMARY

[0007] In view of this, the present application will solve the above-mentioned deficiencies, and proposes a community detection method combining non-negative matrix factorization algorithm, specifically a non-negative matrix factorization community detection method based on potential structure and attribute.

[0008] The idea of realizing the present application is: first, obtaining topological information, attribute information and potential structure information from community network, adjusting the balance coefficient of the three kinds of information, and constraining the relevant matrix, establishing a community detection model taking direct topological structure and attribute information as the main part and potential structure information as the radiation; through mutual constraint of the three kinds of information, non-negative matrix decomposition is carried out through mutual constraint of the three kinds of information, and further community member matrix, community-community matrix and community attribute matrix are obtained; finally, more accurate community detection results are obtained according to the community member matrix.

[0009] In order to realize the above purpose, the present application provides the following technical scheme:

[0010] A non-negative matrix decomposition community detection method based on potential structure and attribute, specifically comprising the following steps:

[0011] Step S1: preprocessing community network data;

[0012] The original data of community network is only a number, so the original data needs to be preprocessed to convert the data into a one-to-one corresponding vector with actual meaning.

[0013] Step S2: calculating the adjacency matrix , attribute matrix and potential structure matrix of community network;

[0014] The adjacency matrix of community network is constructed according to community network data, wherein denotes the number of network nodes, if there is a link relationship between any node and , then , otherwise there is no link relationship , and the adjacency matrix represents the direct topological structure of community network;

[0015] The attribute matrix of community network is constructed according to community network data, wherein denotes the number of network nodes, denotes the number of attributes, and the attributes are marked as 1 to , if the node has the attribute , then , otherwise it does not have the attribute ;

[0016] The potential structure matrix of community network is constructed according to the adjacency matrix, wherein the directly linked nodes certainly have a certain relationship, but the nodes without direct connection do not necessarily have any relationship, therefore, the present application considers the relationship of non-adjacent nodes;

[0017] The more common neighbors between any two nodes, the higher the similarity, and the more potential information mined, therefore, the weight coefficient between non-adjacent nodes is not uniform, so the application will use Jaccard similarity coefficient to calculate the potential structure information of the network;

[0018] The Jaccard similarity coefficient calculation method is as follows: The representation of nodes and is respectively composed of the adjacency matrix The first row and the first row, and the number of intersection elements in the representation of nodes and is calculated as a proportion of the number of union elements in the representation of nodes and :

[0019]

[0020] The higher the Jaccard coefficient, the higher the similarity of the two nodes, and vice versa, the greater the difference between the two nodes.

[0021] Step S3: Establish a community detection model based on direct topological structure and attribute information, and auxiliary potential structure;

[0022] The community network direct topological structure information (node and node direct link) adjacency matrix And attribute information (Node has a certain attribute) is used as the main, and the community network potential structure information (Node and node do not exist direct connection, but there is a certain relationship) is used as the auxiliary, and the related decomposition matrix is constrained, so as to establish the community detection model. The objective function

[0023]

[0024] Among them, the community member matrix represents the final community discovery matrix, represents the number of node members, represents the number of communities, the row of the matrix represents the node member, the column represents the community, and the value in the matrix represents the probability that the node belongs to the community ; the community-community matrix , the community-community matrix , represents the number of communities, each row and each column of the matrix represents the community, and the value in the matrix represents the community and the community the relationship between communities; community attribute matrix , representing the number of attributes, the matrix row represents each community, column represents each attribute, the value in the matrix representing the community performance on the attribute ;

[0025] community membership matrix in the model is the result of the joint learning iteration of direct topology, attribute information and potential information, making full use of the existing network structure to obtain more information, so that the community detection is more closely;

[0026] Although the model considers potential information, the closeness of direct link relationship is still greater than that of indirect link relationship, so the potential information is considered as a supplement;

[0027] Because the original structure and contact of the community is fixed, the community-community matrix should be as much as possible , so the community-community matrix is added constraint;

[0028] community attribute matrix in the model , because different communities tend to have different attributes, even some attributes themselves show mutual exclusion, so norm sparse constraint is introduced to each column of to reduce the interference from some node attributes in each community.

[0029] Step S4: calculate the iterative update rule;

[0030] First, simplify the objective function into the form of matrix trace,

[0031]

[0032] where is a matrix with all 1, the diagonal of is exactly the sum of the square of each row element, so can be simplified to .

[0033] Use the simplified objective function to find the partial derivative of , , , respectively

[0034]

[0035] According to the KKT conditions, we know that , , , Therefore, the updated rules are as follows:

[0036]

[0037] Step S5: Set the iteration count (iter) and randomly initialize the community member matrix. Community-Community Matrix Community-Community Matrix and community attribute matrix Simultaneously adjust the balance parameters ;

[0038] The maximum number of iterations is preset to iter=100; where It is a weighting parameter that adjusts the impact of potential structures. It is a balance parameter that adjusts the differences in the community matrix. It is a sparsity parameter used to balance the sparsity terms and and The error, for the balance parameters The model was tested using the controlled variable method, with different parameter values ​​set. Adjust the parameters within the specified range to obtain values ​​that best suit the model's performance.

[0039] Step S6: Obtain the community member matrix through iteration. Community-Community Matrix Community-Community Matrix and community attribute matrix ;

[0040] After each iteration, it is checked whether the number of iterations has reached the preset maximum number of iterations. If not, the iteration update continues. When the number of iterations reaches the preset maximum number of iterations, the final community member matrix after iterative updates is obtained. Community-Community Matrix Community-Community Matrix and community attribute matrix Then proceed to step S7.

[0041] Step S7: Based on the community member matrix Obtain the final community testing results;

[0042] Based on the final community member matrix obtained in step S6 determine which community each node member belongs to, each row represents a node member, and the size of each element value in a row indicates the probability of the node belonging to the community (each list represents a different community), and the community membership matrix is determined according to the probability size, that is, the index of the maximum value in the ith row of the community membership matrix

[0043] The present application provides a non-negative matrix factorization community detection method based on latent structure and attributes, and the beneficial effects of the technical scheme are as follows:

[0044] (1) The advantages of traditional community detection based on node link information are retained, and the relationship of non-direct link nodes in the network is considered, the latent structure information of the community network is fully mined, and the accuracy of community detection is improved to a certain extent;

[0045] (2) The present application fully utilizes prior information, and integrates direct topological structure and attribute information and latent structure information, and the community membership matrix is obtained by mutual constraint and joint learning of the above three information, and the accuracy of the membership matrix is further improved;

[0046] (3) The present application introduces the norm sparse constraint into each column of the community membership matrix to reduce the interference from certain node attributes in each community, so that the community membership matrix obtained by iteration is more optimal, and the accuracy of community detection is further improved. BRIEF DESCRIPTION OF DRAWINGS

[0047] Figure 1 is the overall flowchart of the method of the present application.

[0048] Figure 2 is an example of a community network of the present application.

[0049] Figure 3 is the result of the example iteration process of the present application.

[0050] Figure 4 is the result of the example community detection of the present application. DETAILED DESCRIPTION

[0051] The specific embodiments of the present application will be further described in detail below in combination with the drawings and examples. Obviously, the described embodiments are only a part of the embodiments of the present application, but not all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative labor fall within the scope of protection of the present application.

[0052] The application provides a non-negative matrix factorization community detection method based on latent structure and attribute, and the total process is realized according to Figure 1 .

[0053] The purpose of the application is to divide the network into communities (community, partition, subgraph, module or cluster), which are composed of groups of nodes in the network, that is, the connection of nodes inside the community is more intensive than that of external nodes.

[0054] Step 1: Represent the information in the network, community network original drawing Use to represent, , represents the set of all vertices in the network, , represents the set of all edges in the network, , represents the attribute of the node in the network. As shown in Figure 2 , there are 7 users, , each user has a profession attribute, , .

[0055] Step 2: Build Figure 2 The corresponding adjacency matrix of the example , attribute matrix and latent structure matrix

[0056]

[0057] There are four categories in the occupation attribute, which are nurse, doctor, student and teacher, which correspond to the 1st, 2nd, 3rd and 4th columns of the attribute matrix respectively.

[0058] The corresponding latent structure matrix in step 1 is

[0059]

[0060] According to the Jaccard similarity coefficient, the latent structure matrix , the diagonal elements of the latent structure matrix represent themselves, and themselves are completely the same, so the diagonal line is all 1.

[0061] Step 3: Establish a community detection model based on direct topological structure and attribute information as the main and latent structure information as the auxiliary:

[0062]

[0063] Step 4: Calculate the iteration update rule

[0064]

[0065] Step 5: set the iteration number iter = 100, the number of communities , parameters , random initialization , , and , the result is:

[0066]

[0067]

[0068] S6: obtain the matrix after iteration

[0069]

[0070]

[0071] Figure 3 is the result graph of the objective function at each iteration, and it can be seen from the graph that the loss value is continuously decreasing, and when the iteration number is between 80 and 100, the result is almost stable.

[0072] Step 7: according to , the members of the community and can be directly determined, for example, the probability distribution vector of user node in is , , so node belongs to community , and the remaining nodes are sequentially divided according to the above method, and the final division result is: , , the result is shown in Figure 4 , doctors and nurses are divided in the same community, and students and teachers are divided in the same community.

[0073] The present application considers attribute information, and takes the potential structure information of the community network as a constraint term into the model, and sparsely constrains the community attribute matrix after attribute information decomposition to guide the iterative learning process, and finally obtains the community division result by judging the probability size in the community node matrix, thereby further improving the community discovery quality.

[0074] The above is only used to illustrate the technical solutions of the present application, not to limit it, and those skilled in the art can make various modifications and changes to the present application, as long as they do not deviate from the spirit and scope of the technical solutions of the present application, which should be included in the claim scope of the present application.

Claims

1. A latent structure and attribute based non-negative matrix factorization community detection method, characterized in that, The method comprises the following steps: S1, preprocessing community network data; S2, computing an adjacency matrix of the community network , a property matrix and a latent structure matrix ; S3, establish a community detection model mainly based on direct topology structure and attribute information and auxiliary potential structure, specifically, taking the community network direct topology structure information adjacency matrix and attribute information as the main part and the community network potential structure information as the auxiliary part, and constraining the related decomposition matrix to establish the community detection model, and establish the objective function : ; Community member matrix This represents the matrix ultimately discovered by the community. Indicates the number of nodes. This matrix represents the number of communities. Rows represent node members, columns represent communities, and values ​​in the matrix represent the number of communities. Representative node Belongs to the community The probability of community-community matrix Community-Community Matrix , Representing the number of communities, each row and column of this matrix represents a community, and the values ​​in the matrix are... Indicates community With the community Relationships between people; community attribute matrix , This matrix represents the number of attributes. Rows represent each community, columns represent each attribute, and values ​​in the matrix... Representing the community In attributes Performance on; S4, calculating an iterative updating rule, specifically, in step S4, simplifying the objective function is in the form of a matrix trace, and then using a multiplication updating rule to obtain a local optimal solution, and finally obtaining a multiplication updating rule: ; ; ; ; S5, set the number of iterations iter, randomly initialize the community membership matrix , community-community matrix , community-community matrix and community attribute matrix , while adjusting the balance parameter ; S6, obtaining the community member matrix through iteration , community-community matrix , community-community matrix , and community attribute matrix ; S7、According to the community member matrix Obtain the community detection result.

2. The latent structure and attribute based non-negative matrix factorization community detection method according to claim 1, characterized in that: In step S2, an adjacency matrix is constructed according to the community network data wherein represents the number of network nodes, and if there is a link relationship between any node and , then , otherwise there is no link relationship , the adjacency matrix represents the direct topological structure of the community network; an attribute matrix is constructed according to the community network data wherein represents the number of network nodes, represents the number of attributes, and the attributes are marked as 1 to , if node has attribute , , then , otherwise it does not have the attribute ; a potential structure matrix of the community network is constructed according to the adjacency matrix , and the network potential structure information is obtained based on the Jaccard similarity coefficient.

3. The latent structure and attribute based non-negative matrix factorization community detection method of claim 1, wherein: In step S5, preset maximum iteration number iter = 100; wherein is a weight parameter for adjusting the potential structure influence, is a balance parameter for adjusting the community matrix difference, is a sparse parameter for balancing the sparse term and is an error of , and the balance parameter is adjusted by using the control variable method, different parameter values are set to test the model, and the parameters are debugged in the range of .

4. The latent structure and attribute based non-negative matrix factorization community detection method of claim 1, wherein: In step S6, it is judged whether the iteration number reaches the preset maximum iteration number or not. If the preset maximum iteration number iter is not reached, the iteration updating is continued. When the iteration number reaches the preset maximum iteration number iter, the final community member matrix updated by iteration is obtained , community-community matrix , community-community matrix , and community attribute matrix , and step S7 is further executed.

5. The latent structure and attribute based non-negative matrix factorization community detection method of claim 1, wherein: In step S7, the final community member matrix obtained in step S6 is used to obtain the community detection result, i.e. the community to which each node belongs is determined according to the probability size of each node member in each community, and the index of the maximum value in the i-th row of the community member matrix is taken as the community to which the i-th node belongs. is taken as the community to which the i-th node belongs.

Citation Information

Patent Citations

  • Model and device for generating latent graph and estimating graph variable, and method for generating the model

    JP2021125013A

  • Method for detecting communities in massive social networks using an agglomerative approach

    WO2012004425A1