A recommendation system and recommendation method based on knowledge graph decoupling

By building a knowledge graph in the recommendation system and adopting the recommendation model RDK-GCN based on cyclic decoupling, the shortcomings in the feature representation and relationship composition of the existing recommendation system are solved, and higher interpretability and accuracy are achieved.

CN114328763BActive Publication Date: 2025-06-06SOFTTEK INFORMATION SYST (WUXI) CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111670817.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-12-31
Publication Date
2025-06-06
Estimated Expiration
2041-12-31

AI Technical Summary

Technical Problem

When learning the feature representation of users and items, existing recommendation systems usually adopt a uniform sampling method, ignore fine-grained features, and lack complexity in relational composition, resulting in insufficient interpretability and personalized information content capture.

Method used

By constructing a knowledge graph, user behavior data is constructed into a triple of entity-relationship-entity, and the recommendation model RDK-GCN based on cyclic decoupling is adopted, including feature decoupling layer, neighborhood aggregation layer and self-attention layer, the decoupling characteristics of users and objects are extracted, and confidence is calculated through the self-attention mechanism, ultimately improving the interpretability and accuracy of the recommended results.

Benefits of technology

The interpretability and accuracy of the recommendation system are improved, and the representation ability of user characteristics and item characteristics is improved through the decoupling feature extraction and self-attention mechanism, and the robustness of the recommendation system is enhanced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114328763B_ABST
    Figure CN114328763B_ABST
Patent Text Reader

Abstract

The present invention discloses a recommendation system based on knowledge graph decoupling and a recommendation method thereof. Obtain user behavior data; take users, items, user inherent attribute features and item inherent attribute features in the user behavior data as entities, and refine the above entity relationships, and finally obtain a triple knowledge graph of entity-relationship-entity; build a recommendation model RDK-GCN based on cyclic decoupling; obtain the recommended entity features and the recommended entity features according to the entity features output by RDK-GCN, and then calculate the similarity of the above two features, and finally recommend the top n recommended entities with higher similarity to the recommended entity. By performing cyclic feature decoupling on the adjacent entities of the entities in the knowledge graph, the latent factors representing different semantics in the entity features are separated, the latent factors with greater impact on the target task are screened out, and the impact of irrelevant latent factors is reduced, so as to achieve the relative independence of different tasks and effectively improve the robustness of the recommendation system.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of recommendation systems, and in particular to a recommendation system based on knowledge graph decoupling and a recommendation method thereof. Background Art

[0002] With the continuous development of the Internet of Things and social networks, and the advent of the era of big data, how to efficiently obtain the data people want under the situation of information overload has become a problem that must be faced. When users do not have a clear search target or cannot give an accurate description of the target, the retrieval method cannot provide a good experience. At this time, it is necessary to rely on the recommendation system to actively recommend content that users may like.

[0003] Existing recommendation systems usually focus on the sequence modeling of recommended objects and ignore more fine-grained features, and usually use uniform sampling methods when learning the feature representation of neighbor nodes. The composition of real-world relationships may have complex factors that describe users and items from different angles. The composition of one relationship may only rely on a few factors, while the composition of another relationship may require the integration of a large number of factors. Therefore, these recommendation models are insufficient in interpretability and capturing personalized information content.

[0004] In order to solve the problems of explainability of recommendation systems and capturing personalized information content, the present invention proposes a recommendation system and a recommendation method based on knowledge graph decoupling to improve the shortcomings of existing solutions. Summary of the invention

[0005] One purpose of the present invention is to overcome the defects of the existing recommendation system. The present invention proposes a recommendation method based on knowledge graph decoupling. By introducing the knowledge graph, the information in the data set is constructed into a triple of entity-relationship-entity, and then the neighborhood entity v of entity u is decoupled feature extracted and cyclically decoupled to learn the decoupled features that have a greater impact on entity u, calculate the confidence of the decoupled features of the neighborhood entity v and the decoupled features of entity u, and finally calculate the entity u features through the self-attention mechanism; finally, the recommendation result is obtained based on the similarity size, thereby improving the interpretability and accuracy of the model.

[0006] In order to solve the problems of the prior art, the technical solution of the present invention comprises the following steps:

[0007] A recommendation method based on knowledge graph decoupling includes the following steps:

[0008] Step (1): Build a knowledge graph.

