1. Introduction
With the emergence and prosperity of online service platforms, the dissemination and exchange of information have been greatly promoted, and the amount of information in the network has increased exponentially. However, when confronted with such an enormous amount of information, users find it hard to obtain the information that is relevant and helpful to them; this phenomenon is referred to as “information overload”. To address this issue, a recommendation system was developed that analyzes the historical behavior data of users and explores their potential interests to provide them with personalized services. At present, recommendation systems are widely used in industry.
Collaborative filtering (CF) has been a widely used technique in the last few decades. In simple terms, collaborative filtering recommends information of interest to users according to the preferences of a group of people who share similar interests and experiences, thus filtering out a large amount of irrelevant information. However, CF is severely limited by the problem of sparse data, and the effectiveness of the model is significantly reduced when there are insufficient data on user–item interactions. As online social platforms such as Facebook, WeChat, and Twitter have grown in popularity, an increasing number of people are posting product reviews on these sites. References [
1,
2,
3] and personal experience also show that people are affected by their friends’ views and actions and gravitate toward those who share their interests. In summary, the application of social relationships in recommender systems has also attracted increasing attention [
4,
5]. Based on this understanding, recommendation systems can introduce social information to reduce data sparsity and improve recommendation accuracy, and these recommendation systems are called social recommendation systems [
6,
7,
8].
Early GNNs mainly solved problems strictly related to graph theory [
9,
10,
11], such as molecular structure classification, in which GNNs showed a superb ability to handle non-Euclidean data. Since data in recommender systems can naturally represent graph data (e.g., interaction data between users and items represented as bipartite graphs), much recent work has applied graph neural networks to recommender systems. Within social recommendation systems, data are typically presented in two forms: the user–item interaction graph, which contains information pertaining to the interactions between users and items, and the social graph, which reflects the social relations of users. There are generally two strategies for recommender systems to use social information [
12]. One is to learn user representations from the two graphs separately [
8,
13,
14] and then combine them into a vector, which is more flexible and can use different treatments for different graphs; the other is to merge the two graphs into a unified heterogeneous graph [
7,
15] and apply GNNs to propagate the information, which has the advantage that the information in both graphs is unified in one representation, which can capture some more complex interactions.
Although GNNs have shown good performance in the field of social recommendation, most of the existing models simply combine social information as auxiliary information with interactive information without fully utilizing the social graph’s information. In the information propagation, they only consider the information propagation of high-order neighbor nodes, but no particular attention is given to the fact that there is a lot of useless or even negative information in this information. Inspired by IMP-GCN [
16], we introduce an unsupervised subgraph construction module in the social recommendation system, which divides the interaction graph into multiple subgraphs based on user preferences, and users who share similar interests are placed into the same subgraph. We then perform graph convolution operations in the subgraphs using a lightweight GNN to filter out negative information brought by users with different preferences. We also design a feature aggregation module to better integrate user representations in the two graphs.
In conclusion, the primary findings of this study are as follows:
A novel social recommendation model PLGCN is proposed, which splits the user–item interaction graph into multiple subgraphs based on the user’s preferences and passes information in the subgraphs, filtering out negative information brought by users with different preferences.
A new feature aggregation module was designed that can aggregate the user representations in the two graphs more effectively and has regularization to prevent overfitting.
We performed comprehensive experiments using two publicly available datasets to evaluate the recommended performance of PLGCN. Based on the outcomes of these experiments, it is evident that PLGCN outperforms the baseline models.
The rest of this article is summarized as follows: We begin with a brief overview of typical relevant work in
Section 2. The social recommender system problem and its definition are introduced in
Section 3. The design details of the PLGCN model are described in
Section 4.
Section 5 presents a comprehensive experiment conducted to assess the performance of PLGCN. Finally, we conclude our work and identify potential research directions.
2. Related Work
2.1. Social Recommendation
As online social platforms (e.g., WeChat, Twitter, Facebook) and the richness of users’ social information grow rapidly, an increasing number of recommendation systems are introducing users’ social information. Leveraging social influence [
1] and social homogeneity, as outlined in [
2], facilitates a better comprehension of user preferences, and data sparsity is effectively mitigated.
We generally categorize the prior social recommendation systems relevant to our study into three groups based on how they utilize social information. Social networks are used as a kind of regularization in the first category of methods [
4,
17,
18,
19]. SocialMF [
19] integrates trust propagation into the matrix factorization technique, making the user’s preferences as close as possible to his/her social neighbors. CSR [
18] designed a generic regularization term to model the diverse similarities among users and their various friends. One kind of ensemble method involves splitting all items into different groups and ranking them manually [
20,
21]. SBPR [
20] suggests that users have a tendency to provide higher ratings to products that are favored by their friends, and for each user, the collection of items is sorted into three categories: negative items, social items, and positive items. The rankings are as follows: negative items < social items < positive items. The third method is to fuse the embeddings of the user and his/her neighbors [
22,
23,
24]. TrustSVD [
22] introduces social information based on SVD++ [
25] and uses implicit feedback from social neighbors as auxiliary implicit feedback for users. RSTE [
24] posits that the user’s final choice is a trade-off between his/her own likes and the opinions of his/her trusted friends and the linear fusion of the user’s embedding with the user’s neighbor nodes in the social graph. Nevertheless, none of these models can adequately model the intricate social relationships between users and the interactions between users and items. Therefore, numerous recent studies have focused on employing deep learning for social recommendation systems, with GNN-based social recommendation systems attracting attention because both the social relationship between users and the data that reflect user–item interactions can be modeled naturally in graph form.
2.2. GNN-Based Social Recommendation
The ability of GNNs to model recursive social diffusion processes makes them increasingly popular in the domain of social recommendation. The primary tenet of GNNs is to iteratively collect surrounding node information to generate a more accurate representation of the target node and ultimately obtain a representation of each node.
The first social recommendation system model that uses graph neural networks is GraphRec [
6], which combines the user’s first-order neighbors’ information from both graphs to learn the user’s representation. DANSER [
14] uses two graph attention networks to obtain user and item implicit representations from each of the two graphs and then combines them to predict users’ ratings or preferences for items. HOSR [
26] uses multistep message propagation to encode higher-order social relationships in user embedding learning, refining user embeddings by capturing higher-order collaboration signals in the social graph. In contrast, our proposed PLGCN captures both higher-order collaboration signals in the interaction graph and social graph simultaneously and fuses them into the final user embedding using a feature aggregation module. DiffNet [
8] fully leverages the high-order social neighborhood information of users and adds the vector of users’ preferred items as an auxiliary vector to the vector representation of users, but this does not filter out the useless parts of the high-order information. On the basis of the DiffNet model, DiffNet++ [
7] additionally exploits the high-order information in the interaction graph to optimize the representation of users and items and distinguishes the significance of the different neighbors using the attention mechanism, thus alleviating this problem. Unlike DiffNet++, we are inspired by IMP-GCN [
16] to divide the user-interaction graph into multiple subgraphs based on users’ preferences to avoid interaction between users with different preferences. Furthermore, we design a new feature aggregation model to obtain a more accurate user embedding. The research conducted on SocialLGN [
27] is closely related to our own research. These researchers extended the LightGCN [
28] framework and applied convolution operations on both the interaction graph and the social graph to improve the framework’s effectiveness in handling social recommendation problems. The main differences between SocialLGN and our proposed PLGCN are as follows: (1) SocialLGN aggregates all messages from neighboring nodes without considering their relevance. In contrast, our PLGCN includes a subgraph construction module, and we perform message passing in the subgraph to effectively filter out irrelevant information. (2) Our feature aggregation module uses MLP to fully explore the potential relationship between user interaction information and social information, whereas SocialLGN uses a linear transformation in the graph fusion module.
In summary, several approaches have been proposed to address the challenges of social recommendation. However, these approaches often have limitations, such as the difficulty of modeling complex user–item interactions and social relationships. Some approaches use attention mechanisms to distinguish the importance of neighboring nodes and filter out irrelevant information, but they often oversimplify the use of social information and do not fully exploit its value. We propose the PLGCN approach to overcome these challenges, which uses subgraph building blocks to filter out irrelevant information and fully leverages the relationship between social and interaction information through neural networks. Our approach provides a more nuanced modeling of the complex interaction between users and items and the social relationship, leading to improved recommendation accuracy and relevance.
3. Problem Definition
Essentially, the recommendation problem is to analyze the user’s behavior data to predict the preferences of the user and then combine the data of the items in the system to calculate the items that could potentially appeal to the user and generate a recommendation list from them. However, users are only able to explicitly interact with a small fraction of items, which results in very sparse valid data. The social recommendation system introduces users’ social information, which supplements the sparse and effective data and reduces data sparsity. It is clearly effective to use the homogeneity and the influence of social relationships to understand users’ preferences.
In the paragraphs that follow, we define a GNN-based social recommendation system. The notations and are used to represent the sets of items and users, and they have M and N elements, respectively (i.e., , ). In general, recommendation systems make use of two distinct types of data: social graphs and user–item interaction graphs. A description of these two graphs is given below.
The interaction behavior of users with items (e.g., views, rates, and clicks) is represented by the user–item interaction graph. The graph can be defined by triples and is denoted by , where represents the edge that connects user u to item i, and means that user u interacts with item i. On the other hand, there will not be any interaction between them if . The notation means the collection of users who have explicit interaction with item i, and the notation indicates the collection of items with which user u has explicit interaction.
Users’ social connections are represented in the social graph, which provides auxiliary information about the user (e.g., direct follower or undirected friendship). We represent the social graph as , which has the triple form , where represents the relationship between users u and v, and means there is an observable social connection between users u and v, while indicates there is no connection between them. The symbol is used to denote the collection of users who have a social connection with user u.
Based on the aforementioned conditions, the social recommendation task is described as follows: given the social graph and the user–item interaction graph , the recommendation system should be able to predict the probability of interaction between user u and all items, sort them in descending order, and choose the top N items to generate a recommendation list for user u.
4. The Proposed Method
We present the general structure and technical details of PLGCN as well as the model’s training process.
4.1. The Architecture of PLGCN
Figure 1depicts the general design of PLGCN. The model consists of 4 primary components: (i) an embedding layer that leverages the unique identifiers of users and items to initialize their representation vectors; (ii) a subgraph construction module, which constructs multiple subgraphs and groups users with common preferences into the same subgraph; (iii) propagation layers, which propagate the representations of users and items in both graphs; and (iv) a prediction layer that predicts the value of any edge between users and items using their final embeddings (i.e., the probability that user and item will interact).
The following is a description of the mechanism of operation of each component.
4.2. Embedding Layer
The embedding layer employs user and item identifiers to map them to a latent space with low dimensionality. As an example, the embedding layer can encode item i (or user u) as a low-dimensional dense vector of fixed length (), and the superscript “()” () indicates the layer index for the output of the embeddings at the -th propagation layer. When , it indicates the embedding layer’s output. is a hyperparameter determined in advance that indicates the dimension of an embedding.
The matrices and represent the output of all users and all items from the embedding layer, respectively. User u’s embedding is the transpose of the matrix ’s -th row, and the same applies to item i.
4.3. Subgraph Construction Module
The subgraph construction module splits the given user–item interaction graph into
subgraphs, where the number of subgraphs
is a hyperparameter. We define the division of users into subgraphs as a classification task [
29], in which each user is assigned to a subgraph. Specifically, each user’s embedding aggregates graph structure information and the user’s ID information:
where
denotes the user embedding obtained by embedding aggregation,
represents the output generated by the embedding layer, and
is the feature vector that aggregates first-order neighbor information in the graph, which is generated as an output from the first propagation layer.
denotes an activation function called LeakyReLU, capable of encoding both negative and positive signals. The learnable parameters
and
are the bias vector and the weight matrix, respectively. To split the user–item interaction graph into multiple subgraphs based on user preferences, we input the user embeddings into a 2-layer neural network to obtain a prediction vector:
where
is the output vector, and the position where the value is at its maximum is the subgraph to which the user belongs, so it is natural that the number of subgraphs and the output vector’s dimension are the same. The learnable parameters
and
are the weight matrices, and the learnable parameters
and
are the bias vectors. For users with similar embeddings, the neural network will group them into the same subgraph. This is an unsupervised node classification method because we do not need the real labels of the users.
In summary, we feed the user ID information and first-order user embedding, which best reflect user preferences, into the subgraph construction module. Then, we utilize the powerful modeling ability of neural networks to handle nonlinear relationships and classify user preferences. It is worth noting that we refrain from using traditional clustering algorithms such as K-means [
30] due to the high dimensionality of user feature vectors in the current recommendation system field. Traditional clustering algorithms are susceptible to the curse of dimensionality when dealing with high-dimensional data, which can lead to information loss if PCA-based [
31] dimensionality reduction is used. Additionally, traditional clustering algorithms cannot effectively model complex nonlinear relationships.
The subgraph construction module groups users with similar preferences and their directly related items into the same subgraph, with each subgraph being independent. By passing messages only within each subgraph, our approach effectively filters out irrelevant or negative information.
4.4. Propagation Layers
The propagation layer aims to capture hidden information in both graphs through graph convolution operations, thereby learning the representations of users and items. The propagation layer is divided into two main parts: user embedding propagation and item embedding propagation. A detailed explanation of them is presented in the following subsections.
4.4.1. User Embedding Propagation
The goal of user embedding propagation is to learn the representation of users in both graphs. We use lightweight GNNs to capture the collaboration signals of the interaction graph and the social graph, propagate information on the two graphs separately, and finally generate the final user embeddings through the feature aggregation module. The process of user
u’s
-th (
) iteration propagation can be abstracted as follows:
where
and
are the embeddings of item
i and user
v, respectively, after the
-th iteration propagation, and
is the aggregation function that aggregates the embeddings of item
i with which
u has interaction and the embeddings of user
v with which
u is socially connected. We designed a feature aggregation module to act as the user aggregation function
to better learn user embeddings.
Because direct interactions between users and items more accurately reflect user preferences, this is crucial and reliable information. To construct subgraphs based on user preferences, we perform first-order graph convolution operations on the social graph and entire interaction graph alone, while second-order or higher-order graph convolution operations are performed on the social graph and subgraphs of the interaction graph to filter out useless or even negative information from users with different preferences. To achieve this, two separate embeddings are created in the interaction graph and the social graph to represent user
u after the
-th iteration propagation, with
and
being their respective representations and
being the user’s final embedding after the
-th iteration propagation. Thus, for user
u, the first-order propagation can be expressed as follows:
where
is
, which is the product of the square root of the degree of user
u and item
i in the interaction graph, and its inverse is the normalization term that prevents the user or item embedding scale from increasing due to graph convolution operations.
is
, which is the product of the square root of the degree of user
u and user
v in the social graph and serves the same purpose as
.
The process of updating the embedding in second-order or higher-order (i.e.,
) graph convolution is analogous to the first-order graph convolution process, with the difference that high-order graph convolution is performed in the social graph and the subgraph of the interaction graph to which the user belongs. The procedure is explained in full in the steps that follow:
where
is
, which is the product of the square root of the degree of user
u and item
i in the subgraph of the interaction graph to which the user belongs. As Equations (5)–(8) show, we have adopted a lightweight form of propagation, discarding complex operations such as linear transformations, and this lightweight form of propagation is inspired by SGC [
32] and LightGCN [
28].
The feature aggregation module is then used to aggregate
and
to generate the updated embedding
for layer
. As shown in Equations (9) and (10), the feature aggregation module can be seen as a function
with two embeddings as parameters, and the specific aggregation steps are as follows:
where
and
are trainable weight matrices and
is a vector splicing operation that splices two vectors of dimension
into a vector of length
.
is the
activation function, and
is a multilayer perceptron that can capture the complex relationship between two users’ embeddings in each dimension. Equation (9) is a regularization operation that prevents embedding
from becoming particularly large as the number of layers
grows.
4.4.2. Item Embedding Propagation
For item embedding propagation, the propagation process is analogous to that of users, but this process exists only in the user–item interaction graph. We use lightweight GNNs to capture the collaboration signals and update the item embedding by recursively passing the representation of neighboring nodes. The specific process is shown as follows:
where
is
, which is the product of the square root of the degree of user
u and item
i in the interaction graph, and it also serves for normalization.
4.5. Prediction Layer
After K rounds of propagation, the embedding for user
u and item
i is obtained for each layer, i.e.,
and
, respectively. We weight and sum the user and item embeddings for each layer to obtain the final representation:
where
denotes the
-th layer’s embedding weight factor and
and
are the final embeddings of user
u and item
i, respectively.
To obtain the preference of user
u for item
i, the inner product of their embeddings is computed:
where
denotes our predicted preference of user
u for item
i.
4.6. Model Training
In general, the tasks of the recommender system are divided into two categories: CTR prediction and top-N recommendation. In this work, our recommendation task is top-
N recommendation, where the aim is to select
N items that suit the user’s preferences best and recommend them to the user in the form of a list. In a real business system, this task is worth more than predicting ratings [
33].
To achieve this, we minimize the Bayesian personalized ranking loss, which is based on the idea that it increases the gap between the scores of the negative and positive samples, with positive samples being user and item interactions that already exist in the dataset and negative samples being non-existent interactions that are not observed in the dataset. Therefore, we define a triple
, where
u has interacted with
but not with
. The objective function has the following form:
where
and
denote the weight decay rate and the parameters of PLGCN, respectively.
4.7. Matrix-Form Propagation Rule of PLGCN
We propose a matrix-based representation of the PLGCN model for propagating information on graphs in this section. To achieve this goal, we use to represent the rating matrix. Each element () inside the matrix is binary and shows if user u and item i have interacted; 1 implies that an interaction exists, and 0 indicates that there is no interaction. Then, indicates the adjacency matrix of social graph .
We further define , where is the Laplacian matrix for the interaction graph. is a diagonal matrix, where is the element that counts how many elements in ’s -th row are nonzero. In the same way, we also define the transpose matrix of and the Laplacian matrix for social graph .
As illustrated in 0, the following expression describes the first layer propagation in PLGCN:
The following formula shows the
-th layer’s propagation in matrix form in PLGCN:
where
denotes the Laplacian matrix belonging to a subgraph of the interaction graph. The information of all subgraphs is then aggregated:
where
is the final embedding of the
-th layer, and
denotes the set of subgraphs of the user–item interaction graph. Then, we perform the same operation as the first layer:
5. Empirical Analysis
To compare our PLGCN’s performance with other recommendation methods, this section describes the evaluation metrics, the dataset, the parameter settings, and the experiments we carried out on various datasets. We ran all programs on a Win10 PC with an RTX 3070 Ti graphics card with 8 G of RAM and an i5 12,600 K processor. We used PyTorch to build the PLCGN.
5.1. Experimental Settings
5.1.1. Datasets
The proposed model was evaluated by conducting experiments on two datasets from the real world that vary in size and levels of sparsity. The datasets are described as follows: The LastFM dataset [
34] (
https://www.last.fm (accessed on 17 May 2023)), which includes 1892 users’ social connections and interactions with music-related items, is provided by Last.fm, one of the hottest social music platforms of the moment for sharing and discovering music in the world. The Ciao dataset [
35] (
http://www.ciao.co.uk (accessed on 17 May 2023)) is an online shopping dataset that includes 7375 customer reviews for a variety of products as well as information about user friendships. Many social recommendation systems use these datasets to validate model performance [
27,
36,
37]. We divided each dataset into three random parts, the training set, the test set, and the validation set, corresponding to a ratio of 8:1:1. The precise statistical data from the datasets we used are displayed in
Table 1.
5.1.2. Benchmark Cases
We evaluated how well PLGCN performs by contrasting it with six other methods that are state-of-the-art:
BPR [
38]—A list of recommendations is created by sorting items using the traditional pairwise collaborative filtering approach according to the maximum posterior probability determined by a Bayesian analysis of the issue.
SBPR [
20]—An MF-based recommendation model to enhance the accuracy of personalized rankings with collaborative filtering algorithms using users’ social relationships.
DiffNet [
8]—A social recommendation model that utilizes GNNs. It directly takes the user embeddings’ vector sum in the two graphs to generate the final user embeddings.
NGCF [
39]—A recommendation model based on GCN is designed with a neural network approach to recursively propagate embeddings in the interaction graph.
LightGCN [
28]—A lightweight recommendation model based on GCN that eliminates two operations that would have caused recommendation performance degradation based on NGCF.
SocialLGN [
27]—User social information was introduced on the basis of LightGCN, and a graph fusion operation was created to combine user embeddings with interaction information and user embeddings with social information.
5.1.3. Metrics
To assess the recommended performance under the top-N task of our PLGCN and five other SOTA methods, we use three metrics that are commonly applied; two of them are precision and recall, and they have the following expressions:
where
is the number of incorrectly predicted negative samples,
denotes the number of properly predicted positive samples, and
denotes the number of incorrectly predicted positive samples. The other is
NDCG, i.e., normalized discounted cumulative gain, which is used to measure the quality of the ranking, and it is expressed as follows:
where
is the sum of the relevance scores
of the top
N items recommended.
indicates that the user interacts with the recommended item;
means that the user does not interact with the recommended item.
In summary, the indicators used in this experiment and their significance are listed below, and it is worth noting that these metrics are all dimensionless:
Precision@k: the proportion of relevant items among the top k items recommended to the user. Precision@10 and Precision@20 indicate the precision at 10 and 20 recommendations, respectively.
Recall@k: the proportion of relevant items among all the relevant items in the test set that are recommended to the user. Recall@10 and Recall@20 indicate the recall at 10 and 20 recommendations, respectively.
NDCG@k: normalized discounted cumulative gain at k. NDCG is a measure of ranking quality that takes into account both the relevance of the recommended items and their position in the list. NDCG@10 and NDCG@20 indicate the NDCG score at 10 and 20 recommendations, respectively.
The greater the value for these three evaluation metrics, the better the performance. Given the sparsity of the interaction data, we repeatedly randomly selected an item that the user did not interact with as a negative sample; then, we combined items that the user did interact with the negative sample. To eliminate the instability of random selection, for each model and dataset, we repeated the experiment five times and averaged the results as the ultimate ranking results.
5.1.4. Parameter Settings
To ensure that the experiments were fair and equitable, the parameters of each method were adjusted based on our own experimental data or the corresponding references. We used the PyTorch framework to construct our PLGCN and Adam to infer model parameters. The model was optimized with a learning rate
of
. The dimension of embedding was fixed at 200, and the training batch size was fixed at 2048. After trials in the range of
, we fixed weight decay (
) at
. The weight (
) for each propagation layer was
, where
is the number of layers and
is the subgraph count. For this paper,
was set to 3, and the value of
was 2. Early stopping was adopted to terminate the training process. To enhance readability, we present the parameter settings in a tabular format, as shown in
Table 2.
5.2. Model Performance Evaluation
In the recommendation field, the problem of cold start is a matter of great concern, for which we designed a special scenario to evaluate the cold-start performance of PLGCN and other baseline models by referring to the approach in the literature [
27]. In both datasets, we compared the experimental results for all models, including the cold-start case. In the test set, users who interacted with fewer than 20 items were labeled as cold-start users. We employ this strategy to provide a test set for cold-start users alone, which includes only cold-start users and their social and interaction information. The results of PLGCN and the five baseline models on the original test set are shown in
Table 3. The outcomes of the aforementioned models on the cold-start test set are displayed in
Table 4, and the improvements in
Table 3 and
Table 4 indicate the percentage increase in performance of our model in terms of precision, recall, and NDCG at 10 and 20 recommendations compared to the best baseline model. It is worth noting that all experimental results were not normalized.
The outcomes demonstrate that models based on MF do not perform as well in all cases and exhibit a performance much inferior to that of GNN-based models because MF-based models are more susceptible to data sparsity and cannot capture complex interactions. LightGCN performs better in the vast majority of cases than BPR, SBPR, DiffNet, and NGCF. As pointed out in [
28], LightGCN removes two fundamental operations in GCN that can negatively affect recommendation performance, namely linear transformation and nonlinear activation. SocialLGN performs better than LightGCN because it introduces social information on top of LightGCN and considers the effect of higher-order graph structure on user embedding.
The results unequivocally show that PLGCN consistently achieves the best performance. For instance, in contrast to SocialLGN, PLGCN improves the Recall@10 on the original LastFM dataset by 3.22% and the Precision@10 on the original Ciao dataset by 13.59%. Since SocialLGN propagates messages on the social graph and the whole user–item interaction graph without constructing subgraphs, by comparing the performance of PLGCN with SocialLGN in the experiments, it can be seen that propagating information in subgraphs can significantly raise the effectiveness of recommendations. In particular, on the LastFM dataset containing information about cold-start users only, PLGCN improves 45.63% in the Precision@10 metric and 32.93% and 20.93% in Recall@10 and NDCG@10, respectively. By looking at the data in 0, we can see the superior ability of PLGCN in alleviating the cold-start problem. Additionally, we find that in the cold-start scenario, the denser the interaction and social graphs of the dataset are, the more significant the performance improvement is, while the opposite is true in the original dataset.
5.3. Ablation Experiments
We ran an ablation experiment to evaluate how the PLGCN feature aggregation module and the subgraph construction module affected the performance of the recommendations.
5.3.1. Effect of the Feature Aggregation Module
For this section, two variants were designed, and PLGCN was compared to them to verify the performance improvement of the feature aggregation module:
PLGCN
GCN: This variant uses the feature aggregation operation in
GCN [
40] to aggregate the user’s embedding in both graphs with the following equation:
PLGCN
GraphSage: This variant uses the feature aggregation operation in
GraphSage [
33] to aggregate the user’s embedding in both graphs with the following equation:
In Equations (27) and (28), and denote the embedding of user u propagated through the -th iteration on the interaction graph and social graph, respectively. is the trainable transformation matrix, means the concatenation operation, and is the activation function.
As shown in
Figure 2, when compared to other models, our proposed feature aggregation module performs the best in all cases. The explanation for the superior performance of PLGCN is that our proposed feature aggregation module first performs a feature transformation on
and
and then uses an activation function to activate them nonlinearly, such that a joint space may be created between the user embedding in the two graphs. The multilayer perceptron can be used to explore higher-order feature interactions. In addition, the recommendation performance benefits from the normalization operation, which prevents
from increasing with
.
5.3.2. Effect of Subgraph Construction Module
This section compares PLGCN with a variant to evaluate whether our proposed subgraph construction module is effective:
Table 5 shows the comparison results, which demonstrate that PLGCN has better recommendation performance because the subgraph builder divides users with the same preferences and the items they interact with into a subgraph to filter out the negative information brought by users with different preferences.
5.4. Impact Analysis for Hyperparameters
Two crucial parameters affect the performance of PLGCN: the propagation layer number () and the subgraph number (). We investigate how they impact the model in this section.
5.4.1. Impact of the Number of Propagation Layers
To explore how the model’s performance is impacted by the number
of propagation layers, we kept the other parameters constant and changed
to [
1,
2,
3,
4,
5]. We display the experimental results in
Figure 3, and there is a noticeable improvement in PLGCN’s performance when the value of
is increased from 1 to 3 on the original LastFM dataset, and the model performs best at
. The original Ciao dataset shows a similar trend, where the model attains the highest performance at
k = 3 and the performance decreases when
k is greater than 3. We inferred from our observations that the recommended performance of the model may be negatively affected by the oversmoothing effect caused by too large a
K value, and therefore, we set the
K value to 2–4, which is a reasonable choice.
5.4.2. Impact of the Number of Subgraphs
The performance of the PLGCN is examined in this section in relation to various subgraph
counts. We set
to [
2,
3,
4], and the other parameters were constant.
Figure 4 displays the outcomes, where
,
, and
represent the PLGCN model when
is 2, 3, and 4, respectively. It can be seen that
performs best in most cases when there are three propagation layers. It can be assumed that there are fewer layers of propagation at this point, and a node in the subgraph of
has more nodes connected in a short distance and acquires more information than the nodes in
and
, so it performs better.
.
6. Discussion
In our experiments, we showed that our graph neural network-based social recommendation model outperforms some previous recommendation models ([
8,
27,
28]). Compared with [
28], we find that adding social information to a recommender system does improve the recommendation performance, while compared with [
8,
27], we find that the quality of social information and the method of using social information also have a crucial impact. In some cases, the performance improvement of our proposed method, PLGCN, is more evident in the cold-start scenario. We believe that cold-start users have fewer interaction data, and negative information has a greater impact on recommendation performance. By filtering out negative information, we substantially improve the recommendation performance.
However, our proposed model also has some limitations, which highlight opportunities for future research. For example, we only consider user preferences in constructing subgraphs, while other social features such as friendship networks or trust levels can be incorporated to enhance the social filtering process. Additionally, our feature aggregation module only includes user embeddings with social and interaction information. It could be extended to include more diverse information sources, such as temporal information or user-generated content.
7. Conclusions
Most of the existing social recommendation models only take higher-order collaborative signals into account, without paying attention to the negative signals in these signals, which negatively affects the models’ recommendation performance. We propose the PLGCN, a novel social recommendation model based on GCN, as a solution to this issue, which incorporates unsupervised learning to classify users based on their preferences, allowing for more effective filtering of irrelevant and negative information from high-order neighbor nodes. This enables PLGCN to provide more personalized and accurate recommendations. Moreover, we designed a novel feature aggregation module to better aggregate user representations in both graphs. We evaluated PLGCN against other SOTA models on two datasets, and the outcomes demonstrated that PLGCN outperforms them. Furthermore, PLGCN adopts a lightweight GNN framework that removes nonlinear activation and feature transformation operations, which mitigates the overfitting issue and enables faster and more efficient training and inference. Our proposed model can be applied to diverse social recommendation scenarios, such as e-commerce, social media, and content recommendation.
However, our model still has limitations. First, it relies on the assumption that social connections effectively capture users’ preferences. In reality, users may connect for various reasons, and their social networks may not fully reflect their preferences, which could affect the accuracy of our approach. Second, our experiments were conducted on specific datasets, and the performance of our method may vary on other datasets or domains. Further evaluation is necessary to validate the effectiveness and generalizability of our method. Third, our model assumes a static social network structure and does not consider dynamic changes over time. Future work can explore incorporating dynamic social information to improve the performance of social recommendation methods.
In terms of future work, we plan to investigate several areas for further improvement. First, we would like to explore the use of more complex graph neural network architectures to capture even more nuanced social relationships and better incorporate users’ social behavior. Second, we plan to investigate the use of additional data sources, such as user-generated content and location data, to enhance our model’s performance and provide more personalized recommendations. Finally, we will explore the use of different datasets and evaluation metrics to better capture the effectiveness of our model and ensure that our recommendations are not only accurate but also diverse and novel.