Object set identification method and device based on non-dominated sorting genetic algorithm

Through the method based on the non-dominant sorting genetic algorithm, the candidate solutions are constructed using user attribute information, the module degree and contour coefficient are calculated, and the non-dominant level and congestion distance are optimized, which solves the problem of low object recognition accuracy in the financial industry and achieves a higher level identification accuracy and resource conservation.

CN119494716APending Publication Date: 2025-02-21AGRICULTURAL BANK OF CHINA
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411743765.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-30
Publication Date
2025-02-21

AI Technical Summary

Technical Problem

The intelligent models used in the financial industry for object recognition require artificial marking of training samples, resulting in low recognition accuracy.

Method used

Using the object set recognition method based on the non-dominant sorting genetic algorithm, the first population is constructed through the attribute information of multiple users, the modularity and contour coefficient of each candidate solution are calculated, the non-dominant level and congestion distance are obtained, and iterative optimization is optimized until the goal is reached. Threshold, determine the target solution.

Benefits of technology

It improves the accuracy of object recognition, reduces dependence on expert annotation, saves human resources, and ensures the accuracy of the target solution through the design of modules and contour coefficients.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119494716A_ABST
    Figure CN119494716A_ABST
Patent Text Reader

Abstract

The invention discloses an object set identification method and device based on a non-dominated sorting genetic algorithm, and the method comprises the steps: obtaining a first population comprising a plurality of first candidate solutions according to the attribute information of a plurality of users; obtaining a modularity and a contour coefficient corresponding to the first candidate solution; obtaining a non-dominated level and a congestion distance of the first candidate solution according to the modularity and the contour coefficient; under the condition that the number of iterations reaches a target threshold value, the candidate solution with the minimum non-dominated hierarchy is determined from the first candidate solutions to serve as a target solution; under the condition that the number of iterations does not reach a target threshold value, progressively increasing the number of iterations by 1 to obtain a genetic candidate solution corresponding to the first candidate solution so as to obtain a second population; selecting a plurality of second candidate solutions from the candidate solutions contained in the second population, taking the second candidate solutions as the first candidate solutions, and returning to execute the operation to obtain the modularity and the contour coefficient corresponding to each first candidate solution; and determining whether a candidate community in the target solution is an object set composed of corresponding users or not.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of data processing technology, and in particular to a method and device for identifying an object set based on a non-dominated sorting genetic algorithm. Background Art

[0002] With the rapid development of Internet+, the financial industry is also booming. Traditional counter and branch services are gradually decreasing, and many financial products such as wealth management, funds, insurance and other online businesses are becoming more open, and customer acquisition channels will also be greatly increased.

[0003] However, they will also face risks brought by various financial behaviors. Due to the particularity of the financial industry, once someone breaks through the risk control system, it will cause huge asset losses.

[0004] Currently, intelligent models are commonly used to achieve object recognition. However, intelligent models require manual labeling of training samples, which may have the defect of low accuracy. Summary of the invention

[0005] In view of the above problems, the present application provides an object set recognition method and device based on a non-dominated sorting genetic algorithm to solve the defect of low recognition accuracy. The specific solution is as follows:

[0006] The first aspect of the present application provides an object set recognition method based on a non-dominated sorting genetic algorithm, the method comprising:

[0007] A first population is obtained according to attribute information of a plurality of users, wherein the first population includes a plurality of first candidate solutions, each of the first candidate solutions includes all of the users, and the users in each of the first candidate solutions are divided into at least one candidate community, each of the candidate communities includes at least one user, and at least one of the candidate communities is different between different first candidate solutions;

[0008] Obtaining a modularity and a silhouette coefficient corresponding to each of the first candidate solutions, wherein the modularity represents the degree of aggregation between the candidate communities in the first candidate solution, and the silhouette coefficient represents the compactness within each of the candidate communities in the first candidate solution and the separation between the candidate communities;

[0009] Obtaining a non-dominated hierarchy and a crowding distance of each of the first candidate solutions according to the modularity and the silhouette coefficient;

[0010] Determine whether the number of iterations reaches the target threshold;

[0011] When the number of iterations reaches the target threshold, determining one or more candidate solutions with the smallest non-dominated hierarchy from the first candidate solutions as target solutions;

[0012] In the case where the number of iterations does not reach the target threshold, the number of iterations is incremented by 1, and at least one genetic candidate solution corresponding to the first candidate solution is obtained according to the non-dominated hierarchy and the crowding distance of each of the first candidate solutions to obtain a second population; multiple second candidate solutions are selected from the candidate solutions included in the second population, and the second candidate solutions are used as first candidate solutions, and the step of obtaining the modularity and silhouette coefficient corresponding to each of the first candidate solutions is returned to be executed;

[0013] It is determined whether the target solution includes an object set composed of corresponding users of the candidate community.

[0014] In a possible implementation, obtaining a genetic candidate solution corresponding to each of the first candidate solutions according to the non-dominated hierarchy and the crowding distance of each of the first candidate solutions to obtain a second population includes:

[0015] Determine a candidate solution that satisfies a preferred condition from any two of the first candidate solutions selected from the first population to obtain a plurality of initial candidate solutions;

[0016] Exchanging other users adjacent to at least one of the users between any of the initial candidate solutions to obtain a genetic candidate solution;

[0017] The genetic candidate solution is merged with the first candidate solution to obtain a second population.

[0018] In a possible implementation, before merging the genetic candidate solution with the first candidate solution to obtain a second population, the method further includes:

[0019] generating a random number for each of the users in at least one of the genetic candidate solutions;

[0020] In response to the random number being less than or equal to a preset mutation probability, a user adjacent to the corresponding user in the genetic candidate solution is changed.

[0021] In a possible implementation, selecting a plurality of second candidate solutions from the candidate solutions included in the second population includes:

[0022] Obtaining a non-dominated hierarchy and a crowding distance of each candidate solution included in the second population according to the modularity and silhouette coefficient corresponding to each candidate solution included in the second population;

[0023] According to the non-dominated hierarchy and the crowding distance of each candidate solution included in the second population, a second candidate solution that meets a screening condition is screened out from the second population.

[0024] In a possible implementation, the screening condition includes: the non-dominated level of the second candidate solution in the second population is small, and / or the crowding distance of the second candidate solution in the second population is large.

[0025] In a possible implementation, the attribute information includes information on multiple target attributes; wherein obtaining the first group according to the attribute information of multiple users includes:

[0026] According to the attribute information of each user, an adjacency matrix is ​​constructed, wherein each user is a row and each user is a column, and a matrix element in the adjacency matrix represents a user similarity between two users;

[0027] At least one other user satisfying an adjacency condition is selected for each of the users in turn according to the user similarities to obtain a first population.

[0028] In a possible implementation, the adjacency relationship includes: a user similarity between the users is greater than or equal to a similarity threshold.

[0029] In a possible implementation, determining whether the target solution includes a candidate community as a set of objects composed of corresponding users includes:

[0030] According to the first rule, in response to whether the user is marked with an object identifier in the candidate community in the target solution, determining whether the candidate community in the target solution is an object set composed of corresponding users;

[0031] or,

[0032] According to the second rule, it is determined that in the target solution, there is a set of objects composed of users corresponding to the candidate community.

