Graph Neural Networks for Social Recommendation

In recent years, Graph Neural Networks (GNNs), which can naturally integrate node information and topological structure, have been demonstrated to be powerful in learning on graph data. These advantages of GNNs provide great potential to advance social recommendation since data in social recommender systems can be represented as user-user social graph and user-item graph; and learning latent factors of users and items is the key. However, building social recommender systems based on GNNs faces challenges. For example, the user-item graph encodes both interactions and their associated opinions; social relations have heterogeneous strengths; users involve in two graphs (e.g., the user-user social graph and the user-item graph). To address the three aforementioned challenges simultaneously, in this paper, we present a novel graph neural network framework (GraphRec) for social recommendations. In particular, we provide a principled approach to jointly capture interactions and opinions in the user-item graph and propose the framework GraphRec, which coherently models two graphs and heterogeneous strengths. Extensive experiments on two real-world datasets demonstrate the effectiveness of the proposed framework GraphRec.


INTRODUCTION
The exploitation of social relations for recommender systems has attracted increasing attention in recent years [18,28,30]. These social recommender systems have been developed based on the phenomenon that users usually acquire and disseminate information through those around them, such as classmates, friends, or colleagues, implying that the underlying social relations of users can play a significant role in helping them filter information [23]. Hence, social relations have been proven to be helpful in boosting the recommendation performance [8,29].
Recent years have witnessed great developments in deep neural network techniques for graph data [15]. These deep neural network architectures are known as Graph Neural Networks (GNNs) [5,10,19], which have been proposed to learn meaningful representations for graph data. Their main idea is how to iteratively aggregate feature information from local graph neighborhoods using neural networks. Meanwhile, node information can be propagated through a graph after transformation and aggregation. Hence, GNNs naturally integrate the node information as well as the topological structure and have been demonstrated to be powerful in representation learning [5,7,15]. On the other hand, data in social recommendation can be represented as graph data with two graphs. As demonstrated in Figure 1, these two graphs include a social graph denoting the relationships between users, and a user-item graph denoting interactions between users and items. Users are simultaneously involved in both graphs, who can bridge them. Moreover, the natural way of social recommendation is to incorporate the social network information into user and item latent factors learning [37]. Learning representations of items and users is the key to build social recommender systems. Thus, given their advantages, GNNs provide unprecedented opportunities to advance social recommendation.
Meanwhile, building social recommender systems based on GNNs faces challenges. The social graph and the user-item graph in a social recommender system provide information about users from different perspectives. It is important to aggregate information Figure 1: Graph Data in Social Recommendation. It contains two graphs including the user-item graph (left part) and the user-user social graph (right part). Note that the number on the edges of the user-item graph denotes the opinions (or rating score) of users on the items via the interactions.
from both graphs to learn better user representations. Thus, the first challenge is how to inherently combine these two graphs. Moreover, the user-item graph not only contains interactions between users and items but also includes users' opinions on items. For example, as shown in Figure 1, the user interacts with the items of "trousers" and "laptop"; and the user likes "trousers" while disliking "laptop". Therefore, the second challenge is how to capture interactions and opinions between users and items jointly. In addition, the low cost of link formation in online worlds can result in networks with varied tie strengths (e.g., strong and weak ties are mixed together) [36]. Users are likely to share more similar tastes with strong ties than weak ties. Considering social relations equally could lead to degradation in recommendation performance. Hence, the third challenge is how to distinguish social relations with heterogeneous strengths.
In this paper, we aim to build social recommender systems based on graph neural networks. Specially, we propose a novel graph neural network GraphRec for social recommendations, which can address three aforementioned challenges simultaneously. Our major contributions are summarized as follows: • We propose a novel graph neural network GraphRec, which can model graph data in social recommendations coherently; • We provide a principled approach to jointly capture interactions and opinions in the user-item graph; • We introduce a method to consider heterogeneous strengths of social relations mathematically; and • We demonstrate the effectiveness of the proposed framework on various real-world datasets.
The remainder of this paper is organized as follows. We introduce the proposed framework in Section 2. In Section 3, we conduct experiments on two real-world datasets to illustrate the effectiveness of the proposed method. In Section 4, we review work related to our framework. Finally, we conclude our work with future directions in Section 5.

