Graph-based food recommendations

Recipe-recommendation systems play an important role in assisting users in finding food recipes that could meet their requirements. Pioneering research on the use of graph neural networks (GNNs) for recipe-recommendation systems has produced superior results, when compared to contemporary recommendation-system performance benchmarks. 


This research has focused on the intersection of three traditionally separate fields of study, namely: recommendation systems, graph representation learning using GNNs, and food recipe heterogeneous graphs (see Figure 1).


Graph data structures are modelled as a set of nodes and edges showing the connections between nodes. Graphs could be either homogeneous (i.e., having only one type of node) or heterogenous (i.e., having different types of nodes), while edges could be undirected or directed. GNNs are a category of deep learning artificial intelligence methods that could be applied to data that is described by a graph. GNNs are neural networks that are adapted to build upon the features and attributes present in the graph, towards creating models that could be used to make predictions at graph, node or edge level.


The aim of this research was to investigate the suitability of GNNs for food-recipe recommendations. The first task was to construct a heterogenous graph representing the interconnections between recipes, ingredients, and users. This graph was constructed from a publicly available dataset and stored in a graph database. The graph properties were then analysed using graph techniques. The heterogeneous graph schema is shown in Figure 2.


The second task was to explore the use of GNN propagation models designed for heterogeneous applications in connection with the performance of a food-recipe recommendation system.  The study also explored the performance of the GNN recommendation system when a health category attribute would be added to recipe nodes and when an ingredient category attribute would be added to ingredient nodes. 

Figure 1. The research area of the project 

Figure 1. The research area of the project 

Student: George Attard

Supervisor : Dr Charlie Abela