[0033] In a possible implementation, the candidate communities are different, including at least one of the following:

[0034] The candidate communities are different from each other in terms of the users they contain;

[0035] The candidate communities have different association relationships between the users they contain; and the association relationships between the users are related to the attribute information of the users.

[0036] A second aspect of the present application provides an object set recognition device based on a non-dominated sorting genetic algorithm, the device comprising:

[0037] a population obtaining unit, configured to obtain a first population according to attribute information of a plurality of users, wherein the first population includes a plurality of first candidate solutions, each of the first candidate solutions includes all of the users, and the users in each of the first candidate solutions are divided into at least one candidate community, each of the candidate communities includes at least one user, and at least one of the candidate communities is different between different first candidate solutions;

[0038] a function value obtaining unit, configured to obtain a modularity and a silhouette coefficient corresponding to each of the first candidate solutions, wherein the modularity represents a degree of aggregation between the candidate communities in the first candidate solution, and the silhouette coefficient represents a compactness within each of the candidate communities and a degree of separation between the candidate communities in the first candidate solution;

[0039] a candidate processing unit, configured to obtain a non-dominated hierarchy and a crowding distance of each of the first candidate solutions according to the modularity and the silhouette coefficient;

[0040] An iteration judgment unit, used to judge whether the number of iterations reaches a target threshold; if the number of iterations reaches the target threshold, trigger the target determination unit; if the number of iterations does not reach the target threshold, trigger the iteration processing unit;

[0041] The target determination unit is configured to determine, from among the first candidate solutions, one or more candidate solutions with the smallest non-dominated hierarchy as a target solution;

[0042] The iterative processing unit is used to increase the number of iterations by 1, obtain at least one genetic candidate solution corresponding to the first candidate solution according to the non-dominated hierarchy and crowding distance of each of the first candidate solutions, so as to obtain a second population; select multiple second candidate solutions from the candidate solutions included in the second population, use the second candidate solutions as first candidate solutions, and return to execute the step of obtaining the modularity and silhouette coefficient corresponding to each of the first candidate solutions;

[0043] The object determination unit is used to determine whether the target solution contains an object set composed of corresponding users of the candidate community.

[0044] The third aspect of the present application provides a computer program product, including computer-readable instructions. When the computer-readable instructions are executed on an electronic device, the electronic device implements the object set recognition method based on a non-dominated sorting genetic algorithm according to the first aspect or any implementation of the first aspect.

[0045] A fourth aspect of the present application provides an electronic device, comprising at least one processor and a memory connected to the processor, wherein:

[0046] The memory is used to store computer programs;

[0047] The processor is used to execute the computer program so that the electronic device can implement the object set recognition method based on the non-dominated sorting genetic algorithm of the above-mentioned first aspect or any implementation manner of the first aspect.

[0048] A fifth aspect of the present application provides a computer storage medium, which carries one or more computer programs. When the one or more computer programs are executed by an electronic device, the electronic device can implement the object set recognition method based on a non-dominated sorting genetic algorithm according to the above-mentioned first aspect or any implementation of the first aspect.

[0049] By means of the above technical solution, in an object set identification method and device based on a non-dominated sorting genetic algorithm provided by the present application, a first population including multiple first candidate solutions is obtained according to the attribute information of multiple users, and the users in each first candidate solution are divided into at least one candidate community. Based on this, the modularity and silhouette coefficient corresponding to each first candidate solution are obtained and the non-dominated hierarchy and crowding distance are obtained accordingly; if the number of iterations does not reach the target threshold, the number of iterations is first increased by 1, and then the genetic candidate solution corresponding to at least one first candidate solution is obtained according to the non-dominated hierarchy and crowding distance of each first candidate solution to obtain a second population; after selecting multiple second candidate solutions from the candidate solutions contained in the second population, the second candidate solutions are used as the first candidate solutions, and then the execution is returned to obtain the modularity and silhouette coefficient corresponding to each first candidate solution until the number of iterations reaches the target threshold, and then one or more candidate solutions with the smallest non-dominated hierarchy can be determined from the first candidate solutions as the target solution, and finally, it is determined whether there is an object set composed of corresponding users in the candidate community in the target solution. It can be seen that in this application, the non-dominated hierarchy and crowding distance of each candidate solution are obtained based on the modularity and silhouette coefficient. In this way, when looking for genetic solutions, the degree of aggregation between candidate communities, the compactness within the candidate communities, and the separation between candidate communities are taken into account. Therefore, the genetic solutions found can be more accurate. In this application, there is no need for experts to pre-label the training samples, saving a lot of manpower and physics. The accuracy of the target solution found can also be guaranteed through the design of modularity and silhouette coefficient, thereby improving the accuracy of object recognition. BRIEF DESCRIPTION OF THE DRAWINGS

[0050] The above and other features, advantages and aspects of the embodiments of the present disclosure will become more apparent with reference to the following detailed description in conjunction with the accompanying drawings. Throughout the accompanying drawings, the same or similar reference numerals represent the same or similar elements. It should be understood that the drawings are schematic and the originals and elements are not necessarily drawn to scale.

[0051] Figure 1A flowchart of an object set identification method based on a non-dominated sorting genetic algorithm provided in an embodiment of the present application;

[0052] Figure 2 This is an example diagram of the adjacency matrix in the embodiment of the present application;

[0053] Figure 3 This is an example diagram of a social network of a user in an embodiment of the present application;

[0054] Figure 4 This is an example diagram of obtaining the first population in the embodiments of the present application;

[0055] Figure 5 This is an example diagram of the Pareto front in the embodiment of the present application;

[0056] Figure 6 This is an example diagram of cross-adjacent users in an embodiment of the present application;

[0057] Figure 7 This is an example diagram of a mutated adjacent user in an embodiment of the present application;

[0058] Figure 8 A schematic diagram of the structure of an object set identification device based on a non-dominated sorting genetic algorithm provided in an embodiment of the present application;

[0059] Fig. 9 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application;

[0060] Fig.10 This is a flowchart for implementing object set recognition in an embodiment of the present application;

[0061] Fig.11 This is an example diagram of population iteration in an embodiment of the present application;

[0062] Fig.12 This is an example diagram of dividing users into communities in an embodiment of the present application. DETAILED DESCRIPTION

[0063] The following describes the embodiments of the present application in conjunction with the drawings in the embodiments of the present application. The terms used in the implementation method section of the present application are only used to explain the specific embodiments of the present application, and are not intended to limit the present application.

[0064] The embodiments of the present application are described below in conjunction with the accompanying drawings. Those skilled in the art will appreciate that, with the development of technology and the emergence of new scenarios, the technical solutions provided in the embodiments of the present application are also applicable to similar technical problems.

[0065] The terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and need not be used to describe a specific order or sequential order. It should be understood that the terms used in this way can be interchangeable under appropriate circumstances, which is only to describe the distinction mode adopted by the objects of the same attributes when describing in the embodiments of the present application. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, so that the process, method, system, product or equipment comprising a series of units need not be limited to those units, but may include other units that are not clearly listed or inherent to these processes, methods, products or equipment.

