Skip to main content
Uber AI, Engineering

Food Discovery with Uber Eats: Using Graph Learning to Power Recommendations

4 December 2019 / Global
Featured image for Food Discovery with Uber Eats: Using Graph Learning to Power Recommendations
Figure 1: A graph neural network (on right) obtains the representation of node A from an input graph (on left).
Figure 2: These equations represent the computation graph displayed in Figure 1.
Figure 4: Our Uber Eats recommendation system leverages max-margin loss augmented with low rank positives.
Figure 5: Our new graph learning feature proved the most valuable of all other implemented features when determining the quality and relevancy of our Uber Eats dish and restaurant recommendation systems.
Figure 6: We built a data pipeline (top row) and training pipeline (bottom row) that helps us train our Uber Eats recommendation system using GNN embeddings for improved in-app dish and restaurant suggestions.
Figure 7: We compared the representation of a hypothetical user before and after ordering dishes and compared them to popular dishes from different cuisines. The four plots highlight dishes belonging to four different subsets of cuisines. The x axis measures how much a dish is similar to the user representation before ordering additional dishes, while the y-axis measures how a dish is similar to the the user representation after ordering additional dishes.
Ankit Jain

Ankit Jain

Ankit Jain is a former research scientist of Uber AI.

Isaac Liu

Isaac Liu

Isaac Liu was an engineer at Uber focused on search and recommendations within the Uber Eats app. He holds a Ph.D. in Electrical Engineering and Computer Science from UC Berkeley.

Ankur Sarda

Ankur Sarda

Ankur is a former software engineer at the Uber Risk engineering team focussing on graph applications at Uber.

Piero Molino

Piero Molino

Piero is a Staff Research Scientist in the Hazy research group at Stanford University. He is a former founding member of Uber AI where he created Ludwig, worked on applied projects (COTA, Graph Learning for Uber Eats, Uber’s Dialogue System) and published research on NLP, Dialogue, Visualization, Graph Learning, Reinforcement Learning and Computer Vision.

Posted by Ankit Jain, Isaac Liu, Ankur Sarda, Piero Molino