An interactive rating prediction method and system integrating comments and ratings
By constructing a two-part feature attribute graph and using the attribute graph convolution network to update user and product features, and combining the attention mechanism to perform scoring prediction, the shortcomings of the scoring prediction method based on collaborative filtering in data sparse and cold start problems are solved, and the accuracy of scoring prediction and the overall performance of the recommendation system are improved.
Patent Information
- Application Number
- CN202210036320.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-01-13
- Publication Date
- 2025-05-02
- Estimated Expiration
- 2042-01-13
AI Technical Summary
The scoring prediction method based on collaborative filtering is susceptible to data sparseness and cold start problems, resulting in reduced accuracy of scoring prediction.
By constructing a two-part feature attribute graph, the historical ratings and comments of users and products are used as heterogeneous interactive information, the attribute graph convolution network is used to update the user and product features from both the product domain and the comment domain, and the rating prediction is made through the attention mechanism.
Improve the accuracy of rating prediction, enhance the learning of user and product characteristics, and dynamically fuse feature weights to improve the accuracy of rating prediction of the recommendation system.
Smart Images

Figure CN114386513B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of recommendation systems, and in particular to an interactive rating prediction method and system integrating comments and ratings. Background Art
[0002] As an information filtering tool, recommender systems have been widely used in online e-commerce and social networking sites such as Amazon and Epinions. On these platforms, the rating score shows his / her taste or satisfaction with the product. Therefore, it is crucial to estimate the unknown ratings of users on products, which can not only evaluate the user's preferences but also increase the revenue of the website. Traditionally, collaborative filtering-based methods have been widely discussed and studied for rating prediction. These works are usually based on matrix decomposition and user-product history records to learn the latent features of users and products. However, due to the inherent obstacles of solutions based on latent factor learning, collaborative filtering-based methods are susceptible to data sparsity and cold start problems, which reduce the accuracy of rating prediction and cause errors in the evaluation of users' current preferences, thereby reducing the accuracy of recommendations.
[0003] Therefore, there is an urgent need for a rating prediction method and system to improve the accuracy of rating prediction, thereby improving the accuracy of recommendation system recommendations. Summary of the invention
[0004] The purpose of the present invention is to provide an interactive rating prediction method and system that integrates comments and ratings to improve the accuracy of rating prediction, thereby improving the accuracy of recommendation system recommendations.
[0005] To achieve the above object, the present invention provides the following solutions:
[0006] An interactive rating prediction method integrating comments and ratings, comprising:
[0007] Constructing a bipartite graph of characteristic attributes; the bipartite graph of characteristic attributes is an attribute graph simulating heterogeneous interactions between users and commodities; the heterogeneous interactions include historical ratings of commodities by users and historical comments of commodities by users;
[0008] The feature attribute bipartite graph is divided into a product domain subgraph and a comment domain subgraph according to the heterogeneous interaction type; the product domain subgraph includes a first user node vector, a rating edge vector including rating scores, and a first product node vector; the comment domain subgraph includes a second user node vector, a comment edge vector including comment hidden features, and a second product node vector;
[0009] Aggregating the first user node vector and the first product node vector respectively using an attribute graph convolutional network according to the rating edge vector, and obtaining a first user feature and a first product feature respectively;
[0010] aggregating the second user node vector and the comment edge vector corresponding to the second user node vector using an attribute graph convolutional network to obtain a second user feature;
[0011] Aggregating the second product node vector and the comment edge vector corresponding to the second product node vector using an attribute graph convolutional network to obtain a second product feature;
[0012] Using an attention mechanism to fuse the first user feature and the second user feature to obtain a user fusion feature;
[0013] Using the attention mechanism to fuse the first product feature and the second product feature, to obtain a fused product feature;
[0014] According to the user fusion features and the product fusion features, a score is calculated using a feedforward network by adopting a feature vector inner product method.
[0015] An interactive rating prediction system integrating comments and ratings, comprising:
[0016] A graph construction module is used to construct a feature attribute bipartite graph; the feature attribute bipartite graph is an attribute graph simulating heterogeneous interactions between users and commodities; the heterogeneous interactions include historical ratings of commodities by users and historical comments of commodities by users;
[0017] A graph partitioning module is used to divide the feature attribute bipartite graph into a product domain subgraph and a comment domain subgraph according to the heterogeneous interaction type; the product domain subgraph includes a first user node vector, a rating edge vector including a rating score, and a first product node vector; the comment domain subgraph includes a second user node vector, a comment edge vector including a comment hidden feature, and a second product node vector;
[0018] A first aggregation module, configured to aggregate the first user node vector and the first product node vector respectively using an attribute graph convolutional network according to the rating edge vector, to obtain a first user feature and a first product feature respectively;
[0019] A second aggregation module is used to aggregate the second user node vector and the comment edge vector corresponding to the second user node vector using an attribute graph convolutional network to obtain a second user feature; and to aggregate the second product node vector and the comment edge vector corresponding to the second product node vector using an attribute graph convolutional network to obtain a second product feature;
[0020] A user feature fusion module, used to fuse the first user feature and the second user feature using an attention mechanism to obtain a user fusion feature;
[0021] A product feature fusion module, used to fuse the first product feature and the second product feature using an attention mechanism to obtain a product fusion feature;
[0022] The score calculation module is used to calculate the score according to the user fusion feature and the product fusion feature by using a feedforward network and a feature vector inner product method.
[0023] According to the specific embodiments provided by the present invention, the present invention discloses the following technical effects:
[0024] The present invention provides an interactive rating prediction method and system integrating comments and ratings. By constructing a node attribute bipartite graph, auxiliary information such as ratings and comments are integrated into the interaction between users and products, and a convolutional neural network is used to learn and obtain the hidden features of the comments, and the hidden features are integrated into the node attribute bipartite graph to obtain a feature attribute bipartite graph; then the attribute graph convolution network is used to update the user node features and product node features in the feature attribute bipartite graph from the product domain and the comment domain respectively, thereby enhancing the learning of user and product features, and thus the ratings predicted based on user features and product features are more accurate. By using the attention mechanism to calculate feature weights in real time, the user node features and product node features are nonlinearly and dynamically fused, thereby further improving the accuracy of the recommendation system's predicted ratings. BRIEF DESCRIPTION OF THE DRAWINGS
[0025] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work. The following drawings are not deliberately scaled according to the actual size, and the focus is on illustrating the main purpose of the present invention.
[0026] Figure 1 A schematic diagram of the structure of an attribute graph convolutional network model for rating prediction provided according to Embodiment 1 of the present invention is shown;
[0027] Figure 2 A flowchart of an interactive rating prediction method integrating comments and ratings provided in accordance with Embodiment 1 of the present invention is shown;
[0028] Figure 3 A schematic diagram showing the division and fusion of a product domain subgraph and a review domain subgraph according to Embodiment 1 of the present invention is shown;
[0029] Figure 4 A structural diagram of an interactive rating prediction system integrating comments and ratings provided according to Embodiment 2 of the present invention is shown. DETAILED DESCRIPTION
[0030] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present invention.
[0031] As shown in the present invention and claims, unless the context clearly indicates an exception, the words "a", "an", "an" and / or "the" do not refer to the singular, but also include the plural. Generally speaking, the terms "include" and "comprise" only indicate the inclusion of the steps and elements that have been clearly identified, and these steps and elements do not constitute an exclusive list, and the method or device may also include other steps or elements.
[0032] Although the present invention has made various references to certain modules in the system according to an embodiment of the present invention, any number of different modules can be used and run on a user terminal and / or server. The modules are only illustrative, and different aspects of the system and method can use different modules.
[0033] The present invention uses a flow chart to illustrate the operations performed by the system according to an embodiment of the present invention. It should be understood that the preceding or following operations are not necessarily performed precisely in order. On the contrary, various steps may be processed in reverse order or simultaneously as required. At the same time, other operations may also be added to these processes, or one or more operations may be removed from these processes.
[0034] The purpose of the present invention is to provide an interactive rating prediction method and system that integrates comments and ratings to improve the accuracy of rating prediction, thereby improving the accuracy of recommendation system recommendations.
[0035] In order to make the above-mentioned objects, features and advantages of the present invention more obvious and easy to understand, the present invention is further described in detail below with reference to the accompanying drawings and specific embodiments.
[0036] In order to address the shortcomings of collaborative filtering-based methods, some related works usually consider both user history records and various types of auxiliary information, such as social relations, text comments, contextual information, etc. Auxiliary information contains important supplementary information, which helps to capture user preferences and product features in sparse and cold start scenarios. Among them, comment information, as an important auxiliary information that provides rich semantic signals, can be found everywhere in many e-commerce and social networking websites. User comments on products with clear ratings on the website can reveal user preferences and product features, and they can also provide supplementary information to infer and explain the potential dimensions of rating prediction. Based on the comments, sentiment analysis technology and topic model technology are used for regularization, and user and product features are learned through matrix decomposition. Although the sparsity problem of traditional collaborative filtering methods is alleviated, the ability to extract features from comments relying on these technologies is still limited.
[0037] In order to obtain effective features from reviews, more and more researchers are trying to use deep learning methods to learn review features. Although deep learning-based methods are helpful for rating prediction through reviews, there are still some limitations:
[0038] (1) They usually encode user and product reviews independently to represent their features and fuse them through factorization machines to predict ratings, which usually makes the model overconfident and overfitting. In addition, they ignore the impact of reviews as interactive information between users and products. Reviews can not only be encoded as feature representations of users and products, but the relationships they represent can also enhance the learning of user and product features.
[0039] (2) Most methods ignore historical ratings when encoding user and item features, and they only use ratings as labels. However, ratings also provide important information, indicating the explicit interactions between users and items, and can complement reviews to better learn user and item features.
[0040] (3) Although some systems have considered learning user and product features in the review domain and product domain, they still adopt a static strategy to linearly combine the features and are therefore unable to adaptively learn the importance of the two domains.
[0041] To address the above issues, this embodiment constructs an attributed graph convolutional network model for rating prediction (AGCR). Based on the corresponding comments and ratings of each user-product combination, modeling the interaction can improve the accuracy of rating prediction. At the same time, the impact of comments and ratings is dynamically considered to further improve the accuracy of rating prediction. Figure 1As shown in the figure, the attribute graph convolutional network model for rating prediction includes convolutional neural networks (Graph Convolutinal Networks, CNN), a shared layer (Shared Layer), an attributed graph convolutional network (Attributed Graph Convolutinal Networks, AGCN), an attention layer (Attention Layer) and a prediction layer (Prediction Layer), wherein the convolutional neural network includes an input layer (Input Layer), an embedding layer (Embedding Layer) and a convolutional neural network layer (CNN Layer), and the convolutional neural network layer (CNN Layer) includes a convolution layer, a maximum pooling layer and a fully connected layer. The input is a multi-attributed bipartite graph (MABG) integrating historical comments and ratings. After being mapped to a vector representation through the Embedding Layer and encoding the review features with the CNN Layer, the user, product, and review vectors are projected to the same space in the Shared Layer. The two sub-attribute graphs extract features through the AGCN Layer, and the user and product features are fused in the Attention Layer. Finally, the rating of a given user p for a product q is predicted through the Prediction Layer.
[0042] See also Figure 2 This embodiment uses a convolutional network model of attribute graph for rating prediction to provide an interactive rating prediction method integrating comments and ratings, including:
[0043] S1: construct a multi-attributed bipartite graph (MABG); the multi-attributed bipartite graph is an attribute graph that simulates heterogeneous interactions between users and products; the heterogeneous interactions between users and products include historical ratings of users on products and historical comments of users on products.
[0044] The characteristic attribute bipartite graph MABG is expressed as: G = (v, ε), where v represents the user node and the product node; E t It represents a set of multiple types of edges, and the edges represent the corresponding relationships between users and products of heterogeneous types. In practical applications, the attributes of the edges can be extended to multiple types of interactions between users and products. In this embodiment, only comments and ratings are used as two heterogeneous interaction types.
[0045] Since focusing on all comments can only represent the approximate user preferences and product attributes, they cannot represent the fine-grained preferences of users for specific products. Therefore, this embodiment uses convolutional neural network technology to embed each historical comment corresponding to the user and the product, and extracts the features of the text based on the embedded comments to construct a feature attribute bipartite graph. The specific operations are as follows:
[0046] (1) constructing a node attribute bipartite graph; the node attribute bipartite graph includes an attribute graph of the interaction between the user node and the product node through the historical rating and the historical comment, wherein the user node and the product node are represented by corresponding identity codes, the historical rating is represented by a number ranging from 1 to 5, and the historical comment is represented by a phrase;
[0047] (2) inputting the node attribute bipartite graph into the input layer of the convolutional neural network;
[0048] (3) converting the user node and the product node into a user node vector and a product node vector respectively through a one-hot encoding technique;
[0049] (4) converting the historical ratings into a review embedding matrix containing review edge vectors through word embedding technology;
[0050] Specifically, in the embedding layer, one-hot encoding technology is applied to represent the user nodes and product nodes in this layer, and word embedding technology is used to obtain the semantics of each of the historical comments to obtain the comment embedding matrix.
[0051] Each historical review written by user u to product i is recorded as Where n is the number of review words, e is the word embedding dimension, each review word is mapped to the word embedding, and the review embedding matrix is expressed as follows:
[0052] S 1:n =(w1, ..., w i-1 , w i , w i+1 , ..., w n ) T
[0053] Among them, w i is the vector representation of the i-th word in the review embedding matrix.
[0054] (5) performing a convolution operation on the comment embedding matrix using a sliding window method to obtain a first comment feature;
[0055] (6) performing a maximum pooling operation on the first comment feature to retain context features;
[0056] (7) concatenating all the context features to obtain comment concatenation features;
[0057] (8) Perform a linear transformation on the comment concatenation features to obtain the latent features of each historical comment.
[0058] Specifically, in the convolution layer: a sliding window method is used to perform a convolution operation on the comment embedding matrix to obtain the first comment feature; wherein each convolution kernel f in the convolution layer j Perform a convolution operation, is the convolution kernel f j The convolution weight matrix, t is the convolution kernel size, b j is the bias term, where the symbol * represents the convolution operation and ReLU is used as the activation function. j Represented by the convolution kernel f j The first comment feature is extracted using a sliding window approach;
[0059] In the maximum pooling layer, the first comment feature is subjected to the maximum pooling operation to retain the most valuable contextual features of each convolution kernel, i.e., o j = max{z1, z2, z3, ..., z (n-t+1)}; All the retained context features are concatenated as the output of the maximum pooling layer to obtain the comment concatenation feature, that is,
[0060] In the fully connected layer, the comment concatenation features are linearly transformed to obtain the latent features of each historical comment, i.e., h s =f(W×O+b), where W is the weight matrix, b is the bias term, and f is the ReLU activation function.
[0061] Since there are two types of edges between user nodes and product nodes, it is necessary to learn user and product features separately according to different interactions, and merge the two types of features to obtain the final features. To achieve this, the entire attribute bipartite graph needs to be divided into two subgraphs (Attributed Sub-Graph, ASG), such as Figure 3 As shown, that is:
[0062] S2: Divide the feature attribute bipartite graph into a product domain subgraph and a comment domain subgraph according to the heterogeneous interaction type; the product domain subgraph includes a first user node vector, a rating edge vector containing rating scores, and a first product node vector; the comment domain subgraph includes a second user node vector, a comment edge vector containing comment hidden features, and a second product node vector.
[0063] Based on these two subgraphs, this embodiment proposes to integrate the review features and rating scores into the graph convolutional network, and use the attribute graph convolutional network (AGCN) to learn the user features and product features in the two fields respectively to achieve more accurate rating prediction, that is:
[0064] S3: According to the rating edge vector, the first user node vector and the first product node vector are aggregated by using an attribute graph convolutional network to obtain first user features and first product features respectively.
[0065] A lightweight GCN method is proposed in the prior art to handle implicit feedback recommendation. They found that the complex feature transformation and nonlinear activation of the original GCN are not essential in the recommendation task. Considering the prediction accuracy and computational cost, this embodiment reduces these complex parts in the model to learn node features more effectively. In order to integrate the rating score into AGCN, the first user node vector and the first product node vector in the first layer of the attribute graph convolutional network are first initialized, that is:
[0066] h u-ra (0) =h u-re (0) =h u '
[0067] h i-ra (0) =h i-re (0) =h i '
[0068] Among them, ra represents the product domain, re represents the comment domain, and h u-ra (0) represents the first user node vector in the first layer of the attribute graph convolutional network in the product domain, h u-re (0) represents the second user node vector in the first layer of the attribute graph convolutional network in the comment domain, h i-ra (0) represents the first commodity node vector in the first layer of the attribute graph convolutional network in the commodity domain, h i-ra (0) Represents the second product node vector in the first layer of the attribute graph convolutional network in the product domain.
[0069] It should be noted that initially the user node vectors and item node vectors are the same in both domains, but they are trained independently on different attribute subgraphs.
[0070] Then, according to all the rating scores and the maximum rating score of the first user node for the first product node, a normalized rating is obtained, and the normalized rating is expressed as:
[0071] r(u,i )=R (u,i) / max(R)
[0072] Wherein, R(u, i) represents the set of all corresponding rating scores between the first user node and the first product node, max(R) represents the maximum rating score, and r(u, i) represents the normalized rating score;
[0073] Since the rating scores show the direct and obvious preferences of users towards items when aggregating different neighbors, the ratings can be considered as an important signal.
[0074] Using the normalized score as an aggregation weight;
[0075] According to the neighbor node vector of the first user node vector in the previous layer of the attribute graph convolution network and the aggregation weight, the first user node vector in the next layer of the attribute graph convolution network is updated, and the neighbor node vector of the first user node vector in the previous layer of the attribute graph convolution network is the vector of the first commodity node connected to the first user node in the previous layer of the attribute graph convolution network;
[0076] Calculate the first commodity node vector in the next layer of the attribute graph convolution network according to the neighbor node vector of the first commodity node vector in the previous layer of the attribute graph convolution network and the aggregation weight, wherein the neighbor node vector of the first commodity node vector in the previous layer of the attribute graph convolution network is the vector of the first user node connected to the first commodity node in the previous layer of the attribute graph convolution network;
[0077] The first user node vector in the last layer of the attribute graph convolutional network and the first product node vector in the last layer of the attribute graph convolutional network are expressed as:
[0078]
[0079]
[0080] Among them, h u-ra (k+1) represents the first user node vector of the k+1th layer attribute graph convolutional network, h u-ra (k) represents the first user node vector of the k-th layer attribute graph convolutional network, h i-ra (k+1) represents the first commodity node vector of the k+1th layer attribute graph convolutional network, h i-ra (k) represents the first commodity node vector of the k-th layer attribute graph convolutional network, It is represented by all the first product nodes connected to the first user node in the product domain subgraph, Represented as all first user nodes connected to the first product node in the product domain subgraph.
[0081] Obtain the first user feature according to the first user node vector of the last layer of the attribute graph convolutional network;
[0082] The first product feature is obtained according to the first product node vector of the last layer of the attribute graph convolutional network.
[0083] In addition, during the commodity domain aggregation process, this embodiment also uses l1 regularization to prevent the size of the node vector from increasing with the increase of graph convolution operations.
[0084] By incorporating rating scores into the aggregation process, the degree of explicit interaction between users and items can be modeled.
[0085] S4: Aggregate the second user node vector and the comment edge vector corresponding to the second user node vector using an attribute graph convolutional network to obtain a second user feature; Aggregate the second product node vector and the comment edge vector corresponding to the second product node vector using an attribute graph convolutional network to obtain a second product feature.
[0086] In the review domain, edges are represented as unstructured review features rather than weights represented by ratings. In order to learn review features, this embodiment uses both node vectors and edge vectors for aggregation in AGCN. Specifically, the review hidden features are first used as the initial vectors of the review edges. AGCN aggregates not only the adjacent node vectors, but also the review edge vectors linked to the nodes. That is, for each user, AGCN aggregates the features of his / her neighbor products and the features of the user's reviews on the products. AGCN randomly samples the neighbors of each node to reduce large-scale convolution calculations.
[0087] S4 specifically includes:
[0088] Aggregate the second product node vector and the comment edge vector connected to the second user node to obtain the first user neighbor vector;
[0089] Aggregate the second user node vector and the comment edge vector connected to the second product node to obtain the first product neighbor vector;
[0090] The first product neighbor vector and the first user neighbor vector are expressed as:
[0091] H (i,r) (k) =CONCAT(h i-re (k) ,h r ′)
[0092] H (u,r)(k) =CONCAT(h u-re (k) ,h r ′)
[0093] Among them, H(i, r) (k) represents the first commodity neighbor vector, h i-re (k) Represents the second commodity node vector of the k-th layer attribute graph convolutional network, H(u, r) (k) represents the first user neighbor vector, h u-re (k) Represents the second user node vector of the k-th layer attribute graph convolutional network;
[0094] Calculate a first aggregation vector according to the first user neighbor vector and an aggregation function;
[0095] Calculate a second aggregation vector according to the first product neighbor vector and the aggregation function;
[0096] The first aggregation vector and the second aggregation vector are respectively expressed as:
[0097]
[0098]
[0099] Among them, h N(u) (k+1) represents the first aggregation vector, h N(i) (k+1) represents the second aggregation vector, E(u,i) is the comment edge vector, Represented as all second product nodes connected to the second user node in the product domain subgraph, It represents all the second user nodes connected to the second product node in the product domain subgraph, and AGGREGATE represents the aggregation function for finding the vector mean.
[0100] According to the second user node vector in the previous layer of the attribute graph convolutional network and the first aggregation vector, a nonlinear combination strategy is adopted to update the second user node vector in the next layer of the attribute graph convolutional network;
[0101] According to the second commodity node vector in the previous layer of the attribute graph convolutional network and the second aggregation vector, a nonlinear combination strategy is adopted to update the second commodity node vector in the next layer of the attribute graph convolutional network;
[0102] The second user node vector in the last layer of the attribute graph convolutional network and the second commodity node vector in the last layer of the attribute graph convolutional network are respectively expressed as:
[0103]
[0104]
[0105] Among them, h u-re (k+1) represents the second user node vector of the k+1th layer of the graph convolutional network; σ represents the nonlinear activation function; W k represents the parameter matrix of the kth layer of the graph convolutional network, which is calculated according to the objective function of the attributed graph convolutional network; h u-re (k) represents the second user node vector of the kth layer of the graph convolutional network; h N(u) (k+1) represents the first aggregation vector; h i-re (k+1) represents the second commodity node vector of the k+1th layer of the graph convolutional network; h i-re (k) represents the second commodity node vector of the kth layer of the convolutional network; h N(i) (k+1) represents the second aggregation vector;
[0106] Obtain the second user feature according to the second user node vector of the last layer of the attribute graph convolutional network;
[0107] The second product feature is obtained according to the second product node vector of the last layer of the attribute graph convolutional network.
[0108] Therefore, AGCN can not only capture explicit user-item interactions through graph convolution operations, but also capture user-item semantic interactions.
[0109] In order to achieve dynamic fusion, this embodiment uses the attention mechanism, see Figure 3 ,Right now:
[0110] S5: using the attention mechanism to fuse the first user feature and the second user feature to obtain a user fusion feature; using the attention mechanism to fuse the first commodity feature and the second commodity feature to obtain a commodity fusion feature. The fusion process specifically includes:
[0111] In order to obtain the attention weight, first, the first user feature and the second user feature are concatenated to obtain a concatenated user feature; the first product feature and the second product feature are concatenated to obtain a concatenated product feature, that is:
[0112] H u =CONCAT(h u-re (K) ,h u-ra (K) )
[0113] H i=CONCAT(h i-re (K) ,h i-ra (K) )
[0114] Among them, H u Concatenate user features, denoted by h u-re (K) represents the output of the last layer of the comment domain graph convolutional network, i.e., the second user feature, h u-ra (K) represents the first user feature, h i-ra (K) represents the first commodity feature, h i-re (K) Represents the second commodity feature, H i Indicates the characteristics of spliced products;
[0115] Then, the user feature fusion weight is calculated according to the self-attention weight matrix and the spliced user features; and the product feature fusion weight is calculated according to the self-attention weight matrix and the spliced product features.
[0116] Taking the user as an example, the user feature fusion weight of the user node rating domain and the user feature fusion weight of the user node comment domain The calculation is as follows:
[0117] e u-ra =w u-ra ′tanh(w u-ra H u )
[0118] e u-re =w u-re ′tanh(w u-re H u )
[0119]
[0120]
[0121] The self-attention weight matrix includes Symmetrically, the product feature fusion weight of the product node rating domain can be obtained and the product feature fusion weight of the product node rating domain
[0122] Finally, the user fusion feature is obtained according to the user feature fusion weight, the first user feature and the second user feature; the commodity fusion feature is obtained according to the commodity feature fusion weight, the first commodity feature and the second commodity feature, that is:
[0123] h u =a u-ra h u-ra +a u-re h u-re
[0124] h i =a i-ra h i-ra +a i-re h i-re
[0125] Among them, h u represents the user fusion feature; h u-ra represents the first user feature; a u-ra represents the fusion weight of the first user feature; u-re represents the second user feature; a u-re represents the fusion weight of the second user feature; i Indicates the fusion characteristics of the product; i-ra Indicates the first commodity feature; a i-ra represents the fusion weight of the first commodity feature; i-re Indicates the second commodity feature; a i-re Indicates the fusion weight of the second product feature.
[0126] S6: Calculate the score by using a feedforward network and a feature vector inner product method according to the user fusion feature and the product fusion feature, specifically including:
[0127] According to the user fusion features, a final user feature is obtained by using a feed-forward network FFN;
[0128] According to the product fusion features, a feed-forward network FFN is used to obtain the final product features;
[0129] The final user characteristics and final product characteristics are expressed as:
[0130]
[0131]
[0132] Among them, q u represents the end-user characteristics, q i Represents end-user characteristics;
[0133] According to the final user characteristics and the final product characteristics, the score is calculated using the feature vector inner product method, that is:
[0134]
[0135] Among them, is the rating of user u for product i predicted by the AGCR model, β u and β i are the deviations of user u and item i, μ is the global deviation term, q u and q i are the learned end-user features and end-user characteristics.
[0136] The objective function of the AGCR model is defined as:
[0137]
[0138] Where R is the set of user-item combinations, y ui is the true score, Θ is all the parameters of AGCR, Indicates that l2 regularization is used to prevent overfitting.
[0139] Due to the heterogeneity of the latent features of user features, product features, and comments, before using the attribute graph convolutional network to learn the user features and product features in the two fields, it is necessary to set a shared layer between the attribute graph convolutional network and the convolutional neural network. In the shared layer, the user nodes, product nodes, and comment edges containing the latent features of comments are converted, including:
[0140] The first user node vector and the first commodity node vector are converted by using a feature conversion matrix to obtain a converted first user node vector and a converted first commodity node vector, respectively; wherein the feature conversion matrix is calculated according to the objective function of the attribute graph convolutional network;
[0141] The second user node vector, the comment edge vector, and the second product node vector are transformed by using a feature transformation matrix to obtain a transformed second user node vector, a transformed comment edge vector, and a transformed second product node vector, respectively;
[0142] The converted first user node vector, the converted first product node vector, the converted second user node vector, the converted second product node vector and the converted comment edge vector are used as the new first user node vector, the new first product node vector, the new second user node vector, the new second product node vector and the new comment edge vector respectively.
[0143] The conversion operation adopted in this embodiment is: v ′=M t ·h v ,h v ∈{h u ,h i ,h r}, where Mt represents the feature conversion matrix, which is calculated using the objective function of the AGCR model; h v ′∈{h u ′,h i ′,h r ′},h u ′ represents the user node vector after conversion, h i ′ represents the converted commodity node vector, h r ′ represents the transformed comment edge vector, h u represents the first user node vector or the second user node vector, h i represents the first commodity node vector or the second user node vector, h r ′ represents the comment edge vector, h v It includes the user node vector and product node vector from the input layer and the comment edge vector containing hidden features from the output of the convolutional neural network layer.
[0144] It should be noted that the above interactive rating prediction method integrating comments and ratings focuses on the description of the attribute graph convolutional network model training process. In practical application, it should also be noted that:
[0145] First: Before AGCR training, data preprocessing is performed:
[0146] That is, the "five core" subset in the Amazon Review dataset is used, where "five core" means that each user and product in the subset has at least 5 reviews. The dataset contains user interactions with products (comments, ratings, votes, etc.) and Amazon's product metadata (for example, descriptions, prices, brands, image URLs, etc.). This embodiment uses 6 categories in the dataset, including "Automotive", "Instant Video", "Digital Music", "Toys and Games", "Kindle Store", and "Movies and TV". These categories have different sparsity and are commonly used in review-based recommendation systems. The preprocessing of these data includes: 1) deleting data with empty comments; 2) deleting the reviews written by the target user for the target product during testing. In the experiment, 80% of each category dataset was randomly selected as a training set, 10% as a validation set, and the remaining 10% as a test set.
[0147] Second: During the AGCR training session:
[0148] We use Google News word vectors to initialize comments. For each category, we train the model with the training set and select the best model checkpoint with the validation set. The indicators for evaluating model performance include root mean square error (RMSE) and mean absolute error (MAE).
[0149] The training parameters are as follows: the model is optimized with SGD optimizer, the number of training rounds is ep, the batch size in each round is 32, and the hyperparameters of AGCR are adjusted by grid search on each category, namely, the dimension range of user and product feature vectors is [8, 16, 32, 64, 128], the learning rate range is [0.0001, 0.0005, 0.001, 0.005, 0.01], the l2 regularization coefficient range is [0.001, 0.005, 0.05, 0.01], and the dropout ratio is 0.2. For the CNN convolutional neural network, the number of convolution kernels is 100, the sliding window size is 3, and the maximum length of the review is 300.
[0150] Third: AGCR model application link:
[0151] That is, firstly, the trained AGCR is compared with the existing technology on the test set to verify the effectiveness and generalization of the prediction method proposed in this embodiment. Secondly, the AGCR model is integrated into the background recommendation system of websites that are sensitive to ratings and reviews, such as e-commerce, movie reviews, and catering services. There are two application methods here:
[0152] 1) If there is a large amount of historical data on the website, the data can be cleaned and sorted, and the AGCR can be retrained using the data in this field;
[0153] 2) If the website has insufficient or no historical data, you can first integrate multiple categories of data from the Amazon dataset to train AGCR. On the one hand, this can avoid learning bias in a certain field and improve the generalization of the model. On the other hand, it can increase the amount of data and improve model performance. Secondly, through the method of domain adaptation, the model can be migrated to the website data.
[0154] Compared with the existing collaborative filtering-based technology, review-based technology, and graph neural network-based technology, the interactive rating prediction method integrating reviews and ratings proposed in this embodiment has higher rating prediction accuracy and is significantly better than the existing technology in both evaluation indicators. The specific reasons are analyzed as follows:
[0155] Existing methods encode user and product comments independently based on CNN and attention mechanism to obtain their vector representations, which lacks the process of nonlinear modeling of the interaction between users and products that this embodiment attaches importance to. This embodiment first uses CNN to obtain the latent features of comments, and then integrates the latent features of comments into the attribute graph convolutional network (AGCN), bridging the connection between users and products in the process of information transmission in the graph to further learn user and product features.
[0156] The graph constructed by the existing graph neural network-based technology is attributeless and does not integrate any auxiliary information into the user and product node representation. However, this embodiment proposes a multi-attribute bipartite graph, which gives the graph rating and comment attributes, and updates the node features from both the product domain and the comment domain. That is, the heterogeneous graph makes the information source of node updates richer.
[0157] In addition, when changing the learning rate and dropout rate, AGCR consistently shows better performance than review-based techniques and graph neural network-based techniques. Taking CARL as an example, this method fuses the dot product of user vectors and product vectors from the product domain and reviews by setting a hyperparameter. This embodiment uses an attention mechanism, which uses an activation function internally and calculates feature weights in real time, so that the recommendation system can nonlinearly and dynamically fuse user node features and product node features when predicting ratings.
[0158] Therefore, the interactive rating prediction method that integrates comments and ratings provided in this embodiment integrates auxiliary information such as ratings and comments into the interaction between users and products by constructing a node attribute bipartite graph, and uses a convolutional neural network to learn and obtain the hidden features of the comments, and integrates the hidden features into the node attribute bipartite graph to obtain a feature attribute bipartite graph; then the attribute graph convolution network is used to update the user node features and product node features in the feature attribute bipartite graph from the product domain and the comment domain respectively, thereby enhancing the learning of user and product features, and thus the ratings predicted based on user features and product features are more accurate. By using the attention mechanism to calculate feature weights in real time, the user node features and product node features are nonlinearly and dynamically fused, further improving the accuracy of the recommendation system's predicted ratings.
[0159] Embodiment 2:
[0160] See also Figure 4 This embodiment also provides an interactive rating prediction system integrating comments and ratings, including:
[0161] A graph construction module M1 is used to construct a bipartite graph of characteristic attributes; the bipartite graph of characteristic attributes is an attribute graph simulating heterogeneous interactions between users and commodities; the heterogeneous interactions include historical ratings of commodities by users and historical comments of commodities by users;
[0162] The graph partitioning module M2 is used to divide the feature attribute bipartite graph into a product domain subgraph and a comment domain subgraph according to the heterogeneous interaction type; the product domain subgraph includes a first user node vector, a rating edge vector including a rating score, and a first product node vector; the comment domain subgraph includes a second user node vector, a comment edge vector including a comment hidden feature, and a second product node vector;
[0163] A first aggregation module M3, configured to aggregate the first user node vector and the first product node vector respectively according to the rating edge vector using an attribute graph convolutional network to obtain a first user feature and a first product feature respectively;
[0164] A second aggregation module M4 is used to aggregate the second user node vector and the comment edge vector corresponding to the second user node vector using an attribute graph convolutional network to obtain a second user feature; and to aggregate the second product node vector and the comment edge vector corresponding to the second product node vector using an attribute graph convolutional network to obtain a second product feature;
[0165] A user feature fusion module M5, configured to fuse the first user feature and the second user feature using an attention mechanism to obtain a user fusion feature;
[0166] A product feature fusion module M6, configured to fuse the first product feature and the second product feature using an attention mechanism to obtain a product fusion feature;
[0167] The score calculation module M7 is used to calculate the score according to the user fusion feature and the product fusion feature by using a feedforward network and a feature vector inner product method.
[0168] The present invention uses specific words to describe the embodiments of the present invention. For example, "first / second embodiment", "one embodiment", and / or "some embodiments" refer to a certain feature, structure or characteristic associated with at least one embodiment of the present invention. Therefore, it should be emphasized and noted that "one embodiment" or "an embodiment" or "an alternative embodiment" mentioned twice or more in different locations in this specification does not necessarily refer to the same embodiment. In addition, certain features, structures or characteristics in one or more embodiments of the present invention may be appropriately combined.
[0169] In addition, those skilled in the art will appreciate that various aspects of the present invention may be illustrated and described by a number of patentable categories or situations, including any new and useful process, machine, product or combination of substances, or any new and useful improvements thereto. Accordingly, various aspects of the present invention may be performed entirely by hardware, entirely by software (including firmware, resident software, microcode, etc.), or by a combination of hardware and software. The above hardware or software may all be referred to as "data blocks", "modules", "engines", "units", "components" or "systems". In addition, various aspects of the present invention may be represented as a computer product located in one or more computer-readable media, which includes computer-readable program code.
[0170] Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art to which the invention belongs. It should also be understood that terms such as those defined in common dictionaries should be interpreted as having a meaning consistent with their meaning in the context of the relevant technology and should not be interpreted in an idealized or extremely formal sense, unless explicitly defined as such herein.
[0171] The above is an explanation of the present invention and should not be considered as a limitation thereof. Although several exemplary embodiments of the present invention have been described, it will be readily appreciated by those skilled in the art that many modifications may be made to the exemplary embodiments without departing from the novel teachings and advantages of the present invention. Therefore, all such modifications are intended to be included within the scope of the present invention as defined in the claims. It should be understood that the above is an explanation of the present invention and should not be considered as being limited to the specific embodiments disclosed, and modifications to the disclosed embodiments and other embodiments are intended to be included within the scope of the appended claims. The present invention is defined by the claims and their equivalents.
Claims
1. An interactive rating prediction method integrating comments and ratings, characterized in that: include: Construct a bipartite graph of feature attributes; The characteristic attribute bipartite graph is an attribute graph simulating heterogeneous interactions between users and commodities; the heterogeneous interactions include historical ratings of commodities by users and historical comments of commodities by users; The feature attribute bipartite graph is divided into a product domain subgraph and a comment domain subgraph according to the heterogeneous interaction type; the product domain subgraph includes a first user node vector, a rating edge vector including rating scores, and a first product node vector; the comment domain subgraph includes a second user node vector, a comment edge vector including comment hidden features, and a second product node vector; Aggregating the first user node vector and the first product node vector respectively using an attribute graph convolutional network according to the rating edge vector, and obtaining a first user feature and a first product feature respectively; aggregating the second user node vector and the comment edge vector corresponding to the second user node vector using an attribute graph convolutional network to obtain a second user feature; Aggregating the second product node vector and the comment edge vector corresponding to the second product node vector using an attribute graph convolutional network to obtain a second product feature; Using an attention mechanism to fuse the first user feature and the second user feature to obtain a user fusion feature; Using the attention mechanism to fuse the first product feature and the second product feature, to obtain a fused product feature; Calculate the score by using a feedforward network and a feature vector inner product method according to the user fusion feature and the product fusion feature; According to the user fusion feature and the product fusion feature, the score is calculated by using a feedforward network and a feature vector inner product method, specifically including: Obtaining final user features using a feedforward network according to the user fusion features; Obtaining final product features using a feedforward network according to the product fusion features; The score is calculated according to the final user characteristics and the final product characteristics by using the feature vector inner product method.
2. The interactive rating prediction method integrating comments and ratings according to claim 1, characterized in that: The constructing of the characteristic attribute bipartite graph specifically includes: Constructing a bipartite graph of node attributes; the bipartite graph of node attributes includes an attribute graph of the interaction between user nodes and product nodes through historical ratings and historical comments, wherein the user nodes and product nodes are represented by corresponding identity codes, the historical ratings are represented by numbers, and the historical comments are represented by phrases; Inputting the node attribute bipartite graph into the convolutional neural network; The user nodes and the commodity nodes are converted into user node vectors and commodity node vectors respectively by using a one-hot encoding technology; Convert the historical ratings into a review embedding matrix containing review edge vectors by using word embedding technology; Performing a convolution operation on the comment embedding matrix in a sliding window manner to obtain a first comment feature; Performing a maximum pooling operation on the first comment feature to retain context features; All the context features are concatenated to obtain comment concatenation features; The comment concatenation features are linearly transformed to obtain the latent features of each historical comment.
3. The interactive rating prediction method integrating comments and ratings according to claim 1, characterized in that: Before respectively aggregating the first user node vector and the first product node vector using an attribute graph convolutional network according to the rating edge vector to respectively obtain a first user feature and a first product feature, the method further includes: The first user node vector and the first commodity node vector are converted by using a feature conversion matrix to obtain a converted first user node vector and a converted first commodity node vector, respectively; wherein the feature conversion matrix is calculated according to the objective function of the attribute graph convolutional network; The second user node vector, the comment edge vector, and the second product node vector are transformed by using a feature transformation matrix to obtain a transformed second user node vector, a transformed comment edge vector, and a transformed second product node vector, respectively; The converted first user node vector, the converted first product node vector, the converted second user node vector, the converted second product node vector and the converted comment edge vector are used as the new first user node vector, the new first product node vector, the new second user node vector, the new second product node vector and the new comment edge vector respectively.
4. The interactive rating prediction method integrating comments and ratings according to claim 1, characterized in that: The step of respectively aggregating the first user node vector and the first product node vector using an attribute graph convolutional network according to the rating edge vector to obtain a first user feature and a first product feature respectively includes: Obtaining a normalized score according to all rating scores of the first user node on the first product node and the maximum rating score; Using the normalized score as an aggregation weight; According to the neighbor node vector of the first user node vector in the previous layer of the attribute graph convolution network and the aggregation weight, the first user node vector in the next layer of the attribute graph convolution network is updated, and the neighbor node vector of the first user node vector in the previous layer of the attribute graph convolution network is the vector of the first commodity node connected to the first user node in the previous layer of the attribute graph convolution network; Obtain the first user feature according to the first user node vector of the last layer of the attribute graph convolutional network; Calculate the first commodity node vector in the next layer of the attribute graph convolution network according to the neighbor node vector of the first commodity node vector in the previous layer of the attribute graph convolution network and the aggregation weight, wherein the neighbor node vector of the first commodity node vector in the previous layer of the attribute graph convolution network is the vector of the first user node connected to the first commodity node in the previous layer of the attribute graph convolution network; The first product feature is obtained according to the first product node vector of the last layer of the attribute graph convolutional network.
5. The interactive rating prediction method integrating comments and ratings according to claim 1, characterized in that: The step of aggregating the second user node vector and the comment edge vector corresponding to the second user node vector by using an attribute graph convolutional network to obtain a second user feature; and aggregating the second product node vector and the comment edge vector corresponding to the second product node vector by using an attribute graph convolutional network to obtain a second product feature specifically includes: Aggregate the second product node vector and the comment edge vector connected to the second user node to obtain the first user neighbor vector; Aggregate the second user node vector and the comment edge vector connected to the second product node to obtain the first product neighbor vector; Calculate a first aggregation vector according to the first user neighbor vector and an aggregation function; Calculate a second aggregation vector according to the first product neighbor vector and the aggregation function; According to the second user node vector in the previous layer of the attribute graph convolutional network and the first aggregation vector, a nonlinear combination strategy is adopted to update the second user node vector in the next layer of the attribute graph convolutional network; Obtain the second user feature according to the second user node vector of the last layer of the attribute graph convolutional network; According to the second commodity node vector in the previous layer of the attribute graph convolutional network and the second aggregation vector, a nonlinear combination strategy is adopted to update the second commodity node vector in the next layer of the attribute graph convolutional network; The second product feature is obtained according to the second product node vector of the last layer of the attribute graph convolutional network.
6. The interactive rating prediction method integrating comments and ratings according to claim 1, characterized in that: The step of fusing the first user feature and the second user feature using the attention mechanism to obtain a user fusion feature specifically includes: concatenating the first user feature and the second user feature to obtain a concatenated user feature; Calculate the user feature fusion weight according to the self-attention weight matrix and the concatenated user features; The user fusion feature is obtained according to the user feature fusion weight, the first user feature and the second user feature.
7. The interactive rating prediction method integrating comments and ratings according to claim 5, characterized in that: The second user node vector in the last layer of the attribute graph convolutional network and the second commodity node vector in the last layer of the attribute graph convolutional network are respectively expressed as: Among them, h u-re (k+1) represents the second user node vector of the k+1th layer of the graph convolutional network; σ represents the nonlinear activation function; W k represents the parameter matrix of the kth layer of the graph convolutional network; h u-re (k) represents the second user node vector of the kth layer of the graph convolutional network; h N(u) (k+1) represents the first aggregation vector; h i-re (k+1) represents the second commodity node vector of the k+1th layer of the graph convolutional network; h i-re (k) represents the second commodity node vector of the kth layer of the convolutional network; h N(i) (k+1) represents the second aggregation vector.
8. The interactive rating prediction method integrating comments and ratings according to claim 1, characterized in that: The user fusion feature and the product fusion feature are respectively expressed as: h u =a u-ra h u-ra +a u-re h u-re h i =a i-ra h i-ra +a i-re h i-re Among them, h u represents the user fusion feature; h u-ra represents the first user feature; a u-ra represents the fusion weight of the first user feature; u-re represents the second user feature; a u-re represents the fusion weight of the second user feature; i Indicates the fusion characteristics of the product; i-ra Indicates the first commodity feature; a i-ra represents the fusion weight of the first commodity feature; i-re Indicates the second commodity feature; a i-re Indicates the fusion weight of the second product feature.
9. An interactive rating prediction system integrating comments and ratings, characterized in that: include: Graph construction module, used to construct a bipartite graph of feature attributes; The characteristic attribute bipartite graph is an attribute graph simulating heterogeneous interactions between users and commodities; the heterogeneous interactions include historical ratings of commodities by users and historical comments of commodities by users; A graph partitioning module is used to divide the feature attribute bipartite graph into a product domain subgraph and a comment domain subgraph according to the heterogeneous interaction type; the product domain subgraph includes a first user node vector, a rating edge vector including a rating score, and a first product node vector; the comment domain subgraph includes a second user node vector, a comment edge vector including a comment hidden feature, and a second product node vector; A first aggregation module, configured to aggregate the first user node vector and the first product node vector respectively using an attribute graph convolutional network according to the rating edge vector, to obtain a first user feature and a first product feature respectively; A second aggregation module is used to aggregate the second user node vector and the comment edge vector corresponding to the second user node vector using an attribute graph convolutional network to obtain a second user feature; and to aggregate the second product node vector and the comment edge vector corresponding to the second product node vector using an attribute graph convolutional network to obtain a second product feature; A user feature fusion module, used to fuse the first user feature and the second user feature using an attention mechanism to obtain a user fusion feature; A product feature fusion module, used to fuse the first product feature and the second product feature using an attention mechanism to obtain a product fusion feature; A scoring calculation module, used to obtain final user features using a feedforward network according to the user fusion features; and obtain final product features using a feedforward network according to the product fusion features; The score is calculated according to the final user characteristics and the final product characteristics by using the feature vector inner product method.
Citation Information
Patent Citations
Personalized recommendation method based on graph auto-encoder
CN112347362A
Graph neural network recommendation method integrated with comment information
CN112650929A