[0066] Reference Figure 1 , is a flowchart of an implementation of an object set recognition method based on a non-dominated sorting genetic algorithm provided in an embodiment of the present application, which method can be applied to electronic devices capable of data processing, such as computers, servers, etc. The technical solution in this embodiment is mainly used to improve the accuracy of object recognition.

[0067] Specifically, the method in this embodiment may include the following steps:

[0068] Step 101: Obtain a first population based on attribute information of multiple users.

[0069] The user's attribute information may include: information about the user on multiple target attributes, and the target attributes may include the user's account number, network address, telephone number and other attributes.

[0070] The first population may include multiple first candidate solutions, each of which includes all users, and the users in each first candidate solution are divided into at least one candidate community, each candidate community includes at least one user, and different first candidate solutions have at least one different candidate community.

[0071] The candidate communities are different and may include at least one of the following situations:

[0072] The candidate communities differ with respect to the users they include;

[0073] The association relationships between the candidate communities are different regarding the users they contain; the association relationships between users are related to the attribute information of the users.

[0074] It should be noted that in this embodiment, an undirected weighted graph can be used to represent a complex social network and stored in an adjacency matrix. The social network is the social network formed by users. The nodes in the undirected weighted graph of the social network represent users, and the weights between nodes represent the association between users. The larger the value, the closer the connection. In order to better measure the association between different users, this application represents each user as a vector, and each element in the vector is a target attribute of the user itself.

[0075] Specifically, step 101 can be implemented in the following manner:

[0076] First, based on the attribute information of each user, an adjacency matrix is ​​constructed. The adjacency matrix takes each user as a row and takes each user as an example. For example, 10 users: user 1 to user 10, such as Figure 2 As shown in , the matrix elements in the adjacency matrix represent the user similarity between two users; the user similarity can be represented by cosine similarity; then, according to the user similarity, at least one other user that meets the adjacency condition is selected for each user in turn to obtain the first population.

[0077] The adjacency relationship includes: the user similarity between users is greater than or equal to a similarity threshold, and the similarity threshold can be set according to business requirements.

[0078] In one implementation, user similarity can be obtained by formula (1):

[0079] w i,j =Cos(X i ,X j ) (1)

[0080] The user's account number, IP address, address, phone number and other information are used as the user's feature vector. X in formula (1) i represents the feature vector of user i, w i,j represents the cosine similarity between user i and user j. The larger the value, the closer the connection between user i and user j. Taking n users as an example, the adjacency matrix constructed by the user similarity between any two users is W n*n The weighted adjacency matrix of .

[0081] If the user similarity between users is greater than or equal to the similarity threshold, it indicates that the users are adjacent. Accordingly, the association relationship between users can be: the users are adjacent, or the users are not adjacent. The association relationship between the candidate communities is different with respect to the users included, which can be understood as: between two candidate communities, the same two users included are adjacent in one candidate community, but not in the other candidate community.

[0082] like Figure 3 As shown in , it is a schematic diagram of a weighted social network formed by n users. Each circle in the network represents a user. The line between two circles indicates that there is a connection between the two users. The numbers on the line between the two circles, such as 0.71, etc., indicate the cosine similarity between the two users, that is, the closeness of the connection. Based on this, in this embodiment, Figure 2 The architecture of the adjacency matrix shown in Figure 3 The adjacency matrix of n users is shown.

[0083] In one implementation, after the adjacency matrix is ​​constructed, an array for storing the association relationship between users in the first candidate solution can be created according to the matrix elements of the adjacency matrix, and each array corresponds to a first candidate solution. The array contains two rows, and each cell in the first row of the array is used to record each user, and each cell in the second row of the array is used to record the adjacent user corresponding to the user belonging to the same column in the first row. In the array, multiple users that meet the adjacency relationship are isolated from other users that do not meet the adjacency relationship, forming one or more candidate communities.

[0084] For example, Figure 4 As shown, in this embodiment, a tree-like representation method is used to create an array of the same size as the total number of nodes in the social network formed by the user, and then fill in the corresponding position of the node in the array with the number of the neighboring node in the candidate community to which the node belongs, that is, the community. Since the neighboring nodes of a node are not unique in the same community, the result of this representation method is not unique for the same division, thereby obtaining multiple first candidate solutions. Therefore, in this embodiment, the number of candidate communities can be automatically confirmed without manual setting. Secondly, the search space of candidate solutions in this embodiment is greatly reduced compared to the representation method based on labels (the corresponding position of the node in the array is filled with the community number of the node).

[0085] Take 10 users as an example. Figure 4 As shown in , in this embodiment, in the weighted social network corresponding to the adjacency matrix, according to the user similarity between any two users, the edges whose user similarity is less than the similarity threshold are removed to obtain the following Figure 4The social network shown on the left in the figure, then multiple arrays are created, the first row of each array records users 1 to 10, and there is a second row in the array, each user records another user that meets the adjacency condition in the second row. For example, in candidate solution 1, user 2 is adjacent to user 1, user 5 is adjacent to user 6, in candidate solution 2, user 2 is adjacent to user 3, user 5 is adjacent to user 10, and so on. Thus, each array corresponds to a first candidate solution: Array 1 corresponds to candidate solution 1, in which user 1, user 2 and user 3 form a candidate community, user 4, user 5, user 6 and user 7 form a candidate community, and user 8, user 9 and user 10 form a candidate community; Array 2 corresponds to candidate solution 2, in which user 1, user 2 and user 3 form a candidate community, user 4, user 5, user 6, user 7 and user 10 form a candidate community, and user 8 and user 9 form a candidate community.

[0086] Step 102: Obtain the modularity and silhouette coefficient corresponding to each first candidate solution.

[0087] The modularity represents the degree of aggregation between candidate communities in the first candidate solution, and the silhouette coefficient represents the compactness within each candidate community and the separation between candidate communities in the first candidate solution.

[0088] In one implementation, the modularity can be obtained by calculating the ratio between the number of adjacent relationships between users in the candidate community and the number of adjacent relationships between all users in the first candidate solution. Specifically, it can be obtained by formulas (2) and (3):

[0089]

[0090] Where m is the sum of the weights of all edges in the social network formed by the users in the first candidate solution (edges are formed by adjacency between users, that is, the user similarity is greater than or equal to the similarity threshold), that is, the sum of all matrix elements in the adjacency matrix; A is the adjacency matrix, A ij is the jth matrix element in the i-th row of A. k i is the degree of the i-th user. If the i-th user and the j-th user belong to the same candidate community, δ(c i ,c j )=1; if the i-th user and the j-th user belong to different candidate communities, then δ(c i ,c j )=0. The value range of modularity Q is [-0.5,1]. The higher the quality of the candidate community, the larger the corresponding modularity Q value.

[0091] In one implementation, the silhouette coefficient is an indicator for measuring the quality of the clustering result. In this embodiment, it can be obtained by formula (4):

[0092]

