Data processing method and device, equipment and storage medium

By constructing a relationship attribute graph and using feature embedding models and community membership models, and optimizing the number of communities with group sparse rules, the classification inaccuracy caused by unknown number of communities is solved, and the accuracy of community classification and data recommendation is improved.

CN120407907APending Publication Date: 2025-08-01TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410134952.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-01-30
Publication Date
2025-08-01

AI Technical Summary

Technical Problem

In the user community classification, the classification results are inaccurate due to the unknown number of communities in the user community classification, which affects the data recommendation effect.

Method used

By obtaining the social relationship relationship and application attribute characteristics of the business object, building a relationship attribute map, using feature embedding models and community membership models for community classification, and using group sparse rules to predict and update the number of communities during the optimization process, optimizing the community membership model.

Benefits of technology

It improves the accuracy of community classification, thereby improving the effectiveness of data recommendation and improving users' experience in business applications.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120407907A_ABST
    Figure CN120407907A_ABST
Patent Text Reader

Abstract

The invention discloses a data processing method and device, equipment and a storage medium, and the method comprises the steps: obtaining a social association relationship of N business objects in a business application, and obtaining an application attribute feature of each business object in the business application; calling a community membership model to carry out community classification processing on the N business objects based on the social association relationship and the application attribute characteristics, and obtaining a community membership relationship of the N business objects; and based on the social association relationship and the community membership relationship, optimizing the community membership model, and in the optimization process, predicting and updating the number of communities according to a group sparse rule to obtain an optimized community membership model. The method can be applied to various scenes such as the map field, the traffic field, the automatic driving field, the vehicle-mounted scene, the cloud technology, artificial intelligence, intelligent traffic and auxiliary driving, the community classification accuracy is improved, and the data recommendation effect is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and in particular, to a data processing method, apparatus, device, and storage medium. Background Art

[0002] In different business applications, to facilitate relevant recommendations to users using the business application, the business application usually classifies each user into communities, so as to make data recommendations to a user based on the users in the same community.

[0003] In the related art, the community classification of users is usually performed using a clustering algorithm (such as the K-means algorithm). In this way, it is necessary to specify the number of communities in advance as prior knowledge and generate as many community centroids as the number of communities. In this way, each user can be gradually assigned to the community where the closest centroid is located. However, in many business scenarios, the number of communities of users is unknown. Therefore, the community classification result obtained by the above method of specifying the number of communities in advance is not accurate enough. In the case of low accuracy of the community classification result, the effect of recommendation based on the community will also be greatly affected. It can be seen that there is an urgent need for a community classification method to improve the accuracy of community classification in business applications, and further improve the data recommendation effect in business applications. Summary of the Invention

[0004] Embodiments of this application provide a data processing method, apparatus, device, and storage medium, which can improve the accuracy of community classification in business applications, thereby improving the data recommendation effect.

[0005] On the one hand, an embodiment of this application provides a data processing method, including:

[0006] Obtain the social association relationships of N business objects in a business application, and obtain the application attribute features of each business object in the business application; N is a positive integer;

[0007] Based on the social association relationships and application attribute features, call a community membership model to perform community classification processing on the N business objects to obtain the community membership relationships of the N business objects; the community classification processing is used to classify each business object into each community indicated by the number of communities;

[0008] Based on the social association relationships and community membership relationships, optimize the community membership model, and during the optimization process, predict and update the number of communities according to the group sparsity rule to obtain an optimized community membership model; the optimized community membership model is used to perform community classification processing on the N business objects according to the predicted and updated number of communities.

[0009] On the one hand, an embodiment of this application provides a data processing apparatus, including:

[0010] An acquisition module, configured to acquire the social association relationships of N business objects in a business application, and acquire the application attribute characteristics of each business object in the business application; N is a positive integer;

[0011] A community classification module, configured to perform community classification processing on the N business objects by invoking a community membership model based on the social association relationships and application attribute characteristics, so as to obtain the community membership relationships of the N business objects; the community classification processing is used to classify each business object into each community indicated by the number of communities;

[0012] An optimization and update module, configured to optimize the community membership model based on the social association relationships and community membership relationships, and during the optimization process, predict and update the number of communities according to the group sparsity rule, so as to obtain an optimized community membership model; the optimized community membership model is used to perform community classification processing on the N business objects according to the predicted and updated number of communities.

[0013] In one embodiment, the specific implementation manner in which the community classification module performs community classification processing on the N business objects by invoking a community membership model based on the social association relationships and application attribute characteristics includes:

[0014] Based on the social association relationships of the N business objects in the business application and the application attribute characteristics of each business object in the business application, construct a relationship attribute graph; the relationship attribute graph records N object nodes and a connection edge set, one object node corresponds to one business object, and the node attribute characteristics of one object node are the application attribute characteristics of the corresponding business object; a connection edge in the connection edge set is used to connect two object nodes, and the two business objects corresponding to the two object nodes connected by one connection edge have a social association relationship in the business application;

[0015] Based on the relationship attribute graph, invoke a feature embedding model, and perform feature embedding calculation on the node attribute characteristics of each object node in the relationship attribute graph through the feature embedding model, so as to obtain an attribute embedding matrix including the node embedding characteristics of each object node;

[0016] Input the attribute embedding matrix into the community membership model, and perform community classification processing on the N business objects through the community membership model and the attribute embedding matrix, and output a community membership relationship matrix; the community membership relationship matrix records the probabilities that each object node is classified into each community indicated by the number of communities;

[0017] Determine the community to which the business object corresponding to each object node belongs among the communities indicated by the number of communities to which each object node in the community membership matrix is classified, and determine the community membership of the N business objects according to the communities to which each business object belongs.

[0018] In one embodiment, the specific implementation manner in which the community classification module performs feature embedding calculation on the node attribute features of each object node in the relationship attribute graph through the feature embedding model to obtain an attribute embedding matrix including the attribute embedding features of each object node includes:

[0019] Obtain the number of masks, and select Q object nodes to be masked among the N object nodes in the relationship attribute graph; Q is the number of masks;

[0020] In the relationship attribute graph, replace the node attribute features of the Q object nodes with learnable attribute masks, and determine the relationship attribute graph including the Q learnable attribute masks as the masked relationship attribute graph;

[0021] Through the encoder in the feature embedding model, perform encoding and embedding processing on the node attribute features of each object node in the masked relationship attribute graph to obtain the node embedding features corresponding to each object node;

[0022] Determine the matrix including the node embedding features corresponding to each object node as the attribute embedding matrix.

[0023] In one embodiment, the specific implementation manner in which the community classification module performs encoding and embedding processing on the node attribute features of each object node in the masked relationship attribute graph through the encoder in the feature embedding model to obtain the node embedding features corresponding to each object node includes:

[0024] Determine any one of the N object nodes as the first target object node;

[0025] In the encoder of the feature embedding model, perform feature fusion calculation on the node attribute features of the first target object node and the node attribute features of the neighbor nodes of the first target object node to obtain the node embedding features corresponding to the first target object node; the neighbor nodes of the first target object node refer to the object nodes in the masked relationship attribute graph that have connection edges with the first target object node.

[0026] In one embodiment, the specific implementation manner in which the community classification module classifies the N business objects through the community membership model and the attribute embedding matrix and outputs the community membership matrix includes:

[0027] Determine the adjacency matrix corresponding to the relational attribute graph based on the connection relationships between N object nodes in the relational attribute graph;

[0028] Perform normalization processing on the adjacency matrix to obtain the normalized adjacency matrix corresponding to the adjacency matrix;

[0029] Obtain the feature weight matrix of the graph convolution activation function and the community membership model;

[0030] Perform community classification operations on the normalized adjacency matrix, the attribute embedding matrix, and the feature weight matrix according to the operation rules indicated by the graph convolution activation function to obtain the community membership relationship matrix.

[0031] In one embodiment, after the community classification module performs community classification processing on N business objects through the community membership model and the attribute embedding matrix and outputs the community membership relationship matrix, the data processing device further includes:

[0032] An error determination module, configured to determine the error loss value of the feature embedding model according to the attribute embedding matrix including the node embedding features of each object node and the node attribute features of each object node;

[0033] A model optimization module, configured to optimize the feature embedding model according to the error loss value; the optimized feature embedding model is used to perform feature embedding calculations on the node attribute features of each object node in the relational attribute graph to obtain an optimized attribute embedding matrix including the optimized node embedding features of each object node.

[0034] In one embodiment, the specific implementation manner in which the error determination module determines the error loss value of the feature embedding model according to the attribute embedding matrix including the node embedding features of each object node and the node attribute features of each object node includes:

[0035] In the attribute embedding matrix, replace the node embedding features corresponding to Q object nodes with learnable embedding masks respectively, and determine the attribute embedding matrix including Q learnable embedding masks as the masked embedding matrix;

[0036] In the decoder of the feature embedding model, perform decoding and reconstruction processing on the masked embedding matrix to obtain the reconstructed attribute features corresponding to each object node respectively;

[0037] Determine any one of the N object nodes as the second target object node, and determine the object nodes other than the second target object node among the N object nodes as the remaining object nodes;

[0038] Calculate the error loss between the reconstructed attribute features corresponding to the second target object node and the node attribute features through the error loss function to obtain the first error loss value;

[0039] Calculate the error loss between the reconstructed attribute features corresponding to the remaining object nodes and the node attribute features through the error loss function to obtain the second error loss value;

[0040] Perform a summation operation on the first error loss value and the second error loss value to obtain the error loss value of the feature embedding model.

[0041] In one embodiment, the specific implementation manner of optimizing and updating the community membership model by the optimization and update module based on the social association relationship and the community membership relationship includes:

[0042] Determine the relationship optimization loss value corresponding to each business object according to the social association relationship and the community membership relationship of the N business objects in the business application;

[0043] Perform a summation process on the relationship optimization loss values corresponding to the N business objects respectively to obtain the membership relationship optimization loss value corresponding to the community membership model;

[0044] Optimize the community membership model through the membership relationship optimization loss value corresponding to the community membership model.

[0045] In one embodiment, the community membership relationship is determined according to the community membership relationship matrix output by the community membership model, and the community membership relationship matrix records the probabilities of each business object being classified into each community indicated by the number of communities;

[0046] The specific implementation manner of the optimization and update module to determine the relationship optimization loss value corresponding to each business object according to the social association relationship and the community membership relationship of the N business objects in the business application includes:

[0047] Determine any one of the N business objects as the target business object;

[0048] Based on the social association relationship of the N business objects in the business application, determine the first paired object and the second paired object of the target business object among the N business objects; the first paired object refers to the business object among the N business objects that has a social association relationship with the target business object, and the second paired object refers to the business object among the N business objects that has no social association relationship with the target business object;

[0049] Perform probability fusion on the probabilities of the target business object being classified into each community in the community membership relationship matrix, the probabilities of the first paired object being classified into each community in the community membership relationship matrix, and the probabilities of the second paired object being classified into each community in the community membership relationship matrix respectively to obtain the first fusion probability vector corresponding to the target business object, the second fusion probability vector corresponding to the first paired object, and the third fusion probability vector corresponding to the second paired object;

[0050] By means of the membership relationship optimization function, calculate the first vector inner product of the first fusion probability and the second fusion probability, and the second vector inner product of the first fusion probability and the third fusion probability;

[0051] Determine the inner product difference between the first vector inner product and the second vector inner product to obtain the relationship optimization loss value corresponding to the target service object.

[0052] In one embodiment, the group sparsity rule includes a norm constraint function, and the norm constraint function is used to perform column sparsity constraint processing on a matrix; the number of communities is determined by the number of matrix columns of the feature weight matrix in the community membership model;

[0053] The specific implementation manner in which the optimization update module predicts and updates the number of communities according to the group sparsity rule includes:

[0054] By means of the norm constraint function, perform column sparsity constraint processing on the number of matrix columns of the feature weight matrix of the community membership model to obtain a column-sparse weight matrix;

[0055] Update the number of communities according to the number of matrix columns of the column-sparse weight matrix.

[0056] In one embodiment, after the optimization update module obtains the optimized community membership model, the data processing device further includes:

[0057] A recommendation module, configured to call the optimized community membership model to perform community classification processing on N service objects according to the predicted and updated number of communities to obtain the optimized community membership relationship of the N service objects;

[0058] The recommendation module is further configured to determine the community to which each service object belongs according to the optimized community membership relationship;

[0059] The recommendation module is further configured to obtain a recommended service object for a to-be-recommended task among the N service objects;

[0060] The recommendation module is further configured to perform task recommendation for the recommended service object according to the community to which the recommended service object belongs.

[0061] In one embodiment, the specific implementation manner in which the recommendation module performs task recommendation for the recommended service object according to the community to which the recommended service object belongs includes:

[0062] Determine the business objects with interaction tendency of the recommended business object as the business objects other than the recommended business object in the community to which the recommended business object belongs;

[0063] Obtain the historical tasks executed by the business objects with interaction tendency and recommend the historical tasks to the recommended business object.

[0064] An embodiment of the present application provides a computer device on the one hand, including: a processor and a memory;

[0065] The memory stores a computer program, and when the computer program is executed by the processor, the processor is caused to execute the method in the embodiment of the present application.

[0066] An embodiment of the present application provides a computer-readable storage medium on the one hand. The computer-readable storage medium stores a computer program, and the computer program includes program instructions. When the program instructions are executed by the processor, the method in the embodiment of the present application is executed.

[0067] One aspect of the present application provides a computer program product. The computer program product includes a computer program, and the computer program is stored in a computer-readable storage medium. The processor of the computer device reads the computer program from the computer-readable storage medium, and the processor executes the computer program, so that the computer device executes the method provided in one aspect of the embodiment of the present application.

[0068] In an embodiment of the present application, an adaptive generative community classification scheme for business applications is provided. While classifying business objects in a business application into communities, the number of unknown communities is predicted and estimated. In this way, the model can predict the number of communities and the community membership relationship under the premise of an unknown number of communities. Specifically, this scheme needs to be based on the social association relationships of each business object in the business application and the application attribute characteristics of each business object in the business application. After obtaining the social association relationships of N business objects in the business application and the application attribute characteristics of each business object, based on the social association relationships and application attribute characteristics, a community membership model can be used to classify these business objects into communities to obtain their community membership relationships. Then, through the social association relationships and the obtained community membership relationships, the community membership model can be optimized. At the same time of optimization, a group sparse rule can be used to predict and update the number of communities to obtain an optimized community membership model. The optimized community membership model can then re-classify the business objects according to the predicted and updated number of communities to obtain a more accurate community membership relationship. Among them, the group sparse rule in the present application refers to a rule that can gradually search and detect an unknown value. Through the group sparse rule, the number of communities can be adaptively detected and updated. In this way, this scheme can optimize the community membership model through the social association relationships and community membership relationships to improve its community classification ability, thereby improving the accuracy of community classification. At the same time, this scheme can also gradually update the unknown number of communities through the group sparse rule. As a result, the model can perform community classification processing based on the updated number of communities with high accuracy, which can further improve the community classification ability of the model, thereby improving the accuracy of community classification. When the community classification result has high accuracy, different data can be recommended to each business object based on the community classification result, and the data recommendation effect can be optimized. In summary, the present application can improve the accuracy of community classification in business applications, thereby improving the data recommendation effect. BRIEF DESCRIPTION OF THE DRAWINGS

[0069] In order to more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the following will briefly introduce the drawings required for the description of the embodiments or the prior art. Obviously, the following drawings are only some embodiments of the present invention. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.

[0070] Figure 1 It is a schematic diagram of the architecture of a system for adaptive generative community detection provided by an exemplary embodiment of the present application;

[0071] Figure 2It is a schematic diagram of a scenario provided by an embodiment of the present application;

[0072] Figure 3 It is a schematic flowchart of a data processing method provided by an exemplary embodiment of the present application;

[0073] Figure 4 It is a schematic flowchart of optimizing a feature embedding model provided by an embodiment of the present application;

[0074] Figure 5 It is a schematic diagram of determining an attribute reconstruction loss value for masked attribute reconstruction provided by an embodiment of the present application;

[0075] Figure 6 It is a logical architecture diagram of an adaptive community detection scheme provided by an embodiment of the present application;

[0076] Figure 7 It is a schematic structural diagram of a data processing device provided by an embodiment of the present application;

[0077] Figure 8 It is a schematic structural diagram of a computer device provided by an embodiment of the present application. Detailed implementation manners

[0078] Next, the technical solutions in the embodiments of the present application will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present application without creative efforts shall fall within the protection scope of the present application.

[0079] The embodiments of the present application relate to artificial intelligence and related technologies. For ease of understanding, the following will first briefly describe artificial intelligence and related technical terms and concepts.

[0080] Artificial Intelligence (AI)

[0081] Artificial intelligence is the theory, method, technology, and application system that uses digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, perceive the environment, acquire knowledge, and use knowledge to obtain the best results. Artificial intelligence technology is a comprehensive discipline, involving a wide range of fields, including both hardware-level technologies and software-level technologies. The basic technologies of artificial intelligence generally include technologies such as sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, big data processing technology, operation / interaction systems, and mechatronics. The software technologies of artificial intelligence mainly include several major directions such as computer vision technology, speech processing technology, natural language processing technology, and machine learning / deep learning.

[0082] Further, the embodiments of the present application are mainly related to Machine Learning (ML) in artificial intelligence technology. Among them: Machine learning is an interdisciplinary subject involving multiple fields, including probability theory, statistics, approximation theory, convex analysis, algorithm complexity theory, and other disciplines. Machine learning specifically studies how computers simulate or implement human learning behaviors to acquire new knowledge or skills, and reorganize the existing knowledge structure to continuously improve their own performance. Machine learning is the core of artificial intelligence and the fundamental way to make computers intelligent, and its applications cover all fields of artificial intelligence. Machine learning and deep learning usually include technologies such as artificial neural networks, belief networks, reinforcement learning, transfer learning, inductive learning, and formal teaching learning.

[0083] In the embodiments of the present application, the machine learning technology can be specifically applied to model training. For example, it can be specifically applied to the training of a community membership model or a feature embedding model. Among them, the feature embedding model can be used to perform feature embedding processing on the application attribute features of different business objects (a business object can refer to a user's account in a business application, and one business object can correspond to one user) in a business application. For example, the application attribute features of a business object in a business application can vary based on the different business applications. For example, when the business application is a game application, the application attribute features can refer to the game role preference attributes, game match preference attributes, etc. of the business object; when the business application is a video application, the application attribute features can refer to video type viewing attributes, video duration attributes, host viewing attributes, and so on) to obtain the attribute embedding features of different business objects; based on the attribute embedding features obtained by the feature embedding model, the community membership model performs community classification processing on each business object to cluster different business objects and obtain different communities. By adopting the machine learning method to train and learn the feature embedding model and the community membership model, the attribute embedding features obtained by the feature embedding model can become deeper and more reasonable, and the community classification results output by the community membership model can become more accurate and reasonable.

[0084] In practical applications, to facilitate data recommendation to users of business applications, business applications usually utilize some application attribute features corresponding to the accounts of users in the business applications to classify each account into communities. Then, based on the community where the user account is located, certain business data is recommended to the user account. Among them, for the account of a user in a business application, this application can be referred to as a business object. That is to say, the business object in this application can refer to the account of a certain user in the business application. Since all the relevant business data generated by each account in the business application is generated by the user's operations, the business object can actually also refer to the user. Taking the business application as a game application as an example, in the game application, the application attribute features of each business object (that is, game attribute features, such as game historical matches, game character preferences, game combat power information, etc.) can be used to classify each business object into communities to obtain different communities, and each community contains one or more business objects. In this way, the game application can recommend game-related data to the business object according to the community where the business object is located. For example, for a certain business object a, the community it belongs to is community LH. When business object a has a need to execute a certain team dungeon task, the game application can obtain the community LH where business object a is located, and obtain business object b that has the need to execute this team dungeon task from this community LH. Then, the game application can recommend business object b to business object a as the team partner of business object a. Since business object a and business object b belong to the same community, it can be seen that the gameplay preferences of business object a and business object b in the game application are relatively similar, so the probability of successful teaming between business object a and business object b is relatively high. In traditional technologies, the method of classifying each business object in a business application into communities usually adopts the method of deep graph clustering. Specifically, it means that after using a graph neural network to perform embedding calculation on the application attribute features of each business object to obtain attribute embedding features, a clustering algorithm (such as the K-means algorithm) is used to cluster each attribute embedding feature, thereby clustering each business object into different communities. Among them, the clustering algorithm needs to specify a number of communities in advance as prior knowledge. In this way, the clustering algorithm can generate as many community centroids (community centers) as the number of communities, and then, the attribute embedding features of each business object can be used to assign each business object to the community where the nearest community centroid is located to complete the final clustering to obtain communities containing different business objects.

[0085] It should be understood that since the number of user communities is unknown in many business scenarios, for the above-mentioned method of clustering users by the clustering algorithm, the pre-specified number of communities does not adapt to the specific business scenario. The communities obtained by clustering with the pre-specified number of communities are also inaccurate. In the case where the community clustering result is inaccurate, the effect of data recommendation based on each community will also be reduced, affecting the user experience.

[0086] To improve the accuracy of community classification of business objects in business applications and optimize the data recommendation effect of business applications, this application provides an adaptive generative community classification scheme for business applications, which can solve the limitations of traditional deep graph clustering, introduce the detection of an unknown number of communities, be able to adaptively discover the number of detected communities, and classify business objects with close social association relationships and similar application attributes into the same community, so as to facilitate the inductive analysis of groups of business objects, or facilitate the recommendation of teaming-up friends to business objects, and improve the usage experience of business objects in business applications. Among them, the scheme for community classification of business objects in business applications involved in this scheme can at least include three consecutive steps: 1. First, the social association relationships between N business objects in the business application can be obtained, and the application attribute characteristics of each business object in the business application can be obtained; it should be noted that the social association relationships in the business application can be specifically defined based on the business application. For example, when the business application is a game application, the social association relationship can refer to the friendship relationship between business objects. If there is a friendship between two business objects, then it can be considered that there is a social association relationship between these two business objects; when the business application is a short video application, the social association relationship can refer to the follow relationship of mutual attention. If two business objects are mutually followed, then it can be considered that there is a social association relationship between these two business objects; 2. After obtaining the social association relationships and application attribute characteristics, the community membership model can be called to perform community classification processing on N business objects. Among them, the community classification processing is mainly used to classify each business object into different communities indicated by the number of communities. Through community classification, each business object can be classified into a certain community, and based on the communities to which each business object belongs, the community membership relationships of N business objects can be obtained; 3. Further, based on the above social association relationships and the community membership relationships, an error value can be determined (the social association relationships can be used as the true labels, and the community membership relationships can be used as the relationship prediction values of the community membership model. An error value can be obtained through the true labels and the relationship prediction values). Based on this error value, the community membership model can be optimized. And during the optimization process, this application can synchronously perform adaptive prediction and update on the number of communities according to the group sparsity rule. In this way, through the group sparsity rule, the number of communities can be gradually updated to a value adapted to N business applications, and the predicted and updated number of communities can be used as a reference data for the community membership model to perform community classification processing. The optimized community membership model can perform community classification processing on N business objects again according to the predicted and updated number of communities, and thus N business objects can be reclassified into each community indicated by the updated number of communities to obtain a new community membership relationship.

[0087] For example, taking a game application as a business application example, N business objects can refer to 100 players in the game application. The social association relationship among N business objects in the business application can refer to the friendship relationship among 100 players. The application attribute characteristics of each business object in the business application can refer to the game attribute characteristics of each player in the game application. After obtaining the friendship relationship of 100 players and the game attribute characteristics of each player, through the community membership model, based on this social association relationship and the game attribute characteristics of each player, the 100 players can be classified into communities on the basis of an initial number of communities, so as to group players with similar game attributes or relatively close friendship relationships into the same community. Through the communities to which each player belongs, a community membership relationship can be obtained (this community membership relationship can indicate which community any player is classified into); then, in order to optimize the community classification result, the social association relationship and the community membership relationship can be used to optimize the community membership model, and at the same time, the group sparsity principle can be used to predict and update the initial number of communities, so as to adaptively detect the most reasonable number of communities. In this way, the optimized community membership model can re-classify the 100 players according to a more reasonable number of communities to obtain a more accurate community membership relationship.

[0088] It can be seen that the adaptive generative community detection solution provided by the embodiments of this application can jointly model the social association relationship and application attribute characteristics of business objects in a business application, without the need to pre-specify the number of communities, and can adaptively merge business objects with similar attributes or communities. For business objects without a social association relationship (such as without a friendship relationship), this solution can also be used for adaptive merging, which can effectively improve the accuracy of community classification. Then, when the community classification result has a high accuracy, data recommendation processing can be performed on business objects based on each classified community, improving the data recommendation effect and enhancing the user experience in the business application.

[0089] The adaptive generative community detection solution provided by the embodiments of this application can be applied to application scenarios that require community classification, including but not limited to: short video push scenarios, video playback scenarios (which can be used for scenarios of watching TV dramas, movies, variety shows), and game scenarios. Among them:

[0090] The short video push scenario can refer to a scenario of continuously pushing video data to users. Users can request to update and display the next video data by performing an operation of pulling video data (such as swiping the video display interface of a terminal device). Then, in the short video push scenario, users can continuously perform the operation of pulling video data to continuously refresh and view different video data.

[0091] A video playback scenario can refer to a scenario where a user watches video data such as a TV drama, a movie, or a variety show on a certain video playback platform.

[0092] A game scenario can refer to a scenario where a user plays an immersive game through a game application deployed on a terminal device.

[0093] In summary, the adaptive generative community detection solution provided by the embodiments of the present application can jointly model the social association relationships and application attribute features of business objects in a business application, without the need to pre-specify the number of communities, and adaptively merge business objects or communities with similar attributes, which can effectively improve the accuracy of community classification and, to a certain extent, effectively improve the business coverage (such as expanding the applicable scenarios).

[0094] It should be noted that the above-mentioned several application scenarios are only examples and will not limit the application scenarios applicable to the adaptive generative community detection solution provided by the embodiments of the present application.

[0095] Furthermore, the adaptive generative community detection solution provided by the embodiments of the present application can be executed by a computer device, which can include a terminal or a server, or both a terminal and a server. To facilitate understanding of the adaptive generative community detection solution provided by the embodiments of the present application, the following Figure 1 introduces the application scenarios involved in the embodiments of the present application with reference to the Figure 1 adaptive generative community detection system shown; where Figure 1 is a schematic architecture diagram of a system for adaptive generative community detection provided by an exemplary embodiment of the present application, as shown in

[0096] 1) The terminal 101 can include the terminal device used by the user. Of course, according to the different application scenarios and fields to which the present solution is applied, the terminals providing the solution of the embodiments of the present application are different. The terminal device can include, but is not limited to: a smart phone (such as a smart phone deployed with the Android system or a smart phone deployed with the Internetworking Operating System (IOS)), a tablet computer, a portable personal computer, a Mobile Internet Device (MID), a vehicle-mounted device, a head-mounted device, a smart home, and a smart voice interaction device, etc. The embodiments of the present application do not limit the type of the terminal device, which is hereby explained.