[0009] 1-1 Obtaining user behavior data; the user behavior data includes users, items, user inherent attribute characteristics and item inherent attribute characteristics;

[0010] The user inherent attribute characteristics refer to the user's inherent attributes such as gender, age, occupation, interests, etc.

[0011] The inherent attribute characteristics of the item refer to the inherent attributes of the item, such as price and size.

[0012] 1-2 Take users, items, user inherent attribute features and item inherent attribute features in user behavior data as entities, and refine the above entity relationships to finally obtain a triple knowledge graph of entity-relationship-entity;

[0013] The entity relationships include relationships between users, interactive relationships between users and items, relationships between items, relationships between users and their inherent attributes, and relationships between items and their inherent attributes;

[0014] Step (2): Build the recommendation model RDK-GCN based on loop decoupling;

[0015] The recommendation model based on cyclic decoupling includes an input layer, a feature decoupling layer, a neighborhood aggregation layer, a self-attention layer, and a similarity calculation layer;

[0016] The input layer is used to receive entity u information in the knowledge graph and vectorize it; obtain several adjacent entities v corresponding to the entity u according to the knowledge graph and vectorize them; obtain the relationship between entity u and adjacent entity v according to the knowledge graph and vectorize it;

[0017] The feature decoupling layer is used to project the entity u vectorized representation output by the input layer, the adjacent entity v vectorized representation, or the entity feature output by the self-attention layer in the previous iteration into k subspaces for feature decoupling, so as to extract semantic latent factors and obtain decoupled features;

[0018] The neighborhood aggregation layer is used to receive the decoupled features output by the feature decoupling layer, calculate the confidence between the adjacent entity v and the entity u, and then use the confidence to update the decoupled features of the adjacent entity v and the entity u to obtain the updated decoupled features;

[0019] The self-attention layer is used to receive the aggregated features output by the domain aggregation layer and the decoupled features output by the feature decoupling layer, perform averaging processing on them, and return them to the feature decoupling layer or output the features of entity u;

[0020] The output layer is used to output the decoupled features given by the self-attention layer under the maximum number of iterations, which are recorded as entity u features;

[0021] Step (3): Obtain the entity u to be recommended based on the entity u features output by the recommendation model RDK-GCN based on loop decoupling 1Features and recommended entities u 2 feature, and then calculate the similarity of the above two features, and finally recommend entity u 2 Recommend the top n recommended entities u with the highest similarity 1 .

[0022] Another object of the present invention is to provide a recommendation system based on knowledge graph decoupling, comprising:

[0023] The knowledge graph module is used to extract the entity relationships of users, items, user-specific attributes and item-specific attributes in the user behavior data, and finally obtain a triple knowledge graph of entity-relationship-entity.

[0024] The recommendation module based on loop decoupling is used to implement the recommended entity u using the recommendation model RDK-GCN based on loop decoupling. 1 Features and recommended entities u 2 Feature extraction;

[0025] Similarity calculation module, used to treat the recommended entity u 1 Features and recommended entities u 2 The similarity of the features is calculated and finally the recommended entity u is 2 Recommend the top n recommended entities u with the highest similarity 1 .

[0026] Compared with the existing recommendation method, the recommendation method proposed in the present invention has the following advantages:

[0027] (1) Explainability: By introducing knowledge graphs and using the relationships between entities to explain recommendation results and analyze the characteristics of recommended objects, we can not only improve system transparency, but also increase users’ trust and satisfaction with the system and the probability of users choosing recommended products, effectively improving the explainability of the recommendation system.

[0028] (2) Accuracy: More feature information can be separated through loop decoupling, and feature representations that are more consistent with the entity can be extracted by aggregating adjacent entities and using the self-attention mechanism, effectively improving the accuracy of the recommendation results.

[0029] (3) Robustness: By performing cyclic feature decoupling on the adjacent entities of entity u in the knowledge graph, the latent factors representing different semantics in the entity features are separated, the latent factors with greater impact on the target task are screened out, and the impact of irrelevant latent factors is reduced, so as to achieve the relative independence of different tasks and effectively improve the robustness of the recommendation system. BRIEF DESCRIPTION OF THE DRAWINGS

[0030] Figure 1 is an overall flow chart of the method of the present invention;