[0093] Among them, a(i) is the calculation of the i-th user to the j-th candidate community c where he is located. j The average distance of other users in the community, that is, the distance within the community; the smaller a(i), the more likely the i-th user should be classified into the candidate community. And b(i)=min{b1(i),b2(i),...,b m (i)} is the minimum distance among the average distances between the i-th user and each user in other candidate communities, that is, the inter-community distance. The calculation method of b(i) is similar to that of a(i), except that it is necessary to traverse all other candidate communities (non-c j ) selects the smallest value as the final result. When a(i)<b(i), that is, the distance within the community is smaller than the distance between communities, the clustering result is more compact, and s(i) is closer to 1; conversely, the looser the clustering result, the closer the value of s(i) is to -1. The silhouette coefficient S is the average value of s(i) for all users calculated according to the number of users. It can be seen that the value range of the silhouette coefficient S is [-1,1]. The larger the silhouette coefficient, the better the clustering effect.

[0094] In this application, modularity and silhouette coefficient are selected as the objective function, and the two are not positively correlated, that is, in the iterative process of optimizing a silhouette coefficient value, modularity will not be optimized synchronously, but will be restricted (and vice versa). This feature meets the selection requirements of the objective function of multi-objective optimization in this application.

[0095] Step 103: Obtain the non-dominated hierarchy and crowding distance of each first candidate solution according to the modularity and silhouette coefficient.

[0096] Specifically, in this embodiment, modularity and silhouette coefficient are used to determine the dominance relationship between the first candidate solutions, such as one first candidate solution is dominated by at least one other first candidate solution, and at least one other first candidate solution dominated by this first candidate solution, thereby determining the non-dominated level of each first candidate solution. For example, the non-dominated level of the first candidate solution that is not dominated by any other first candidate solution among all the first candidate solutions is the first level; the non-dominated level of the first candidate solution that is not dominated by any other first candidate solution among all the first candidate solutions after removing the first level is the second level; the non-dominated level of the first candidate solution that is not dominated by any other first candidate solution among all the first candidate solutions after removing the first level and the second level is the third level, and so on, to obtain the non-dominated level of each first candidate solution. Then, according to the non-dominated level of the first candidate solution, in the first candidate solutions of each level, the difference between the modularity and silhouette coefficient between each first candidate solution and other first candidate solutions in the same level, that is, the crowding distance, is determined.

[0097] For example, taking the first candidate solution C1 and the first candidate solution C2 as an example, if for any objective function, the objective function value of C1 is not inferior to the objective function value of C2, and there is at least one objective function whose objective function value of C1 is better than the objective function value of C2, then it can be determined that C1 dominates C2, or C2 is dominated by C1.

[0098] In one implementation, in this embodiment, the non-dominated hierarchy of each first candidate solution can be obtained in the following fast non-dominated sorting manner:

[0099] First, each first candidate solution is regarded as an individual to obtain a population P of size N, namely the first population.

[0100] Then, for each individual p in the population P, find the set of other individuals S dominated by the individual p p , and calculate the number of individuals np that dominate p.

[0101] Then, determine the value of np. If np is equal to 0, that is, no other individual in population P dominates individual p, then individual p belongs to the first level. In this way, find all individuals in population P that belong to the first level.

[0102] After that, we traverse each individual p in the first level in turn, and for all the individual sets S dominated by p p For each individual q in , nq=nq-1, which is equivalent to removing all individuals of the first level from the population P.

[0103] After that, if nq is equal to 0, that is, after removing the individuals in the first level, no other individuals dominate individual q, then individual q belongs to the second level. q , find all individuals with nq equal to 0 and divide them into the second level.

[0104] Finally, after finding all the individuals in the second level of the population, repeat the above process of finding the individuals in the second level based on the individuals in the first level, and so on, find the third level and the fourth level respectively, until all individuals are divided into the corresponding levels.

[0105] It should be noted that when the population P completes the fast non-dominated sort, all individuals are divided into corresponding levels, and the solutions corresponding to individuals in smaller levels (also called lower levels) (such as the first level, the second level, etc.) are better solutions. Individuals in the first level are non-dominated solutions, which means that in the entire population, no other individuals dominate the individuals in the first level. The final set of individuals in the first level of the population is called the Pareto frontier, which is the Pareto optimal solution.

[0106] In this embodiment, after the non-dominated level of each first candidate solution is determined by fast non-dominated sorting, each first candidate solution in the first population corresponds to a level. The calculation of the crowding distance is based on each level. In each level, the crowding distance refers to the difference in the objective function value (i.e., modularity and silhouette coefficient) between the current individual (i.e., candidate solution) and its adjacent individuals. Figure 5 As shown in , the black dots close to the coordinate axis constitute the individual set of the current level, while the gray dots on the original coordinate axis are the individual sets of other levels. The crowding distance can judge whether the distribution of different individuals on the Pareto front surface is uniform, which is an important link to ensure individual diversity. At each level, the calculation process of the crowding distance of the first candidate solution is as follows:

[0107] First, for each individual in population P (i.e. the first population), the initial crowding distance is 0.

[0108] Then, for each objective function value m (such as modularity and silhouette coefficient), assume that the set corresponding to the non-dominated solutions at each level is I, and the size of set I is l. Sort all individuals in set I according to the objective function value m, such as sorting from large to small according to the value of m. Let the crowding distance of the first and last individuals after sorting be infinite, that is, I[1] distance =I[l] distance =∞. Based on this, the crowding distance of all remaining individuals can be calculated according to formula (5):

[0109]

[0110] Where i is a value between 2 and l-1, I[i] distance represents the crowding distance of the i-th individual in the non-dominated solution set I of the current level. I[i+1].m represents the m-th objective function value of the i+1-th individual in the non-dominated solution set I of the current level (similar to I[i-1].m), and They respectively represent the maximum and minimum values ​​of the current objective function value m in the first population.

[0111] Step 104: Determine whether the number of iterations reaches the target threshold; if the number of iterations reaches the target threshold, execute step 105; if the number of iterations does not reach the target threshold, execute step 106.

[0112] The number of iterations can be represented by t, the initial value of t is 1, and t increases by 1 for each iteration. The target threshold can be set according to business needs.

[0113] Step 105 : From the first candidate solutions, determine one or more candidate solutions with the smallest non-dominated levels as target solutions, and execute step 109 .

[0114] Step 106: Increase the number of iterations by 1.

[0115] Step 107: Obtain a genetic candidate solution corresponding to at least one first candidate solution according to the non-dominated hierarchy and crowding distance of each first candidate solution to obtain a second population.

[0116] In this embodiment, at least one first candidate solution may be transformed according to the non-dominated hierarchy and crowding distance of each first candidate solution to obtain multiple genetic candidate solutions, and these genetic candidate solutions are merged with the first candidate solutions to obtain a second population.

[0117] In one implementation, in step 107, a candidate solution satisfying a preferred condition may be first determined from two arbitrarily selected first candidate solutions in the first population to obtain a plurality of initial candidate solutions; then, other users adjacent to at least one user between any initial candidate solutions may be exchanged to obtain a genetic candidate solution; finally, the genetic candidate solution may be merged with the first candidate solution to obtain a second population.

[0118] Among them, the preferred conditions may be: a small non-dominated level, and / or a large crowding distance. For example, multiple times in the first population, two first candidate solutions are randomly selected, and the candidate solution with a small non-dominated level is preferably selected as the initial candidate solution in the two first candidate solutions. If the non-dominated levels of the two first candidate solutions are the same, then the candidate solution with a large crowding distance is selected as the initial candidate solution. Based on this, among these initial candidate solutions, any two initial candidate solutions are cross-processed, that is, according to the exchange rule, the users adjacent to at least one of the users are exchanged to obtain a genetic candidate solution.