[0097] For example, in the scenario of short video push, the terminal device can be a smart phone; that is to say, in this implementation manner, the solution provided by the embodiments of the present application can be deployed on the smart phone; when the user uses the short video push application on the smart phone, the smart phone obtains all the social association relationships (such as the mutual following relationship) of the users who use the short video push application in the short video push application, and the application attribute characteristics of each user in the short video push application; then, the smart phone predicts the number of communities and the community membership relationships of the users with these communities according to the above social association relationships and application attribute characteristics. Finally, the smart phone can recommend friends or video data for the user based on the community where the user is located. Another example is that in the intelligent vehicle scenario, the application program deployed with the solution provided by the embodiments of the present application is a vehicle-mounted application program; the types of the vehicle-mounted application program can include but are not limited to: music, video, or games, etc.

[0098] Among them, an application program can refer to a computer program for completing one or more specific tasks; classifying the application program according to different dimensions (such as the running mode, function, etc.) of the application program, the types of the same application program in different dimensions can be obtained. For example: classified according to the running mode of the application program, the application program can include but are not limited to: the client installed in the terminal, the applet that can be used without downloading and installing (as a subroutine of the client), the World Wide Web (Web) application program opened through the browser, etc. Another example is: classified according to the functional type of the application program, the application program can include but are not limited to: Instant Messaging (IM) application programs, content interaction application programs, audio application programs, or video application programs, etc. Among them, the instant messaging application program refers to an application program for instant communication messages and social interaction based on the Internet, and the instant messaging application program can include but are not limited to: application programs with communication functions, map application programs with interaction functions, game application programs, etc. The content interaction application program refers to an application program that can realize content interaction, such as a sharing platform, personal space, and news application programs. The audio application program refers to an application program that realizes audio functions based on the Internet, and the audio application program can include but are not limited to: music application programs with music playing and editing capabilities, radio application programs with radio playing capabilities, or live broadcast application programs with live broadcast capabilities, etc. The video application program refers to an application program that can play pictures, and the video application program can include but are not limited to: application programs with short videos (the video length is often short, such as a few seconds or a few minutes, etc.) (such as short video push application programs), application programs with long videos (such as videos with a long playing time similar to movies or TV dramas), etc.

[0099] Of course, the solution provided by the embodiments of the present application can be directly deployed on a device (such as a smart phone) or outside an application as described above, or can be deployed in a device or an application in the form of a plug-in. The embodiments of the present application do not limit the carrier of the deployment solution.

[0100] 2) The server 102 can be the server corresponding to the terminal, and is used to interact with the terminal to provide computing and application service support for the terminal. Specifically, the server is the background server corresponding to the application deployed in the terminal, and is used to interact with the terminal to provide computing and application servers for the application. Among them, the server 102 can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, Content Delivery Network (CDN), and big data and artificial intelligence platforms.

[0101] Among them, the terminal 101 and the server 102 can be directly or indirectly connected through wired or wireless communication methods, and the present application does not limit this. In addition, the embodiments of the present application do not limit the number of terminals and servers; in Figure 1 it is only an example that the numbers of both the terminal 101 and the server 102 are single, and in actual applications, it may include multiple servers with a distributed distribution, which is specifically stated here.

[0102] The following Figure 1 shows the general process of the community adaptive detection solution in the application scenario in combination with the system. In specific implementation, first, when a user runs a certain business application on the terminal, for the relevant operations performed in the business application, the terminal can convert and calculate them to obtain the application attribute characteristics of the user in the business application; and the server corresponding to the terminal can collect the social association relationships and application attribute characteristics of each user in the business application; then, the server can predict the community numbers and community membership relationships of each user based on the social association relationships and application attribute characteristics. Then, when data needs to be recommended to a certain user, data can be recommended to the user through the community to which the user belongs.

[0103] Based on the above-described solution and system architecture, the following points need to be further explained:

[0104] ① As mentioned above in the embodiments of the present application Figure 1The system shown is for more clearly illustrating the technical solution of the embodiment of the present application, and does not constitute a limitation to the technical solution provided by the embodiment of the present application. As known to those of ordinary skill in the art, with the evolution of the system architecture and the emergence of new business scenarios, the technical solution provided by the embodiment of the present application is equally applicable to similar technical problems. For example, the above takes the execution subject of the embodiment of the present application, "computer device", including a terminal and a server as an example, that is, the solution provided by the embodiment of the present application is jointly executed by the terminal and the server, and an application scenario of this solution is introduced; it should be understood that in actual applications, the computer device can also be a terminal or a server, that is to say, it supports the solution provided by the embodiment of the present application to be executed independently by the terminal or the server.

[0105] ② The embodiment of the present application supports using a model with community classification capabilities (such as a feature co-action model (Co-Action Network, CAN) including a graph convolutional neural network (Graph Convolutional Networks, GCN), which the present application calls a community membership model) to implement the community adaptive detection solution described above. Specifically, the present application can use the number of matrix columns of the two-dimensional weight matrix in the model as the number of communities. In this way, during the process of optimizing the model by means of machine learning (such as reinforcement learning), the two-dimensional weight matrix can be processed by group sparsity in synchronization using the principle of group sparsity. Through the group sparsity of the two-dimensional weight matrix, the number of communities can be continuously updated, so that the number of communities can be more reasonable and accurate, and the results output by the model can also be more accurate. The above model can be deployed in a computer device; in this way, when the computer device needs to perform community classification processing on business applications, the model can be directly called, and the model can simultaneously predict the number of communities and the community membership relationship. Among them, if the computer device used to execute the solution provided by the embodiment of the present application is a terminal, then the model can be deployed in the terminal. If the computer device used to execute the solution provided by the embodiment of the present application is a server, then the model is deployed in the server; in this case, the social association relationship and application attribute features used by the user are transmitted to the server for prediction processing of the number of communities and the community membership relationship.

[0106] ③ In the embodiment of the present application, the collection and processing of relevant data should be strictly in accordance with the requirements of relevant laws and regulations. Obtaining personal information requires the informed consent of the personal subject (or having a legal basis for information acquisition), and subsequent data use and processing behaviors should be carried out within the scope authorized by laws and regulations and the personal information subject. For example, when the embodiment of the present application is applied to a specific product or technology, such as obtaining the application attribute features and social association relationships of users, the permission or consent of the users needs to be obtained, and the collection, use, and processing of relevant data (such as community classification, data recommendation, etc.) need to comply with the relevant laws, regulations, and standards of the relevant region.

[0107] Based on the above-described solution, for the convenience of understanding its application scenario, please also refer to Figure 2 , Figure 2 which is a schematic diagram of a scenario provided by an embodiment of the present application. Among them, as Figure 2 shown, the scenario is described by taking a business application as a game application as an example. In the game scenario as Figure 2 shown, the server corresponding to the game application can obtain the friendship relationships (i.e., social association relationships) of each business object (i.e., the accounts of users in the game application, which can be understood as players) in the game application, and the game attribute characteristics of each business object in the game application; then, the server can simultaneously predict the number of communities and the community membership relationships through the community membership model, obtain the community labels of each business object (the community labels can be used to represent which community the business object belongs to), and then, the server can perform circle recommendations or friend recommendations in the game application for the business objects based on the community labels of the business objects. Among them, the circle recommendation can be to recommend a circle corresponding to a certain gameplay to a business object, and the friend recommendation can be to recommend another business object to a certain business object to form a team to execute a certain game task or become friends. Taking the example of recommending a circle to a business object through the community label of the business object, as Figure 2 shown, assume that the user 20a corresponding to the business object 20a enters the circle recommendation interface 2001 by performing a series of operations. In this circle recommendation interface 2001, the user 20a can search for this circle by entering the name of the circle that the user wants to enter in the search box. At the same time, different gameplays are displayed in the circle recommendation interface 2001 by the terminal, and the user 20a can trigger a certain gameplay to view the circles under this gameplay. For example, the "Gang Gossip" gameplay, "Martial Arts Secrets" gameplay, "Script Guide" gameplay, "Brewing Plum Wine with Green Plums" gameplay, and "Eight Wastelands Beauty" gameplay are displayed in the circle recommendation interface 2001, and an "All Circles" control is also displayed. The user 20a can view the circles under a certain gameplay by triggering an operation on any gameplay, or the user 20a can also view all the circles in the game application (including the circles under all gameplays) by triggering an operation on the "All Circles" control.

[0108] As Figure 2As shown in the figure, it is assumed that user 20a triggers an operation on the "Eight Wastelands Beauty" gameplay, and the terminal device can respond to this trigger operation and send a request to the server. After receiving this request sent by the terminal device, the server can first obtain the community where the business object 20a is located; then, the server can obtain the circles of other business objects in the same community as the business object 20a under the "Eight Wastelands Beauty" gameplay, and use these circles as candidate circles to be recommended; further, the server can sort these candidate circles according to the number of experts under the "Eight Wastelands Beauty" gameplay to obtain a candidate circle sequence. Finally, the server can return this candidate circle sequence to the terminal device, and the terminal device can display this candidate circle sequence in order in the circle recommendation interface 2001. For example, as Figure 2 shown, it is assumed that the candidate circle sequence is {circle 1, circle 2, circle 3}, then the terminal device can display circle 1, circle 2, circle 3 and the circle declarations of each circle (such as circle declaration 1, circle declaration 2, circle declaration 3) in order in the circle recommendation interface 2001.