THE PROPOSED FRAMEWORK
In this section, we will first introduce the definitions and notations used in this paper, next give an overview about the proposed framework, then detail each model component and finally discuss how to learn the model parameters. The rating value of item v j by user u i q j The embedding of item v j p i The embedding of user u i e r The opinion embedding for the rating level r , such as 5-star rating, r ∈ {1, 2, 3, 4, 5} d The length of embedding vector C (i) The set of items which user u i interacted with The set of social friends who user u i directly connected with B(j) The set of users who have interacted the item v j The predicted rating value of item v j by user u i ⊕ The concatenation operator of two vectors T The user-user social graph R The user-item rating matrix (user-item graph) W, b The weight and bias in neural network

Definitions and Notations
Let U = {u 1 , u 2 , ..., u n } and V = {v 1 , v 2 , ..., v m } be the sets of users and items respectively, where n is the number of users, and m is the number of items. We assume that R ∈ R n×m is the useritem rating matrix, which is also called the user-item graph. If u i gives a rating to v j , r i j is the rating score, otherwise we employ 0 to represent the unknown rating from u i to v j , i.e., r i j = 0. The observed rating score r i j can be seen as user u i 's opinion on the item v j . Let O = u i , v j |r i j 0 be the set of known ratings and T = u i , v j |r i j = 0 be the set of unknown ratings. Let N (i) be the set of users whom u i directly connected with, C (i) be the set of items which u i have interacted with, and B(j) be the set of users who have interacted with v j . In addition, users can establish social relations to each other. We use T ∈ R n×n to denote the user-user social graph, where T i j = 1 if u j has a relation to u i and zero otherwise. Given the user-item graph R and social graph T, we aim to predict the missing rating value in R. Following [11], we use an embedding vector p i ∈ R d to denote a user u i and an embedding vector q j ∈ R d to represent an item v j , where d is the length of embedding vector. More details will be provided about these embedding vectors in the following subsections. The mathematical notations used in this paper are summarized in Table 1.

An Overview of the Proposed Framework
The architecture of the proposed model is shown in Figure 2. The model consists of three components: user modeling, item modeling, and rating prediction. The first component is user modeling, which is to learn latent factors of users. As data in social recommender systems includes two different graphs, i.e., a social graph and a user-item graph, we are provided with a great opportunity to learn user representations from different perspectives. Therefore, two aggregations are introduced to respectively process these two different graphs. One is item aggregation, which can be utilized to understand users via interactions between users and items in the user-item graph (or item-space). The other is social aggregation, the relationship between users in the social graph, which can help model users from the social perspective (or social-space). Then, it is intuitive to obtain user latent factors by combining information from both item space and social space. The second component is item modeling, which is to learn latent factors of items. In order to consider both interactions and opinions in the user-item graph, we introduce user aggregation, which is to aggregate users' opinions in item modeling. The third component is to learn model parameters via prediction by integrating user and item modeling components. Next, we will detail each model component.