[0119] Furthermore, in step 107, before merging the genetic candidate solution with the first candidate solution, a random number may be generated for each user in at least one genetic candidate solution, and then, in response to the random number being less than or equal to a preset mutation probability, the user adjacent to the corresponding user in the genetic candidate solution is changed to other users adjacent to the user in the genetic candidate solution.

[0120] In one implementation, a binary tournament selection algorithm may be used as a selection operator in step 107, and the initial candidate solution is determined accordingly. Taking the number of the first candidate solution in the first population as N as an example, when selecting individuals from the first population, two individuals i and j are first randomly selected from the N individuals. If the non-dominated level of individual i is less than the non-dominated level of individual j, individual i is directly selected. If the non-dominated level of individual i is equal to the non-dominated level of individual j, and the crowding distance of individual i is greater than the crowding distance of j, individual i is selected, otherwise individual j is selected.

[0121] Then, after each of the two initial candidate solutions is determined, the genetic candidate solution can be obtained as follows:

[0122] like Figure 6As shown, in this embodiment, a uniform crossover algorithm is used as a crossover operator, and a genetic candidate solution is obtained accordingly. Specifically: according to the mask array Mask, such as an array in which a group of numbers is 0 or 1 and the number is known to the number of users, uniform crossover is performed for each gene position (i.e., user, that is, node in the previous text) in the two initial candidate solutions. For example, for each gene position, there is a randomly generated number 0 or 1 corresponding to it, thereby forming a Mask of the same length as the chromosome (i.e., the number of users). Based on this, if the value of the Mask corresponding to the gene position is 1, the user adjacent to Child1 (i.e., genetic candidate solution 1) on this gene position comes from Parent1 (i.e., one of the two initial candidate solutions), and the user adjacent to Child2 (i.e., genetic candidate solution 2) on this gene position comes from Parent2 (i.e., the other of the two initial candidate solutions). On the contrary, if the Mask value corresponding to the gene position is 0, the user adjacent to Child1 on this gene position comes from Parent2, and the user adjacent to Child2 on this gene position comes from Parent1. For example, the adjacent users of user 2 are exchanged between Parent1 and Parent2, the adjacent users of user 5 are exchanged between Parent1 and Parent2, the adjacent users of user 7 are exchanged between Parent1 and Parent2, the adjacent users of user 8 are exchanged between Parent1 and Parent2, and the adjacent users of user 10 are exchanged between Parent1 and Parent2, thereby obtaining the two genetic candidate solutions Child1 and Child2.

[0123] Furthermore, after obtaining the genetic candidate solution, the genetic candidate solution can be compiled in the following manner and then merged with the first candidate solution:

[0124] In this embodiment, a basic bit mutation method can be used, and each gene bit in the genetic candidate solution has a certain probability of being mutated. For example, in this embodiment, a mutation rate parameter, that is, the mutation probability, can be first determined, and then a random number will be generated for each gene bit of each genetic candidate solution. If this random number is less than or equal to the mutation probability, the gene bit in the current genetic candidate solution will be mutated, that is, another user is randomly selected from the neighbor user list of the current user (node) as the user adjacent to the gene bit. Figure 7 As shown in , the adjacent users of user 2 are mutated from user 3 to user 1, the adjacent users of user 5 are mutated from user 10 to user 6, the adjacent users of user 6 are mutated from user 7 to user 5, and the adjacent users of user 10 are mutated from user 5 to user 8, thereby obtaining a new genetic candidate solution.

[0125] Finally, the above selection, crossover and mutation process is repeated until the number of genetic candidate solutions obtained meets the requirements, such as being consistent with the number of the first population. It can be seen that in this embodiment, genetic candidate solutions are generated through selection, crossover and mutation, and the genetic candidate solutions (sub-populations) are merged with the first candidate solutions (parent populations), thereby expanding the search space, and then the crowding comparison operator (i.e., crowding distance) is used to jointly generate the next generation population, so that excellent individuals are retained during the evolution of the population.

[0126] Step 108: Select multiple second candidate solutions from the candidate solutions included in the second population; use the second candidate solutions as the first candidate solutions, return to step 102, and re-execute steps 102 to 108 until it is determined in step 104 that the number of iterations increases to the target threshold, and then execute step 105.

[0127] In one implementation, in step 108, the non-dominated hierarchy and crowding distance of each candidate solution included in the second population can be first obtained based on the modularity and silhouette coefficient corresponding to each candidate solution included in the second population; then, based on the non-dominated hierarchy and crowding distance of each candidate solution included in the second population, the second candidate solution that meets the screening condition is screened out from the second population.

[0128] The screening conditions may include: the non-dominated level of the second candidate solution in the second population is small, and / or the crowding distance of the second candidate solution in the second population is large. That is, in this embodiment, all candidate solutions in the second population are sorted in the order of non-dominated level from small to large and crowding distance from large to small, so as to select the second candidate solutions ranked in the top N, where N is the number of first candidate solutions in the first population.

[0129] It should be noted that the method for obtaining the modularity and silhouette coefficient corresponding to each candidate solution included in the second population in step 108 can refer to the implementation method for obtaining the modularity and silhouette coefficient of the first candidate solution in the previous text. The method for obtaining the non-dominated hierarchy and crowding distance of each candidate solution included in the second population in step 108 can refer to the implementation method for obtaining the non-dominated hierarchy and crowding distance of the first candidate solution in the previous text.

[0130] Step 109: Determine whether there is a candidate community in the target solution that is a set of objects composed of corresponding users.

[0131] In one implementation, in step 109 , according to the first rule, in response to whether there is a user in a candidate community in the target solution marked as an object identifier, it is determined whether there is a candidate community in the target solution as an object set composed of corresponding users.

[0132] For example, if user 1 is labeled as an object, then in the target solution, the users in the candidate community where user 1 is located are part of the object set, and the candidate community is the object set.

[0133] In another implementation, in step 109, the second rule may be used to directly determine an object set in the target solution that has a candidate community as the corresponding user group.

[0134] By means of the above technical solution, in an object set identification method based on a non-dominated sorting genetic algorithm provided by the present application, a first population including multiple first candidate solutions is obtained according to the attribute information of multiple users, and the users in each first candidate solution are divided into at least one candidate community. Based on this, the modularity and silhouette coefficient corresponding to each first candidate solution are obtained and the non-dominated hierarchy and crowding distance are obtained accordingly; if the number of iterations does not reach the target threshold, the number of iterations is first increased by 1, and then the genetic candidate solution corresponding to at least one first candidate solution is obtained according to the non-dominated hierarchy and crowding distance of each first candidate solution to obtain a second population; after selecting multiple second candidate solutions from the candidate solutions contained in the second population, the second candidate solutions are used as the first candidate solutions, and then the execution is returned to obtain the modularity and silhouette coefficient corresponding to each first candidate solution until the number of iterations reaches the target threshold, and then one or more candidate solutions with the smallest non-dominated hierarchy can be determined from the first candidate solutions as the target solution, and finally, it is determined whether there is an object set composed of corresponding users in the candidate community in the target solution. It can be seen that in this application, the non-dominated hierarchy and crowding distance of each candidate solution are obtained based on the modularity and silhouette coefficient. In this way, when looking for genetic solutions, not only the degree of aggregation between candidate communities, but also the compactness within the candidate communities and the separation between candidate communities are taken into account. Therefore, the genetic solutions found can be more accurate. In this application, there is no need for experts to pre-label the training samples, saving a lot of manpower and physics. The accuracy of the target solution found can also be guaranteed through the design of modularity and silhouette coefficient, thereby improving the accuracy of object set recognition.