[0109] It should be noted that the circle recommendation in the game application in this application is an exemplary scenario description for easy understanding, and it does not have practical reference significance. That is, sorting circles according to the number of experts or recommending circles to users is an example scenario, and specific data recommendations can be defined based on specific business requirements. This is specifically stated here.

[0110] It should be understood that through the above community classification, each player in the game application can be classified into communities to obtain the community labels of each player. In this way, the server can recommend circles or friends to players based on the communities where the players are located, which can improve the circle click-through rate of circle recommendations or the team formation success rate after friend recommendations, that is, the data recommendation effect in the game application can be improved, and the user experience can be improved.

[0111] Based on the above-described solutions and application scenarios, the embodiments of this application propose a more detailed adaptive community detection method. The following will introduce the adaptive community detection method proposed in the embodiments of this application in detail with reference to the accompanying drawings.

[0112] Please refer to Figure 3 , Figure 3 which is a schematic flowchart of a data processing method provided by an exemplary embodiment of this application. This process can refer to the process of the adaptive community detection solution provided by the embodiments of this application. This data processing method (adaptive community detection method) can be executed by the computer device in the aforementioned system, such as the computer device being a terminal and / or a server; this data processing method can at least include the following steps S201 - S203:

[0113] Step S201: Obtain the social association relationships of N business objects in a business application, and obtain the application attribute characteristics of each business object in the business application; N is a positive integer.

[0114] In this application, the business application can be any application, specifically including but not limited to: social applications, multimedia applications (such as video applications), entertainment applications (such as game applications), educational applications, live broadcast applications, etc. A business object can refer to a user's account in a business application, and in essence, it can also refer to the user. The social association relationships of N business objects in the business application can be defined based on the actual scenario of the business application, and it can include but is not limited to: friendship relationships, mutually followed relationships, relationships in the same team or group, etc. Similarly, the application attribute characteristics of a business object in the business application can also be defined based on the actual scenario of the business application. For example, when the business application is a game application, the application attribute characteristics can refer to game attribute characteristics, such as: game match type preferences, average game duration, game character preferences, and other attribute characteristics. Another example is that when the business application is a video application, the application attribute characteristics can refer to video playback attribute characteristics, such as: average video viewing duration, video playback type, video interaction rate, and other attribute characteristics. That is to say, different business applications can define different application attribute characteristics, and the application attribute characteristics of a business object can be analyzed through some behaviors generated by the business object in the business application.

[0115] Step S202: Based on the social association relationships and application attribute characteristics, call the community membership model to perform community classification processing on the N business objects to obtain the community membership relationships of the N business objects; the community classification processing is used to classify each business object into each community indicated by the number of communities.

[0116] In this application, after obtaining the social association relationships and application attribute characteristics of N business objects, an attribute relationship graph can be constructed. In this attribute relationship graph, object nodes can be used to represent business objects, connection edges between different object nodes can be used to represent the social association relationships between business objects (for example, if there is a connection edge between two object nodes, it can represent that there is a social association relationship between the two business objects corresponding to these two object nodes), and the node attribute characteristics of the object nodes can be used to reflect the application attribute information of the corresponding business objects. In this way, the social association relationships between business objects can be reflected through the topology of the attribute relationship graph, and the application attribute characteristics of business objects can be reflected through the semantic information (i.e., node attribute characteristics) of each object node in the attribute relationship graph. Then, by jointly modeling the topology and semantic information of the attribute relationship graph, the number of communities in the attribute relationship graph can be adaptively searched, and the community label corresponding to each business object can be detected (that is, the business objects are subjected to community classification processing to obtain the community membership relationships).

[0117] In a specific implementation, based on the social association relationship and application attribute characteristics, calling the community membership model to perform community classification processing on N business objects, the specific implementation process of obtaining the community membership relationship of the N business objects may include, but is not limited to: First, based on the social association relationship of the N business objects in the business application and the application attribute characteristics of each business object in the business application, a relationship attribute graph can be constructed. For example, corresponding object nodes can be created for each business object first, and thus N object nodes can be obtained. Then, business objects with social association relationships can be obtained. If there is a social association relationship between any two business objects, a connection edge can be constructed between the two object nodes corresponding to these two business objects (i.e., a pair of nodes). In this way, connection edges can be constructed between multiple pairs of nodes to obtain a connection edge set containing multiple connection edges. Further, the node attribute characteristics of each object node can be determined as the application attribute characteristics of the corresponding business object. Thus, a graph containing N object nodes, the node attribute characteristics of each object node, and one or more connection edges can be obtained, and this graph can be used as the relationship attribute graph. That is to say, the relationship attribute graph in this application will record N object nodes and the connection edge set. An object node corresponds to a business object, and the node attribute characteristics of an object node are the application attribute characteristics of the corresponding business object. Moreover, a connection edge in the connection edge set is used to connect two object nodes, and the two business objects corresponding to the two object nodes connected by a connection edge have a social association relationship in the business application. After constructing the relationship attribute graph, the feature embedding model can be called based on the relationship attribute graph, and the node attribute characteristics of each object node in the relationship attribute graph can be subjected to feature embedding calculation through the feature embedding model to obtain an attribute embedding matrix containing the node embedding characteristics of each object node. Among them, the feature embedding model here can refer to a model containing Graph Neural Networks (GNN). Through the encoder in the graph neural network GNN, the node attribute characteristics of each object node in the attribute relationship graph can be encoded and embedded for calculation, and thus an attribute embedding matrix containing the node embedding characteristics of each object node can be output. The i-th row of this attribute embedding matrix can be used as the node embedding characteristic corresponding to the i-th object node (i.e., the attribute embedding characteristic of the business object corresponding to the i-th object node in the business application).

[0118] In a specific implementation, the present application can select the method of masked attribute reconstruction to train and optimize the node embedding features of each object node. For example, for the N object nodes in the relational attribute graph, first, random sampling can be performed on them to obtain a subset of the N object nodes, and this subset may contain some of the N object nodes (for example, half of the N object nodes); then, after sampling to obtain the subset, the node attribute features corresponding to each object node in the subset can be replaced with a learnable attribute mask token (which can be called a learnable attribute mask). In this way, these node attribute features can be converted into a unified value (i.e., the learnable attribute mask); further, the encoder in the feature embedding model can obtain the neighbor nodes of the object node based on the connection edges of each object node. Then, based on the node attribute features of the neighbor nodes and its own node attribute features, feature fusion calculation is performed to obtain the node embedding feature of the object node. It should be understood that through the feature transfer of the neighbor nodes, the calculated node embedding feature can contain both its own attribute information and the attribute information of the topological neighbor nodes. Then, the social association relationship between business objects can also be reflected through the node embedding feature. It should be noted that since the present application masks the node attribute features of some object nodes, the encoder can calculate the node embedding features of the masked object nodes through the feature transfer of the topological neighbors. In order to improve the feature embedding ability of the encoder, the present application can use the method of masked reconstruction to train the node embedding features output by the encoder. Specifically, the encoder can obtain the node embedding features of each object node through feature embedding calculation and output an attribute embedding matrix. Among them, the i-th row in the attribute embedding matrix can be understood as the node embedding feature corresponding to the i-th object node. The present application can use the above-mentioned sampled masked node subset to obtain each masked node in the subset and replace the corresponding rows (i.e., the corresponding node embedding features) of each masked node in the attribute embedding matrix with learnable embedding mask tokens (which the present application can call learnable embedding masks). In this way, these node embedding features can be converted into a unified value (i.e., the learnable embedding mask); further, through the decoder in the feature embedding model, feature reconstruction is performed on the masked attribute embedding matrix and a reconstructed attribute embedding matrix (which can be called a reconstructed embedding matrix) is output. The i-th row in the reconstructed embedding matrix can be understood as the reconstructed attribute feature corresponding to the i-th object node. Based on the reconstructed attribute features corresponding to each masked node and its original attribute features (i.e., node attribute features or application attribute features), the error loss can be determined, and through this error loss, the encoder in the feature embedding model can be trained to make the output attribute embedding matrix more and more accurate.

[0119] Of course, the above describes the process of training and optimizing the feature embedding model so that the output attribute embedding matrix can be more and more accurate. In actual applications, after obtaining the attribute embedding matrix through the feature embedding model, the attribute embedding matrix can be input into the community membership model, and the N business objects can be classified into communities through the community membership model and the attribute embedding matrix. The community membership model can output a community membership relationship matrix; the community membership relationship matrix records the probabilities of each object node being classified into each community indicated by the number of communities. In this way, according to the probabilities of each object node being classified into each community indicated by the number of communities in the community membership relationship matrix, the community to which the business object corresponding to each object node belongs can be determined among the communities indicated by the number of communities, and based on the communities to which each business object belongs, the community membership relationship of the N business objects can be determined. Based on the community membership relationship and the social association relationship, the community membership model can be optimized, and the training and optimization of the above feature embedding model can be carried out synchronously with the community membership model.

[0120] Based on the above, the specific implementation process of obtaining an attribute embedding matrix containing the attribute embedding features of each object node in the relationship attribute graph through feature embedding calculation of the node attribute features of each object node in the relationship attribute graph may include, but is not limited to: First, the number of masks can be obtained. This number of masks can refer to the number of nodes that need to be attribute-masked among N object nodes. The number of masks can be determined based on the total number of N object nodes. For example, in an actual scenario, if it is specified to perform attribute masking on half of the object nodes, then the number of masks here can be half of the total number of N object nodes. After obtaining the number of masks, according to this number of masks, among the N object nodes in the relationship attribute graph, Q object nodes to be masked (Q is also the number of masks) can be selected as masked nodes. Then, in the relationship attribute graph, the node attribute features of the Q object nodes can be replaced with learnable attribute masks, and the relationship attribute graph containing Q learnable attribute masks can be determined as the masked relationship attribute graph. Further, the masked relationship attribute graph can be input into the encoder of the feature embedding model. Through the encoder, the node attribute features of each object node in the masked relationship attribute graph (the node attribute features of the masked nodes are already learnable attribute masks) can be encoded and embedded, that is, the encoder can perform encoding and embedding processing on the node attribute features of any object node to obtain the node embedding feature corresponding to the object node. After determining the node embedding feature corresponding to each object node, an attribute embedding matrix containing the node embedding features corresponding to each object node can be obtained. Among them, taking any object node as an example, the specific process of determining the node embedding feature corresponding to the object node may include, but is not limited to: First, for the sake of distinction, any one of the N object nodes can be determined as the first target object node (i.e., it is called the first target object node). Then, in the encoder of the feature embedding model, the node attribute features of the first target object node can be subjected to feature fusion calculation with the node attribute features of the neighbor nodes of the first target object node (the neighbor nodes refer to the object nodes in the masked relationship attribute graph that have connection edges with the first target object node), and the node embedding feature corresponding to the first target object node can be obtained.

[0121] Further, for the attribute embedding matrix output by the feature embedding model, it can be input into the community membership model, and the community network model can read out the community membership relationship matrix for each object node based on the attribute embedding matrix. In specific implementation, through the community membership model and the attribute embedding matrix, the community classification of N business objects is performed, and the specific implementation process of outputting the community membership relationship matrix can include but is not limited to: First, based on the connection relationship between the N object nodes in the relationship attribute graph, the adjacency matrix corresponding to the relationship attribute graph can be determined (this adjacency matrix can be composed of the numerical value 1 and the numerical value 0, and the numerical values 1 and 0 are used to reflect whether there is a connection relationship between any two object nodes. Among them, the numerical value 1 can be used to reflect the existence of a connection relationship, and the numerical value 0 can be used to reflect the non-existence of a connection relationship); Then, for this adjacency matrix, it can be normalized (the elements in the matrix are converted according to a certain rule to make it have specific properties or meet specific requirements. The normalization process can be, for example, normalization processing, standardization processing, or encoding processing, etc.) to obtain the normalized adjacency matrix corresponding to this adjacency matrix; Further, the graph convolution activation function and the feature weight parameters in the community membership model can be obtained. The graph convolution activation function can refer to the activation function (ReLU activation function) in the graph convolution network (GCN) layer of the community membership model, and the feature weight parameters can refer to the two-dimensional weight matrix W of the graph convolution network (GCN) layer. The operation rules indicated by this activation function can be used to perform operations on the normalized adjacency matrix, the attribute embedding matrix, and the feature weight parameters (which can be called community classification operations). Thus, a matrix can be output, and this output matrix can be determined as the above-mentioned community membership relationship matrix.