[0031] Figure 2 This is a structural diagram of the recommended model RDK-GCN based on loop decoupling in the present invention;

[0032] Figure 3 This is a unit structure diagram of the loop decoupling part in the present invention. DETAILED DESCRIPTION

[0033] The following will further illustrate a recommendation system and recommendation method based on knowledge graph decoupling provided by the present invention in conjunction with the accompanying drawings.

[0034] See also Figure 1 , which is a flow chart of a recommendation method based on knowledge graph decoupling. First, the data in the dataset is constructed into entity-relationship-entity triples to construct a knowledge graph. Then, a cyclic decoupling model is used to obtain features that are closer to the entity. Finally, the recommendation result is obtained by calculating the similarity between user features and item features. The recommendation result can be explained through the relationship between entities in the knowledge graph, thereby improving the interpretability of the system.

[0035] A recommendation method based on knowledge graph decoupling in the present invention comprises the following steps:

[0036] Step (1): Build a knowledge graph.

[0037] 1-1 Obtaining user behavior data; the user behavior data includes users, items, user inherent attribute characteristics and item inherent attribute characteristics;

[0038] The user inherent attribute characteristics refer to the user's inherent attributes such as gender, age, occupation, interests, etc.

[0039] The inherent attribute characteristics of the item refer to the inherent attributes of the item, such as price and size.

[0040] 1-2 Take users, items, user inherent attribute features and item inherent attribute features in user behavior data as entities, and refine the above entity relationships to finally obtain a triple knowledge graph of entity-relationship-entity;

[0041] The entity relationships include relationships between users, interactive relationships between users and items, relationships between items, relationships between users and their inherent attributes, and relationships between items and their inherent attributes;

[0042] Step (2): Build the recommendation model RDK-GCN based on loop decoupling, see Figure 2-3 ;

[0043] The recommendation model based on cyclic decoupling includes an input layer, a feature decoupling layer, a neighborhood aggregation layer, a self-attention layer, and a similarity calculation layer;

[0044] The input layer is used to receive entity u information in the knowledge graph and vectorize it; obtain several adjacent entities v corresponding to the entity u according to the knowledge graph and vectorize them; obtain the relationship between entity u and adjacent entity v according to the knowledge graph and vectorize it;

[0045] The feature decoupling layer is used to project the entity u vectorized representation output by the input layer, the adjacent entity v vectorized representation, or the entity feature output by the self-attention layer in the previous iteration into k subspaces for feature decoupling, so as to extract semantic latent factors and obtain decoupled features, where k is usually set to 8; specifically:

[0046]

[0047] Where t represents the current iteration number, m≥t≥1, and m represents the maximum iteration number, which is usually set to 3; represents the decoupled features of object i in the kth subspace at the tth iteration, where object i represents entity u or adjacent entity v; W k represents the weight of the kth subspace; b k represents the offset of the k-th subspace; σ(·) represents the activation function, usually the ReLU activation function; is the vectorized representation of object i;

[0048] The neighborhood aggregation layer is used to receive the decoupled features output by the feature decoupling layer, calculate the confidence between the adjacent entity v and the entity u, and then use the confidence to update the decoupled features of the adjacent entity v and the entity u to obtain the updated decoupled features; specifically:

[0049] (1) Calculate the confidence between the decoupled features of the neighborhood entity v and entity u. The specific calculation method is:

[0050]

[0051] Where μ represents the coefficient for adjusting confidence, which is usually set to 1; represents the confidence of entity u and neighbor entity v in the k-th subspace in the t-th iteration, which is used to measure whether the decoupled features of neighbor entity v in the k-th subspace are used to construct the decoupled features of entity u; softmax(·) represents the softmax activation function; represents the decoupled features of the k-th subspace of the neighborhood entity v in the t-th iteration; represents the decoupled features of the k-th subspace of entity u in the t-th iteration; r u,v Represents the vectorized representation of the relationship between entity u and its neighborhood entity v;

[0052] (2) Aggregate the decoupled features of entity u and the decoupled features of the neighborhood entity v through confidence, and then update the decoupled features through the activation function. The specific calculation method is:

[0053]

[0054] The self-attention layer is used to receive the aggregated features output by the domain aggregation layer and the decoupled features output by the feature decoupling layer, perform averaging processing, and return them to the feature decoupling layer or output the features of entity u; specifically:

[0055] Decouple features output by feature decoupling layer through self-attention Decoupled features from the output of the neighborhood aggregation layer Combined to deepen the extraction of entity u decoupling features, the specific calculation method is:

[0056]

[0057] Among them, mean{·} represents the mean operation of two decoupled features;

[0058] The output layer is used to output the decoupled features given by the self-attention layer under the maximum number of iterations Denoted as entity u feature;

[0059] Step (3): Obtain the entity u to be recommended based on the entity u features output by the recommendation model RDK-GCN based on loop decoupling 1 feature and the recommended entity u 2 feature Then calculate the similarity of the above two features and finally recommend the entity u 2 Recommend the top n recommended entities u with the highest similarity 1 ;

[0060]

[0061] in Represents the entity to be recommended u 1 and the recommended entity u 2 The similarity between .

[0062] The experiment uses the Pytorch framework to implement the model of the present invention. In the experiment of the present invention, the learning rate is initialized to 0.02, the number of iterations t is set to 3, k is set to 8, dropout is set to 0.35, μ is set to 1, and the negative log-likelihood loss function is used as an indicator to measure the prediction results of the model. This embodiment is experimented on a data set and compared with five benchmark models such as MLP, DeepWalk, GCN, GAT, and DisenGCN. See Table 1. The experimental results show that the model RDK-GCN of the present invention performs well or on par with the other benchmark models on the three data sets. At the same time, the model of the present invention can improve the interpretability of the recommendation results by introducing the knowledge graph, so it can be determined that the model of the present invention is better than other benchmark models.

[0063] Table 1 Comparison of this method with existing methods on the dataset

[0064]

[0065] The above embodiments are only used to help understand the method and core idea of ​​the present invention. It should be noted that, for those skilled in the art, several improvements and modifications can be made to the present invention without departing from the principles of the present invention, and these improvements and modifications also fall within the scope of protection of the claims of the present invention.

[0066] The above description of the disclosed embodiments enables one skilled in the art to implement or use the present invention. Various modifications to these embodiments will be apparent to one skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the present invention. Therefore, the present invention will not be limited to the embodiments shown herein, but rather to the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A recommendation method based on knowledge graph decoupling, Features The following steps are involved: Step (1): Build a knowledge graph; 1-1 Obtaining user behavior data; the user behavior data includes users, items, user inherent attribute characteristics and item inherent attribute characteristics; 1-2 Take users, items, user inherent attribute features and item inherent attribute features in user behavior data as entities, and extract entity relationships, and finally obtain a triple knowledge graph of entity-relationship-entity; Step (2): Build the recommendation model RDK-GCN based on loop decoupling; The recommendation model based on cyclic decoupling includes an input layer, a feature decoupling layer, a neighborhood aggregation layer, a self-attention layer, and a similarity calculation layer; The input layer is used to receive entity u information in the knowledge graph and vectorize it; obtain several adjacent entities v corresponding to the entity u according to the knowledge graph and vectorize them; obtain the relationship between entity u and adjacent entity v according to the knowledge graph and vectorize it; The feature decoupling layer is used to project the entity u vectorized representation output by the input layer, the adjacent entity v vectorized representation, or the entity feature output by the self-attention layer in the previous iteration into k subspaces for feature decoupling, so as to extract semantic latent factors and obtain decoupled features; The neighborhood aggregation layer is used to receive the decoupled features output by the feature decoupling layer, calculate the confidence between the adjacent entity v and the entity u, and then use the confidence to update the decoupled features of the adjacent entity v and the entity u to obtain the updated decoupled features; The self-attention layer is used to receive the aggregated features output by the neighborhood aggregation layer and the decoupled features output by the feature decoupling layer, perform averaging processing on them, and return them to the feature decoupling layer or output the features of entity u; The output layer is used to output the decoupled features given by the self-attention layer under the maximum number of iterations. Denoted as entity u feature; Step (3): Obtain the entity u to be recommended based on the entity u features output by the recommendation model RDK-GCN based on loop decoupling 1 feature and the recommended entity u 2 feature Then calculate the similarity of the above two features and finally recommend the entity u 2 Recommend the top n recommended entities u with the highest similarity 1 .