[0135] The above describes an object set recognition method based on a non-dominated sorting genetic algorithm provided by an embodiment of the present application. The following describes a device for executing the object set recognition method based on a non-dominated sorting genetic algorithm.

[0136] See also Figure 8 , is a schematic diagram of the structure of an object set recognition device based on a non-dominated sorting genetic algorithm provided in an embodiment of the present application. The device can be applied to electronic devices capable of data processing, such as computers, servers, etc. The technical solution in this embodiment is mainly used to improve the accuracy of object set recognition.

[0137] Specifically, the device in this embodiment may include the following units:

[0138] The population obtaining unit 801 is configured to obtain a first population according to attribute information of a plurality of users, wherein the first population includes a plurality of first candidate solutions, each of the first candidate solutions includes all of the users, and the users in each of the first candidate solutions are divided into at least one candidate community, each of the candidate communities includes at least one user, and at least one of the candidate communities is different between different first candidate solutions;

[0139] A function value obtaining unit 802 is used to obtain a modularity and a silhouette coefficient corresponding to each of the first candidate solutions, wherein the modularity represents the degree of aggregation between the candidate communities in the first candidate solution, and the silhouette coefficient represents the compactness within each of the candidate communities and the separation between the candidate communities in the first candidate solution;

[0140] A candidate processing unit 803 is used to obtain a non-dominated hierarchy and a crowding distance of each of the first candidate solutions according to the modularity and the silhouette coefficient;

[0141] The iteration judgment unit 804 is used to judge whether the number of iterations reaches the target threshold; if the number of iterations reaches the target threshold, the target determination unit 805 is triggered; if the number of iterations does not reach the target threshold, the iteration processing unit 806 is triggered;

[0142] The target determination unit 805 is used to determine one or more candidate solutions with the smallest non-dominated hierarchy level from the first candidate solutions as target solutions, and trigger the object determination unit 807;

[0143] The iterative processing unit 806 is used to increase the number of iterations by 1, obtain a genetic candidate solution corresponding to at least one of the first candidate solutions according to the non-dominated hierarchy and the crowding distance of each of the first candidate solutions, so as to obtain a second population; select a plurality of second candidate solutions from the candidate solutions included in the second population, use the second candidate solutions as first candidate solutions, and return to execute the step of obtaining the modularity and silhouette coefficient corresponding to each of the first candidate solutions;

[0144] The object determination unit 807 is configured to determine whether the target solution includes an object set composed of corresponding users of the candidate community.

[0145] By means of the above technical solution, in an object set identification device based on a non-dominated sorting genetic algorithm provided by the present application, a first population including multiple first candidate solutions is obtained according to the attribute information of multiple users, and the users in each first candidate solution are divided into at least one candidate community. Based on this, the modularity and silhouette coefficient corresponding to each first candidate solution are obtained and the non-dominated hierarchy and crowding distance are obtained accordingly; if the number of iterations does not reach the target threshold, the number of iterations is first increased by 1, and then the genetic candidate solution corresponding to at least one first candidate solution is obtained according to the non-dominated hierarchy and crowding distance of each first candidate solution to obtain a second population; after selecting multiple second candidate solutions from the candidate solutions contained in the second population, the second candidate solutions are used as the first candidate solutions, and then the execution is returned to obtain the modularity and silhouette coefficient corresponding to each first candidate solution until the number of iterations reaches the target threshold, and then one or more candidate solutions with the smallest non-dominated hierarchy can be determined from the first candidate solutions as the target solution, and finally, it is determined whether there is an object set composed of corresponding users in the candidate community in the target solution. It can be seen that in this application, the non-dominated hierarchy and crowding distance of each candidate solution are obtained based on the modularity and silhouette coefficient. In this way, when looking for genetic solutions, not only the degree of aggregation between candidate communities, but also the compactness within the candidate communities and the separation between candidate communities are taken into account. Therefore, the genetic solutions found can be more accurate. In this application, there is no need for experts to pre-label the training samples, saving a lot of manpower and physics. The accuracy of the target solution found can also be guaranteed through the design of modularity and silhouette coefficient, thereby improving the accuracy of object set recognition.

[0146] In one implementation, when the iterative processing unit 806 obtains the genetic candidate solution corresponding to the first candidate solution according to the non-dominated hierarchy and the crowding distance of each first candidate solution to obtain the second population, it is specifically used to: determine a candidate solution that meets the preferred condition from any two selected first candidate solutions from the first population to obtain multiple initial candidate solutions; exchange other users adjacent to at least one of the users between any of the initial candidate solutions to obtain a genetic candidate solution; and merge the genetic candidate solution with the first candidate solution to obtain a second population.

[0147] Among them, before merging the genetic candidate solution with the first candidate solution to obtain the second population, the iterative processing unit 806 is also used to: generate a random number for each of the users in at least one of the genetic candidate solutions; in response to the random number being less than or equal to a preset mutation probability, change the user adjacent to the corresponding user in the genetic candidate solution.

[0148] In one implementation, when the iterative processing unit 806 selects multiple second candidate solutions from the candidate solutions included in the second population, it is specifically used to: obtain the non-dominated hierarchy and crowding distance of each candidate solution included in the second population according to the modularity and silhouette coefficient corresponding to each candidate solution included in the second population; and filter out the second candidate solutions that meet the filtering conditions from the second population according to the non-dominated hierarchy and crowding distance of each candidate solution included in the second population.

[0149] The screening conditions include: the non-dominated level of the second candidate solution in the second population is small, and / or the crowding distance of the second candidate solution in the second population is large.

[0150] In one implementation, the attribute information includes information on multiple target attributes; wherein the population acquisition unit 801 is specifically used to: construct an adjacency matrix based on the attribute information of each user, the adjacency matrix having each user as a row and each user as a column, and the matrix elements in the adjacency matrix representing the user similarity between two users; and select at least one other user that meets the adjacency condition for each user in turn based on the user similarity to obtain a first population.

[0151] The adjacency relationship includes: the user similarity between the users is greater than or equal to a similarity threshold.

[0152] In one implementation, the object determination unit 807 is specifically configured to: determine, according to a first rule, whether there is an object set consisting of the corresponding users in the candidate community in the target solution in response to whether there is an object identifier in the candidate community in the target solution; or, according to a second rule, determine whether there is an object set consisting of the corresponding users in the candidate community in the target solution.

[0153] In one implementation, the candidate communities are different, including at least one of the following:

[0154] The candidate communities are different from each other in terms of the users they contain;

