A personalized recommendation method based on interactive bipartite graph reconstruction neighborhood

By reconstructing proximity-based personalized recommendation methods using interactive bipartite graphs, sampling collaborative paths and replacing users' first-order nearest neighbors, and combining self-attention layers and attention weight generation, this approach solves the problem of insufficient recommendation of low-popularity items in existing technologies, achieving highly accurate and diverse recommendations.

CN116108260BActive Publication Date: 2026-01-06DALIAN POLYTECHNIC UNIVERSITY
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211416108.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-11-12
Publication Date
2026-01-06
Estimated Expiration
2042-11-12

AI Technical Summary

Technical Problem

In pursuing accuracy, existing recommendation systems often neglect to recommend items with low popularity, resulting in a monotonous user experience and a lack of novelty.

Method used

By reconstructing proximity-based personalized recommendation methods using interactive bipartite graphs, collaborative paths are sampled and average item popularity is calculated. The path with the lowest popularity is replaced with the user's first-order nearest neighbor. By combining self-attention layers and attention weights, neighbor node information is aggregated, and finally, predictive rating recommendations are made.

Benefits of technology

While maintaining the accuracy of the recommendation system, it improved the diversity of recommendations and enhanced the novelty and satisfaction of the user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116108260B_ABST
    Figure CN116108260B_ABST
Patent Text Reader

Abstract

The application discloses a personalized recommendation method based on interactive bipartite graph reconstruction neighborhood, comprising the following steps: counting the interaction information of users to items and the attribute information of items, constructing a user-item bipartite graph, a knowledge graph and a collaborative knowledge graph; randomly sampling a collaborative path for each user on the interactive bipartite graph; calculating the average item popularity of each collaborative path of each user, and selecting all item nodes in the X paths with the lowest average item popularity to replace the original first-order neighbors of the user; inputting the embedding of the reconstructed first-order neighbors of all users into a self-attention layer; generating attention weights based on the relationship between each node and neighbor nodes, and aggregating neighbor node information; and predicting a recommendation score. The beneficial effects are that the recommendation method can effectively reduce the influence of popular items on the recommendation result, improve the diversity of the recommendation while maintaining the accuracy of the recommendation system.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of recommendation technology, specifically a personalized recommendation method based on reconstructing proximity from an interactive bipartite graph. Background Technology

[0002] The continuous maturation of recommendation algorithms has led to the increasingly widespread application of recommendation systems in people's lives, such as in e-commerce, short video recommendations, and search engines. Neural network-based recommendation systems, with their high accuracy, have gradually become the mainstream. To improve accuracy, most existing recommendation systems currently tend to favor recommending highly popular items, causing many items with low popularity to be overlooked. Accuracy is only one metric for evaluating the performance of a recommendation system. For users, constantly recommending familiar items can be tiresome, while occasionally recommending unfamiliar or less popular items can provide novelty, surprise, and satisfaction. Therefore, while pursuing improved recommendation accuracy, research into enhancing recommendation diversity—that is, personalized recommendation methods—is becoming increasingly important. Summary of the Invention

[0003] To overcome the shortcomings of existing technologies, the technical problem solved by this invention is to provide a personalized recommendation method based on reconstructing proximity from an interactive bipartite graph, which aims to maintain the accuracy of existing recommendation systems while recommending long-tail items that match users' interests.

[0004] To achieve the above objectives, the present invention employs the following technical solution:

[0005] A personalized recommendation method based on reconstructing proximity from an interactive bipartite graph is characterized by the following steps:

[0006] Step 1: Obtain the user-item bipartite graph G1 = {(u,i)|u∈U,i∈I}, the knowledge graph G2 = {(h,r,t)|h,t∈ε,r∈R}, and the collaborative knowledge graph G3 = {(h,r,t)|h,t∈ε′,r∈R′};

[0007] In the bipartite graph G1, (u,i) represents a user u who has interacted with item i, and U = {u1,u2,…,u} |U| Let} represent the user set, I = {i1, i2, ..., i |I|} represents a set of items. In knowledge graph G2, ε = {e1, e2, ..., e} |ε| Let R = {r1, r2, ..., r} represent a set of entities. |R|} represents a set of relations; where ε′=ε∪U, R′=R∪{interactions}, |U| represents the total number of users, |I| represents the total number of items, |ε| represents the total number of entities, and |R| represents the total number of relations;