User Modeling
User modeling aims to learn user latent factors, denoted as h i ∈ R d for user u i . The challenge is how to inherently combine the useritem graph and social graph. To address this challenge, we first use two types of aggregation to learn factors from two graphs, as shown in the left part in Figure 2. The first aggregation, denoted as item aggregation, is utilized to learn item-space user latent factor h I i ∈ R d from the user-item graph. The second aggregation is social aggregation where social-space user latent factor h S i ∈ R d is learned from the social graph. Then, these two factors are combined together to form the final user latent factors h i . Next, we will introduce item aggregation, social aggregation and how to combine user latent factors from both item-space and social-space.
Item Aggregation. As user-item graph contains not only interactions between users and items but also users' opinions (or rating scores) on items, we provide a principled approach to jointly capture interactions and opinions in the user-item graph for learning item-space user latent factors h I i , which is used to model user latent factor via interactions in the user-item graph.
The purpose of item aggregation is to learn item-space user latent factor h I i by considering items a user u i has interacted with and users' opinions on these items. To mathematically represent this aggregation, we use the following function as: where C (i) is the set of items user u i has interacted with (or u i 's neighbors in the user-item graph), x ia is a representation vector to denote opinion-aware interaction between u i and an item v a , and Aддre it ems is the items aggregation function. In addition, σ denotes non-linear activation function (i.e., a rectified linear unit), and W and b are the weight and bias of a neural network. Next we will discuss how to define opinion-aware interaction representation x ia and the aggregation function Aддre it ems . A user can express his/her opinions (or rating scores), denoted as r , to items during user-item interactions. These opinions on items can capture users' preferences on items, which can help model item-space user latent factors. To model opinions, for each type of opinions r , we introduce an opinion embedding vector e r ∈ R d that denotes each opinion r as a dense vector representation. For example, in a 5-star rating system, for each r ∈ {1, 2, 3, 4, 5}, we introduce an embedding vector e r . For an interaction between user u i and item v a with opinion r , we model opinion-aware interaction representation x ia as a combination of item embedding q a and opinion embedding e r via a Multi-Layer Perceptron (MLP). It can be denoted as д v to fuse the interaction information with the opinion information as shown in Figure 2. The MLP takes the concatenation of item embedding q a and its opinion embedding e r as input. The output of MLP is the opinion-aware representation of the interaction between u i and v a , x ia , as follows: where ⊕ denotes the concatenation operation between two vectors. One popular aggregation function for Aддre it ems is the mean operator where we take the element-wise mean of the vectors in {x ia , ∀a ∈ C (i)}. This mean-based aggregator is a linear approximation of a localized spectral convolution [15], as the following function: where α i is fixed to 1 |C (i ) | for all items in the mean-based aggregator. It assumes that all interactions contribute equally to understand the user u i . However, this may not be optimal, due to the fact that the influence of interactions on users may vary dramatically. Hence, we should allow interactions to contribute differently to a user's latent factor by assigning each interaction a weight.
To alleviate the limitation of mean-based aggregator, inspired by attention mechanisms [3,38], an intuitive solution is to tweak α i to be aware of the target user u i , i.e., assigning an individualized weight for each (v a , u i ) pair, where α ia denotes the attention weight of the interaction with v a in contributing to user u i 's item-space latent factor when characterizing user u i 's preference from the interaction history C (i). Specially, we parameterize the item attention α ia with a two-layer neural network, which we call as the attention network. The input to the attention network is the opinion-aware representation x ia of the interaction and the target user u i 's embedding p i . Formally, the attention network is defined as, The final attention weights are obtained by normalizing the above attentive scores using Softmax function, which can be interpreted as the contribution of the interaction to the item-space user latent factor of user u i as: Social Aggregation. Due to the social correlation theories [20,21], a user's preference is similar to or influenced by his/her directly connected social friends. We should incorporate social information to further model user latent factors. Meanwhile, tie strengths between users can further influence users' behaviors from the social graph. In other words, the learning of social-space user latent factors should consider heterogeneous strengths of social relations. Therefore, we introduce an attention mechanism to select social friends that are representative to characterize users social information and then aggregate their information.
In order to represent user latent factors from this social perspective, we propose social-space user latent factors, which is to aggregate the item-space user latent factors of neighboring users from the social graph. Specially, the social-space user latent factor of u i , h S i , is to aggregate the item-space user latent factors of users in u i 's neighbors N (i), as the follows: where Aддre neiдbhor s denotes the aggregation function on user's neighbors.
One natural aggregation function for Aддre neiдbhor s is also the mean operator which take the element-wise mean of the vectors in h I o , ∀o ∈ N (i) , as the following function: where β i is fixed to 1 |N (i ) | for all neighbors for the mean-based aggregator. It assumes that all neighbors contribute equally to the representation of user u i . However, as mentioned before, strong and weak ties are mixed together in a social network, and users are likely to share more similar tastes with strong ties than weak ties. Thus, we perform an attention mechanism with a two-layer neural network to extract these users that are important to influence u i , and model their tie strengths, by relating social attention β io with h I o and the target user embedding p i , as below, where the β io can be seen as the strengths between users.
Learning User Latent Factor. In order to learn better user latent factors, item-space user latent factors and social-space user latent factors are needed to be considered together, since the social graph and the user-item graph provide information about users from different perspectives. We propose to combine these two latent factors to the final user latent factor via a standard MLP where the item-space user latent factor h I i and the social-space user latent factor h S i are concatenated before feeding into MLP. Formally, the user latent factor h i is defined as, where l is the index of a hidden layer.