[0122] For the specific manner of performing operations on the normalized adjacency matrix, the attribute embedding matrix, and the feature weight parameters using the activation function, it can be as shown in formula (1):

[0123]

[0124] Among them, C shown in formula (1) can be used to represent the community membership relationship matrix; ReLU() can be used to represent the activation function; W can be used to represent the feature weight matrix, and H C can be used to represent the attribute embedding matrix, can be used to represent the normalized adjacency matrix.

[0125] For ease of understanding, the community membership relationship matrix will be described by way of example below. The community membership relationship matrix can be as shown in matrix A1:

[0126]

[0127] Among them, the community membership relationship matrix shown in matrix A1 is an example matrix with N being 6 (that is, there are 6 business objects, so there are also 6 object nodes in the relationship attribute graph) and the number of communities being k. In matrix A1, the number of columns of the matrix can be used to represent the number of communities (the number of columns of the community membership relationship matrix is determined based on the number of columns of the feature weight matrix, and the number of columns of both is the same, and the number of columns is used to represent the number of communities), and each row in matrix A1 can be used to represent the probability that a certain object node is classified into each community. For example, the first row in matrix A1 can be used to represent the probability that the 1st object node (i.e., object node 1) is classified into each community, C 1,1 can be used to represent the probability that the 1st object node is classified into the 1st community (community 1), C 1,2 can be used to represent the probability that the 1st object node is classified into the 2nd community, …, C 1,k can be used to represent the probability that the 1st object node is classified into the kth community; the 6th row in matrix A1 can be used to represent the probability that the 6th object node is classified into each community, C 6,1 can be used to represent the probability that the 6th object node is classified into the 1st community (community 1), …, C 6,k can be used to represent the probability that the 1st object node is classified into the kth community. That is to say, the community membership relationship matrix is essentially a non - negative matrix, C i,k is the probability that business object i belongs to the community numbered k. By splicing the vectors of each row in the community membership relationship matrix, the probability vector corresponding to the business object or the corresponding object node of this row can be obtained. By calculating the inner product of the probability vectors between any two business objects, the probability of the existence of a social association relationship between these two business objects can be determined, as shown in formula (2):

[0128]

[0129] Among them, C as shown in formula (2) i can be used to represent the probability vector obtained after vector splicing calculation of the probabilities that the ith business object belongs to each community in the community membership relationship matrix; C j can be used to represent the probability vector obtained after vector splicing calculation of the probabilities that the jth business object belongs to each community in the community membership relationship matrix; can be used to represent C j transpose; p(i, j) can be used to represent the probability of the existence of a social association relationship between the ith business object and the jth business object.

[0130] After obtaining the community membership matrix, for any business object, the maximum probability can be obtained from the probabilities of each community, and the community corresponding to the maximum probability is used as the community to which the business object belongs (i.e., as the community label of the business object, that is where I i is the community number of business object i, refers to the column number where the maximum probability is located); it should be noted that in some specific scenarios, for any business object, multiple relatively large probabilities (such as the maximum, second maximum, third maximum, and fourth maximum probabilities) can be obtained from the probabilities of each community, and the communities corresponding to these probabilities are all used as the communities to which the business object belongs, that is, the communities to which a business object belongs may not be limited to one, and this is specifically stated here. Based on the communities to which each business object belongs, a community membership relationship can be obtained.

[0131] Step S203: Optimize the community membership model based on the social association relationship and the community membership relationship, and during the optimization process, predict and update the number of communities according to the group sparse rule to obtain an optimized community membership model; the optimized community membership model is used to perform community classification processing on N business objects according to the predicted and updated number of communities.

[0132] In this application, after determining the community membership relationship, since this community membership relationship is obtained based on the community membership relationship matrix, the probability of the social association relationship existing between any two business objects predicted by the model can be indirectly reflected through the community membership relationship matrix or this community membership relationship (in the manner shown in the above formula (2)). Then, this application can use the real social association relationship as the relationship label to optimize this community membership model, so that the social association relationships between various business objects reflected by the community membership relationship matrix output by this community membership model can get closer and closer to the real social association relationship. That is to say, this application can calculate an error value based on the social association relationship and the community membership relationship, and optimize this community membership model through this error value. It should be noted that based on the above, the number of communities in this application is determined based on the number of columns of the feature weight matrix in the community membership model. In order to adaptively detect the number of communities, this application can initialize the number of communities to a relatively large value (that is, initialize the feature weight matrix to a matrix with a relatively large number of columns), and then use the principle of group sparsity to gradually compress the number of columns of this feature weight matrix, so as to gradually reduce the number of communities and obtain a relatively reasonable number of communities finally. It can be seen that in the process of optimizing the community membership model, this application can synchronously predict and update the number of communities (that is, the feature weight matrix of the community membership model) according to the group sparsity rule to obtain the predicted and updated number of communities. In subsequent services, the optimized community membership model can re-classify the N business objects based on the predicted and updated number of communities (that is, the updated feature weight matrix).

[0133] In specific implementation, the specific implementation process of optimizing the community membership model based on the social association relationship and the community membership relationship may include but is not limited to: First, the relationship optimization loss value corresponding to each business object can be determined according to the social association relationship and the community membership relationship of the N business objects in the business application; then, the relationship optimization loss values corresponding to the N business objects can be summed up to obtain the membership relationship optimization loss value corresponding to the community membership model; the community membership model can be optimized through the membership relationship optimization loss value corresponding to the community membership model.

[0134] Among them, the specific implementation process of determining the relationship optimization loss value corresponding to each business object according to the social association relationship and community membership relationship of N business objects in the business application may include, but is not limited to: for any one of the N business objects, any one of the N business objects can be determined as the target business object; then, based on the social association relationship of the N business objects in the business application, the first paired object and the second paired object of the target business object can be determined among the N business objects; among them, the first paired object here refers to any one of the N business objects that has a social association relationship with the target business object, and the second paired object refers to any one of the N business objects that has no social association relationship with the target business object; further, the probabilities that the target business object is classified into each community in the community membership relationship matrix, the probabilities that the first paired object is classified into each community in the community membership relationship matrix, and the probabilities that the second paired object is classified into each community in the community membership relationship matrix can be respectively subjected to probability fusion (this can correspond to the vector splicing of a certain row in the community membership relationship matrix described above), so that the first fusion probability vector corresponding to the target business object, the second fusion probability vector corresponding to the first paired object, and the third fusion probability vector corresponding to the second paired object can be obtained; through the membership relationship optimization function, the first vector inner product of the first fusion probability and the second fusion probability, and the second vector inner product of the first fusion probability and the third fusion probability can be calculated; then, by determining the inner product difference between the first vector inner product and the second vector inner product, the relationship optimization loss value corresponding to the target business object can be obtained.

[0135] For the specific manner of determining the membership relationship optimization loss value corresponding to the community membership model, it can be as shown in formula (3):

[0136]

[0137] Among them, C as shown in formula (3) i can be used to represent the probability vector obtained after vector splicing calculation of the probabilities that the i-th business object belongs to each community in the community membership relationship matrix (the first fusion probability vector obtained after probability fusion of the probabilities that the target business object is classified into each community in the community membership relationship matrix); C j can be used to represent the probability vector obtained after vector splicing calculation of the probabilities that the j-th business object belongs to each community in the community membership relationship matrix (the second fusion probability vector obtained after probability fusion of the probabilities that the first paired object is classified into each community in the community membership relationship matrix); can be used to represent the transpose of C j ; C uIt can be used to characterize the probability vector obtained after vector splicing calculation of the probabilities that the \(u\)-th business object belongs to each community in the community membership relationship matrix (the third fusion probability vector obtained after probability fusion of the probabilities that the second paired object is classified into each community in the community membership relationship matrix); It can be used to characterize C u The transpose of; \(|\varepsilon|\) can be used to characterize the number of connected edges in the relationship attribute graph (that is, the number of users with social association relationships). It should be understood that for any target business object, for the node pairs (two business objects) with social association relationships, the present application can randomly sample a negative sample pair \((i, u)\), which is composed of business objects that do not have social association relationships with the target business object. Then, the present application can calculate the vector inner product between the two node pairs in the manner shown in formula (3), and maximize the difference between the two vector inner products to gradually improve the accuracy of the social association relationships predicted by the community membership model.

[0138] It should be understood that during the process of optimizing the community membership model, we can synchronously adopt the group sparse rule to predict and update the number of communities. Based on the above, the number of communities is actually the feature weight matrix in the feature weight matrix of the community membership model. Therefore, adopting the group sparse rule to predict and update the number of communities can actually be understood as adopting the group sparse rule to optimize and update the feature weight matrix of the community membership model. The present application can use the 2,1 norm to perform group sparsity. Then the group sparse rule of the present application can include a norm constraint function (such as the 2,1 norm function), which is mainly used to perform column sparse constraint processing on the matrix. The specific process of predicting and updating the number of communities according to the group sparse rule can include but is not limited to: through the norm constraint function, performing column sparse constraint processing on the number of matrix columns of the feature weight matrix of the norm community membership model to obtain a column sparse weight matrix; then the number of communities can be updated according to the number of matrix columns of the norm column sparse weight matrix (for example, replacing the number of communities with the number of matrix columns of the column sparse weight matrix).

[0139] For the specific manner of performing column sparse constraint processing on the number of matrix columns of the feature weight matrix, it can be as shown in formula (4):

[0140]

[0141] where \(W\) as shown in formula (4) can be used to characterize the feature weight matrix of the community membership model, and \(k\) max is the maximum number of communities (for example, an initialized number of communities), and is also the initial number of columns of \(C\) and \(W\); can be used to characterize the 2,1 norm The loss value obtained by performing group sparsity (which can be understood as the group sparsity constraint loss value). In practical applications, the membership relationship optimization loss value determined by the above formula (3) and the group sparsity constraint loss value determined by formula (4) are jointly used to optimize the community membership model. By the method shown in formula (5), the model optimization loss value for optimizing the community membership model can be determined, as shown in formula (5):

[0142]

[0143] where α and β shown in formula (5) are hyperparameters that need to be set according to business requirements. Through the model optimization loss value the model parameters of the community membership model (such as the feature weight matrix) can be optimized and updated.

[0144] Furthermore, for the optimized community membership model, its updated community number according to the prediction (i.e., the optimized feature weight matrix) can be called to perform community classification processing on N business objects to obtain the optimized community membership relationship of the N business objects; then, according to the optimized community membership relationship, the communities to which each business object belongs can be determined; among the N business objects, the recommended business object for the recommended task can be obtained, and task recommendations can be made for the recommended business object according to the community to which the recommended business object belongs. For example, among the business objects in the community to which the recommended business object belongs, the business objects other than the recommended business object can be determined as the interaction tendency business objects of the recommended business object (i.e., the business objects with which the recommended business object is very likely to interact); then, the historical tasks (such as a certain game task) executed by the interaction tendency business objects can be obtained and recommended to the recommended business object. Since the recommended business object and the interaction tendency business object both belong to the same community, the social association relationship between these two business objects is relatively close and their application attributes are relatively similar. For the historical tasks executed by the interaction tendency business objects, the recommended business object also has a certain degree of interest. Therefore, after the historical task is recommended to the recommended business object, the success rate of the recommended business object in executing the historical task is relatively high, and the recommendation effect can be guaranteed.