[0008] Let N be the set of first-order nearest neighbors of user u. u ;

[0009] Let N be the set of first-order nearest neighbors of item i. i ;

[0010] Step 2: Randomly sample collaborative paths for each user on the interaction bipartite graph;

[0011] Assuming the length of the collaborative path is K, the sampling method for each path is as follows: starting from the target user, randomly select a node from its neighboring nodes, and then randomly sample neighboring nodes from the neighboring nodes of the sampled node, until the path length reaches K; where the attributes of the neighboring nodes at each level are as follows:

[0012] When k=1, its first-order neighbor is denoted as

[0013] When k is odd and k≠1, its k-th order neighbor is denoted as

[0014] When k is even, its k-th order neighbor is denoted as

[0015] Step 3: Calculate the average item popularity of each user's collaborative path, and select all item nodes in the X paths with the lowest average item popularity to replace the user's original first-order nearest neighbors;

[0016] The formula for calculating the average item popularity for each path is as follows:

[0017]

[0018] In equation (1), K represents the path length, which is the number of nodes in the path; K′ represents the number of item nodes in the path; a i `i` is a parameter indicating whether the i-th node is incremented. Its value is 0 or 1; when the i-th node is an item node, its value is 1, otherwise it is 0. i This represents the popularity of the i-th node, which is the number of interactions between the item node and the user node. For example, if an item is interacted with by three users, then the popularity of the item is 3.

[0019] According to equation (1), select the X collaborative paths with the lowest average item popularity; take all item nodes in these collaborative paths as the new first-order nearest neighbors of user u, that is:

[0020]

[0021] Step 4: Input the reconstructed first-order nearest neighbor embeddings of all users into the attention layer to obtain the final user vector e;

[0022] In the self-attention layer, three different vectors are obtained by embedding 'a' into each input node using equations (3), (4), and (5) through three feature transformations:

[0023] Query m =W Q a m (3)

[0024] Key m =W K a m (4)

[0025] Value m =W V a m (5)

[0026] W in equations (3), (4), and (5) Q W K W V Given a trainable transformation matrix, the attention weights between embeddings are calculated using the following formula:

[0027] α m,n =Query m Key n (6)

[0028] Where m, n∈N u ′, use a softmax to standardize the above equation (6):

[0029]

[0030] After obtaining the self-attention weights between any two node embeddings using equation (7), the output embedding of each node is calculated by weighted summation:

[0031]

[0032] Step 5: Generate attention weights based on the relationship between each node and its neighboring nodes, and aggregate neighboring node information;

[0033] Step 5.1: The attention weights generated based on different relationships are as follows:

[0034] π(h,r,t)=(W r e t ) Ttanh((W r e h +e r (9)

[0035] Among them, W r It is a trainable transformation matrix based on the r relation, e h ,e r ,e t These correspond to head entity embedding, relation embedding, and tail entity embedding, respectively, and are then normalized using softmax.

[0036]

[0037] Step 5.2: Use equation (11) to perform a weighted summation of the neighbor information of any head entity to obtain the neighbor information:

[0038]

[0039] The head entity h can be either a user node or an item node;

[0040] The higher-order representation of each entity is obtained from its lower-order embedding representation and lower-order neighbor information:

[0041]

[0042] Where W1 and W2 are trainable transformation matrices;

[0043] Step 6: Use equation (12) to obtain the embedding representations of users and items at each order, and finally predict the score using the inner product:

[0044]

[0045]

[0046]

[0047] Equations (13) and (14) concatenate the user embeddings and item embeddings at each level, and select the top N items of the descending sorted set of the predicted scores as the recommendation results, and recommend them to user u.

[0048] Compared with the prior art, the beneficial effects of the present invention are: the present invention reconstructs the user's first-order nearest neighbors through a sampling strategy and uses self-attention before the user aggregates the first-order nearest neighbor information, which can effectively reduce the influence of popular items on the recommendation results and improve the diversity of recommendations while maintaining the accuracy of the recommendation system. Attached Figure Description

[0049] Figure 1 This is a schematic diagram of the process of the present invention;

[0050] Figure 2 Performance graphs for the accuracy metric (Recall) in the TOP20 and TOP100 recommendations;

[0051] Figure 3 Performance graphs of the diversity index (AD) in the TOP20 and TOP100 recommendations. Detailed Implementation

[0052] This invention provides a personalized recommendation method based on reconstructing proximity from an interactive bipartite graph. To make the objectives, technical solutions, and effects of this invention clearer and more explicit, the invention is further described in detail below. It should be understood that the specific examples described herein are merely illustrative and not intended to limit the scope of the invention.

[0053] like Figure 1 As shown, a personalized recommendation method based on reconstructing proximity from an interaction bipartite graph proceeds as follows:

[0054] Step 1: Obtain the user-item bipartite graph G1 = {(u,i)|u∈U,i∈I}, the knowledge graph G2 = {(h,r,t)|h,t∈ε,r∈R}, and the collaborative knowledge graph G3 = {(h,r,t)|h,t∈ε′,r∈R′+;

[0055] In the bipartite graph G1, (u,i) indicates that user u has interacted with item i, U = {user 1, user 2, user 3} represents the user set, and I = {item 1, item 2, item 3, item 4, item 5} represents the item set. In the knowledge graph G2, ε = {item 1, item 2, item 3, item 4, item 5, entity 6, entity 7, entity 8, entity 9, entity 10} represents the entity set, and R = {relation 1, relation 2, relation 3} represents the relation set.

[0056] The user-item interaction bipartite diagram is shown in Table 1 below. In the table, a value of 1 for user i and item j indicates that user i and item j have had an interaction relationship, and a value of 0 indicates that there is no interaction relationship.

[0057] Table 1

[0058] User\Items Item 1 Item 2 Item 3 Item 4 Item 5 User 1 1 0 1 1 1 User 2 0 1 1 0 1 User 3 1 1 0 0 1 Target users 0 1 0 1 0

[0059] As shown in Table 1:

[0060] User 1's interactive items are {item 1, item 3, item 4, item 5};

[0061] User 2's interactive items are {item 2, item 3, item 5};

[0062] User 3's interactive items are {item 1, item 2, item 5};

[0063] The target user's interactive items are {item 2, item 4}.

[0064] The attribute information of items in the knowledge graph is shown in Table 2 below. Each row of data in the table represents a connection between the head entity and the tail entity based on the relationship of that row.

[0065] Table 2

[0066] Head Entity relation Tail entity Item 1 Relationship 1 Entity 6 Item 1 Relationship 2 Entity 7 Item 2 Relationship 1 Entity 8 Item 3 Relationship 1 Entity 9 Item 4 Relationship 2 Entity 7 Item 5 Relationship 3 Entity 10

[0067] As shown in Table 2:

[0068] Under relation 1, there are connections between (item 1, entity 6), (item 2, entity 8), and (item 3, entity 9);

[0069] Under relation 2, there is a connection between (item 1, entity 7) and (item 4, entity 7);

[0070] Under relation 3, (item 3, entity 10) are connected;

[0071] By combining the bipartite graph and the knowledge graph, and defining the interaction relationship as relation 4, a collaborative knowledge graph can be obtained, as shown in Table 3 below:

[0072] Table 3

[0073] Head Entity relation Tail entity Item 1 Relationship 1 Entity 6 Item 1 Relationship 2 Entity 7 Item 2 Relationship 1 Entity 8 Item 3 Relationship 1 Entity 9 Item 4 Relationship 2 Entity 7 Item 5 Relationship 3 Entity 10 User 1 Relationship 4 Item 1 User 1 Relationship 4 Item 3 User 1 Relationship 4 Item 4 User 1 Relationship 4 Item 5 User 2 Relationship 4 Item 2 User 2 Relationship 4 Item 3 User 2 Relationship 4 Item 5 User 3 Relationship 4 Item 1 User 3 Relationship 4 Item 2 User 3 Relationship 4 Item 5 Target users Relationship 4 Item 2 Target users Relationship 4 Item 4

[0074] Step 2: Randomly sample collaborative paths for each user on the interaction bipartite graph;

[0075] Starting from the user node, randomly select a node from its first-order nearest neighbors, and then randomly select another node from the first-order nearest neighbors of this selected node as the user's second-order neighbor. Repeat this process k times to obtain a cooperative path of length k, denoted as P. u ;

[0076] Taking the target user as an example, item 2 is randomly sampled from his interactive items. The users who have interacted with item 2 are {user 2, user 3}. User 3 is randomly sampled again. User 3's interactive items are {item 2, item 3, item 5}. Item 5 is randomly sampled again. At this point, a collaborative path of length 3 for the target user, {item 2, user 3, item 5}, has been sampled.

[0077] By repeating the above steps multiple times, multiple collaborative paths can be obtained;

[0078] Step 3: Calculate the average item popularity of each user's collaborative path, and select all item nodes in the X paths with the lowest average item popularity to replace the user's original first-order nearest neighbors;

[0079] Taking the collaborative path {item 2, user 3, item 5} from step two as an example, we use the formula Calculate its average popularity:

[0080] The users interacting with item 2 are {user 2, user 3, target user}, therefore the popularity of item 2 is 3;

[0081] The users who interacted with item 5 were {user 1, user 2, user 3}, and the popularity of item 5 was 3.

[0082] Ultimately, the average item popularity of this collaborative path can be calculated to be 3;

[0083] Assuming the average item popularity of the above collaborative path is minimized, then the item nodes in the path can be replaced with the target user's interactive items, i.e.:

[0084] The original interactive items for the target user, {item 2, item 4}, are replaced with {item 2, item 5}.

[0085] Step 4: Use the reconstructed first-order nearest neighbor embeddings of all users as input to a self-attention layer;

[0086] {e 物品2 e 物品5} = Self-Attention({e 物品2 e 物品5})

[0087] {item 2, item 5} = Self-Attention({item 2, item 5})

[0088] Step 5: Generate attention weights based on the relationship between each node and its neighboring nodes, and aggregate neighboring node information;

[0089] The attention weight between the target user and item 2 is:

[0090] a1=(W 关系4 e 物品2 ) T tanh((W 关系4 e 目标用户 +e 关系4 ));

[0091] The attention weight between the target user and item 5 is:

[0092] a2=(W 关系4 e 物品5 ) T tanh((W 关系4 e 目标用户 +e 关系4))

[0093] The target user's neighbor information is as follows:

[0094]

[0095] The final target user is embedded as follows:

[0096]

[0097] Step 6: Use equation (12) to obtain the embeddings of users and items, and finally predict the ratings through the inner product. The top N items of the descending sorted set of predicted ratings are used as the recommendation results:

[0098] The embedding of the final target user is a concatenation of its representations at various orders:

[0099]

[0100] Similarly, the same method is used to obtain the item nodes:

[0101]

[0102] Finally, the interaction rating between the target user and item i is predicted using the inner product:

[0103]

[0104] The top N items of the predicted scores in descending order are selected as the recommendation results and recommended to user u.

[0105] Experimental verification of the method of the present invention is carried out, specifically including:

[0106] 1) Prepare the standard dataset

[0107] The dataset used in this invention is Last-FM, a music listening dataset provided by Last. It's an online music system where tracks are identified as items. This dataset includes 3,034,796 interaction records from 23,566 users and 48,123 items, with each user having at least 10 interaction records.

[0108] 2) Evaluation Indicators

[0109] Recall and aggregated diversity (AD) are used as evaluation metrics in this implementation. The former reflects recommendation accuracy, while the latter reflects recommendation diversity. Generally, a higher recall value indicates higher recommendation accuracy, and a higher aggregated diversity value indicates a richer variety of recommended items. The calculation formulas are shown below:

[0110]

[0111]

[0112] Among them, Rec u (N) represents the N items that are ultimately recommended to user u.

[0113] 3) Comparison and analysis of experimental results

