Graph Neural Networks for Social Recommendation

Graph Neural Networks for Social Recommendation

  • LINK: https://arxiv.org/abs/1902.07243

  • CLASSIFICATION: RECOMMENDER-SYSTEM, HETEROGENEOUS NETWORK, GCN

  • YEAR: Submitted on 19 Feb 2019 (v1), last revised 23 Nov 2019 (this version, v2)

  • FROM: WWW 2019

  • WHAT PROBLEM TO SOLVE: Building social recommender systems based on GNNs faces challenges. The first challenge is how to inherently combine the social graph and the user-item graph. Moreover, the user-item graph not only contains interactions between users and items but also includes users’ opinions on items. The second challenge is how to capture interactions and opinions between users and items jointly. The third challenge is how to distinguish social relations with heterogeneous strengths.

  • SOLUTION:

    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.
  • CORE POINT:

    • The Proposed Framework

      Graph Neural Networks for Social Recommendation

      The model consists of three components: user modeling, item modeling, and rating prediction.

      • User Modeling

        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. Two aggregations are introduced to respectively process these two different graphs.

        • Item Aggregation

          To understand users via interactions between users and items in the user-item graph (or item-space).

          The purpose of item aggregation is to learn item-space user latent factor hiIh^I_i by considering items a user uiu_i has interacted with and users’ opinions on these items. To mathematically represent this aggregation, we use the following function as:

          Graph Neural Networks for Social Recommendation

          The MLP takes the concatenation of item embedding qaq_a and its opinion embedding ere_r as input. The output of MLP is the opinion-aware representation of the interaction between uiu_i and vav_a, xiax_{ia}, as follows:

          Graph Neural Networks for Social Recommendation

          To alleviate the limitation of mean-based aggregator, inspired by attention mechanisms, an intuitive solution is to tweak αiα_i to be aware of the target user uiu_i, i.e., assigning an individualized weight for each (vav_a, uiu_i) pair,

          Graph Neural Networks for Social Recommendation

          Formally, the attention network is defined as,

          Graph Neural Networks for Social Recommendation

          The final attention weights are obtained by normalizing the above attentive scores using Softmax function.

          Graph Neural Networks for Social Recommendation
        • Social Aggregation

          The relationship between users in the social graph, which can help model users from the social perspective (or social-space). 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.

          The social-space user latent factor of uiu_i, hiSh^S_i, is to aggregate the item-space user latent factors of users in uiu_i’s neighbors N(i)N(i), as the follows:

          Graph Neural Networks for Social Recommendation

          We perform an attention mechanism with a two-layer neural network to extract these users that are important to influence uiu_i, and model their tie strengths, by relating social attention βioβ_{io} with hoIh^I_o and the target user embedding pip_i, as below.

          Graph Neural Networks for Social Recommendation
        • Learning User Latent Factor

          It is intuitive to obtain user latent factors by combining information from both item space and social space.

          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 hI iand the social-space user latent factor hS iare concatenated before feeding into MLP. Formally, the user latent factor hiis defined as,

          Graph Neural Networks for Social Recommendation
      • Item Modeling

        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.

        • User Aggregation

          Same as Item Aggregation

          Graph Neural Networks for Social RecommendationGraph Neural Networks for Social RecommendationGraph Neural Networks for Social Recommendation
      • Rating Prediction

        The third component is to learn model parameters via prediction by integrating user and item modeling components.

        With the latent factors of users and items (i.e., hih_i and zjz_j ), we can first concatenate them ????[hih_izjz_j] ???? and then feed it into MLP for rating prediction as:

        Graph Neural Networks for Social Recommendation
    • Objective Function

      Graph Neural Networks for Social Recommendation
    • Experiment

      • Datasets

        Graph Neural Networks for Social Recommendation
      • Performance Comparison of Recommender Systems

        Graph Neural Networks for Social Recommendation

      • Model Analysis

        • Effect of Social Network and User Opinions
        • Effect of Attention Mechanisms
        • Effect of Embedding Size

        Graph Neural Networks for Social Recommendation

  • EXISTING PROBLEMS: 1. 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. 2. Now we consider both rating and social information static. However, rating and social information are naturally dynamic.

  • IMPROVEMENT IDEAS: 1. Users and items are associated with rich attributes. Therefore, exploring graph neural networks for recommendation with attributes would be an interesting future direction. 2. Consider building dynamic graph neural networks for social recommendations with dynamic.