[0155] The candidate communities have different association relationships between the users they contain; and the association relationships between the users are related to the attribute information of the users.

[0156] It should be noted that the specific implementation method of each unit in this embodiment can refer to the corresponding content in the previous text and will not be described in detail here.

[0157] An electronic device is also provided in an embodiment of the present application. The electronic device may include the following structure:

[0158] Memory, used to store computer programs and data generated by the operation of computer programs;

[0159] A processor is used to execute a computer program to implement any of the object set recognition methods based on a non-dominated sorting genetic algorithm provided in the embodiments of the present application described above.

[0160] refer to Fig. 9 As shown, it shows a schematic diagram of the structure of an electronic device suitable for implementing the embodiments of the present application. The electronic device in the embodiments of the present application may include but is not limited to fixed terminals such as mobile phones, notebook computers, PDAs (personal digital assistants), PADs (tablet computers), desktop computers, etc. Fig. 9 The electronic device shown is merely an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.

[0161] like Fig. 9 As shown, the electronic device may include a processing device (e.g., a central processing unit, a graphics processing unit, etc.) 901, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 902 or a program loaded from a storage device 908 into a random access memory (RAM) 903. When the electronic device is powered on, various programs and data required for the operation of the electronic device are also stored in the RAM 903. The processing device 901, the ROM 902, and the RAM 903 are connected to each other via a bus 904. An input / output (I / O) interface 905 is also connected to the bus 904.

[0162] Typically, the following devices may be connected to the I / O interface 905: an input device 906 including, for example, a touch screen, a touch pad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; an output device 907 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; a storage device 908 including, for example, a memory card, a hard disk, etc.; and a communication device 909. The communication device 909 may allow the electronic device to communicate with other devices wirelessly or by wire to exchange data. Although Fig. 9 An electronic device having various devices is shown, but it should be understood that it is not required to implement or possess all the devices shown. More or fewer devices may be implemented or possessed instead.

[0163] An embodiment of the present application also provides a computer program product including computer-readable instructions. When the computer-readable instructions are executed on an electronic device, the electronic device implements any object set recognition method based on a non-dominated sorting genetic algorithm provided in the embodiment of the present application.

[0164] A computer-readable storage medium is also provided in an embodiment of the present application. The storage medium carries one or more computer programs. When the one or more computer programs are executed by an electronic device, the electronic device can implement any object set recognition method based on a non-dominated sorting genetic algorithm provided in an embodiment of the present application.

[0165] Taking the financial industry as an example, this application aims to propose a method for identifying financial object sets based on a fast non-dominated sorting genetic algorithm. Through an efficient position-based representation method, the partition results of complex social networks are encoded, and based on the second generation NSGA-II (Non-Dominated Sorting Genetic Algorithm) algorithm of the non-dominated sorting genetic algorithm, the modularity and silhouette coefficient are selected as two major objective functions to screen the solution set layer by layer, and finally a set of optional partition result sets is obtained. The algorithm is based on a genetic algorithm and is a heuristic search algorithm. It does not require knowing the sample category in advance (unsupervised learning) or setting the number of communities in advance. It can effectively mine some closely related object sets, thereby achieving the purpose of object detection and providing strong protection for the financial security of the Agricultural Bank of China.

[0166] Specifically, this application uses an adjacency matrix to represent a complex network, and uses a position-based representation method to encode the network partition results. The NSGA-II algorithm framework is used, and modularity and silhouette coefficient are selected as two major objective functions to iteratively optimize the solution set, thereby screening out the final result set. Fig.10 As shown in , it is a flowchart for realizing object set recognition in an embodiment of the present application:

[0167] Step 1001: Initialization phase, randomly generate an initial population Q1 (i.e., the first population) with the number N, set the number of iterations t = 1, and set Q t As the parent population of generation t.

[0168] Step 1002: Calculate the values ​​of each sub-objective function such as modularity and silhouette coefficient for N individuals, and use fast non-dominated sorting to obtain the non-dominated hierarchy of each individual.

[0169] Step 1003: Calculate the crowding distance for each set of individuals in the non-dominated level.

[0170] Step 1004: At this point, each individual has two attributes, namely, non-dominated hierarchy and crowding distance. The initial parent population is selected (based on these two attributes), crossed over, and mutated to generate a population of N as the t-th generation subpopulation P. t (i.e., genetic candidate solutions), such as Fig.11 as shown in .

[0171] Step 1005: Merge the parent population and the child population of the tth generation to obtain a population of size 2N.

[0172] Step 1006: Perform steps 1002 and 1003 on the 2N individuals, and then select a total of N individuals from top to bottom as the parent population Q of the next generation according to the hierarchical relationship. t+1 If the sum of the number of individuals in the current level and the previous level is greater than the population size N, then the individuals with a larger crowding distance in the current level are selected to enter the next generation until the cumulative number of individuals reaches N.

[0173] Step 1007: Repeat steps 1002, 1003, 1004, 1005, and 1006 until t reaches the maximum number of iterations. The individuals corresponding to the first level (non-dominated level) in the final population are selected as the optimal solution (i.e., the target solution), which is the Pareto frontier.

[0174] Based on this, after obtaining the Pareto frontier, each solution in it is an optimal partition, such as Fig.12 As shown, Figure 3 The initial social network in is divided into three communities. Among them, the one in the upper right corner is the set of financial objects (and their related suspicious persons) identified in this embodiment. Since a single solution may have limitations, such as classifying individual potential financial objects into the community of normal users, thus missing them. In this embodiment, based on the user's attribute information and the existing positive samples (identified financial objects), combined with different solutions on the Pareto frontier surface, a comprehensive analysis is performed to identify the set of objects with suspicious behaviors to the maximum extent, with strong interpretability and accuracy. In the field of financial identification, it has great research significance and use value, and can further enhance the asset security of financial enterprises.

[0175] In general, a community detection algorithm based on a fast non-dominated sorting genetic algorithm is proposed in this embodiment for mining a set of financial objects. From the initial construction of the social network to the representation of the network partition, the operation of the genetic mechanism, and the selection of the objective function, the technical solutions are systematically explained. This algorithm is an efficient method that can ensure the quality and speed of the community partition results, and can keep the diversity of the optimal solution finally obtained.

[0176] Compared with the traditional algorithm, this embodiment has the following advantages:

[0177] (1) There is no need to know the correct category of the sample in advance;

[0178] (2) It can effectively handle the problem of imbalanced sample categories;

[0179] (3) There is no need to set the number of community divisions in advance;

[0180] (4) It can ensure the diversity of optimal solutions and their uniform distribution;

[0181] (5) High search efficiency;

[0182] (6) It has good interpretability;

[0183] In summary, the technical solution in this embodiment is a financial object identification solution with strong interpretability and accuracy.

[0184] It should also be noted that the device embodiments described above are merely schematic, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed over multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this embodiment. In addition, in the drawings of the device embodiments provided by the present application, the connection relationship between the modules indicates that there is a communication connection between them, which may be specifically implemented as one or more communication buses or signal lines.