[0114] The personalized recommendation method based on reconstructing neighbors using an interactive bipartite graph proposed in this invention is denoted by Ours, and the comparative experimental model is denoted by KGAT. Figure 2 The results of the precision metric Recall are displayed, through Figure 2 Data shows that in both the TOP20 and TOP100 recommendations, the Recall values ​​of this invention are higher than those of the KGAT model. Since the smaller the Recall value, the higher the recommendation accuracy, this invention can recommend items with higher accuracy than the KGAT model. Figure 3 The results of the diversity measure AD are shown, through Figure 3 Data shows that in both the TOP20 and TOP100 recommendations, the AD value of this invention is higher than that of the KGAT model. Since the higher the AD value, the higher the recommendation diversity, this invention can recommend more diverse items than the KGAT model.

[0115] In summary, this invention can improve recommendation diversity while maintaining recommendation accuracy, thereby achieving personalized recommendations for target users.

Claims

1. A personalized recommendation method based on reconstructing proximity using an interaction bipartite graph, characterized in that, Comprising the following steps: Step one, obtaining a user-item bipartite graph G1={(u,i)|u∈U,i∈I}, a knowledge graph G2={(g,r,t)|g,t∈ε,r∈R} and a collaborative knowledge graph G3={(g,r,t)|h,t∈ε',r∈R'}; In the bipartite graph G1, (u, i) represents that the user u has interacted with the item i, U = {u1, u2, …, u |U|} represents the user set, I = {i1, i2, …, i |I|} represents the item set, the knowledge graph G2, ε = {e1, e2, …, e |ε|} represents the entity set, R = {r1, r2, …, r |R|} represents the relationship set; wherein, ε' = ε∪U, R' = R∪{interaction}, |U| represents the total number of users, |I| represents the total number of items, |ε| represents the total number of entities, and |R| represents the total number of relationships. Let the set of first order neighbors of user u be N u ; Let the set of first order neighbors of item i be N i ; Step two, randomly sampling a collaborative path for each user on the interaction bipartite graph; Assuming the length of the collaborative path is K, the sampling method of each path is to take the target user as the starting point, randomly select a node from its neighbor nodes, and randomly sample neighbor nodes from the neighbor nodes of the sampled nodes again until the path length reaches K, wherein the neighbor node attributes of each stage are as follows: When k = 1, its first order neighbor is denoted as When k is odd and k≠l, its kth order neighbor is denoted as When k is even, its kth order neighbor is denoted as Step three, calculating the average item popularity of each collaborative path of each user, and selecting all item nodes in the X lowest average item popularity paths to replace the user's original first-order neighbors; The average item popularity of each path is calculated by formula (1): In formula (1), K represents the path length, that is, the number of nodes in the path; K' represents the number of article nodes in the path; a i is a parameter indicating whether the i th node is accumulated, and has a value of 0 or 1; when the i th node is an article node, the value is 1, and vice versa; p i represents the popularity of the i th node, that is, the number of interactions between the article node and the user node; According to formula (1), select the X lowest average item popularity collaborative paths, and all item nodes in these collaborative paths are used as the new first-order neighbors of user u, that is: Step four, input the reconstructed first-order neighbors of all users into the self-attention layer to obtain the final user vector e; In the self-attention layer, the input of each node embedding a is transformed into three different vectors via three feature transformations using formulas (3), (4) and (5): Query m = W Q a m (3) Key m = W K a m (4) Value m = W V a m (5) W in formula (3), (4), (5) Q W K W V is a trainable transformation matrix, and the calculation formula for the attention weight between embeddings is: a m,n = Query m Key n (6) where m, n ∈ N' u A softmax is used to normalize Equation (6): After obtaining the self-attention weight between any two node embeddings from formula (7), the output embedding of each node is calculated by weighted summation: Step five, generate attention weights based on the relationship between each node and neighbor nodes, and aggregate neighbor node information; First, the attention weights generated based on different relationships are as follows: π(h, r, t) = (W r e t ) T tanh((W r e h + e r )) (9) where W r is a trainable transformation matrix based on the r relationship, e h , e r , e t correspond to the head entity embedding, the relationship embedding, and the tail entity embedding, respectively, and is normalized using softmax: Second, the neighbor information of any head entity is weighted and summed using formula (11) to obtain the neighbor information: Wherein, the head entity h can be a user node or an item node; The high-order representation of each entity is obtained from its low-order embedding representation and low-order neighbor information: Wherein, W1 and W2 are trainable transformation matrices; Step six, obtain the embedding representation of each order of users and items using formula (12), and finally perform prediction scoring through inner product: Formulas (13) and (14) concatenate the user embedding of each order and the item embedding of each order, select the top N items in the descending order of the predicted score as the recommendation result, and recommend them to the user u.

Citation Information

Patent Citations

  • Graph convolution collaborative filtering recommendation method fusing social relation

    CN113918834A

  • Predictive and descriptive analysis on relations graphs with heterogeneous entities

    US20140317033A1