2. According to the recommendation method based on knowledge graph decoupling according to claim 1, Features The entity relationships described in step 1-2 include the relationship between users, the interactive relationship between users and items, the relationship between items, the relationship between users and users' inherent attribute characteristics, and the relationship between items and items' inherent attribute characteristics.

3. According to the recommendation method based on knowledge graph decoupling according to claim 1, Features The feature decoupling layer in step (2) is specifically: Where t represents the current number of iterations, m≥t≥1, and m represents the maximum number of iterations; represents the decoupled features of object i in the kth subspace at the tth iteration, where object i represents entity u or adjacent entity v; W k represents the weight of the kth subspace; b k represents the offset of the k-th subspace; σ(·) represents the activation function, usually the ReLU activation function; is the vectorized representation of object i.

4. According to the recommendation method based on knowledge graph decoupling according to claim 3, Features The neighborhood aggregation layer in step (2) is specifically: (1) Calculate the confidence between the decoupled features of the neighborhood entity v and entity u. The specific calculation method is: Where μ represents the coefficient for adjusting confidence; represents the confidence of entity u and neighbor entity v in the k-th subspace in the t-th iteration, which is used to measure whether the decoupled features of neighbor entity v in the k-th subspace are used to construct the decoupled features of entity u; softmax(·) represents the softmax activation function; represents the decoupled features of the k-th subspace of the neighborhood entity v in the t-th iteration; represents the decoupled features of the k-th subspace of entity u in the t-th iteration; r u,v Represents the vectorized representation of the relationship between entity u and its neighborhood entity v; (2) Aggregate the decoupled features of entity u and the decoupled features of the neighborhood entity v through confidence, and then update the decoupled features through the activation function. The specific calculation method is:

5. According to the recommendation method based on knowledge graph decoupling according to claim 4, Features The self-attention layer in step (2) is specifically: Decouple features output by feature decoupling layer through self-attention Decoupled features from the output of the neighborhood aggregation layer Combined to deepen the extraction of entity u decoupling features, the specific calculation method is: Among them, mean{·} represents the averaging operation of two decoupled features.

6. A recommendation method based on knowledge graph decoupling according to claim 5, Features The similarity calculation formula in step (3) is as follows: in Represents the entity u to be recommended 1 and the recommended entity u 2 The similarity between .

7. A recommendation system based on knowledge graph decoupling, Features include: The knowledge graph module is used to extract the entity relationships of users, items, user-specific attributes and item-specific attributes in the user behavior data, and finally obtain a triple knowledge graph of entity-relationship-entity. The recommendation module based on loop decoupling is used to implement the recommended entity u using the recommendation model RDK-GCN based on loop decoupling. 1 Features and recommended entities u 2 Feature extraction; The recommendation model RDK-GCN based on loop decoupling includes an input layer, a feature decoupling layer, a neighborhood aggregation layer, a self-attention layer, and a similarity calculation layer; The input layer is used to receive entity u information in the knowledge graph and vectorize it; obtain several adjacent entities v corresponding to the entity u according to the knowledge graph and vectorize them; obtain the relationship between entity u and adjacent entity v according to the knowledge graph and vectorize it; The feature decoupling layer is used to project the entity u vectorized representation output by the input layer, the adjacent entity v vectorized representation, or the entity feature output by the self-attention layer in the previous iteration into k subspaces for feature decoupling, so as to extract semantic latent factors and obtain decoupled features; The neighborhood aggregation layer is used to receive the decoupled features output by the feature decoupling layer, calculate the confidence between the adjacent entity v and the entity u, and then use the confidence to update the decoupled features of the adjacent entity v and the entity u to obtain the updated decoupled features; The self-attention layer is used to receive the aggregated features output by the neighborhood aggregation layer and the decoupled features output by the feature decoupling layer, perform averaging processing on them, and return them to the feature decoupling layer or output the features of entity u; The output layer is used to output the decoupled features given by the self-attention layer under the maximum number of iterations. Denoted as entity u feature; Similarity calculation module, used to treat the recommended entity u 1 Features and recommended entities u 2 The similarity of the features is calculated and finally the recommended entity u is 2 Recommend the top n recommended entities u with the highest similarity 1 .

Citation Information

Patent Citations

  • Information recommendation method and system based on knowledge graph and graph convolutional network

    CN112765490A

  • Knowledge graph embedded prediction model-based interpretability method and system

    CN113239168A