Method, device, storage medium and electronic device for generating a recommendation list
By introducing edge information into the deep learning model, constructing a project structure graph, and performing similarity calculation and cluster analysis, a recommendation list is generated, which solves the problems of inaccurate recommendation results and cold start in existing models, and improves the accuracy and quality of the recommendation system.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- CHINA TELECOM CORP LTD
- Filing Date
- 2022-12-16
- Publication Date
- 2026-05-29
AI Technical Summary
Existing deep learning models ignore side information about users or items in recommendation systems, resulting in inaccurate recommendation results, poor recommendation quality, and the cold start problem remains unresolved.
By constructing a project structure diagram, calculating the similarity between objects and other objects, obtaining preset similarity and filtering similar object sets, generating a relationship graph and relationship matrix, and combining edge information to generate a recommendation list, cluster analysis and feature vector processing are used to improve recommendation accuracy.
It improves the accuracy and quality of the recommendation system, solves the cold start problem, and achieves more accurate recommendation results.
Smart Images

Figure CN115795167B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of big data recommendation, and more specifically, to a method, apparatus, storage medium, and electronic device for generating recommendation lists. Background Technology
[0002] Over the past few decades, deep learning models have been studied in a wider range of applications due to their ability to solve many complex tasks. Recommender systems are one area of deep learning application. Deep learning can capture non-linear user-item relationships and extract feature values from data from different data sources, such as visual, textual, and contextual data. Therefore, deep learning has brought many performance improvements to recommender systems.
[0003] In recent years, deep learning models have enabled recommendation systems to achieve more advanced recommendation tasks, and many companies have applied deep learning to improve the quality of their recommendations. For example, Netflix used Restricted Boltzmann Machines (RBM-CF) in its recommendation system to achieve high-quality movie recommendations; specifically, it used autoencoders to predict movie ratings. While recent models have shown significant improvements over traditional models, existing deep learning models do not consider side information about users or items (such as age, gender, and work background), which is highly relevant to users and could significantly improve the quality of recommendation systems.
[0004] There is currently no effective solution to the above problems. Summary of the Invention
[0005] This application provides a method, apparatus, storage medium, and electronic device for generating recommendation lists, to at least solve the technical problems of inaccurate recommendation results, poor recommendation quality, and cold start caused by ignoring side information of users or items during the execution of recommendation tasks in related technologies.
[0006] According to one aspect of the embodiments of this application, a method for generating a recommendation list is provided, comprising: constructing a project structure diagram containing a first object and target projects; determining a connection matrix between the first object and target projects from the project structure diagram, wherein the project structure diagram is used to indicate the association relationship between projects and objects in a graphical manner; calculating the similarity between the first object and other objects based on the connection matrix; obtaining a preset similarity; filtering other objects based on the preset similarity and the similarity to obtain a set of second objects similar to the first object; connecting each second object in the set of second objects in the graph to obtain a relationship graph between the first object and each second object; obtaining a relationship matrix between the object and the target project; and generating a recommendation list based on the relationship graph and the relationship matrix, wherein the objects include: the first object and the second objects.
[0007] Optionally, generating a recommendation list based on the relationship graph and the relationship matrix includes: determining the first feature vector corresponding to the first object based on the relationship graph, obtaining the second feature vector corresponding to the edge information of the first object; and generating a recommendation list based on the first feature vector, the second feature vector, and the relationship matrix.
[0008] Optionally, generating a recommendation list based on the first feature vector, the second feature vector, and the relation matrix includes: combining the first feature vector and the second feature vector to obtain a third feature vector; decomposing the third feature vector into encoder hidden layer vectors, performing cluster analysis on the hidden vectors to obtain cluster information matrices corresponding to the first object and the second object respectively; obtaining an object-cluster matrix based on the relation matrix and the cluster information matrix, and generating a recommendation list for each object based on the item information corresponding to the cluster to which each object belongs.
[0009] Optionally, cluster analysis is performed on the hidden vectors to obtain the cluster information matrices corresponding to the first object and the second object, including: randomly selecting K objects from the hidden layer vectors as initial cluster centers; calculating the distance from the hidden layer vector of each object to each cluster center, and assigning the object to the cluster corresponding to the nearest cluster center; obtaining the mean of the hidden layer vectors of all objects in each cluster, and updating the cluster centers using the mean; repeating the above update process until the change in the cluster center position is less than a predetermined threshold or the preset maximum number of iterations is reached, and outputting the cluster information matrices corresponding to each object.
[0010] Optionally, obtaining the object-cluster matrix based on the relation matrix and the cluster information matrix includes: multiplying the relation matrix and the cluster information matrix to obtain the object-cluster matrix.
[0011] Optionally, a recommendation list is generated for each object based on the project information corresponding to the cluster to which each object belongs, including: determining the product of the object-cluster matrix and the cluster information matrix to generate a recommendation list for each object.
[0012] Optionally, filtering other objects based on a preset similarity and similarity to obtain a second set of objects similar to the first object includes: comparing the similarity with a preset similarity, filtering out other objects with a similarity greater than the preset similarity as elements in the second set of objects; and constructing the second set of objects based on the filtering results.
[0013] According to another aspect of the embodiments of this application, an apparatus for generating a recommendation list is also provided, comprising: a construction module, configured to construct a project structure diagram containing a first object and a target project, and determine a connection matrix between the first object and the target project from the project structure diagram, wherein the project structure diagram is used to indicate the association relationship between the project and the object in a graphical representation; a calculation module, configured to calculate the similarity between the first object and other objects based on the connection matrix; a first acquisition module, configured to acquire a preset similarity, and filter other objects based on the preset similarity and the similarity to obtain a set of second objects similar to the first object; a determination module, configured to connect the first object and each second object in the set of second objects in the diagram to obtain a relationship diagram between the first object and each second object; and a second acquisition module, configured to acquire a relationship matrix between the object and the target project, and generate a recommendation list based on the relationship diagram and the relationship matrix, wherein the objects include: the first object and the second objects.
[0014] According to another aspect of the embodiments of this application, a non-volatile storage medium is also provided, the storage medium including a stored program, wherein, when the program is running, it controls the device where the storage medium is located to execute any method for generating a recommendation list.
[0015] According to another aspect of the embodiments of this application, an electronic device is also provided, including: a processor; a memory for storing processor-executable instructions; wherein the processor is configured to execute instructions to implement any method for generating a recommendation list.
[0016] In this embodiment, edge information is introduced. A project structure graph containing a first object and a target project is constructed. A connection matrix between the first object and the target project is determined from the project structure graph. The project structure graph indicates the graphical representation of the relationships between projects and objects. The similarity between the first object and other objects is calculated based on the connection matrix. A preset similarity is obtained, and other objects are filtered based on the preset similarity and the similarity to obtain a set of second objects similar to the first object. Each second object in the first object set is connected in the graph to obtain a relationship graph between the first object and each second object. A relationship matrix between the object and the target project is obtained, and a recommendation list is generated based on the relationship graph and the relationship matrix. The objects include the first object and the second objects. This improves recommendation accuracy and quality, thereby solving the technical problems of inaccurate recommendation results, poor recommendation quality, and cold start caused by ignoring user or project edge information during the recommendation task execution process in related technologies. Attached Figure Description
[0017] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings:
[0018] Figure 1 This is a flowchart illustrating an optional method for generating a recommendation list according to an embodiment of this application;
[0019] Figure 2 This is a schematic diagram of the structure of an optional system for generating a recommendation list according to one embodiment of this application;
[0020] Figure 3 This is a flowchart illustrating the training model during the generation of a recommendation list in one embodiment of this application.
[0021] Figure 4 This is a schematic diagram of an optional apparatus for generating a recommendation list according to an embodiment of this application. Detailed Implementation
[0022] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort should fall within the scope of protection of the present application.
[0023] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0024] To facilitate understanding by those skilled in the art, the technical terms or nouns that may be involved in this application are explained below:
[0025] Deep learning-based recommendation models:
[0026]
[0027] Recommendation models based on autoencoders: An autoencoder is an unsupervised model that attempts to reconstruct its input data in the output layer.
[0028]
[0029]
[0030] According to an embodiment of this application, a method embodiment for generating a recommendation list is provided. It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions. Furthermore, although a logical order is shown in the flowchart, in some cases, the steps shown or described may be executed in a different order than that shown here.
[0031] Figure 1 This is a method for generating a recommendation list according to embodiments of this application, such as... Figure 1 As shown, the method includes the following steps:
[0032] Step S102: Construct a project structure diagram containing the first object and the target project, and determine the connection matrix between the first object and the target project from the project structure diagram. The project structure diagram is used to indicate the association between the project and the object in a graphical manner.
[0033] Step S104: Calculate the similarity between the first object and other objects based on the connection matrix;
[0034] Step S106: Obtain a preset similarity score, and filter other objects based on the preset similarity score and the similarity score to obtain a set of second objects similar to the first object;
[0035] Step S108: Connect the first object with each second object in the set of second objects in the graph to obtain the relationship graph between the first object and each second object.
[0036] Step S110: Obtain the relationship matrix between the object and the target project, and generate a recommendation list based on the relationship graph and the relationship matrix. The objects include: the first object and the second object.
[0037] This method incorporates edge information by constructing a project structure graph containing a first object and target projects. A connection matrix between the first object and target projects is determined from this graph. The project structure graph indicates the graphical representation of the relationships between projects and objects. The similarity between the first object and other objects is calculated based on the connection matrix. A preset similarity is obtained, and other objects are filtered based on this preset similarity and the target project similarity to obtain a set of second objects similar to the first object. Each second object in the first object set is connected to the target object in the graph, resulting in a relationship graph between the first object and each second object. A relationship matrix between the object and the target project is obtained, and a recommendation list is generated based on the relationship graph and the relationship matrix. The objects include both the first and second objects. This method improves recommendation accuracy and quality, thus solving the technical problems of inaccurate recommendation results, poor recommendation quality, and cold start caused by ignoring user or project edge information during recommendation tasks in related technologies.
[0038] In some embodiments of this application, generating a recommendation list based on a relationship graph and a relationship matrix includes: determining a first feature vector corresponding to a first object based on the relationship graph (which may be represented by Fg in some embodiments of this application), obtaining a second feature vector corresponding to the edge information of the first object (which may be represented by Fs in some embodiments of this application); and generating a recommendation list based on the first feature vector, the second feature vector, and the relationship matrix.
[0039] Optionally, generating a recommendation list based on the first feature vector, the second feature vector, and the relation matrix includes: combining the first feature vector and the second feature vector to obtain a third feature vector (which can be represented by Ft in some embodiments of this application); decomposing the third feature vector into encoder hidden layer vectors (also called intermediate vectors, which can be represented by Fe in some embodiments of this application); performing cluster analysis on the hidden vectors to obtain cluster information matrices corresponding to the first object and the second object respectively (which can be represented by UC in some embodiments of this application); obtaining an object-cluster matrix (which can be represented by CI in some embodiments of this application) based on the relation matrix (which can be represented by UI in some embodiments of this application) and the cluster information matrix; and generating a recommendation list for each object based on the item information corresponding to the cluster to which each object belongs.
[0040] As an optional implementation, cluster analysis is performed on the hidden vectors to obtain the cluster information matrices corresponding to the first and second objects, which can be achieved through the following steps: randomly select K objects from the hidden layer vectors as initial cluster centers; calculate the distance from the hidden layer vector of each object to each cluster center, and assign the object to the cluster corresponding to the nearest cluster center; obtain the mean of the hidden layer vectors of all objects in each cluster, and update the cluster centers using the mean; repeat the above update process until the change in the cluster center position is less than a predetermined threshold or the preset maximum number of iterations is reached, and output the cluster information matrices corresponding to each object.
[0041] Specifically, the object-cluster matrix is obtained based on the relation matrix and the cluster information matrix, including: multiplying the relation matrix and the cluster information matrix to obtain the object-cluster matrix (i.e., CI).
[0042] In one optional embodiment of this application, a recommendation list is generated for each object based on the project information corresponding to the cluster to which each object belongs, including: determining the product of the object-cluster matrix and the cluster information matrix (i.e., UC) to generate a recommendation list for each object.
[0043] Optionally, filtering other objects based on a preset similarity and similarity to obtain a second set of objects similar to the first object includes: comparing the similarity with a preset similarity, filtering out other objects with a similarity greater than the preset similarity as elements in the second set of objects; and constructing the second set of objects based on the filtering results.
[0044] In some embodiments of this application, the above-mentioned technical solutions of this application can be implemented through the following steps:
[0045] Step 1: Set the user similarity parameter a, obtain the user-item relationship matrix UI based on historical data, calculate the similarity between users, and generate the user-user similarity graph g based on the similarity parameter a;
[0046] Step 2: Calculate the feature vector Fg (graph-based features extracted by users (nodes)) based on the user-user similarity graph;
[0047] Step 3: Calculate the feature vector Fs based on the edge information (preprocessed and classified user edge information);
[0048] Step 4: Combine Fg and Fs into a single feature vector Ft;
[0049] Step 5: Extract low-dimensional feature vector Fe from Ft using an autoencoder;
[0050] Step 6: Perform user clustering based on Fe and the K-Means algorithm, find a suitable cluster C for each user, and obtain the user-cluster matrix UC;
[0051] Step 7: Generate the cluster-item matrix CI based on the user-cluster matrix UC and the user-item relationship matrix UI;
[0052] Step 8: Generate a recommendation list UI for users based on the user-cluster matrix UC and the cluster-item matrix CI.
[0053] Figure 2 This is a schematic diagram of the system structure for generating a recommendation list in one embodiment of this application, as shown below. Figure 2 As shown, the system mainly includes: a data preprocessing module 20, a feature extraction module 22, a clustering module 24, and a result evaluation module 26. Specifically, the steps performed by each module are as follows:
[0054] Data Preprocessing Module 20: This module performs steps 1-4 as described above. Specifically, it first constructs a graph containing users and items, obtaining the connection matrix UI between users and items. After obtaining UI, it calculates the similarity between users and connects similar users, ultimately obtaining a graph g representing user relationships. Based on this graph, it extracts the following information: calculating the PageRank (a), degree centrality (b), proximity centrality (c), shortest path median centrality (d), load centrality (e), and the average degree (f) of each node's neighborhood. Based on this information, the system obtains a feature vector Fg. Then, to retrieve the most relevant data for a user, the system introduces equilateral information about the user's gender and age (Fs) and combines it with graph-based features to obtain a feature vector Ft, which is then output. The subsequent feature extraction module uses Ft as input.
[0055] Feature Extraction Module 22: As described in step 5 above, this module executes the following process. This module uses the input feature vector Ft, employs an autoencoder to learn the latent information of the vector, and finally outputs the hidden layer vector Fe of the autoencoder. This vector is a low-dimensional representation of user similarity and user side information. Specifically, the autoencoder of this system comprises two structures: an encoder and a decoder. The encoder encodes the Ft vector into a low-dimensional intermediate vector Fe.
[0056] The decoder restores the hidden layer vector Fe to the initial dimension FR. The optimal state is that the decoder can perfectly or approximately restore FR to the original input vector Ft.
[0057] Based on manually set parameters, this module can learn the optimal hidden layer vector Fe from the input and use the feature vector Fe for subsequent clustering.
[0058] Clustering Module 24: This module executes step 6. Based on the low-dimensional feature vector Fe, this module uses the K-means algorithm to cluster users into different clusters, providing cluster information for each user to the result evaluation module. Specifically, the steps performed by this module are as follows:
[0059] K user representations are randomly selected from the feature vector Fe as the initial cluster centers.
[0060] Calculate the distance (Euclidean distance) from each user's feature vector to each cluster center, and assign the user to the cluster corresponding to the nearest cluster center.
[0061] Calculate the mean of all user feature vectors within each cluster, and use this value to update the cluster center.
[0062] Repeat steps 2-3 until the change in cluster center position is less than the specified threshold or the maximum number of iterations specified by the user is reached. This module ultimately outputs the cluster information matrix UC for each user.
[0063] Result Evaluation Module 26: This module is used to perform steps 7-8 above. Based on the cluster information matrix UC of each user obtained by the clustering module, this module introduces the user-item relationship matrix UI, models and obtains the cluster-item relationship matrix CI, and finally generates a recommendation list UI' for the user based on the user-cluster matrix UC and the cluster-item matrix CI.
[0064] Specifically, this module uses the cluster information matrix UC output by the clustering module and the user-project relationship matrix UI to multiply the two matrices to obtain CI, as shown in the formula below:
[0065] CI = UCxUI;
[0066] After obtaining the CI, this module generates the final recommendation list UI' for each user based on the user-cluster matrix UC and the item information corresponding to each user's cluster, as shown in the formula below:
[0067] UI' = UCxCI;
[0068] When a user is a new user, the system can assign them to the corresponding cluster based on the new user's edge information. Then, this module generates a recommendation list for the new user based on the cluster and the cluster-item matrix, which can effectively solve the cold start problem.
[0069] It should be noted that the main method employed by this system is to construct a user-to-user similarity graph based on the connection relationship between users and items, and combine it with user edge information to complete recommendations and solve the cold start problem. Furthermore, this system uses an autoencoder to reduce the dimensionality of user features, making the final clustering step faster. Specifically, the core technology of the data preprocessing module is to model using user similarity and user edge information to provide input for the feature extraction module. This module effectively solves the cold start problem of recommendation systems by introducing edge information. The core technology of the feature extraction module is to use an autoencoder to learn the latent information of users and output low-dimensional vectors for the intermediate layer, reducing the time overhead for the subsequent clustering module. The core technology of the clustering module is to use the K-Menans algorithm and the elbow joint method to automatically determine the number of user clusters and group users into different clusters. The core technology of the result evaluation module is to use user cluster information to generate a cluster-item matrix. When recommending to users, it achieves better recommendations based on user cluster information and the cluster-item matrix. When encountering new users, it can use edge information to calculate the user's cluster and make recommendations based on the cluster-item matrix, effectively solving the cold start problem.
[0070] Figure 3 This is a flowchart illustrating the training model during the generation of a recommendation list in one embodiment of this application, as shown below. Figure 3 As shown, the process mainly includes: data preprocessing, selecting training and test data, setting the number of neurons in each layer and gradually training the autoencoders in each layer to obtain the visualized feature weights of each layer, selecting a suitable classifier to fine-tune the entire network, finding the optimal parameters, classifying the network using the classifier, and obtaining the classification results.
[0071] Figure 4 This is an apparatus for generating a recommendation list according to an embodiment of this application, such as... Figure 4 As shown, the device includes:
[0072] Module 40 is used to construct a project structure diagram containing a first object and a target project, and to determine a connection matrix between the first object and the target project from the project structure diagram. The project structure diagram is used to indicate the relationship between the project and the object in a graphical manner.
[0073] Calculation module 42 is used to calculate the similarity between the first object and other objects based on the connection matrix;
[0074] The first acquisition module 44 is used to acquire a preset similarity, filter other objects based on the preset similarity and similarity, and obtain a set of second objects similar to the first object;
[0075] The module 46 is used to connect the first object with each second object in the set of second objects in the graph to obtain a relationship graph between the first object and each second object.
[0076] The second acquisition module 48 is used to acquire the relationship matrix between the object and the target project, and generate a recommendation list based on the relationship graph and the relationship matrix. The objects include: the first object and the second object.
[0077] In this device, a construction module 40 is used to construct a project structure diagram containing a first object and a target project, and to determine a connection matrix between the first object and the target project from the project structure diagram. The project structure diagram is used to indicate the association between projects and objects in a graphical representation. A calculation module 42 is used to calculate the similarity between the first object and other objects based on the connection matrix. A first acquisition module 44 is used to acquire a preset similarity and to filter other objects based on the preset similarity and the similarity to obtain a set of second objects similar to the first object. A determination module 46 is used to connect the first object and each second object in the set of second objects in the graph to obtain a relationship graph between the first object and each second object. A second acquisition module 48 is used to acquire the relationship matrix between the object and the target project, and to generate a recommendation list based on the relationship graph and the relationship matrix. The objects include the first object and the second objects. This achieves the technical effect of improving the accuracy and quality of recommendations, and solves the technical problems of inaccurate recommendation results, poor recommendation quality, and cold start caused by ignoring the side information of users or projects during the execution of recommendation tasks in related technologies.
[0078] According to another aspect of the embodiments of this application, a non-volatile storage medium is also provided, the storage medium including a stored program, wherein, when the program is running, it controls the device where the storage medium is located to execute any method for generating a recommendation list.
[0079] Specifically, the aforementioned storage medium is used to store program instructions for the following functions, thereby implementing the following functions:
[0080] Construct a project structure diagram containing a first object and a target project. Determine the connection matrix between the first object and the target project from the project structure diagram. The project structure diagram is used to indicate the association between projects and objects in a graphical manner. Calculate the similarity between the first object and other objects based on the connection matrix. Obtain a preset similarity and filter other objects based on the preset similarity and the similarity to obtain a set of second objects similar to the first object. Connect each second object in the first object and the set of second objects in the graph to obtain a relationship graph between the first object and each second object. Obtain the relationship matrix between the object and the target project. Generate a recommendation list based on the relationship graph and the relationship matrix. The objects include the first object and the second objects.
[0081] According to another aspect of the embodiments of this application, an electronic device is also provided, including: a processor; a memory for storing processor-executable instructions; wherein the processor is configured to execute instructions to implement any method for generating a recommendation list.
[0082] The sequence numbers of the embodiments in this application are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.
[0083] In the above embodiments of this application, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments.
[0084] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. The device embodiments described above are merely illustrative; for example, the division of units can be a logical functional division, and in actual implementation, there may be other division methods. For instance, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the displayed or discussed mutual coupling, direct coupling, or communication connection may be through some interfaces; the indirect coupling or communication connection between units or modules may be electrical or other forms.
[0085] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0086] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0087] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard drive, magnetic disk, or optical disk.
[0088] The above description is only a preferred embodiment of this application. It should be noted that for those skilled in the art, several improvements and modifications can be made without departing from the principle of this application, and these improvements and modifications should also be considered within the scope of protection of this application.
Claims
1. A method for generating a recommendation list, characterized in that, include: Construct a project structure diagram containing a first object and a target project, and determine a connection matrix between the first object and the target project from the project structure diagram, wherein the project structure diagram is used to indicate the association relationship between the project and the object in a graphical manner; Calculate the similarity between the first object and other objects based on the connection matrix; A preset similarity is obtained, and other objects are filtered based on the preset similarity and the similarity to obtain a second set of objects similar to the first object; Connect the first object with each of the second objects in the second object set in the diagram to obtain a relationship diagram between the first object and each of the second objects. A relationship matrix between an object and the target project is obtained. A recommendation list is generated based on the relationship graph and the relationship matrix. Specifically, a first feature vector corresponding to the first object is determined based on the relationship graph, and a second feature vector corresponding to the edge information of the first object is obtained. The first and second feature vectors are combined to obtain a third feature vector. The third feature vector is decomposed into encoder hidden layer vectors, and cluster analysis is performed on the hidden layer vectors to obtain cluster information matrices corresponding to the first and second objects respectively. An object-cluster matrix is obtained based on the relationship matrix and the cluster information matrix. A recommendation list is generated for each object based on the project information corresponding to the cluster to which each object belongs. The objects include the first object and the second object.
2. The method according to claim 1, characterized in that, Cluster analysis is performed on the hidden layer vectors to obtain cluster information matrices corresponding to the first object and the second object, respectively, including: K objects are randomly selected from the hidden layer vectors as the initial cluster centers; Calculate the distance from the hidden layer vector corresponding to each object to each cluster center, and assign the object to the cluster corresponding to the nearest cluster center; Obtain the mean of the hidden layer vectors of all objects in each cluster, and use this mean to update the cluster center; Repeat the above update process until the change in the cluster center position is less than a predetermined threshold or the preset maximum number of iterations is reached, and output the cluster information matrix corresponding to each object.
3. The method according to claim 1, characterized in that, Based on the relation matrix and the cluster information matrix, an object-cluster matrix is obtained, including: The object-cluster matrix is obtained by multiplying the relation matrix by the cluster information matrix.
4. The method according to claim 1, characterized in that, A recommendation list is generated for each object based on the project information corresponding to the cluster to which each object belongs, including: The product of the object-cluster matrix and the cluster information matrix is used to generate the recommendation list for each object.
5. The method according to claim 1, characterized in that, Based on the preset similarity and the similarity score, other objects are filtered to obtain a second set of objects similar to the first object, including: The similarity is compared with the preset similarity, and other objects with a similarity greater than the preset similarity are selected as elements in the second object set. The second object set is constructed based on the filtering results.
6. An apparatus for generating a recommendation list, characterized in that, include: A construction module is used to construct a project structure diagram containing a first object and a target project, and to determine a connection matrix between the first object and the target project from the project structure diagram, wherein the project structure diagram is used to indicate the association relationship between the project and the object in a graphical manner; The calculation module is used to calculate the similarity between the first object and other objects based on the connection matrix; The first acquisition module is used to acquire a preset similarity, and filter the other objects based on the preset similarity and the similarity to obtain a second set of objects similar to the first object; The determination module is used to connect the first object with each second object in the second object set in the graph to obtain a relationship graph between the first object and each second object; The second acquisition module is used to acquire the relationship matrix between the object and the target project, and generate a recommendation list based on the relationship graph and the relationship matrix. Specifically, it determines a first feature vector corresponding to the first object based on the relationship graph, and acquires a second feature vector corresponding to the edge information of the first object; it combines the first feature vector and the second feature vector to obtain a third feature vector; it decomposes the third feature vector into encoder hidden layer vectors, performs cluster analysis on the hidden layer vectors to obtain cluster information matrices corresponding to the first object and the second object respectively; it obtains an object-cluster matrix based on the relationship matrix and the cluster information matrix, and generates a recommendation list for each object based on the project information corresponding to the cluster to which each object belongs; the objects include the first object and the second object.
7. A non-volatile storage medium, characterized in that, The storage medium includes a stored program, wherein, when the program is executed, it controls the device where the storage medium is located to perform the method for generating a recommendation list as described in any one of claims 1 to 6.
8. An electronic device, characterized in that, include: processor; Memory used to store the processor's executable instructions; The processor is configured to execute the instructions to implement the method for generating a recommendation list as described in any one of claims 1 to 6.