Item Modeling
As shown in the right part of Figure 2, item modeling is used to learn item latent factor, denoted as z j , for the item v j by user aggregation. Items are associated with the user-item graph, which contains interactions as well as user's opinions. Therefore, interactions and opinions in the user-item graph should be jointly captured to further learn item latent factors. User Aggregation. Likewise, we use a similar method as learning item-space user latent factors via item aggregation. For each item v j , we need to aggregate information from the set of users who have interacted with v j , denoted as B(j).
Even for the same item, users might express different opinions during user-item interactions. These opinions from different users can capture the characteristics of the same item in different ways provided by users, which can help model item latent factors. For an interaction from u t to v j with opinion r , we introduce an opinionaware interaction user representation f jt , which is obtained from the basic user embedding p t and opinion embedding e r via a MLP, denoted as д u . д u is to fuse the interaction information with the opinion information, as shown in Figure 2: Then, to learn item latent factor z j , we also propose to aggregate opinion-aware interaction representation of users in B(j) for item v j . The users aggregation function is denoted as Aддre user s , which is to aggregate opinion-aware interaction representation of users in f jt , ∀t ∈ B(j) as: In addition, we introduce an attention mechanism to differentiate the importance weight µ jt of users with a two-layer neural attention network, taking f jt and q j as the input, This user attention µ jt is to capture heterogeneous influence from user-item interactions on learning item latent factor.

Rating Prediction
In this subsection, we will design recommendation tasks to learn model parameters. There are various recommendation tasks such as item ranking and rating prediction. In this work, we apply the proposed GraphRec model for the recommendation task of rating prediction. With the latent factors of users and items (i.e., h i and z j ), we can first concatenate them h i ⊕ z j and then feed it into MLP for rating prediction as: where l is the index of a hidden layer, and r ′ i j is the predicted rating from u i to v j .

Model Training
To estimate model parameters of GraphRec, we need to specify an objective function to optimize. Since the task we focus on in this work is rating prediction, a commonly used objective function is formulated as, where |O| is the number of observed ratings , and r i j is the ground truth rating assigned by the user i on the item j.
To optimize the objective function, we adopt the RMSprop [31] as the optimizer in our implementation, rather than the vanilla SGD. At each time, it randomly selects a training instance and updates each model parameter towards the direction of its negative gradient. There are three embedding in our model, including item embedding q j , user embedding p i , and opinion embedding e r . They are randomly initialized and jointly learned during the training stage. We do not use one-hot vectors to represent each user and item, since the raw features are very large and highly sparse. By embedding high-dimensional sparse features into a low-dimensional latent space, the model can be easy to train [11]. Opinion embedding matrix e depends on the rating scale of the system. For example, for a 5-star rating system, opinion embedding matrix e contains 5 different embedding vectors to denote scores in {1, 2, 3, 4, 5}. Overfitting is a perpetual problem in optimizing deep neural network models. To alleviate this issue, the dropout strategy [26] has been applied to our model. The idea of dropout is to randomly drop some neurons during the training process. When updating parameters, only part of them will be updated. Moreover, as dropout is disabled during testing, the whole network is used for prediction.

