Method and apparatus for recommendation based on graph neural network
ApeGNN addresses the limitations of existing GNNs by employing node-wise adaptive aggregation and inter-layer propagation, significantly improving the performance of recommendation systems through unique weight assignment based on graph diffusion and personalized page rank.
Patent Information
- Application Number
- PCT/CN2023/122667
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-09-28
- Publication Date
- 2025-04-03
AI Technical Summary
Existing Graph Neural Networks (GNNs) based recommendation systems treat users and items equally, failing to distinguish diverse local patterns of each node, leading to suboptimal performance in recommendation tasks.
The proposed AdaPtivE Graph Neural Network (ApeGNN) method introduces node-wise adaptive aggregation and inter-layer propagation processes, using graph diffusion and personalized page rank to assign unique weights to each user and item, distinguishing their importance and local structures.
ApeGNN consistently outperforms state-of-the-art GNN baselines, achieving up to 48.94% relative improvement in Recall and 24.09% in NDCG on various datasets, demonstrating the effectiveness of node-wise adaptive aggregation in GNNs for recommendation.
Smart Images

Figure CN2023122667_03042025_PF_FP_ABST
Abstract
Description
METHOD AND APPARATUS FOR RECOMMENDATION BASED ON GRAPH NEURAL NETWORKFIELD
[0001] The present disclosure relates generally to artificial intelligence technology, and more particularly, to a recommendation system based on graph neural networks.BACKGROUND
[0002] In real world, some data structures may be represented by a graph. A graph may consist of nodes and edges. A node may be a person, place, thing, etc., and an edge may define the relationship between nodes. Graph Neural Networks (GNNs) are special types of neural networks capable of working with a graph data structure. GNNs may be used in predicting nodes, edges, and graph-based tasks. An input graph may be passed through a series of neural networks, and converted into graph embedding, maintaining effective information on nodes, edges, and global context of the input graph.
[0003] In recent years, GNNs have made great progress in recommendation tasks. The core mechanism of GNNs-based recommendation systems is to iteratively aggregate neighboring information on the user-item interaction graph. However, existing GNNs treat users and items equally and cannot distinguish diverse local patterns of each node, which makes them suboptimal in the recommendation scenario. Therefore, there exists a challenge to improve the GNNs-based methods for recommendation.SUMMARY
[0004] The following presents a simplified summary of one or more aspects according to the present disclosure in order to provide a basic understanding of such aspects. This summary is not an extensive overview of all contemplated aspects, and is intended to neither identify key or critical elements of all aspects nor delineate the scope of any or all aspects. Its sole purpose is to present some concepts of one or more aspects in a simplified form as a prelude to the more detailed description that is presented later.
[0005] In an aspect of the disclosure, a method for recommendations based on a graph neural network is disclosed. The method comprises receiving a user-item bipartite graph consisting of a set of user nodes representing a set of users, a set of item nodes representing a set of items, and a set of edges representing interactions among the users and the items; obtaining user embeddings for each of the set of users and item embeddings for each of the set of items; performing an inner-layer aggregation process to generate aggregated user embeddings for each of the set of users and aggregated item embeddings for each of the set of items based on different weight coefficients for each user and each item; performing an inter-layer propagation process to generate propagated user embeddings for each of the set of users and propagated item embeddings for each of the set of items based on different weight coefficients for each propagation layer; and making a recommendation for a user of the set of users based on the propagated user embeddings and propagated item embeddings.
[0006] In another aspect of the disclosure, an apparatus for recommendations based on a graph neural network is disclosed. The apparatus comprises an input module for receiving a user-item bipartite graph consisting of a set of user nodes representing a set of users, a set of item nodes representing a set of items, and a set of edges representing interactions among the users and the items; an embedding module for obtaining user embeddings for each of the set of users and item embeddings for each of the set of items; an aggregation module for performing an inner-layer aggregation process to generate aggregated user embeddings for each of the set of users and aggregated item embeddings for each of the set of items based on different weight coefficients for each user and each item; a propagation module for performing an inter-layer propagation process to generate propagated user embeddings for each of the set of users and propagated item embeddings for each of the set of items based on different weight coefficients for each propagation layer; and a recommendation module for making a recommendation for a user of the set of users based on the propagated user embeddings and propagated item embeddings.
[0007] In another aspect of the disclosure, an apparatus for computer vision processing is disclosed. The apparatus may comprise a memory and at least one processor coupled to the memory. The at least one processor may be configured to receive a user-item bipartite graph consisting of a set of user nodes representing a set of users, a set of item nodes representing a set of items, and a set of edges representing interactions among the users and the items; obtain user embeddings for each of the set of users and item embeddings for each of the set of items; perform an inner-layer aggregation process to generate aggregated user embeddings for each of the set of users and aggregated item embeddings for each of the set of items based on different weight coefficients for each user and each item; perform an inter-layer propagation process to generate propagated user embeddings for each of the set of users and propagated item embeddings for each of the set of items based on different weight coefficients for each propagation layer; and make a recommendation for a user of the set of users based on the propagated user embeddings and propagated item embeddings.
[0008] In another aspect of the disclosure, a computer readable medium storing computer code for computer vision processing is disclosed. The computer code, when executed by a processor, may cause the processor to receive a user-item bipartite graph consisting of a set of user nodes representing a set of users, a set of item nodes representing a set of items, and a set of edges representing interactions among the users and the items; obtain user embeddings for each of the set of users and item embeddings for each of the set of items; perform an inner-layer aggregation process to generate aggregated user embeddings for each of the set of users and aggregated item embeddings for each of the set of items based on different weight coefficients for each user and each item; perform an inter-layer propagation process to generate propagated user embeddings for each of the set of users and propagated item embeddings for each of the set of items based on different weight coefficients for each propagation layer; and make a recommendation for a user of the set of users based on the propagated user embeddings and propagated item embeddings.
[0009] In another aspect of the disclosure, a computer program product for computer vision processing is disclosed. The computer program product may comprise processor executable computer code for receiving a user-item bipartite graph consisting of a set of user nodes representing a set of users, a set of item nodes representing a set of items, and a set of edges representing interactions among the users and the items; obtaining user embeddings for each of the set of users and item embeddings for each of the set of items; performing an inner-layer aggregation process to generate aggregated user embeddings for each of the set of users and aggregated item embeddings for each of the set of items based on different weight coefficients for each user and each item; performing an inter-layer propagation process to generate propagated user embeddings for each of the set of users and propagated item embeddings for each of the set of items based on different weight coefficients for each propagation layer; and making a recommendation for a user of the set of users based on the propagated user embeddings and propagated item embeddings.
[0010] Other aspects or variations of the disclosure will become apparent by consideration of the following detailed description and accompanying drawings.BRIEF DESCRIPTION OF THE DRAWINGS
[0011] The following figures depict various embodiments of the present disclosure for purposes of illustration only. One skilled in the art will readily recognize from the following description that alternative embodiments of the methods and structures disclosed herein may be implemented without departing from the spirit and principles of the disclosure described herein.
[0012] FIGs. 1A and 1B illustrate an example of a user-item bipartite graph for a recommendation system and its high-order connectivity with a tree structure graph in accordance with one aspect of the present disclosure.
[0013] FIG. 2 illustrates the diversity of local structures of users in recommendation scenarios in accordance with one aspect of the present disclosure.
[0014] FIG. 3 illustrates an architecture of an adaptive graph neural network for recommendations in accordance with one aspect of the present disclosure.
[0015] FIG. 4 illustrates a flow chart of a method for recommendations based on a graph neural network in accordance with one aspect of the present disclosure.
[0016] FIG. 5 illustrates a block diagram of an apparatus for recommendations based on a graph neural network in accordance with one aspect of the present disclosure.
[0017] FIG. 6 illustrates a block diagram of an apparatus for recommendations based on a graph neural network in accordance with one aspect of the present disclosure.DETAILED DESCRIPTION
[0018] Before any embodiments of the present disclosure are explained in detail, it is to be understood that the disclosure is not limited in its application to the details of construction and the arrangement of features set forth in the following description. The disclosure is capable of other embodiments and of being practiced or of being carried out in various ways.
[0019] FIG. 1A illustrates an example of a user-item bipartite graph 110 for a recommendation system in accordance with one aspect of the present disclosure. As shown in FIG. 1A, the nodes u1, u2, u3, u4, and u5 may represent a set of users in the recommendation system, such as the customers on a shopping platform, and the nodes v1, v2, v3, and v4 may represent a set of items in the recommendation system, such as clothes, shoes, cell phones, and computers on the shopping platform. The edges between the user nodes and item nodes may represent the interactions, such as, one or more of purchase, rating, click, collection, etc. between customers and goods on the shopping platform. Although it is described here taking a shopping platform as an application example of recommendation systems, the recommendation systems may also be used in various other applications, such as smart manufacturing analytics and scalable industrial analytics, and the terms of user and item in this disclosure may refer to the general meanings in different applications of recommendation systems.
[0020] FIG. 1B illustrates an example of high-order connectivity of the user-item bipartite graph 110 in FIG. 1A with a tree structure graph 120 in accordance with one aspect of the present disclosure. As shown in FIG. 1B, items nodes v1 and v2 are the 1-hop (h=1) neighbors for the user node u1. User nodes u2, u3, and u4 are the 2-hop (h=2) neighbors for the user node u1. Items nodes v3 and v4 are the 3-hop (h=3) neighbors for the user node u1.
[0021] Graph neural networks have produced remarkable performance on the task of recommendation. Specifically, GNNs perform the message passing process over graph structures to aggregate local neighborhood information and stack multiple representation layers in high-order propagation. GNNs-based recommendation systems apply the information propagation operation over the user-item bipartite graphs, such as shown in FIGs. 1A and 1B. However, there are remaining issues in the existing GNNs-based models for recommendation.
[0022] Firstly, node types are not distinguished in the existing GNNs-based recommendation. User-item interaction network is a special type of graph in which edges can only be existed in the middle of users and items. In other words, there is no direct communication between two users or items. Up to now, the existing GNNs-based recommendation method is no different from the general GNNs that handles the other normal graphs, such as reference graphs, social networks etc., that is, the same modeling strategies are adopted for all users and items. Generally, user aggregates information from only 1-hop item neighbors with 0-th layer embeddings, from 2-hop users with 1-th layer representations, and from 3-hop items again with 2-th layer embeddings, in a high-order neighborhood aggregation setting. By taking all layers the same, the aggregation step in the existing GNNs-based recommender systems ignores the semantic differences between users and items at each subgraph structure-and by extension their embeddings.
[0023] Secondly, local structures of different users / items are diverse in recommendation as shown in FIG. 2. The diagrams 210 and 220 are respectively based on Ali dataset and AMiner dataset, wherein horizontal axis represents the number of node degree, and the vertical axis represents the metric of recall@20. The Ali dataset comes from the Alibaba e-commerce plat-form and interaction record of its users is more than 10 in a user-item bipartite graph. AMiner dataset collects scientific resource reading behavior from AMiner. org of its users. FIG. 2 shows the node-wise necessity for GNNs-based recommendation systems. To be specific, 1- / 2- / 3-hop aggregation and propagation are performed with LightGCN on Ali and AMiner datasets respectively, and the relation between the Recall@20 result and user nodes with different degree intervals are shown in FIG. 2. It can be found that average result distribution of different degree nodes on each hop propagation is very unbalanced and the optimal propagation number for each node is uncertain, which means each user / item has its local structure. This demonstrates that different nodes with different structures in recommendation should be given different importance, and that node-wise adaptive aggregation in GNNs for recommendation is a necessary step to learn the node-level difference among layers. Therefore, this disclosure studies whether each node should be treated differently in different layers during the aggregation process of GNNs-based recommendation methods.
[0024] The aggregation step in previous GNNs-based recommender systems treats all nodes as the same and ignores their variant importance, which results in sub-optimal performance. Previous attention-based GNN models (e.g., GAT) attempt to model the different influences among user and item nodes without considering the local diversity. Moreover, for differentiating the importance of interacted historical items, the degree-based GNNs process (e.g., LightGCN) can improve embedding learning and achieve better performance in bipartite graph for recommendation, but still ignores the local diversity issue. In recent diffusion-based GNNs studies (e.g., ADC) , appropriate neighborhoods are selected flexibly to enhance GNNs’ expressiveness during the propagation. For instance, the graph diffusion convolution model incorporates the heat kernel and node centrality information into GNNs’ message passing process to reinforce structural smoothness. Nevertheless, GDC is based on the assumption of homophily and does not perform well on the link prediction task. An adaptive graph convolution work (ADC) proposes to leverage the heat kernel theory to learn the optimal neighborhood for enhancing the low-frequency filters. Though the heat kernel is originally used to enable neighborhood selection in GNNs, it also provides a natural solution to address the aforementioned issues for recommendation.
[0025] In this disclosure, a novel AdaPtivE GNN method (ApeGNN) , which conducts node-wise adaptive aggregation in GNNs for recommendation, is provided. Instead of treating each user and item equally at each layer during the high-order aggregation and propagation, the ApeGNN method may leverage the graph diffusion process to adaptively assign a unique weight (inner-layer weight) to each hop of neighbors and distinguish the information from different GNNs layers, promoting the development of aggregation methods from fixed aggregation to node-wise aggregation. The idea of ApeGNN for GNNs-based recommendation is that each user ui and each item vj respectively have a unique aggregation weight (t (ui) , l) and θ (t (vj) , l) with coefficient t and layer l. These diffusion weights represent the distinctive contributions of ui’s and vj’s embedding that are captured by ApeGNN at each layer.
[0026] ApeGNN can serve as a plug-in and be naturally incorporated into any existing GNNs-based models for recommendation without modifying the architecture of models. Extensive experiments for the ApeGNN method have been conducted on six widely-used public datasets and compared with representative GNNs-based and attention-based models to demonstrate the effectiveness of ApeGNN. The same experimental procedure-data splits, optimization, and evaluation-as existing GNNs-based recommendation studies are followed. The results suggest that the proposed ApeGNN can consistently outperform state-of-the-art GNN baselines (relative improvement up to 48.94%on Ali, 24.09%on Amazon and 7.67%on AMiner) among all data sets on both Recall and NDCG, which shows the benefits of node-based adaptive aggregation. Case studies show that adaptive node weights contribute to the overall and each layer’s performance.
[0027] Graph Neural Networks for Recommendation
[0028] In this section, the GNNs-based recommendation systems are described and the limitations of existing GNNs for recommendation are discussed.
[0029] Generally, as shown in FIG. 1A, the input of a GNNs-based recommendation model may be a user-item bipartite graph with the sets of users items and the interactions such as purchase, rate and click, among users and items where m is the amount of users and n denotes the total number of items. For each interaction, is set to 1 if ui interacts with vj and 0 otherwise. With the purpose of the recommendation system is to predict the items which the user will interact further. GNNs have been widely adopted in recommendation systems. Similar to common GNN models, GNN-based recommendation systems perform message passing over the input graph structure to get contextual representations. Commonly, the message passing process consists of the aggregation and pooling.
[0030] With regard to aggregation, for node u, the general representation at l-layer during propagation in GCN-based models can be represented as:
[0031] where AGG and U stand for aggregation and update function respectively. Take GCN (Graph Convolutional Network) for example, it aggregates each node's neighborhood nodes and performs message passing. In particular, the propagation rule Eq. (1) of GCN may be defined by:
[0032] where denotes the embedding representation of u after l-layer GCN. In particular, is the 0-layer embedding; σ (·) is non-linear activation for feature propagation, W is a weight matrix; is the neighborhood of node u. T can be calculated by where D is the diagonal node degree matrix with Dii=∑jAij. Note that and in which A is the adjacency matrix with self-loop and I is the identity matrix that implies self-loop connections on nodes.
[0033] Inspired by the design and idea of the GCN model, emerging studies (e.g., GCMC and NGCF) attempt to adopt GCN structure for recommendation tasks. However, recent studies reported that some of the most used designs of GCNs do not contribute much to recommendation performance, which complicates learning process. They are designed to simplify the GCN for recommendation and achieve better performance. Taking LightGCN as an example, it deletes σ (·) , W and I. Thus, its aggregation and propagation process are expressed as:
[0034] where normalized item T is computed by
[0035] With regard to pooling, in GCN, the representation vector learned by the final layer is utilized to perform node classification. However, the final representation of nodes could be varying by changing the pooling operation at the each GCN layer (also called the layer combination operation) . In most GNNs-based recommendation models, the pooling function / module may combine the embeddings propagated at each layer and generate the final embedding, i.e., representation vector Common pooling operations include weighted sum-based, concat-based pooling, attention-based and other approaches. Generally, the pooling function p of user u can be formulated as:
[0036] where L is the total number of propagation layers and the pooling function of item v is similar to that of user. In particular, weighted sum pooling function is the most commonly used. For example, βl is the weight of l-th layer embedding for the final embedding. Especially, they assign a constant value (e.g., βl=1 / (L+1) ) as fixed weight for the embeddings of the each layer to perform layer combination. In other words, the importance of the embeddings represented by each subgraph structure in different GCN layers is the same.
[0037] Therefore, there are limitations in existing GNNs-based recommendation models. By default, the current GNNs-based recommendation models have the following setup in the aggregation process: first, these methods treat all nodes in the bipartite graph as the same; second, they consider the embeddings of multiple layers with the same importance in a local perspective.
[0038] By design, aggregators (or aggregation modules) of GNNs mainly include two categories: degree-based aggregator represented by LightGCN and attention-based aggregator represented by GAT. In fact, they do not explicitly differentiate nodes with global perspective during the message passing process, while all nodes are in nature different in recommendation systems.
[0039] For the degree-based aggregator represented by LightGCN, by extending Eq. (3) , the graph convolution on the first and second layers for user embedding ui is formulated as Eq. (5) , and item embedding is formulated similarly.
[0040] where and are the non-sysmmetric and symmetric normalization, respectively. It can be observed that the aggregation and propagation process of embeddings for users and items are exactly the same, that is, the information updated from same type (i.e., users or items) nodes is propagated in odd GCN layers (1, 3, ···) , and messages from the other type is propagated in even GCN layers
[0041] The degree-based aggregator is applied to each node to control the decay factor during aggregation and propagation, potentially making these processes different. However, the normalization coefficient is a constant value computed by degrees of node, which is irrelevant with node types and the layer subgraph structures. In fact, users and items are two different types of nodes with distinctive semantics in a user-item bipartite graph, and their own embeddings in different subgraphs should be naturally considered dissimilar as well. This disclosure first attempts to explicitly differentiate node-aware users and items in the simple GNN architecture and research whether different treatments to them can benefit GNNs-based recommender systems.
[0042] For attention-based aggregator represented by GAT, when representation of a node is obtained through all neighbors, the contributions of these neighbors should be different as well. Different from degree-based aggregator, attention-based aggregator assigns different weights for neighbors of each node during aggregation in local graph structure. The aggregation process is described as:
[0043] where denotes attentive scores and it is usually calculated by Softmax function. The attention weights are calculated in a local graph and propagated implicitly to next layer via non-linear activation function, which ignores decay factor of each node's centrality distribution with a node-wise perspective. However, the embeddings at different layers of (graph) neural networks are in nature supposed to capture different levels of features. In addition, as introduced above, the information updated from same type nodes and the other type in GNNs-based recommendation models is propagated in odd and even GCN layers, respectively. This disclosure studies whether the different weights on each node should be assigned from one layer to another. Therefore, this disclosure tries to address the problem: to what extent such node-wise and layer-wise differentiation can improve the performance of GNNs for recommendation.
[0044] Adaptive Graph Neural Networks (ApeGNNs)
[0045] An improved GNNs-based recommendation system ApeGNN will be described in this section. The main idea of ApeGNN is to differentiate each user as well as item from nodes during aggregation and calculate the impacts in a node-wise way in GNNs. To achieve this, the idea of graph diffusion based adaptive operations is incorporated into the aggregation. Details about the ApeGNN model provided in this disclosure will be described below in connection with FIG. 3.
[0046] FIG. 3 illustrates an architecture of ApeGNN for recommendations in accordance with one aspect of the present disclosure. The input 310 of the ApeGNN is a user-item bipartite graph consisting of a set of user nodes, a set of item nodes, and a set of edges representing interactions among the users and the items. The main parts of the ApeGNN model includes the node-wise inner-layer aggregation and inter-layer propagation, as shown in block 320 for user u1 as an example. In ApeGNN, the users and items at each layer are modeled differently with adaptive weights θ via the heat kernel (as shown in blocks 322, 324 and 326) or personalized page rank in the process of aggregation and propagation. The aggregation process and propagation process for item nodes (such as, item v1 as shown in block 330) are similar to those in block 320 for user nodes, and thus are not shown in detail in FIG. 2 for the purpose of concision.
[0047] As shown in block 320, to incorporate node importance into existing aggregation process in GNNs-based models for recommendation, a node-wise adaptive aggregation mechanism is designed. For a user ui and its neighborhood nodes the aggregation function AGG with weight coefficient function for user ui can be presented as:
[0048] where tui is a parameter of adaptive operation for user ui. Similarly, the aggregation function AGG with weight coefficient function for item vj can be described in Eq. (8) . Then, the and will be used during aggregation process as described below.
[0049] With regard to the weighting coefficients θ, as previously discussed, semantics contained in embeddings at different layers tend to be different in graph neural networks. For GNNs over a bipartite graph, each layer is made up of either users or items, which naturally makes the semantics of each layer differently. In other words, the embeddings at different layers should be treated distinctly by setting different weights to capture the unique semantics of each layer during aggregation. Specially, two methods, i.e., heat kernel (HT) and Personalized Page Rank (PPR) , are proposed in this disclosure to simulate the graph diffusion process and provide better importance selection support. Next, it is described to formulate these two methods as coefficients in detail.
[0050] First, regarding the heat kernel, the feature propagation between nodes in the GNNs-based models can be viewed as the practice of Newton's law of cooling (also known as the heat kernel) , in which heat is transferred from regions with higher temperature to regions with lower one. That is, the embedding propagation between two nodes is naturally proportional to their representation. Thus, the derivation of this prior knowledge is calculated as:
[0051] where and denote representations of user ui and item vj after time t. This derivation indicates that is related to its neighbors at one time. According to the diffusion design of the heat kernel, the heat kernel may be incorporated into the GNNs-based models for personalized recommendation. Given an initial definition that the heat kernel can be expressed as Ht=e-tΓ at time t in a graph, where Γ (Γ=I-D) is the Laplacian matrix of graph According to this definition, Eq. (3) can be reformulated as: h (t) =Hth (0) , (11)
[0052] where h (t) denotes the hidden representation of a node after the diffusion time t. For the convolution kernel of with the heat kernel is formulated as:
[0053] where l denotes the current layer, the parameter tl is related to neighborhood size of a node at l-th layer. Therefore, a function with and with for each node are used to automatically learn and update tu and tv during training. Its formulation can be described as:
[0054] With regard to Personalized Page Rank (PPR) , the ApeGNN method aims to recognize the local pattern from each node's graph structure. To achieve this objective, the PPR method may be utilized to build graph structure information and assign unique weights for each node. The coefficient with teleport probability for user can be represented as:
[0055] By leveraging the heat kernel and PPR, the ApeGNN method can assign appropriate weights flexibly for each node to enhance low-frequency filters and enforce smoothness on a graph.
[0056] With regard to the centrality importance t, as FIG. 2 depicts, the best propagation of u is not certain. Thus, the neighbors weights at each layer should be considered when modeling the importance of nodes, and the different influences among user and item nodes should be modeled when obtaining the representation of a node during the aggregation. Previous research about node importance estimation suggests that the importance of nodes is positively correlated with its centrality in a graph. Generally, the in-degree (ui) of user node ui denotes its centrality and popularity. Therefore, we use in-degree (ui) as weights and at the initial layer for ui and vj to model the differences of users as well as items. Here, we define t for user ui and obtain a small value for t. The centrality importance of items are similar to users’ in Eq. (15) .
[0057] where ε is a small positive constant chosen as 10-7 and the teleport propability
[0058] There may be three different values of weight t during aggregation, including fixing t to the initialization value for user type and item type (fixed-t) , training one t for each user and item without centrality (trained-t) , training a unique t for each user and item with centrality (ApeGNN-t) . After comparing the ApeGNN with its three variants: fixed-t, trained-t and ApeGNN-t, it shows that the optimal performance may be obtained when considering centrality of a node and training a unique t for this node on all datasets. It also shows that in-degree of nodes is important to represent their centrality and popularity in user-item interacted graph, further verifies that importance should be considered during aggregation and propagation process. Besides, the result of training one t for all nodes and all items respectively is better than fixing t for all nodes on six datasets. It justifies that users and items are nodes of different types that should be differentiated to learn better representations and improve the performance of recommendation. To sum up, ApeGNN can differentiate users and items, and assign centrality-based and layer-wise weights via ApeGNN-t for nodes in aggregation process, which can boost the recommendation performance.
[0059] In ApeGNN, by giving a user-item interaction bipartite graph as the input, the embedding of each user and each item is differentiated via an adaptive aggregation, and this embedding is parameterized with node-wise to form the final representations.
[0060] By using enhanced representation in the aggregation process, each embedding layer may be added to propagation layers to mine higher order connectivity information. The propagated embeddings of user ui and item vj at the l-th layer are formulated as:
[0061] where and are the unique weight for ui as well as vj at l-th layer, and is the symmetric normalization suggested by GCN. Note that the effect of self-loop connections in the GCN layer could be captured by a weighted sum as pointed out by LightGCN. By following the same setup, the self-loop connections may be removed to reduce the information redundancy.
[0062] By extending the embedding aggregation and propagation function with the convolution kernel, the adaptive graph convolution matrix Eu and Ev with weight matrix Θ for users and items in ApeGNN at the l-th layer can be represented as Eq. (17) :
[0063] By transforming Eq. (17) into the actual model training process, the graph convolution matrix (E (0) , …, E (L) ) related to the layer may be taken into the pooling operation in block 340.
[0064] Given the input user and item embeddings and at the 0-th layer such as in block 322, they are first propagated through higher layers by Eq. (16) such as in blocks 324 and 326. The integration of users as well as items may be updated through the embedding of the latest layer and the current layer by Eq. (1) . Then, the embeddings of each layer may be combined to formalize the final embeddings of user ui (such as, in block 340) and item vj that are used for final recommendation. In ApeGNN, Eq. (4) may be formulated to model the hop-wise semantic differences that each layer of embeddings represents. Thus, the final embedding of ui and vj are pooled as:
[0065] where and have been used to model the weights and importance of the L-th layer embeddings of user ui and item vj, respectively.
[0066] The effect of layer numbers L in propagation is analyzed from 1 to 4 and compared with LightGCN. The result shows that overall, the ApeGNN outperforms LightGCN under all layer settings across all datasets, and with the increase of the layer number, the performance first increases and then decreases. For details, the performance increases to peak value with the layer number from 1 to 2 (or 3) , then the performance degrades. It indicates that it is helpful for a node to consider its low-order neighbors which can smooth its embedding and obtain powerful representation.
[0067] Eventually, in block 350, the inner product of embeddings between ui and vj may be calculated as which can be exploited to calculate the preference of user ui on item vj.
[0068] The neural network structure of ApeGNN may be optimized by using the Bayesian Personalized Ranking (BPR) loss. The BPR is a pairwise loss which is formalized as:
[0069] where O= { (ui, vj, vk) ∣ (ui, vj) ∈O+, (ui, vk) ∈O-} are the pairwise training data; O-is the set of pairs that interactions between the user and the item are not actually observed, while O+is the set of interacted records. λ influences the strength of L2 regularization; sigmoid function is denoted by σ (·) in this formulation; and the L2 regularization is exploited to avoid overfitting issue.
[0070] In ApeGNN, λ of L2 is the additional hyper-parameters. ApeGNN is relatively insensitive to these hyper-parameters. The influence of different coefficient λ is analyzed on representative dataset Amazon and MovieLens. The optimal value of λ for Amazon and MovieLens datasets both are 10-2. When λ is smaller than 10-3, the performance starts to drop, which indicates that regularization can prevent overfitting in some degree for ApeGNN.
[0071] The adaptive operation may not change the GNN nature and flexibility of ApeGNN. In fact, ApeGNN can serve as a plugin into any GNNs-based models for personalized recommendation. Therefore, other advanced training techniques, e.g., the hop-mixing negative sampling strategy, can be straightforwardly applied into ApeGNN.
[0072] In some embodiments, the ApeGNN may be implemented in PyTorch. The batch size may be set as 2048 for all models. The ApeGNN may be optimized with a learning rate at 0.001 and Adam optimizer. The propagation layer may be set from 1 to 4, the embedding dimension may be in range of {64, 128, 256, 512} , and the coefficient λ of L2 normalization may be in range of {10-2, 10-3, 10-4, 10-5, 10-6} . In terms of hyper-parameters, to find the best settings, a grid search may be applied. For Ali, Amazon, AMiner, Gowalla, MovieLens, and Yelp2018 datasets, the L2 coefficient λmay be 10-3, 10-2, 10-3, 10-3, 10-2, and 10-3, respectively. Besides, to initialize the model parameters, the Xavier initializer may be used. Moreover, during the training stage, if Recall@20 does not increase for 10 consecutive epochs on the validation dataset, an early stopping strategy may be applied to stop training.
[0073] The overall training process for the ApeGNN in the form of pseudo-code is shown below.
[0074] FIG. 4 illustrates a flow chart of a method 400 for recommendations based on a graph neural network in accordance with one aspect of the present disclosure. The method 400 may be the ApeGNN method as described above. The method 400 may be implemented on a cloud server or a client computing device or a combination thereof. The method 400 may be implemented at least in part in a training stage or in a predicting stage.
[0075] In block 410, the method 400 may comprise receiving a user-item bipartite graph consisting of a set of user nodes representing a set of users, a set of item nodes representing a set of items, and a set of edges representing interactions among the users and the items. The terms of user and item herein refer to the general meanings in a recommendation system for various application scenarios. In an example of shopping platform, the users may comprise customers, the items may comprise goods to be sold, and the interactions may comprise one or more of purchase, rating, click, collection, etc. among the customers and goods.
[0076] In block 420, the method 400 may comprise obtaining user embeddings for each of the set of users and item embeddings for each of the set of items. In the training stage, the obtaining may comprise initializing the embeddings for each user and each item with the manners used in existing GNN training methods. In the predicting stage, the obtaining may comprise obtaining the initial embeddings for each user and each item in the 0-th layer with the trained GNN model.
[0077] In block 430, the method 400 may comprise performing an inner-layer aggregation process to generate aggregated user embeddings for each of the set of users and aggregated item embeddings for each of the set of items based on different weight coefficients for each user and each item, such as, using equations (7) and (8) respectively. In one aspect, the weight coefficients are calculated with a heat kernel method according to equation (13) . In another aspect, the weight coefficients are calculated with a personalized page rank method according to equation (14) . The weight coefficients may be a function of a parameter of adaptive operation for the users or the items, such as the centrality importance of each node. The weight coefficients may be calculated based on an in-degree of each user node or item node at an initial layer.
[0078] In block 440, the method 400 may comprise performing an inter-layer propagation process to generate propagated user embeddings for each of the set of users and propagated item embeddings for each of the set of items based on different weight coefficients for each propagation layer, such as, using equation (16) . The method 400 may further comprise combining the propagated user embeddings and the propagated item embeddings of each propagation layer with various pooling operations to generate final embeddings for each user and each item.
[0079] In block 450, the method 400 may comprise making a recommendation for a user of the set of users based on the propagated user embeddings and propagated item embeddings, such as, by calculating the inner product of final embeddings between each user and each item. In the training stage, the method 400 may comprise optimizing the graph neural network based on the final embeddings of each user and each item by using a Bayesian Personalized Ranking (BPR) loss, such as using the equation (19) .
[0080] FIG. 5 illustrates a block diagram of an apparatus 500 for recommendations based on a graph neural network in accordance with one aspect of the present disclosure. The apparatus 500 may comprise multiple modules for performing the method 400 described above with reference to FIG. 4.
[0081] As shown in FIG. 5, the apparatus 500 may comprise an input module 510 for receiving a user-item bipartite graph consisting of a set of user nodes representing a set of users, a set of item nodes representing a set of items, and a set of edges representing interactions among the users and the items. The apparatus 500 may comprise an embedding module 520 for obtaining user embeddings for each of the set of users and item embeddings for each of the set of items. The apparatus 500 may comprise an aggregation module 530 for performing an inner-layer aggregation process to generate aggregated user embeddings for each of the set of users and aggregated item embeddings for each of the set of items based on different weight coefficients for each user and each item. The apparatus 500 may comprise a propagation module 540 for performing an inter-layer propagation process to generate propagated user embeddings for each of the set of users and propagated item embeddings for each of the set of items based on different weight coefficients for each propagation layer. The apparatus 500 may comprise a recommendation module 550 for making a recommendation for a user of the set of users based on the propagated user embeddings and propagated item embeddings. Although not shown in FIG. 5, the apparatus 500 may also comprise a pooling module for combining the propagated user embeddings and the propagated item embeddings of each propagation layer to generate final embeddings for each user and each item; and an optimization module for optimizing the graph neural network based on the final embeddings of each user and each item by using a Bayesian Personalized Ranking (BPR) loss.
[0082] FIG. 6 illustrates a block diagram of an apparatus 600 for recommendations based on a graph neural network in accordance with one aspect of the present disclosure. The apparatus 600 for GNNs-based recommendations may comprise a memory 610 and at least one processor 620. The processor 620 may be coupled to the memory 610 and configured to perform the method 400 described above with reference to FIG. 4. The processor 620 may be a general-purpose processor, or may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, multiple microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration. The memory 610 may store the input data, output data, data generated by processor 620, and / or instructions executed by processor 620.
[0083] The various operations, modules, models, and networks described in connection with the disclosure herein may be implemented in hardware, software executed by a processor, firmware, or any combination thereof. According an embodiment of the disclosure, a computer program product for GNNs-based recommendations may comprise processor executable computer code for performing the method 400 described above with reference to FIG. 4. According to another embodiment of the disclosure, a computer readable medium may store computer code for GNNs-based recommendations, the computer code when executed by a processor may cause the processor to perform the method 400 described above with reference to FIG. 4. Computer-readable media includes both non-transitory computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. Any connection may be properly termed as a computer-readable medium. Other embodiments and implementations are within the scope of the disclosure.
[0084] Generally, the ApeGNN method provided in this disclosure introduces the graph diffusion process into GNNs-based recommendation. The ApeGNN may address the issues that neighborhood types are not adaptive to identify and the importance of each node which is not divided by expanding the propagation of neighborhood. The ApeGNN may assign different weights to entities with different types and importance of different nodes, and assign different importance on multi-order neighborhoods. After performing experiments on public recommendation, the ApeGNN shows superiority compared with existing baseline models, such as, LightGCN, GAT, and ADC.
[0085] LightGCN is representative graph convolution network with degree normalization based graph structure, while it ignores the distinctive semantics of each node. ApeGNN may consider centrality-based importance to explicitly differentiate each node.
[0086] Although the attention-based models (such as, GAT) perform local aggregation for each layer and consider importance of nodes, they assign weights for local neighbors via node features from a local perspective, while ApeGNN may aggregate neighbors adaptively in a node-wise manner via centrality degree from the global perspective. In addition, by executing high-order propagation in attention-based models, the information of previous layer is implicitly propagated via non-linear activation to next layer. The adaptive aggregation of ApeGNN may consider the influence of subgraph structure and explicitly propagates the message via a layer coefficient. ApeGNN may incorporate node-and-layer specific weights to achieve adaptive aggregation, leading to better performance compared to attention-based methods.
[0087] The diffusion model of ADC is able to learn the scale of neighbors during the propagation of each layer from the network for node classification. In particular, ADC learns the initial value t of every feature channel as well as layer, but ignores the importance of nodes. In contrast, the adaptive aggregator of ApeGNN may learn centrality-aware t for each node which considers the importance of nodes. The experiments also show the effectiveness of centrality-based weights in ApeGNN.
[0088] The preceding description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the various embodiments. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the scope of the various embodiments. Thus, the claims are not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the following claims and the principles and novel features disclosed herein.
Claims
1.A method for recommendations based on a graph neural network, comprising:receiving a user-item bipartite graph consisting of a set of user nodes representing a set of users, a set of item nodes representing a set of items, and a set of edges representing interactions among the users and the items;obtaining user embeddings for each of the set of users and item embeddings for each of the set of items;performing an inner-layer aggregation process to generate aggregated user embeddings for each of the set of users and aggregated item embeddings for each of the set of items based on different weight coefficients for each user and each item;performing an inter-layer propagation process to generate propagated user embeddings for each of the set of users and propagated item embeddings for each of the set of items based on different weight coefficients for each propagation layer; andmaking a recommendation for a user of the set of users based on the propagated user embeddings and propagated item embeddings.2.The method of claim 1, wherein the interactions comprises one or more of purchase, rating, click, and collection.3.The method of claim 1, wherein the weight coefficients are calculated with a heat kernel method or a personalized page rank method.4.The method of claim 1, wherein the weight coefficients are calculated based on an in-degree of each user node or item node at an initial layer.5.The method of claim 1, further comprising:combining the propagated user embeddings and the propagated item embeddings of each propagation layer to generate final embeddings for each user and each item.6.The method of claim 5, further comprising:optimizing the graph neural network based on the final embeddings of each user and each item by using a Bayesian Personalized Ranking (BPR) loss.7.An apparatus for recommendations based on a graph neural network, comprising:an input module for receiving a user-item bipartite graph consisting of a set of user nodes representing a set of users, a set of item nodes representing a set of items, and a set of edges representing interactions among the users and the items;an embedding module for obtaining user embeddings for each of the set of users and item embeddings for each of the set of items;an aggregation module for performing an inner-layer aggregation process to generate aggregated user embeddings for each of the set of users and aggregated item embeddings for each of the set of items based on different weight coefficients for each user and each item;a propagation module for performing an inter-layer propagation process to generate propagated user embeddings for each of the set of users and propagated item embeddings for each of the set of items based on different weight coefficients for each propagation layer; anda recommendation module for making a recommendation for a user of the set of users based on the propagated user embeddings and propagated item embeddings.8.The apparatus of claim 7, wherein the interactions comprises one or more of purchase, rating, click, and collection.9.The apparatus of claim 7, wherein the weight coefficients are calculated with a heat kernel method or a personalized page rank method.10.The apparatus of claim 7, wherein the weight coefficients are calculated based on an in-degree of each user node or item node at an initial layer.11.The apparatus of claim 7, further comprising:a pooling module for combining the propagated user embeddings and the propagated item embeddings of each propagation layer to generate final embeddings for each user and each item.12.The apparatus of claim 11, further comprising:an optimization module for optimizing the graph neural network based on the final embeddings of each user and each item by using a Bayesian Personalized Ranking (BPR) loss.13.An apparatus for recommendations based on a graph neural network, comprising:a memory; andat least one processor coupled to the memory and configured to perform the method of one of claims 1-6.14.A computer readable medium, storing computer code for recommendations based on a graph neural network, the computer code when executed by a processor, causing the processor to perform the method of one of claims 1-6.15.A computer program product for recommendations based on a graph neural network, comprising: processor executable computer code for performing the method of one of claims 1-6.
Citation Information
Patent Citations
Collaborative filtering recommendation algorithm based on graph convolution attention mechanism
CN112905900A
Mobile application recommendation method based on lightweight graph convolutional network
CN113688974A
Graph convolution collaborative filtering recommendation method fusing social relation
CN113918834A
Social recommendation method and system based on lightweight graph convolutional network
CN116383515A
Collaborative filtering recommendation method based on graph convolutional network
CN116450954A
Cited By
Offline recommendation method of graph convolutional neural network, electronic equipment and storage medium
CN120910343A
Third-party library recommendation method based on multi-relation fusion
CN121167047A
Model training method, recommendation method and system of cross-border recommendation graph neural network
CN121562737A