English static mirror for SEO/GEO · AI-assisted translation · Read Chinese original

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

Forum topic · 小凯 · 2026-07-05

Summary

This Uber Engineering blog post describes how Uber Eats uses graph learning to improve food and restaurant recommendations. Uber constructs a heterogeneous graph connecting users, dishes, restaurants, menus, and related entities from its platform data, then applies graph neural networks (specifically a GraphSAGE-style approach) to learn embeddings for dishes. The learned dish embeddings capture co-order patterns and content similarities, enabling the system to recommend similar dishes and restaurants to users. The post explains how these embeddings are generated offline, stored, and served via nearest-neighbor retrieval within the production recommendation stack, and how they complement Uber Eats' existing two-tower query-dish ranking models. The authors report that graph-based food discovery surfaces more relevant, diverse recommendations than prior keyword- or content-only similarity methods, improving metrics in online experiments. The article also covers practical engineering considerations such as graph construction from order logs, sampling strategies for scalable training, and handling of new dishes with limited interaction data. Source: https://www.uber.com/blog/uber-eats-graph-learning/

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

Source: Uber Engineering Blog

Overview

Uber Eats faces a distinctive recommendation challenge: unlike general e-commerce, users often do not know exactly what they want when searching for food. Queries such as "comfort food" or "hearty soup" require matching user intent against dishes rather than restaurants. To improve this food discovery experience, Uber built a graph learning system that learns embeddings for dishes from user interaction data.

Why Graph Learning

Traditional content-based similarity (matching dish titles or descriptions) is brittle: many dishes with similar ingredients have very different names, and valuable signals live in user behavior. Uber therefore models the platform as a graph where:

  • Nodes represent entities such as users, dishes, menus, and restaurants.
  • Edges encode relationships such as ordered-with, added-to-cart, viewed, and content associations.
  • Approach

    The system uses a GraphSAGE-style Graph Neural Network (GNN) to learn dish embeddings:

    1. Graph construction: order and session logs from Uber Eats are aggregated to build a dish co-occurrence graph, enriched with content edges (e.g., dishes sharing ingredients or belonging to the same menu). 2. Embedding learning: a multi-relational GraphSAGE model samples neighborhoods and aggregates messages from different edge types, producing embeddings for each dish. 3. Retrieval and serving: learned dish embeddings are indexed for nearest-neighbor search. When a user views or orders a dish, similar dishes (and their restaurants) are retrieved as recommendations.

    The dish embeddings are also used in downstream models — Uber Eats' production recommendation system uses a two-tower (query/dish) neural ranking model, and the GNN-based embeddings serve as pre-trained item representations that improve retrieval quality.

    Results

    Uber reports that, compared to the previous keyword- and content-similarity-based approach, the graph-based food discovery system retrieves more relevant and diverse dish recommendations. Online A/B experiments showed the new system outperformed the legacy content-similarity method, and the embeddings generalize better because they combine behavioral co-order signals with dish content.

    Engineering Considerations

  • Scalability: neighborhood sampling and mini-batch training allow the GNN to scale to Uber Eats' large dish catalog.
  • Cold start: content-based edges (ingredients, menus) help embed new dishes with little interaction data.
  • Evaluation: offline embedding quality checks were complemented by online experiments measuring user engagement.
  • Related Reading

  • A Survey of Graph Retrieval-Augmented Generation for Customized LLMs
  • RAG vs. GraphRAG: A Systematic Evaluation and Key Insights
  • Algolia's Knowledge Graphs and Ontologies
  • Takeaways

  • Graph learning turns implicit user behavior (co-orders, co-views) into dense dish representations for recommendation.
  • GNN embeddings act as pre-trained item features that plug into existing two-tower retrieval/ranking stacks.
  • Combining behavioral and content edges mitigates cold-start and improves generalization for food discovery.

Tags

#uber-eats#graph-learning#recommendation-systems#graph-neural-networks#embeddings#food-discovery#two-tower-model#retrieval

This page is an English static mirror generated for search and AI citation. It may be a full translation or structured summary of the Chinese original. Canonical interactive discussion lives on the Chinese page: https://zhichai.net/topic/178208843