BLOGS

How Collaborative Filtering Method Can Be Realised with Graph Neural Networks to Obtain Better Recommendations….

By Prosenjit Biswas, Research Scientist at Sony Research India

10th August 2022

Prosenjit Biswas, Research Scientist at Sony Research India shares his thoughts on why he believes that Graph-Based recommenders perform better than many other algorithms

From e-commerce web apps to social media and OTT platforms the use of Recommendation Systems has become integral. With the advent of big data and more powerful computing systems, these recommendation engines solve the problem of information overload. 
These recommenders can be divided into the following categories depending on the type of information learned by the algorithms:
  1. User-Item/ User-User collaborative filtering recommendation – This line of work uses the user-item interaction to find user preferences and eventually similar users/ items.
  2. knowledge graph-based recommendation system - These algorithms rely on better item representations with the help of item attributes.
  3. Social Recommendation – This group uses the social relationships between users to represent them better.
  4. Sequential Recommendation and Session Recommendation - This class of algorithms can recommend items based on the session information and activity patterns of users with slight nuances in anonymity in sessions.

Now let us look at how collaborative filtering techniques can be realised with Graph Neural Networks:

In recent times, Graph algorithms have gained a lot of attention in recommendation systems. Due to the underlying relationship between the user and item attributes, the data can be modelled better as graphs. The form of the graph constructed from user-item interactions results in a bipartite graph. While Collaborative Filtering techniques with algorithms such as SVD++, FISM, etc have proven to be effective for recommendations, GNN(Graph Neural Network) has achieved remarkable success in Collaborative Filtering and also other paradigms of recommendation systems.
An important subtask in the Collaborative Filtering setup is matrix completion. This can be realised by viewing the matrix completion task as a link prediction problem on graphs.

In one of the variants of Graph-based recommenders, GCMC i.e.; graph convolutional matrix completion, the user-item interaction is converted into a bipartite graph. The edges of the graph contain information like ratings. One main component of the model is an autoencoder that encodes this edge information in such a way that it can be reconstructed from this encoded or compressed representation. This is done by passing the bipartite graph through several message passing layers to learn the representation of each user and item. Finally, link prediction is performed with these embeddings.

Figure: Left: Rating matrix M with entries that correspond to user-item interactions (ratings between 1-5) or missing observations (0) Right: User-item interaction graph with bipartite structure. Edges correspond to interaction events, and numbers on edges denote the rating a user has given to a particular item. The matrix completion task (i.e. predictions for unobserved interactions) can be cast as a link prediction problem and modelled using an end-to-end trainable graph auto-encoder.
The Link prediction is done by a bilinear decoder that produces a probability distribution over possible rating levels through a bilinear operation followed by the application of a SoftMax function:
To summarise, the main difference between this model and other Collaborative Filtering models is the way the user and item embeddings are generated. GNN-based recommenders have outperformed many state-of-the-art recommendation algorithms and much other research work with graphs and recommendations addresses different challenges like scalability, higher order relationships for better embeddings, etc.
Different Graph-based recommendation algorithms attack the recommendation challenge in different ways. This class of Recommenders have many advantages such as aggregating more information from multiple neighbours, capturing higher order and latent information between nodes, and so on. This has also proven to beat many state-of-the-art benchmarks on popular datasets. Hence, in my opinion, Graph-Based recommenders are powerful to perform better than many other algorithms.
References: Rianne van den Berg, Thomas N. Kipf, Max Welling, Graph Convolutional Matrix Completion (2017).
Skip to content