EXPERIMENT 3.1 Experimental Settings
3.1.1 Datasets. In our experiments, we choose two representative datasets Ciao and Epinions 1 , which are taken from popular social networking websites Ciao (http://www.ciao.co.uk) and Epinions (www.epinions.com). Each social networking service allows users to rate items, browse/write reviews, and add friends to their 'Circle of Trust'. Hence, they provide a large amount of rating information and social information. The ratings scale is from 1 to 5. We randomly initialize opinion embedding with 5 different embedding vectors based on 5 scores in {1, 2, 3, 4, 5}. The statistics of these two datasets are presented in Table 2.

Evaluation Metrics.
In order to evaluate the quality of the recommendation algorithms, two popular metrics are adopted to evaluate the predictive accuracy, namely Mean Absolute Error (MAE) and Root Mean Square Error (RMSE) [34]. Smaller values of MAE and RMSE indicate better predictive accuracy. Note that small improvement in RMSE or MAE terms can have a significant impact on the quality of the top-few recommendations [16].

Baselines.
To evaluate the performance, we compared our GraphRec with three groups of methods including traditional recommender systems, traditional social recommender systems, and deep neural network based recommender systems. For each group, we select representative baselines and below we will detail them.
• PMF [24]: Probabilistic Matrix Factorization utilizes useritem rating matrix only and models latent factors of users and items by Gaussian distributions. • SoRec [17]: Social Recommendation performs co-factorization on the user-item rating matrix and user-user social relations matrix. • SoReg [18]: Social Regularization models social network information as regularization terms to constrain the matrix factorization framework. : This model is a state-of-the-art recommender system with graph neural network architecture. In order to incorporate social network information into GCMC, we utilize the node2vec [9] to generate user embedding as user side information, instead of using the raw feature social connections (T ∈ R n×n ) directly. The reason is that the raw feature input vectors is highly sparse and high-dimensional.
Using the network embedding techniques can help compress the raw input feature vector to a low-dimensional and dense vector, then the model can be easy to train.
PMF and NeuMF are pure collaborative filtering model without social network information for rating prediction, while the others are social recommendation. Besides, we compared GraphRec with two state-of-the-art neural network based social recommender systems, i.e., DeepSoR and GCMC+SN.

Parameter Settings.
We implemented our proposed method on the basis of Pytorch 2 , a well-known Python library for neural networks. For each dataset, we used x% as a training set to learning parameters, (1 −x%)/2 as a validation set to tune hyper-parameters, and (1−x%)/2 as a testing set for the final performance comparison, where x was varied as {80%, 60%}. For the embedding size d, we tested the value of [ 8,16,32,64,128,256 ]. The batch size and learning rate was searched in [ 32,64,128,512 ] and [ 0.0005, 0.001, 0.005, 0.01, 0.05, 0.1 ], respectively. Moreover, we empirically set the size of the hidden layer the same as the embedding size and the activation function as ReLU. Without special mention, we employed three hidden layers for all the neural components. The early stopping strategy was performed, where we stopped training if the RMSE on validation set increased for 5 successive epochs. For all neural network methods, we randomly initialized model parameters with a Gaussian distribution, where the mean and standard deviation is 0 and 0.1, respectively. The parameters for the baseline algorithms were initialized as in the corresponding papers and were then carefully tuned to achieve optimal performance.

Performance Comparison of Recommender Systems
We first compare the recommendation performance of all methods. Table 3 shows the overall rating prediction error w.r .t . RMSE and MAE among the recommendation methods on Ciao and Epinions datasets. We have the following main findings: • SoRec, SoReg, SocialMF, and TrustMF always outperform PMF. All of these methods are based on matrix factorization. SoRec, SoReg, SocialMF, and TrustMF leverage both the rating and social network information; while PMF only uses the rating information. These results support that social network information is complementary to rating information for recommendations. • NeuMF obtains much better performance than PMF. Both methods only utilize the rating information. However, NeuMF is based on neural network architecture, which suggests the power of neural network models in recommender systems. • DeepSoR and GCMC+SN perform better than SoRec, SoReg, SocialMF, and TrustMF. All of them take advantage of both rating and social network information. However, DeepSoR and GCMC+SN are based on neural network architectures, which further indicate the power of neural network models in recommendations.
• Among baselines, GCMC+SN shows quite strong performance. It implies that the GNNs are powerful in representation learning for graph data, since it naturally integrates the node information as well as topological structure. • Our method GraphRec consistently outperforms all the baseline methods. Compared to DeepSoR and GCMC+SN, our model provides advanced model components to integrate rating and social network information. In addition, our model provides a way to consider both interactions and opinions in the user-item graph. We will provide further investigations to better understand the contributions of model components to the proposed framework in the following subsection. To sum up, the comparison results suggest (1) social network information is helpful for recommendations; (2) neural network models can boost recommendation performance and (3) the proposed framework outperforms representative baselines.

Model Analysis
In this subsection, we study the impact of model components and model hyper-parameters. The performance of GraphRec and its variants on Ciao and Epinions are given in Figure 3. From the results, we have the following findings: • Social Network Information. We now focus on analyzing the effectiveness of social network information. GraphRec-SN performs worse than GraphRec. It verifies that social network information is important to learn user latent factors and boost the recommendation performance. • Opinions in Interaction. We can see that without opinion information, the performance of rating prediction is deteriorated significantly. For example, on average, the relative reduction on Ciao and Epinions is 3.50% and 2.64% on RMSE metric, and 5.84% and 5.02% on MAE metric, respectively. It justifies our assumption that opinions on user-item interactions have informative information that can help to learn user or item latent factors and improve the performance of recommendation.

Effect of Attention Mechanisms.
To get a better understanding of the proposed GraphRec model, we further evaluate the key components of GraphRec -Attention mechanisms. There are three different attention mechanisms during aggregation, including item attention α, social attention β, and user attention µ. We compare GraphRec with its four variants: GraphRec-α, GraphRec-β, GraphRec-α&β, and GraphRec-µ. These four variants are defined in the following: • GraphRec-α: The item attention α of GraphRec is eliminated during aggregating the opinion-aware interaction representation of items. This variant employs the mean-based aggregation function on item aggregation for modeling itemspace user latent factors.   The results of different attention mechanisms on GraphRec are shown in Figure 4. From the results, we have the following findings, • Not all interacted items (purchased history) of one user contribute equally to the item-space user latent factor, and not all interacted users (buyers) have the same importance to learning item latent factor. Based on these assumptions, our model considers these difference among users and items by using two different attention mechanisms (α and µ). From the results, we can observe that GraphRec-α and GraphRecµ obtain worse performance than GraphRec. These results demonstrate the benefits of the attention mechanisms on item aggregation and user aggregation. • As mentioned before, users are likely to share more similar tastes with strong ties than weak ties. The attention mechanism β at social aggregation considers heterogeneous strengths of social relations. When the attention mechanism β is removed, the performance of GraphRec-β is dropped significantly. It justifies our assumption that during social aggregation, different social friends should have different influence for learning social-space user latent factor. It's important to distinguish social relations with heterogeneous strengths.
To sum up, GraphRec can capture the heterogeneity in aggregation operations of the proposed framework via attention mechanisms, which can boost the recommendation performance.

Effect of Embedding Size.
In this subsection, to analyze the effect of embedding size of user embedding p , item embedding q, and opinion embedding e, on the performance of our model. Figure 5 presents the performance comparison w.r .t . the length of embedding of our proposed model on Ciao and Epinions datasets. In general, with the increase of the embedding size, the performance first increases and then decreases. When increasing the embedding size from 8 to 64 can improve the performance significantly. However, with the embedding size of 256, GraphRec degrades the performance. It demonstrates that using a large number of the embedding size has powerful representation. Nevertheless, if the length of embedding is too large, the complexity of our model will significantly increase. Therefore, we need to find a proper length of embedding in order to balance the trade-off between the performance and the complexity.

RELATED WORK
In this section, we briefly review some related work about social recommendation, deep neural network techniques employed for recommendation, and the advanced graph neural networks.
Exploiting social relations for recommendations has attracted significant attention in recent years [27,28,37]. One common assumption about these models is that a user's preference is similar to or influenced by the people around him/her (nearest neighbours), which can be proven by social correlation theories [20,21]. Along with this line, SoRec [17] proposed a co-factorization method, which shares a common latent user-feature matrix factorized by ratings and by social relations. TrustMF [37] modeled mutual influence between users, and mapped users into two low-dimensional spaces: truster space and trustee space, by factorizing social trust networks. SoDimRec [30] first adopted a community detection algorithm to partition users into several clusters, and then exploited the heterogeneity of social relations and weak dependency connections for recommendation. Comprehensive overviews on social recommender systems can be found in surveys [29].
In recent years, deep neural network models had a great impact on learning effective feature representations in various fields, such as speech recognition [12], Computer Vision (CV) [14] and Natural Language Processing (NLP) [4]. Some recent efforts have applied deep neural networks to recommendation tasks and shown promising results [41], but most of them used deep neural networks to model audio features of music [32], textual description of items [3,33], and visual content of images [40]. Besides, NeuMF [11] presented a Neural Collaborative Filtering framework to learn the non-linear interactions between users and items.
However, the application of deep neural network in social recommender systems is rare until very recently. In particular, NSCR [35] extended the NeuMF [11] model to cross-domain social recommendations, i.e., recommending items of information domains to potential users of social networks, and presented a neural social collaborative ranking recommender system. However, the limitation is NSCR requires users with one or more social networks accounts (e.g., Facebook, Twitter, Instagram), which limits the data collections and its applications in practice. SMR-MNRL [42] developed social-aware movie recommendation in social media from the viewpoint of learning a multimodal heterogeneous network representation for ranking. They exploited the recurrent neural network and convolutional neural network to learn the representation of movies' textual description and poster image, and adopted a random-walk based learning method into multimodal neural networks. In all these works [35] [42], they addressed the task of cross-domain social recommendations for ranking metric, which is different from traditional social recommender systems.
Most related to our task with neural networks includes DLMF [6] and DeepSoR [8]. DLMF [6] used auto-encoder on ratings to learn representation for initializing an existing matrix factorization. A two-phase trust-aware recommendation process is proposed to utilize deep neural networks in matrix factorization's initialization and to synthesize the user's interests and their trust friends' interests together with the impact of community effect based on matrix factorization for recommendations. DeepSoR [8] integrated neural networks for user's social relations into probabilistic matrix factorization. They first represented users using pre-trained node embedding technique, and further exploited k-nearest neighbors to bridge user embedding features and neural network.
More recently, Graph Neural Networks (GNNs) have been proven to be capable of learning on graph structure data [2,5,7,15,25]. In the task of recommender systems, the user-item interaction contains the ratings on items by users, which is a typical graph data. Therefore, GNNs have been proposed to solve the recommendation problem [1,22,39]. sRMGCNN [22] adopted GNNs to extract graph embeddings for users and items, and then combined with recurrent neural network to perform a diffusion process. GCMC [1] proposed a graph auto-encoder framework, which produced latent features of users and items through a form of differentiable message passing on the user-item graph. PinSage [39] proposed a randomwalk graph neural network to learn embedding for nodes in webscale graphs. Despite the compelling success achieved by previous work, little attention has been paid to social recommendation with GNNs. In this paper, we propose a graph neural network for social recommendation to fill this gap.

CONCLUSION AND FUTURE WORK
We have presented a Graph Network model (GraphRec) to model social recommendation for rating prediction. Particularly, we provide a principled approach to jointly capture interactions and opinions in the user-item graph. Our experiments reveal that the opinion information plays a crucial role in the improvement of our model performance. In addition, our GraphRec can differentiate the ties strengths by considering heterogeneous strengths of social relations. Experimental results on two real-world datasets show that GraphRec can outperform state-of-the-art baselines.
Currently we only incorporate the social graph into recommendation, while many real-world industries are associated rich other side information on users as well as items. For example, users and items are associated with rich attributes. Therefore, exploring graph neural networks for recommendation with attributes would be an interesting future direction. Beyond that, now we consider both rating and social information static. However, rating and social information are naturally dynamic. Hence, we will consider building dynamic graph neural networks for social recommendations with dynamic.