[0145] In the embodiments of the present application, the group sparsity rule can be used to adaptively detect and update the number of communities. In this way, the present solution can optimize the community membership model through social association relationships and community membership relationships to improve its community classification ability, thereby improving the accuracy of community classification. At the same time, the present solution can also gradually update the unknown number of communities through the group sparsity rule, enabling the model to perform community classification processing based on the updated number of communities with high accuracy, further improving the community classification ability of the model, and thus improving the accuracy of community classification. When the community classification result has high accuracy, different data can be recommended to each business object based on the community classification result, and the data recommendation effect can be optimized. In summary, the present application can improve the accuracy of community classification in business applications, thereby improving the data recommendation effect.

[0146] Based on the above, the community membership model in the present application performs community classification processing based on the attribute embedding matrix output by the feature embedding model. Therefore, in order to improve the community classification ability of the community membership model and thus improve the accuracy of the community membership relationship, the feature embedding model can be trained and optimized to train and optimize the embedding features of each node in the attribute embedding matrix. Specifically, the present application can adopt the method of masked attribute reconstruction to train and optimize the feature embedding model, that is, in the above Figure 3 corresponding embodiment, after performing community classification processing on N business objects through the community membership model and the attribute embedding matrix and outputting the community membership relationship matrix, in addition to optimizing the community membership model based on the social association relationship and the community membership relationship matrix, the feature embedding model can also be optimized based on the attribute embedding matrix output by the feature embedding model and the original attribute features of each object node, so that the output node embedding features can be more and more accurate. In this way, the community membership model can read a more accurate community membership relationship matrix based on sufficiently accurate node embedding features. The optimization process of the feature embedding model will be described below in conjunction with the accompanying drawings. Please refer to Figure 4 , Figure 4 is a schematic flowchart of optimizing the feature embedding model provided by the embodiments of the present application. This process can correspond to the process after performing community classification processing on N business objects through the community membership model and the attribute embedding matrix and outputting the community membership relationship matrix in the above Figure 3 corresponding embodiment. The optimization of the feature embedding model can be carried out synchronously with the optimization of the community membership model. As Figure 4 shown, this process can at least include the following steps S401 - step S402:

[0147] Step S401: Determine the error loss value of the feature embedding model according to the attribute embedding matrix containing the node embedding features of each object node and the node attribute features of each object node.

[0148] In a specific implementation, the node attribute feature of each object node, which is also the application attribute feature of the corresponding business object, is the original attribute feature and can be used as the true attribute label. The specific implementation process of determining the error loss value of the feature embedding model according to the attribute embedding matrix containing the node embedding features of each object node and the node attribute features of each object node may include, but is not limited to: First, in the attribute embedding matrix, replace the node embedding features corresponding to the above-mentioned Q masked object nodes with learnable embedding masks respectively, and determine the attribute embedding matrix containing Q learnable embedding masks as the masked embedding matrix; Then, in the decoder of the feature embedding model, perform decoding and reconstruction processing on the masked embedding matrix to obtain the reconstructed attribute features corresponding to each object node; For any one of the object nodes, the following processing can be performed: Determine any one of the N object nodes as the second target object node, and determine the object nodes other than the second target object node among the N object nodes as the remaining object nodes; Then, through the error loss function, calculate the error loss between the reconstructed attribute feature corresponding to the second target object node and the node attribute feature, and thus obtain the first error loss value; Similarly, through the error loss function, calculate the error loss between the reconstructed attribute feature corresponding to the remaining object nodes and the node attribute feature, and obtain the second error loss value; The first error loss value and the second error loss value can be summed up, and thus the error loss value corresponding to the second target object node can be obtained. Summing up the error loss values corresponding to all object nodes can obtain the error loss value of the feature embedding model.

[0149] This application can use the scaled cosine error loss function as the error loss function. The specific method for determining the error loss value of the feature embedding model can be as shown in formula (6):

[0150]

[0151] Among them, can be used to represent any masked node subset; Z can be used to represent the reconstructed attribute embedding matrix, which contains the reconstructed attribute features (z i can be used to represent the reconstructed attribute feature corresponding to any masked object node); X can be used to represent the original attribute matrix corresponding to the relational attribute graph (x iIt can be used to characterize the original attribute features corresponding to the masked object nodes, that is, node attribute features). In the manner shown in formula (6), the error loss value corresponding to any masked object node can be calculated, and then summed to obtain the error loss value of the feature embedding model. Of course, the error loss value corresponding to any object node can also be calculated and then summed to obtain the error loss value of the feature embedding model (that is, when calculating the error loss value of the feature embedding model, all object nodes can be considered instead of only the masked object nodes). By minimizing in this way, the feature embedding model can be continuously optimized.

[0152] To facilitate understanding of the method for calculating the error loss value of the feature embedding model based on the masked attribute reconstruction method, please also refer to Figure 5 , Figure 5 which is a schematic diagram of determining the attribute reconstruction loss value by masked attribute reconstruction provided in an embodiment of this application. As Figure 5 shown, a relational attribute graph can be constructed based on the social association relationship and application attribute features. In this relational attribute graph, object nodes corresponding to each business object (such as object node 501) can be included, that is, the node attribute features corresponding to each object node (such as the node attribute feature 5011 corresponding to object node 501). In the relational attribute graph, if there is a connection relationship between two object nodes, it can represent that there is a social association relationship between the corresponding two business objects. At the beginning of each round of training of each feature embedding model, some object nodes can be randomly sampled. Let the set composed of all N business objects be A subset of it can be randomly sampled here Each object node in these subsets can be used as a masked object node. Then, the node attribute features corresponding to each masked object node can be attribute masked (specifically, it can be replaced with a learnable attribute mask).

[0153] Furthermore, for the relational attribute graph after attribute masking, it can be input into the encoder of the feature embedding model. Through the encoder, the encoder can use the own attributes of the object nodes and the attributes of the neighbor nodes to perform encoding and embedding processing on each object node, and calculate the node embedding features of each object node; then, for the relational attribute graph after encoding and embedding, the masked node subset sampled before can be used Embed the node embedding features corresponding to each masked node with an embedding mask (specifically, it can be replaced with a learnable embedding mask). After that, the relationship attribute graph after the embedding mask can be input into the decoder of the feature embedding model, and the decoder will output the reconstructed relationship attribute graph, which will contain the reconstructed attribute features of each object node after reconstruction. It should be understood that since the node embedding features of some object nodes are embedded masked, and the decoder can calculate the reconstructed attribute features of the masked node using the node embedding features of neighboring nodes. In order to improve the accuracy, this application can calculate the difference between the reconstructed attribute features of the masked node and its original attribute features, and minimize the difference between the two to train the accuracy of the output result of the feature embedding model.

[0154] Step S402, optimize the feature embedding model according to the error loss value; the optimized feature embedding model is used to perform feature embedding calculation on the node attribute features of each object node in the relationship attribute graph to obtain an optimized attribute embedding matrix containing the optimized node embedding features of each object node.

[0155] In a specific implementation, the feature embedding model can be continuously optimized by continuously minimizing the error loss value. The optimized feature embedding model can perform feature embedding calculation on the node attribute features of each object node in the relationship attribute graph to obtain an optimized attribute embedding matrix containing the optimized node embedding features of each object node. The optimized community membership model can perform community classification on N business objects based on the optimized attribute embedding matrix to output an optimized community membership relationship matrix. In this way, the community label with relatively high accuracy of each business object can be determined based on the optimized community membership relationship matrix.

[0156] It should be understood that this application uses the method of masked attribute reconstruction to train the optimized feature embedding model in order to better train the node embedding features output by the feature embedding model, and thus obtain a more accurate community membership relationship. The training method of the feature embedding model is not limited to this. For example, a self-supervised pre-training method (such as link prediction, contrast learning, etc.) can also be used to train the feature embedding model to obtain more accurate node embedding features. The training method of the feature embedding model in this application is not restricted, and it is hereby stated.

[0157] Further, please refer to Figure 6 , Figure 6 is a logical architecture diagram of an adaptive community detection solution provided by an embodiment of this application. Among them, the logical architecture can at least include a data input component, a masked attribute reconstruction component, and a group sparse community readout component. The functions implemented by each component will be briefly described below:

[0158] Data input component: The data input component is mainly used to obtain the social association relationships of N business objects in a business application, and the application attribute characteristics of each business object in the business application, and construct a relationship attribute graph based on the social association relationships and application attribute characteristics, and input the relationship attribute graph into the masked attribute reconstruction component.

[0159] Masked attribute reconstruction component: The masked attribute reconstruction component may include a feature embedding model. Through the feature embedding model, the obtained relationship attribute graph can be encoded and embedded to obtain an attribute embedding matrix containing the embedding features of each node. At the same time, the masked attribute reconstruction component can also perform attribute masking, encoding embedding, embedding masking, and decoding and reconstruction processing on the relationship attribute graph to train and optimize the feature embedding model and output more accurate node embedding features.

[0160] Group sparse community reading component: The group sparse community reading component may include a community membership model. Through the community membership model, based on the attribute embedding matrix output by the above-mentioned masked attribute reconstruction component, the community membership relationship matrix can be read out, and through this community membership relationship matrix, the community label of each business object (that is, the community to which each business object belongs) can be determined. At the same time, the group sparse community reading component can train and optimize the community membership model based on the social association relationships and application attribute characteristics, combined with the group sparse rule, to adaptively detect the number of communities and the community membership relationships.

[0161] Further, please refer to Figure 7 , Figure 7 which is a schematic structural diagram of a data processing device provided by an embodiment of the present application. The data processing device may be a computer program (including program code) running in a computer device. For example, the data processing device is an application software; the data processing device can be used to execute Figure 3 the method shown. As Figure 7 shown, the data processing device 1 may include: an acquisition module 11, a community classification module 12, and an optimization and update module 13.

[0162] The acquisition module 11 is used to obtain the social association relationships of N business objects in a business application, and obtain the application attribute characteristics of each business object in the business application; N is a positive integer;

[0163] The community classification module 12 is used to perform community classification processing on N business objects by invoking the community membership model based on the social association relationships and application attribute characteristics, and obtain the community membership relationships of the N business objects; the community classification processing is used to classify each business object into each community indicated by the number of communities;

[0164] The optimization and update module 13 is used to optimize the community membership model based on the social association relationship and the community membership relationship, and during the optimization process, predict and update the number of communities according to the group sparsity rule to obtain an optimized community membership model; the optimized community membership model is used to perform community classification processing on N business objects according to the predicted and updated number of communities.

[0165] Among them, for the specific implementation manners of the acquisition module 11, the community classification module 12, and the optimization and update module 13, reference can be made to the descriptions of steps S201 - S203 in the corresponding embodiments above. Figure 3 Details will not be elaborated here.

[0166] In one embodiment, the specific implementation manner in which the community classification module 12 calls the community membership model to perform community classification processing on N business objects based on the social association relationship and the application attribute features includes:

[0167] Based on the social association relationship of N business objects in the business application and the application attribute features of each business object in the business application, a relationship - attribute graph is constructed; the relationship - attribute graph records N object nodes and a set of connection edges. One object node corresponds to one business object, and the node - attribute feature of one object node is the application attribute feature of the corresponding business object; one connection edge in the set of connection edges is used to connect two object nodes, and the two business objects corresponding to the two object nodes connected by one connection edge have a social association relationship in the business application.

[0168] Based on the relationship - attribute graph, a feature - embedding model is called, and the node - attribute features of each object node in the relationship - attribute graph are subjected to feature - embedding calculation through the feature - embedding model to obtain an attribute - embedding matrix containing the node - embedding features of each object node.

[0169] The attribute - embedding matrix is input into the community membership model, and the community membership model and the attribute - embedding matrix are used to perform community classification processing on N business objects, and a community membership relationship matrix is output; the community membership relationship matrix records the probabilities of each object node being classified into each community indicated by the number of communities. [[ID=!9]]

[0170] According to the probabilities of each object node being classified into each community indicated by the number of communities in the community membership relationship matrix, the community to which the business object corresponding to each object node belongs is determined among each community indicated by the number of communities, and based on the community to which each business object belongs, the community membership relationship of N business objects is determined.

[0171] In one embodiment, the specific implementation manner in which the community classification module 12 performs feature embedding calculation on the node attribute features of each object node in the relationship attribute graph through the feature embedding model to obtain an attribute embedding matrix including the attribute embedding features of each object node is as follows:

[0172] Obtain the number of masks, and select Q object nodes to be masked from the N object nodes in the relationship attribute graph; Q is the number of masks;

[0173] In the relationship attribute graph, replace the node attribute features of the Q object nodes with learnable attribute masks, and determine the relationship attribute graph containing the Q learnable attribute masks as the masked relationship attribute graph;

[0174] Through the encoder in the feature embedding model, perform encoding and embedding processing on the node attribute features of each object node in the masked relationship attribute graph to obtain the node embedding features corresponding to each object node;

[0175] Determine the matrix containing the node embedding features corresponding to each object node as the attribute embedding matrix.

[0176] In one embodiment, the specific implementation manner in which the community classification module 12 performs encoding and embedding processing on the node attribute features of each object node in the masked relationship attribute graph through the encoder in the feature embedding model to obtain the node embedding features corresponding to each object node is as follows:

[0177] Determine any one of the N object nodes as the first target object node;

[0178] In the encoder of the feature embedding model, perform feature fusion calculation on the node attribute features of the first target object node and the node attribute features of the neighbor nodes of the first target object node to obtain the node embedding features corresponding to the first target object node; the neighbor nodes of the first target object node refer to the object nodes in the masked relationship attribute graph that have connection edges with the first target object node.

[0179] In one embodiment, the specific implementation manner in which the community classification module 12 performs community classification on the N business objects through the community membership model and the attribute embedding matrix and outputs the community membership relationship matrix is as follows:

[0180] Based on the connection relationship between the N object nodes in the relationship attribute graph, determine the adjacency matrix corresponding to the relationship attribute graph;

[0181] Perform normalization processing on the adjacency matrix to obtain the normalized adjacency matrix corresponding to the adjacency matrix;

[0182] Obtain the feature weight matrix of the graph convolution activation function and the community membership model;

[0183] Perform community classification operations on the normalized adjacency matrix, attribute embedding matrix, and feature weight matrix according to the operation rules indicated by the graph convolutional activation function to obtain a community membership matrix.

[0184] In one embodiment, after the community classification module 12 performs community classification processing on N business objects through the community membership model and the attribute embedding matrix and outputs the community membership matrix, the data processing device 1 further includes: an error determination module 14 and a model optimization module 15.

[0185] The error determination module 14 is configured to determine an error loss value of the feature embedding model according to the attribute embedding matrix including the node embedding features of each object node and the node attribute features of each object node;

[0186] The model optimization module 15 is configured to optimize the feature embedding model according to the error loss value; the optimized feature embedding model is used to perform feature embedding calculations on the node attribute features of each object node in the relational attribute graph to obtain an optimized attribute embedding matrix including the optimized node embedding features of each object node.

[0187] Wherein, for the specific implementation manners of the error determination module 14 and the model optimization module 15, reference may be made to the descriptions in steps S401 - S402 in the corresponding embodiment above, which will not be elaborated here. Figure 4 Figure 4

[0188] In one embodiment, the specific implementation manner of the error determination module 14 for determining the error loss value of the feature embedding model according to the attribute embedding matrix including the node embedding features of each object node and the node attribute features of each object node includes:

[0189] In the attribute embedding matrix, replace the node embedding features corresponding to Q object nodes with learnable embedding masks respectively, and determine the attribute embedding matrix including Q learnable embedding masks as the masked embedding matrix;

[0190] In the decoder of the feature embedding model, perform decoding and reconstruction processing on the masked embedding matrix to obtain the reconstructed attribute features corresponding to each object node respectively;

[0191] Determine any one of the N object nodes as the second target object node, and determine the object nodes other than the second target object node among the N object nodes as the remaining object nodes;

[0192] Calculate the error loss between the reconstructed attribute feature corresponding to the second target object node and the node attribute feature through an error loss function to obtain a first error loss value;

[0193] Calculate the error loss between the reconstructed attribute features corresponding to the remaining object nodes and the node attribute features through the error loss function to obtain the second error loss value;

[0194] Perform a summation operation on the first error loss value and the second error loss value to obtain the error loss value of the feature embedding model.

[0195] In one embodiment, the specific implementation manner of the optimization and update module 13 for optimizing the community membership model based on the social association relationship and the community membership relationship includes:

[0196] Determine the relationship optimization loss value corresponding to each business object according to the social association relationship and the community membership relationship of the N business objects in the business application;

[0197] Perform a summation process on the relationship optimization loss values corresponding to the N business objects respectively to obtain the membership relationship optimization loss value corresponding to the community membership model;

[0198] Optimize the community membership model through the membership relationship optimization loss value corresponding to the community membership model.

[0199] In one embodiment, the community membership relationship is determined according to the community membership relationship matrix output by the community membership model, and the community membership relationship matrix records the probabilities of each business object being classified into each community indicated by the number of communities;

[0200] The specific implementation manner of the optimization and update module 13 for determining the relationship optimization loss value corresponding to each business object according to the social association relationship and the community membership relationship of the N business objects in the business application includes:

[0201] Determine any one of the N business objects as the target business object;

[0202] Based on the social association relationship of the N business objects in the business application, determine the first paired object and the second paired object of the target business object among the N business objects; the first paired object refers to the business object among the N business objects that has a social association relationship with the target business object, and the second paired object refers to the business object among the N business objects that has no social association relationship with the target business object;

[0203] Perform probability fusion on the probabilities of the target business object being classified into each community in the community membership relationship matrix, the probabilities of the first paired object being classified into each community in the community membership relationship matrix, and the probabilities of the second paired object being classified into each community in the community membership relationship matrix respectively to obtain the first fusion probability vector corresponding to the target business object, the second fusion probability vector corresponding to the first paired object, and the third fusion probability vector corresponding to the second paired object;

[0204] Optimize the function through subordination relationship, calculate the first vector inner product of the first fusion probability and the second fusion probability, and the second vector inner product of the first fusion probability and the third fusion probability;

[0205] Determine the inner product difference between the first vector inner product and the second vector inner product to obtain the relationship optimization loss value corresponding to the target business object.

[0206] In one embodiment, the group sparse rule includes a norm constraint function, and the norm constraint function is used to perform column sparse constraint processing on the matrix; the number of communities is determined by the number of matrix columns of the feature weight matrix in the community membership model;

[0207] The specific implementation manner in which the optimization update module 13 predicts and updates the number of communities according to the group sparse rule includes:

[0208] Perform column sparse constraint processing on the number of matrix columns of the feature weight matrix of the community membership model through the norm constraint function to obtain a column sparse weight matrix;

[0209] Update the number of communities according to the number of matrix columns of the column sparse weight matrix.

[0210] In one embodiment, after the optimization update module 13 obtains the optimized community membership model, the data processing device further includes: a recommendation module 16.

[0211] The recommendation module 16 is used to call the optimized community membership model to perform community classification processing on N business objects according to the predicted and updated number of communities, and obtain the optimized community membership relationship of the N business objects;

[0212] The recommendation module 16 is further used to determine the community to which each business object belongs according to the optimized community membership relationship;

[0213] The recommendation module 16 is further used to obtain the recommended business object for the task to be recommended among the N business objects;

[0214] The recommendation module 16 is further used to perform task recommendation for the recommended business object according to the community to which the recommended business object belongs.

[0215] Among them, for the specific implementation manner of the recommendation module 16, reference can be made to the relevant description in step S203 in the corresponding embodiment above Figure 3 and will not be elaborated here.

[0216] In one embodiment, the specific implementation manner in which the recommendation module 16 performs task recommendation for the recommended business object according to the community to which the recommended business object belongs includes:

[0217] In the community to which the recommended service object belongs, determine the service objects other than the recommended service object as the interaction tendency service objects of the recommended service object;

[0218] Obtain the historical tasks executed by the interaction tendency service objects, and recommend the historical tasks to the recommended service object.

[0219] In the embodiments of the present application, the group sparse rule can adaptively detect and update the number of communities. In this way, the present solution can optimize the community membership model through social association relationships and community membership relationships to improve its community classification ability, thereby improving the accuracy of community classification. At the same time, the present solution can also gradually update the unknown number of communities through the group sparse rule, so that the model can perform community classification processing based on the updated number of communities with high accuracy, which can further improve the community classification ability of the model, thereby improving the accuracy of community classification. When the community classification result has high accuracy, different data can be recommended to each service object based on the community classification result, and the data recommendation effect can be optimized. In summary, the present application can improve the accuracy of community classification in business applications, thereby improving the data recommendation effect.

[0220] Further, please refer to Figure 8 , Figure 8 which is a schematic structural diagram of a computer device provided by an embodiment of the present application. As Figure 8 shown, the above computer device 8000 may include: a processor 8001, a network interface 8004, and a memory 8005. In addition, the above computer device 8000 further includes: a user interface 8003 and at least one communication bus 8002. Among them, the communication bus 8002 is used to realize the connection and communication between these components. Among them, the user interface 8003 may include a display screen (Display) and a keyboard (Keyboard). Optionally, the user interface 8003 may further include a standard wired interface and a wireless interface. The network interface 8004 may optionally include a standard wired interface and a wireless interface (such as a WI-FI interface). The memory 8005 may be a high-speed RAM memory or a non-volatile memory, such as at least one disk memory. Optionally, the memory 8005 may further be at least one storage device located far from the foregoing processor 8001. As Figure 8 shown, the memory 8005, as a computer-readable storage medium, may include an operating system, a network communication module, a user interface module, and a device control application program.

[0221] In Figure 8In the computer device 8000 shown, the network interface 8004 can provide network communication functions; the user interface 8003 is mainly used to provide an interface for users to input; and the processor 8001 can be used to call the device control application program stored in the memory 8005 to achieve:

[0222] Obtain the social association relationships of N service objects in a service application, and obtain the application attribute characteristics of each service object in the service application; N is a positive integer;

[0223] Based on the social association relationships and application attribute characteristics, call the community membership model to perform community classification processing on the N service objects to obtain the community membership relationships of the N service objects; the community classification processing is used to classify each service object into each community indicated by the number of communities;

[0224] Based on the social association relationships and community membership relationships, optimize the community membership model, and in the optimization process, predict and update the number of communities according to the group sparsity rule to obtain an optimized community membership model; the optimized community membership model is used to perform community classification processing on the N service objects according to the predicted and updated number of communities.

[0225] It should be understood that the computer device 8000 described in the embodiments of the present application can execute the description of the data processing method in the corresponding embodiments mentioned above, and can also execute the description of the data processing device 1 in the corresponding embodiments mentioned above, which will not be elaborated here. In addition, the description of the beneficial effects of using the same method will not be elaborated either. Figures 3 to 6 The description of the corresponding embodiments mentioned above, and can also execute the description of the data processing device 1 in the corresponding embodiments mentioned above, which will not be elaborated here. In addition, the description of the beneficial effects of using the same method will not be elaborated either. Figure 7 For the description of the beneficial effects of using the same method, it will not be elaborated either.

[0226] In addition, it should be pointed out here that: the embodiments of the present application also provide a computer-readable storage medium, and the computer-readable storage medium stores a computer program executed by the computer device 8000 for data processing mentioned above, and the computer program includes program instructions. When the above-mentioned processor executes the above-mentioned program instructions, it can execute the description of the above-mentioned data processing method in the corresponding embodiments mentioned above. Therefore, it will not be elaborated here. In addition, the description of the beneficial effects of using the same method will not be elaborated either. For the technical details not disclosed in the embodiments of the computer-readable storage medium involved in the present application, please refer to the description of the method embodiments of the present application. Figures 3 to 6 For the description of the beneficial effects of using the same method, it will not be elaborated either. For the technical details not disclosed in the embodiments of the computer-readable storage medium involved in the present application, please refer to the description of the method embodiments of the present application.

[0227] The above computer-readable storage medium may be the data processing device provided in any of the foregoing embodiments or the internal storage unit of the above computer device, such as the hard disk or memory of the computer device. The computer-readable storage medium may also be an external storage device of the computer device, such as a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, a flash card, etc., equipped on the computer device. Further, the computer-readable storage medium may also include both the internal storage unit and the external storage device of the computer device. The computer-readable storage medium is used to store the computer program and other programs and data required by the computer device. The computer-readable storage medium may also be used to temporarily store the data that has been output or is to be output.

