1. Introduction
Recommender systems are present in every aspect of our daily online lives due to their powerful ability to filter the ever-growing volume of data, enabling us to quickly access the information we all need in our fast-paced modern lives [
1,
2], such as product recommendations on the Amazon shopping site, music recommendations in NetEase Cloud Music, etc. Recommendation algorithms often use historical interaction data for modelling and learning to predict the probability of interaction between a user and a candidate item. Among the various recommendation techniques, collaborative filtering has achieved great success simply and effectively based on the idea that “things are grouped together, and people are grouped together” [
3,
4,
5]. However, collaborative filtering methods generally suffer from data sparsity and cold-start problems when there are less interaction data or when new users join. At the same time, most of the methods focus only on user ratings, which are only the overall evaluation of an item by users, and it is difficult to infer real user preferences from them. In addition, the specific aspects that different users care about for the same item may be different, even if they have the same ratings. Collaborative filtering is unable to analyse such fine-grained information and thus cannot accurately model user preferences, leading to biased recommendation results [
6].
In order to improve the performance of recommender systems, researchers have tried to use various schemes to solve the above problems. These schemes are mainly review and knowledge-graph-based recommendation. In order to facilitate the reader’s understanding, we categorised these recommendation algorithms, and each category included aspects such as the main technical features, representative models, and limitations, as shown in
Table 1.
Review-based recommendations. Review data are readily available in various application platforms on the Internet. Textual reviews have more detailed user opinions and item attributes than ratings [
7], and methods based on reviews and ratings effectively solve the data sparsity and cold-start problems. These methods use different strategies to extract features from reviews, and early research attempted to model topics from reviews, obtain user preferences, and then use collaborative filtering for recommendations [
8,
9,
10]. Some other researchers have used clustering to process review texts to categorize users and items from reviews and thus improve the recommendation performance based on category similarity [
11,
12,
13]. In recent years, deep-learning-based approaches have become popular, which use deep learning methods to learn user and item representations from reviews. They are mainly divided into two categories. One is a document-level recommendation, which splices and integrates user and item reviews into a single document for learning, and this type of method can obtain feature representations from a global perspective. Typical representative works include the DeepCoNN [
14] model, which uses a deep learning approach exclusively utilizing two parallel networks to integrate the information of the reviews written by the user into two documents used to learn the representation of the user and the item. The D-Attn [
15] model uses local attention to learn the user’s preferences and the item’s attributes and global attention to focus on the overall semantic information of the review text. Another category is single comment level recommendation; this type of approach models each comment individually and then aggregates these features to obtain a final representation of user and item features that are able to capture the user’s preference for a specific item. Representative works include NARRE [
16] and TARMF [
17] models that consider the importance of different reviews to be different, proposing a review-level attention mechanism to calculate the weight of each review. The HUITA [
18] model considers that not only the importance of different comments is different, but also the importance of different sentences and even different words in the same comment, so the representations of users and items are learned using three levels of attention at the word level, sentence level, and comment level, respectively. In addition, some new research combines machine learning with swarm intelligence approaches and it has proven to be able to achieve outstanding results in different areas [
19,
20,
21,
22]. Despite the progress made by these approaches, the modelling of embedded representations of users and items is still latent and does not accurately represent the personalized preferences of users and the personalized characteristics of items, which undoubtedly makes the recommendation performance suffer. There is also a sentiment-based approach [
23,
24,
25,
26]. This approach allows for fine-grained preference modelling of reviews to more accurately capture embedded representations of users and items, leading to further improvements in recommendation performance. In order to obtain a finer-grained sentiment analysis, researchers have conducted much work in recent years to identify the need for finer-grained aspect-level opinions and sentiments, known as aspect-based sentiment analysis (ABSA), which has received more and more attention. This approach is mainly implemented using ABSA techniques. ABSA is a field of research that analyses a variety of sentiment elements at the aspect level, and the main line of its research (a variety of specific tasks) is, that, given a text, the goal is to obtain one or several sentiments elements. ABSA is an essential fine-grained sentiment analysis technique that aims to analyse and understand human perspectives at the aspect level [
27,
28]. ABSA is an important technique in the field of natural language processing. However, it has been applied to review-based recommendation algorithms by more and more researchers because of its outstanding advantages in text processing [
12,
25,
29]. For example, Li et al. [
29] proposed a predictive model for user review ratings based on capsule networks. The model extracts viewpoints (viewpoints) and aspects from review documents, treating them as logical units. It designs an emotion capsule structure to reason about the representations of logical units and emotions, as well as user ratings prediction. Sung-Jun Park et al. [
12] constructed an emotion-aware knowledge graph by analysing users’ ratings and reviews of items, and they used a reinforcement learning strategy to make item recommendations and inferences. However, these approaches are overly dependent on the accuracy of external sentiment analysis tools.
Knowledge graph-based recommendations. The knowledge graph (KG) is a semantic network consisting of knowledge and relationships between knowledge, a large-scale knowledge base [
30,
31,
32,
33]. Knowledge graphs are rich in nodes and associations between nodes, which can be used to organise knowledge efficiently. Knowledge graphs have been gradually introduced into recommender systems due to their great success in various domains and have made good progress [
34,
35,
36,
37,
38]. For example, RippleNet [
36] proposed an end-to-end framework to iteratively propagate user preferences based on ratings using users’ historical clicked items in the knowledge graph to expand users’ potential interests. KGAT [
34] addressed the problem of modelling each user interaction as an independent data instance in previous approaches by using users’ historical interaction data to model higher-order relationships in a knowledge graph attention network, thereby extracting collaborative signals from collective behaviours. KGCL [
35] addressed the sparsity and noise problem of KGs by designing a generalized knowledge graph comparative learning framework to mitigate the information noise of knowledge graph-enhanced recommender systems. These efforts use ratings data to propagate and mine latent user preferences in the knowledge graph; however, they cannot model personalised information about users and items at a fine-grained level.
Table 1.
Categories of recommendation models.
Table 1.
Categories of recommendation models.
Categories | Main Technical Features | Algorithmic Models | Limitation |
---|
Recommendations based on reviews | Theme-based approach | Modelling the theme | [8,9,10] | Insufficient granularity of topics |
Clustering-based approach | Categorise users and items using clustering Recommendations based on category similarity. | [11,12,13] | Inability to model at a fine-grained level |
Deep learning-based approach (document level) | Integrate reviews as documents for learning | [14,15] | Modelled embedded representations are latent and do not accurately represent personalised preferences |
Deep learning- based approach (single comment level) | Modelling each review individually | [16,17,18] |
Sentiment-based approach | Fine-grained preference modelling of reviews based on sentiment | [12,23,24,25,26,29] | Over-reliance on external sentiment analysis tools |
Knowledge graph based recommendation | | Using historical interactions to propagate user preferences in the knowledge graph | [34,35,36,37,38,39] | Inability to model personalised information at a granular level |
In addition to this, these methods have the following problems: existing methods extract aspect items and sentiment information from reviews, but they cannot effectively correlate this information during coding, resulting in the inability to fully utilize extracted features. On the other hand, the existing methods only focus on the aspects that users like, while ignoring the aspects that users dislike, and they cannot completely model users’ real preferences. We believe that by effectively integrating the information extracted from reviews with knowledge graphs, the important information extracted from review texts can be more fully utilized, and the recommendation performance can be effectively improved. At the same time, focusing on user disliked aspects based on the aspect sentiment information extracted from reviews can more accurately model user preferences, thus improving the accuracy of recommendations.
To highlight our motivation, a detailed explanation is provided in
Figure 1. A user likes the movie
Forrest Gump, and from the reviews, it is known that the user is interested in the actor Tom Hanks. According to the idea of collaborative filtering, propagating the user’s interest in the knowledge graph is likely to recommend Tom Hanks in another movie,
He Knows You’re Alone. However, from the review of the movie
The Shining that the user has seen, it is known that the user does not like the thriller genre and even has some aversion to it. This is contradictory to the possible recommendation of the thriller genre movie
He Knows You’re Alone. So, it is very necessary to pay attention to the aspects that the user dislikes.
Based on the above analysis this, we propose the Aspect-based Sentiment Knowledge Graph Attention Network (ASKAT) model, which aims to provide users with more accurate and personalised recommendation results. ASKAT first processes the review text using a text summarization algorithm to remove noisy data and unimportant information from the text. This differs from existing approaches in that we then used the popular ABSA algorithm to extract aspectual items and the corresponding sentiment, without relying on the accuracy of external sentiment analysis tools. Up to this point, the fine-grained aspect items and sentiments of users’ concerns were extracted from the reviews. In order to overcome the difficulty that the information extracted from reviews cannot be fully utilized, we effectively aligned and fused the features extracted from reviews with the knowledge graph. After that, we proposed a new graph attention network to aggregate neighbour information using a sentiment-aware attention mechanism. Meanwhile, in order to completely model real user personalized features, we designed a Deleting Negative Affective Nodes Strategy (DNANS) to focus on user-disliked aspects of user review features. Unlike existing work, our work effectively aligned and fused the important information extracted using ABSA techniques with the knowledge graph, so that this information could be more fully utilised. At the same time, our work not only focused on the aspects that users liked, but also payed more attention to the aspects that users disliked, so as to more accurately grasp the personalised needs of users. Our work jointly used user ratings and reviews data to uncover personalised user preferences and personalised features of items for personalised recommendations.
Finally, we experimented on three real scenario datasets, and the experimental results showed a significant improvement in the performance of our model relative to the state-of-the-art recommendation model. In summary, our main contributions are as follows:
We applied text summarization techniques with ABSA to knowledge-graph-aware recommendation work.
To solve the underutilization of review information, we effectively aligned and fused the review features with the knowledge graph.
We proposed a new aggregation strategy to aggregate actual user-personalized features to achieve the goal of knowing what is good and what is bad.
Experiments were conducted on three real datasets to demonstrate the effectiveness of ASKAT on several state-of-the-art baselines.
The rest of the paper is organized as follows.
Section 2 defines some basic preparatory knowledge and notations.
Section 3 details the implementation of the ASKAT model.
Section 4 describes the dataset, the baseline model, and the results of the experiments.
Section 5 contains our conclusions.
2. Theoretical Framework
In this section, we first introduce some basic knowledge and notation related to our proposed ASKAT model, followed by a formulaic treatment of the problem being studied.
Definition 1. User-Item Interaction Graph.
In the recommendation domain, users’ interaction history is usually used on items to mine useful information [
1]. Generally, we denote the set of users
u by
U and the set of items
i by
I, respectively. Here, we describe the user–item interaction graph as
, where
V is the node of the graph denoting the concatenation of user
U with item
I.
E is the edge of the graph, denoted as
if user
u has an interaction with item
i.
Definition 2. Knowledge Graph.
We use
to denote an item knowledge graph, e.g., book knowledge graph and movie knowledge graph [
40]. KG contains a large number of entity–relationship–entity triples
.
h and
t are the head entity and the tail entity, respectively, which belong to
.
r is the relationship between the entities, which belongs to
R. For example, the triples in movie recommendation (
The Shawshank Redemption, directed by, Frank Darabont), and in book recommendations (
Les Misérables, author, Victor Hugo).
Definition 3. Collaborative Knowledge Graph.
In this paper, we merge the bipartite graph (which represents user–item interactions) and the item knowledge graph into a collaborative knowledge graph (CKE) [
34]. First, we represent the bipartite graph in the form of a triple (
u, interact, i). Then, the two-part graph in the form of triples is merged with the knowledge graph to form CKE, which is denoted as
,
,
.
Definition 4. User Reviews.
Our focus is on extracting fine-grained user preference information from reviews. The initial format of the reviews we used was dictionary data in json format . Where is the rating, is the time of the review, is the ID of the reviewer, is the item of the review, and is the specific text of the review. For ease of description and usage, we simplified and denoted the reviews as . The symbol denotes the review that user u has allocated to item i.
Definition 5. Task Formulation.
Inputs: user u, candidate item i, collaborative knowledge graph , and reviews . The reviews contain two aspects, the user’s historical reviews on the one hand and the items’ historical reviews on the other.
Output: the predicted probability that user u clicks on item i.