[0185] Through the description of the above implementation mode, the technicians in the field can clearly understand that the present application can be implemented by means of software plus necessary general hardware, and of course, it can also be implemented by special hardware including special integrated circuits, special CPUs, special memories, special components, etc. In general, all functions completed by computer programs can be easily implemented by corresponding hardware, and the specific hardware structure used to implement the same function can also be various, such as analog circuits, digital circuits or special circuits. However, for the present application, software program implementation is a better implementation mode in more cases. Based on such an understanding, the technical solution of the present application is essentially or the part that contributes to the prior art can be embodied in the form of a software product, which is stored in a readable storage medium, such as a computer floppy disk, a U disk, a mobile hard disk, a ROM, a RAM, a disk or an optical disk, etc., including a number of instructions to enable a computer device (which can be a personal computer, a training device, or a network device, etc.) to execute the methods described in each embodiment of the present application.

[0186] In the above embodiments, all or part of the embodiments may be implemented by software, hardware, firmware or any combination thereof. When implemented by software, all or part of the embodiments may be implemented in the form of a computer program product.

[0187] The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions may be transmitted from a website site, a computer, a training device, or a data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website site, computer, training device, or data center. The computer-readable storage medium may be any available medium that a computer can store or a data storage device such as a training device, a data center, etc. that includes one or more available media integrations. The available medium may be a magnetic medium, (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state drive (SSD)), etc.

Claims

1. A method for identifying object sets based on a non-dominated sorting genetic algorithm, characterized in that: The method comprises: According to the attribute information of the plurality of users, a first population is obtained, wherein the first population includes a plurality of first candidate solutions, each of the first candidate solutions includes all the users, and the users in each of the first candidate solutions are divided into at least one candidate community, each of the candidate communities includes at least one user, and at least one of the candidate communities is different between different first candidate solutions; Obtaining a modularity and a silhouette coefficient corresponding to each of the first candidate solutions, wherein the modularity represents the degree of aggregation between the candidate communities in the first candidate solution, and the silhouette coefficient represents the compactness within each of the candidate communities in the first candidate solution and the separation between the candidate communities; Obtaining a non-dominated hierarchy and a crowding distance of each of the first candidate solutions according to the modularity and the silhouette coefficient; Determine whether the number of iterations reaches the target threshold; When the number of iterations reaches the target threshold, determining one or more candidate solutions with the smallest non-dominated hierarchy from the first candidate solutions as target solutions; In the case where the number of iterations does not reach the target threshold, the number of iterations is incremented by 1, and at least one genetic candidate solution corresponding to the first candidate solution is obtained according to the non-dominated hierarchy and the crowding distance of each of the first candidate solutions to obtain a second population; multiple second candidate solutions are selected from the candidate solutions included in the second population, and the second candidate solutions are used as first candidate solutions, and the step of obtaining the modularity and silhouette coefficient corresponding to each of the first candidate solutions is returned to be executed; It is determined whether the target solution includes an object set composed of corresponding users of the candidate community.

2. The method according to claim 1, characterized in that Obtaining a genetic candidate solution corresponding to each of the first candidate solutions according to the non-dominated hierarchy and the crowding distance of each of the first candidate solutions to obtain a second population, including: Determine a candidate solution that satisfies a preferred condition from any two of the first candidate solutions selected from the first population to obtain a plurality of initial candidate solutions; Exchanging other users adjacent to at least one of the users between any of the initial candidate solutions to obtain a genetic candidate solution; The genetic candidate solution is merged with the first candidate solution to obtain a second population.

3. The method according to claim 2, characterized in that Before merging the genetic candidate solution with the first candidate solution to obtain a second population, the method further includes: generating a random number for each of the users in at least one of the genetic candidate solutions; In response to the random number being less than or equal to a preset mutation probability, a user adjacent to the corresponding user in the genetic candidate solution is changed.

4. The method according to claim 1, characterized in that: A plurality of second candidate solutions are selected from the candidate solutions included in the second population, including: Obtaining a non-dominated hierarchy and a crowding distance of each candidate solution included in the second population according to the modularity and silhouette coefficient corresponding to each candidate solution included in the second population; According to the non-dominated hierarchy and the crowding distance of each candidate solution included in the second population, a second candidate solution that meets a screening condition is screened out from the second population.

5. The method according to claim 4, characterized in that The screening conditions include: the non-dominated level of the second candidate solution in the second population is small, and / or the crowding distance of the second candidate solution in the second population is large.

6. The method according to claim 1, characterized in that The attribute information includes information on multiple target attributes; wherein, obtaining a first population according to the attribute information of multiple users includes: According to the attribute information of each user, an adjacency matrix is ​​constructed, wherein each user is a row and each user is a column, and a matrix element in the adjacency matrix represents a user similarity between two users; At least one other user satisfying an adjacency condition is selected for each of the users in turn according to the user similarities to obtain a first population.

7. The method according to claim 6, characterized in that The adjacency relationship includes: the user similarity between the users is greater than or equal to a similarity threshold.

8. The method according to claim 1, characterized in that Determining whether the target solution includes the candidate community as a set of objects composed of corresponding users, including: According to the first rule, in response to whether the user is marked with an object identifier in the candidate community in the target solution, determining whether the candidate community in the target solution is an object set composed of corresponding users; or, According to the second rule, it is determined that in the target solution, there is a set of objects composed of users corresponding to the candidate community.

9. The method according to claim 1, characterized in that: The candidate communities are different and include at least one of the following: The candidate communities are different from each other in terms of the users they contain; The candidate communities have different association relationships between the users they contain; and the association relationships between the users are related to the attribute information of the users.

10. An object set recognition device based on non-dominated sorting genetic algorithm, characterized in that: The device comprises: a population obtaining unit, configured to obtain a first population according to attribute information of a plurality of users, wherein the first population includes a plurality of first candidate solutions, each of the first candidate solutions includes all of the users, and the users in each of the first candidate solutions are divided into at least one candidate community, each of the candidate communities includes at least one user, and at least one of the candidate communities is different between different first candidate solutions; a function value obtaining unit, configured to obtain a modularity and a silhouette coefficient corresponding to each of the first candidate solutions, wherein the modularity represents a degree of aggregation between the candidate communities in the first candidate solution, and the silhouette coefficient represents a compactness within each of the candidate communities and a degree of separation between the candidate communities in the first candidate solution; a candidate processing unit, configured to obtain a non-dominated hierarchy and a crowding distance of each of the first candidate solutions according to the modularity and the silhouette coefficient; An iteration judgment unit, used to judge whether the number of iterations reaches a target threshold; if the number of iterations reaches the target threshold, trigger the target determination unit; if the number of iterations does not reach the target threshold, trigger the iteration processing unit; The target determination unit is configured to determine, from among the first candidate solutions, one or more candidate solutions with the smallest non-dominated hierarchy as a target solution; The iterative processing unit is used to increase the number of iterations by 1, obtain at least one genetic candidate solution corresponding to the first candidate solution according to the non-dominated hierarchy and crowding distance of each of the first candidate solutions, so as to obtain a second population; select multiple second candidate solutions from the candidate solutions included in the second population, use the second candidate solutions as first candidate solutions, and return to execute the step of obtaining the modularity and silhouette coefficient corresponding to each of the first candidate solutions; The object determination unit is used to determine whether the target solution contains an object set composed of corresponding users of the candidate community.