[0228] In one aspect of the present application, a computer program product is provided. The computer program product includes a computer program, and the computer program is stored in a computer-readable storage medium. A processor of a computer device reads the computer program from the computer-readable storage medium, and the processor executes the computer program, so that the computer device executes the method provided in one aspect of the embodiments of the present application.

[0229] In the description, claims, and drawings of the embodiments of the present application, the terms "first", "second", etc. are used to distinguish different objects, rather than to describe a specific order. In addition, the term "comprising" and any variations thereof are intended to cover non-exclusive inclusion. For example, a process, method, device, product, or equipment that includes a series of steps or units is not limited to the listed steps or modules, but optionally further includes steps or modules not listed, or optionally further includes other step units inherent to these processes, methods, devices, products, or equipment.

[0230] In the embodiments of the present application, the term "module" or "unit" refers to a computer program with a predetermined function or a part of a computer program, which works together with other related parts to achieve a predetermined goal, and can be fully or partially implemented by using software, hardware (such as a processing circuit or a memory), or a combination thereof. Similarly, one processor (or multiple processors or memories) can be used to implement one or more modules or units. In addition, each module or unit can be a part of the overall module or unit that includes the function of the module or unit.

[0231] Those of ordinary skill in the art can realize that the units and algorithm steps of each example described in combination with the embodiments disclosed herein can be implemented by electronic hardware, computer software, or a combination of the two. To clearly illustrate the interchangeability of hardware and software, the composition and steps of each example have been generally described according to functions in the above description. Whether these functions are executed in a hardware or software manner depends on the specific application and design constraints of the technical solution. Professional technicians can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of this application.

[0232] The methods and related devices provided by the embodiments of this application are described with reference to the method flowcharts and / or structural schematic diagrams provided by the embodiments of this application. Specifically, each process and / or block of the method flowchart and / or structural schematic diagram, as well as the combination of the processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing devices to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing devices generate a device for implementing the functions specified in Figure 1 one process or multiple processes and / or structural schematic Figure 1 one block or multiple blocks. These computer program instructions can also be stored in a computer-readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer-readable memory generate a manufactured article including an instruction device, and the instruction device implements the functions specified in Figure 1 one process or multiple processes and / or structural schematic Figure 1 one block or multiple blocks. These computer program instructions can also be loaded onto a computer or other programmable data processing device, so that a series of operation steps are executed on the computer or other programmable device to generate a computer-implemented process, and thus the instructions executed on the computer or other programmable device provide steps for implementing the functions specified in Figure 1 one process or multiple processes and / or structural schematic one block or multiple blocks.

[0233] The above-disclosed are only the preferred embodiments of this application. Of course, the scope of rights of this application cannot be limited thereby. Therefore, equivalent changes made according to the claims of this application still fall within the scope covered by this application.

Claims

1. A data processing method, characterized in that, The method includes: Obtaining the social association relationships of N business objects in a business application, and obtaining the application attribute features of each of the business objects in the business application; N is a positive integer; Based on the social association relationships and application attribute features, calling a community membership model to perform community classification processing on the N business objects to obtain the community membership relationships of the N business objects; the community classification processing is used to classify each of the business objects into each of the communities indicated by the number of communities; Based on the social association relationships and the community membership relationships, optimizing the community membership model, and during the optimization process, predicting and updating the number of communities according to the group sparsity rule to obtain an optimized community membership model; the optimized community membership model is used to perform community classification processing on the N business objects according to the predicted and updated number of communities.

2. The method according to claim 1, wherein The calling a community membership model to perform community classification processing on the N business objects based on the social association relationships and application attribute features to obtain the community membership relationships of the N business objects includes: Based on the social association relationships of the N business objects in the business application and the application attribute features of each of the business objects in the business application, constructing a relationship attribute graph; the relationship attribute graph records N object nodes and a set of connection edges, one of the object nodes corresponds to one of the business objects, and the node attribute feature of one of the object nodes is the application attribute feature of the corresponding business object; one of the connection edges in the set of connection edges is used to connect two object nodes, and the two business objects corresponding to the two object nodes connected by the one connection edge have a social association relationship in the business application; Based on the relationship attribute graph, calling a feature embedding model, and performing feature embedding calculation on the node attribute features of each of the object nodes in the relationship attribute graph through the feature embedding model to obtain an attribute embedding matrix including the node embedding features of each of the object nodes; Inputting the attribute embedding matrix into the community membership model, and performing community classification processing on the N business objects through the community membership model and the attribute embedding matrix to output a community membership relationship matrix; the community membership relationship matrix records the probabilities that each of the object nodes is classified into each of the communities indicated by the number of communities; According to the probabilities that each of the object nodes in the community membership relationship matrix is classified into each of the communities indicated by the number of communities, determining the community to which the business object corresponding to each of the object nodes belongs in each of the communities indicated by the number of communities, and determining the community membership relationships of the N business objects according to the communities to which each business object belongs.

3. The method according to claim 2, wherein The performing feature embedding calculation on the node attribute features of each of the object nodes in the relationship attribute graph through the feature embedding model to obtain an attribute embedding matrix including the attribute embedding features of each of the object nodes includes: Obtaining the number of masks, and selecting Q object nodes to be masked from the N object nodes in the relationship attribute graph according to the number of masks; Q is the number of masks; In the relationship attribute graph, replace the node attribute features of the Q object nodes with learnable attribute masks, and determine the relationship attribute graph containing the Q learnable attribute masks as the masked relationship attribute graph; Through the encoder in the feature embedding model, perform encoding and embedding processing on the node attribute features of each object node in the masked relationship attribute graph to obtain the node embedding features corresponding to each object node; Determine the matrix containing the node embedding features corresponding to each object node as the attribute embedding matrix.

4. The method according to claim 3, characterized in that The step of performing encoding and embedding processing on the node attribute features of each object node in the masked relationship attribute graph through the encoder in the feature embedding model to obtain the node embedding features corresponding to each object node includes: Determine any one of the N object nodes as the first target object node; In the encoder of the feature embedding model, perform feature fusion calculation on the node attribute features of the first target object node and the node attribute features of the neighbor nodes of the first target object node to obtain the node embedding features corresponding to the first target object node; the neighbor nodes of the first target object node refer to the object nodes in the masked relationship attribute graph that have connection edges with the first target object node.

5. The method according to claim 2, characterized in that, The step of performing community classification on the N business objects through the community membership model and the attribute embedding matrix and outputting the community membership relationship matrix includes: Based on the connection relationship between the N object nodes in the relationship attribute graph, determine the adjacency matrix corresponding to the relationship attribute graph; Perform normalization processing on the adjacency matrix to obtain the normalized adjacency matrix corresponding to the adjacency matrix; Obtain the graph convolution activation function and the feature weight matrix of the community membership model; Perform community classification operations on the normalized adjacency matrix, the attribute embedding matrix, and the feature weight matrix according to the operation rules indicated by the graph convolution activation function to obtain the community membership relationship matrix.

6. The method according to claim 3, wherein After performing community classification processing on the N business objects through the community membership model and the attribute embedding matrix and outputting the community membership relationship matrix, the method further includes: Determine the error loss value of the feature embedding model according to the attribute embedding matrix containing the node embedding features of each object node and the node attribute features of each object node; Optimize the feature embedding model according to the error loss value; the optimized feature embedding model is used to perform feature embedding calculation on the node attribute features of each object node in the relationship attribute graph to obtain the optimized attribute embedding matrix containing the optimized node embedding features of each object node.

7. The method according to claim 6, wherein The step of determining the error loss value of the feature embedding model according to the attribute embedding matrix containing the node embedding features of each object node and the node attribute features of each object node includes: In the attribute embedding matrix, replace the node embedding features corresponding to the Q object nodes with learnable embedding masks respectively, and determine the attribute embedding matrix containing Q learnable embedding masks as the masked embedding matrix; In the decoder of the feature embedding model, perform decoding and reconstruction processing on the masked embedding matrix to obtain the reconstructed attribute features corresponding to each of the object nodes; Determine any one of the N object nodes as the second target object node, and determine the object nodes other than the second target object node among the N object nodes as the remaining object nodes; Calculate the error loss between the reconstructed attribute feature corresponding to the second target object node and the node attribute feature through the error loss function to obtain the first error loss value; Calculate the error loss between the reconstructed attribute feature corresponding to the remaining object nodes and the node attribute feature through the error loss function to obtain the second error loss value; Perform a summation operation on the first error loss value and the second error loss value to obtain the error loss value of the feature embedding model.

8. The method according to claim 1, characterized in that The optimizing of the community membership model based on the social association relationship and the community membership relationship includes: Determine the relationship optimization loss value corresponding to each of the business objects according to the social association relationship and the community membership relationship of the N business objects in the business application; Perform a summation process on the relationship optimization loss values corresponding to the N business objects respectively to obtain the membership relationship optimization loss value corresponding to the community membership model; Optimize the community membership model through the membership relationship optimization loss value corresponding to the community membership model.

9. The method according to claim 8, wherein The community membership relationship is determined according to the community membership relationship matrix output by the community membership model, and the community membership relationship matrix records the probabilities of each business object being classified into each community indicated by the number of communities; The determining of the relationship optimization loss value corresponding to each of the business objects according to the social association relationship and the community membership relationship of the N business objects in the business application includes: Determine any one of the N business objects as the target business object; Based on the social association relationship of the N business objects in the business application, determine the first paired object and the second paired object of the target business object among the N business objects; the first paired object refers to the business object among the N business objects that has a social association relationship with the target business object, and the second paired object refers to the business object among the N business objects that has no social association relationship with the target business object; Fuse the probabilities of the target business object being classified into each community in the community membership matrix, the probabilities of the first paired object being classified into each community in the community membership matrix, and the probabilities of the second paired object being classified into each community in the community membership matrix respectively to obtain the first fusion probability vector corresponding to the target business object, the second fusion probability vector corresponding to the first paired object, and the third fusion probability vector corresponding to the second paired object; Calculate the first vector inner product of the first fusion probability and the second fusion probability, and the second vector inner product of the first fusion probability and the third fusion probability through the membership optimization function; Determine the inner product difference between the first vector inner product and the second vector inner product to obtain the relationship optimization loss value corresponding to the target business object.

10. The method according to claim 1, characterized in that The group sparse rule includes a norm constraint function, and the norm constraint function is used to perform column sparse constraint processing on the matrix; the number of communities is determined by the number of matrix columns of the feature weight matrix in the community membership model; The predicting and updating the number of communities according to the group sparse rule includes: Perform column sparse constraint processing on the number of matrix columns of the feature weight matrix of the community membership model through the norm constraint function to obtain a column sparse weight matrix; Update the number of communities according to the number of matrix columns of the column sparse weight matrix.

11. The method according to claim 1, wherein After obtaining the optimized community membership model, the method further includes: Call the optimized community membership model to perform community classification processing on the N business objects according to the predicted and updated number of communities to obtain the optimized community membership relationship of the N business objects; ​ ​ ​ 12. The method according to claim 11, wherein ​ ​ ​ 13. A data processing device, characterized in that, ​ ​ ​ An optimization and update module, which is used to optimize the community membership model based on the social association relationship and the community membership relationship, and during the optimization process, predict and update the number of communities according to the group sparsity rule to obtain an optimized community membership model; the optimized community membership model is used to perform community classification processing on the N business objects according to the predicted and updated number of communities.

14. A computer device, characterized in that, Including: A processor, a memory, and a network interface; The processor is connected to the memory and the network interface. Among them, the network interface is used to provide network communication functions, the memory is used to store computer programs, and the processor is used to call the computer programs so that the computer device executes the method described in any one of claims 1-12.

15. A computer-readable storage medium, characterized in that, A computer program is stored in the computer-readable storage medium, and the computer program is suitable for being loaded and executed by the processor to execute the method described in any one of claims 1-12.

16. A computer program product, characterized in that, The computer program product includes a computer program, the computer program is stored in a computer-readable storage medium, and the computer program is suitable for being read and executed by the processor so that a computer device having the processor executes the method described in any one of claims 1-12.