SlideShare une entreprise Scribd logo
1  sur  62
Télécharger pour lire hors ligne
How does iFood use recommendation to
improve food delivery experience ?!
Luiz Mendes & Renan Oliveira
Luiz Mendes
Lead Data Scientist
Food Graph Project
From Belo Horizonte
@lfmendes
https://www.linkedin.com/in/lfomendes/
Renan Oliveira
Principal Scientist
Recommendation & Search
From Rio
@renan_oliveira
iFood Brain
AI + DA + DE
150 people
40 squads
5 countries
IFOOD IN NUMBERS
40 million orders
200k restaurants
150k drivers
1000 cities
*these numbers are only from Brazil
AN UNIQUE MOMENT - YOU CAN'T FAST-FORWARD OR SKIP
Time and Quality
Decision process
Special occasion
We are not a streaming service.
Ordering food has an additional
difficulty being assertive because
fixing a mistake is not like skipping a
media: placing an order involves more
money and logistical operation.
FOOD IS A VERY PERSONAL CHOICE
Taste Profile
Speed
Brand
Price Affinity
Offer Affinity
etc…
Taste Profile
Dish
Cuisine
Offers
Rating
etc…
Match
CHALLENGES
Locality geographical constraint for model training
Speed if you are hungry you will want to eat soon
Serviceability production capacity and restaurant quality
Feedback implicit (engagement) vs explicit (ratings)
Growth cold start problem
EVERYWHERE CAN BE PERSONALIZED
Push Notification
List of Restaurants
List of Dishes
Search Results
UI Components
PILLARS OF IFOOD 1:1
User Profile Which cuisine does she like most?
Context How would the offer change on weekends?
Journey If a user ordered "n" yesterday, what are the best "y" to offer today?
Dish Profile Healthy? Low-calorie? How allergy-risk?
Candunga
Collaborative Filtering
for Lists
5 2 2
? 3 4
5 3 ?
ASH
GOKU
SEIYA
ALS WITH MULTIPLE MATRICES
.9 .7
.5 .7
.5 .3
U1
U2
U3
Main Matrix
Customized
Discovery
The classic ALS approach (user x item
with implicit feedback) worked very
well for recurring users. The
conversion was not so good for users
without a long history of purchases or
for new items.
ALS WITH MULTIPLE MATRICES
.35 .50 .28
.29 .61 .32
.42 .18
C1
C2
C3
"Clusters" Matrix
Group of users
Implicit and explicit feedback
We can use any feature known to the
user or the item to make a hybrid
approach to content-based and
collaborative filtering. Not using the
user in the matrix index, the matrix
becomes less sparse.
CANDUNGA
.35 .32 .28
.29 .61 .32
.42 .18
C1
C2
C3
.9 .7
.5 .7
.5 .3
U1
U2
U3
features
- No limit on number of matrices
- Features from user, item or booth
- Added the feature layer
- Items can be stores or products
- Bayesian optimization to define the weight of each matrix
- NDCG for offline evaluation
before after
LUNCH LIST FOR LUIZ MENDES
Japanese
Healthy
In the old version of the list,
the top items were desserts
and junk food. Luiz prefers
japanese and healthy foods.
DEPLOY MODEL PIPELINE
RESULTS IN THE FEED OF ALL RESTAURANTES
+38%conversion uplift
+29%coverage uplift
Recommendation
Control
Embeddings
EMBEDDINGS
An embedding is a relatively low-dimensional space into which you can translate high-dimensional vectors.
The most known embeddings are word embeddings, that are build based on the position of the word in a text and
which words come before and after it.
to learn more: https://developers.google.com/machine-learning/crash-course/embeddings/video-lecture
EMBEDDINGS IN IFOOD
food2vec search2vec*foodgraph
Text based - fasttext
Build with ifood text data
Text based - word2vec
Created based on search queries
and the chosen restaurant
Content and graph based
Created based on connections
and features
iFood Word Vectors
food2vec
Create word embeddings
Build with ifood text data
Use fasttext to have better out of the vocabulary embeddings
Text data is very food specific and contains misspellings
food2vec
pasta related words
vegetarian related words
pizza related words
japanese cuisine
related words
food2vec
pasta related words
vegetarian related words
pizza related words
japanese cuisine
related words
Edamame is ingredient common in both japanese and
vegetarian dishes and it is the middle of the groups
food2vec
food2vec
Create dish embeddings
Use the weighted mean of the dish name and description words
Weight is based on IDF (inverse document frequency)
Japanese Food
Healthy Food
food2vec
food2vec
Can be used to augment dish lists
Frango grelhado. Acompanha cuscuz
marroquino com alho poró e ervilhas e cenoura.
Filé de Saint Peter grelhado. Acompanha purê
de abóbora e legumes ao vapor (brócolis e
vagem).
Salada Caesar de salmão cru defumado
Hamburguer vegano + acompanhamento + mini
salada
Risoto integral de ervilha com shimeji e tofu.
Take an example list Find similar dishes for all example Merge all neighbours and sort by similarity
Food Graph
Ontology
Knowledge Graph
Ontology
Knowledge Graph
Knowledge Graph
Ontology
Knowledge Graph
Knowledge Graph
graph-structured
nodes relationships
Knowledge Graph
Movie
Rotten link: www.rotten...
Imdb link: www.imdb…
Liked by: 90%
Description: An orpha..
The Land Before Time
Don Bluth
Directed by
Lucasfilm
Produced by
Knowledge Graph
Python? Which Python are you looking for?
Knowledge Graph
Food Delivery contains many entities: Users, Restaurants, Dishes, Ingredients, Delivery, Vendors...
Food Graph
CONTAINS
Subject
Object
Apple pie><CONTAINS><apple
User A Restaurant R
Tomatoes Chickpea Lettuce
ordered from
contains
Vegan
is
to from
Driver D
Food Graph
Data
Enrichment
Stream of “Enriched” data
Taxonomy
Normalized Dish Names
Serving Size
Meal Type
Ingredients
Weights, Volumes
Tags
...
FKG
“Better” Entity
Representations
RecSys
Marketing
Search
...
Fill in Missing
information by
Graph completion
* 33.7% of dishes have no description.
Food Graph
Dish Embedding
with Food Graph
“You are the average of the five people you
spend the most time with.”
jim rohn
Food Graph Embeddings
PinSage - pinterest
Must
● use node features (excludes node2vec for example)
● be able to create embeddings for unseen nodes
● be scalable (millions of nodes and possibly billions of edges)
● tested on production somewhere
https://medium.com/pinterest-engineering/pinsage-a-new-graph-convolutional-neural-network-for-web-scale-recommender-systems-88795a107f48
Food Graph Embeddings
A
B
C
F
E
D
Food Graph Embeddings
A
Localized convolution based on Random Walks
● Starting from A make random walks and get the most visited
nodes as neighbours
Food Graph Embeddings
A
Localized convolution based on Random Walks
● Starting from A make random walks and get the most visited
nodes as neighbours
● B, C and D - First Hop
A
B
C
F
E
D
Food Graph Embeddings
Localized convolution based on Random Walks
● Starting from A make random walks and get the most visited
nodes as neighbours
● B, C and D - First Hop
● For each neighbour repeat this
○ B -> A and C
○ C -> A, B, E, and F
○ D -> A
A
B
C
F
E
D
Food Graph Embeddings
Localized convolution based on Random Walks
● Starting from A make random walks and get the most visited
nodes as neighbours
● B, C and D - First Hop
● For each neighbour repeat this
○ B -> A and C
○ C -> A, B, E, and F
○ D -> A
How many hops?
Usually 2
A
B
C
F
E
D
Food Graph Embeddings
Localized convolution based on Random Walks
● Starting from A make random walks and get the most visited
nodes as neighbours
● B, C and D - First Hop
● For each neighbour repeat this
○ B -> A and C
○ C -> A, B, E, and F
○ D -> A
How many hops?
Usually 2, if you go to far you might find Kevin Bacon*, or use almost
the whole graph for one node
A
B
C
F
E
D
* https://en.wikipedia.org/wiki/Six_Degrees_of_Kevin_Bacon
Food Graph Embeddings
A Computational Graph for new A
Food Graph Embeddings
AC
D
B
Computational Graph for new AC
D
B
Food Graph Embeddings
AB C
F
E
D
A
C
A
A
B
Computational Graph for new AC
D
B
Food Graph Embeddings
AB C
F
E
D
A
C
A
A
BConvolve
1. Get the first representation of A and C
2. Pass through a convolution layer to create the second B representation
a. send neighbors through a dense neural network and then apply a
aggregator/pooling function (e.g., a element-wise mean or
weighted sum, denoted as γ )
Ɣ
C
A
B
B
Convolve
Food Graph Embeddings
AB C
F
E
D
A
C
A
A
BConvolve
1. The weights are shared between “same step” convolutions
Ɣ
C
A
B
B
Convolve
Convolve
Convolve
Convolve
w1
w1
w2
Food Graph Embeddings in iFood
PinSage algorithm uses a homogeneous graph, that is, all nodes are the same type.
To transpose this to iFood we created first a Bipartite Graph of users and dishes.
Food Graph Embeddings in iFood
PinSage algorithm uses a homogeneous graph, that is, all nodes are the same type.
To transpose this to iFood we created first a Bipartite Graph of users and dishes.
Food Graph Embeddings in iFood
PinSage algorithm uses a homogeneous graph, that is, all nodes are the same type.
To transpose this to iFood we created first a Bipartite Graph of users and dishes.
Food Graph Embeddings in iFood
PinSage algorithm uses a homogeneous graph, that is, all nodes are the same type.
To transpose this to iFood we created first a Bipartite Graph of users and dishes.
Food Graph Embeddings in iFood
PinSage algorithm uses a homogeneous graph, that is, all nodes are the same type.
To transpose this to iFood we created first a Bipartite Graph of users and dishes.
Food Graph Embeddings in iFood
We use food2vec embeddings, category, cuisine and many other features as input.
The result is an embedding that contains both content from itself and neighbours.
Embeddings in
Recommendation
Embeddings in Recommendation
These embeddings can e will be used in many projects in iFood:
● Similarity based recommendation
● Improve search results
● As features for classification/regression models
● Features for recommendation algorithms
● Improve Lean to Rank models
Questions?
THANK YOU!
if you want to revolutionize the food delivery market
we're hiring!
https://materiais.ifood.com.br/recsys

Contenu connexe

Tendances

Recommending for the World
Recommending for the WorldRecommending for the World
Recommending for the WorldYves Raimond
 
Learned Embeddings for Search and Discovery at Instacart
Learned Embeddings for  Search and Discovery at InstacartLearned Embeddings for  Search and Discovery at Instacart
Learned Embeddings for Search and Discovery at InstacartSharath Rao
 
Past, Present & Future of Recommender Systems: An Industry Perspective
Past, Present & Future of Recommender Systems: An Industry PerspectivePast, Present & Future of Recommender Systems: An Industry Perspective
Past, Present & Future of Recommender Systems: An Industry PerspectiveJustin Basilico
 
Interactive Recommender Systems with Netflix and Spotify
Interactive Recommender Systems with Netflix and SpotifyInteractive Recommender Systems with Netflix and Spotify
Interactive Recommender Systems with Netflix and SpotifyChris Johnson
 
Pendo Series B Investor Deck External
Pendo Series B Investor Deck ExternalPendo Series B Investor Deck External
Pendo Series B Investor Deck ExternalTodd Olson
 
How does instacart work? Slide Share
How does instacart work? Slide Share How does instacart work? Slide Share
How does instacart work? Slide Share Growcer
 
Recommendation at Netflix Scale
Recommendation at Netflix ScaleRecommendation at Netflix Scale
Recommendation at Netflix ScaleJustin Basilico
 
Como fazer testes com conteúdo e documentar resultados - Ana Paula Freitas
Como fazer testes com conteúdo e documentar resultados - Ana Paula FreitasComo fazer testes com conteúdo e documentar resultados - Ana Paula Freitas
Como fazer testes com conteúdo e documentar resultados - Ana Paula FreitasMedia Education
 
Stripe Pitch Deck designed by Zlides
Stripe Pitch Deck designed by ZlidesStripe Pitch Deck designed by Zlides
Stripe Pitch Deck designed by ZlidesZlides
 
Airbnb Pitch Deck From 2008
Airbnb Pitch Deck From 2008Airbnb Pitch Deck From 2008
Airbnb Pitch Deck From 2008Ryan Gum
 
Talent Bin
Talent BinTalent Bin
Talent BinRyan Gum
 
Properati demo day nxtp silicon valley sep 13
Properati demo day nxtp silicon valley sep 13Properati demo day nxtp silicon valley sep 13
Properati demo day nxtp silicon valley sep 13Properati
 
What Are the Basics of Product Manager Interviews by Google PM
What Are the Basics of Product Manager Interviews by Google PMWhat Are the Basics of Product Manager Interviews by Google PM
What Are the Basics of Product Manager Interviews by Google PMProduct School
 
Netflix business model
Netflix business modelNetflix business model
Netflix business modelJayesh Goswami
 
Fivetran pitch deck
Fivetran pitch deckFivetran pitch deck
Fivetran pitch deckTech in Asia
 
Planning Your Data Science Projects
Planning Your Data Science ProjectsPlanning Your Data Science Projects
Planning Your Data Science ProjectsSpotle.ai
 

Tendances (20)

Recommending for the World
Recommending for the WorldRecommending for the World
Recommending for the World
 
Learned Embeddings for Search and Discovery at Instacart
Learned Embeddings for  Search and Discovery at InstacartLearned Embeddings for  Search and Discovery at Instacart
Learned Embeddings for Search and Discovery at Instacart
 
Trumid pitch deck
Trumid pitch deckTrumid pitch deck
Trumid pitch deck
 
Past, Present & Future of Recommender Systems: An Industry Perspective
Past, Present & Future of Recommender Systems: An Industry PerspectivePast, Present & Future of Recommender Systems: An Industry Perspective
Past, Present & Future of Recommender Systems: An Industry Perspective
 
Interactive Recommender Systems with Netflix and Spotify
Interactive Recommender Systems with Netflix and SpotifyInteractive Recommender Systems with Netflix and Spotify
Interactive Recommender Systems with Netflix and Spotify
 
Pendo Series B Investor Deck External
Pendo Series B Investor Deck ExternalPendo Series B Investor Deck External
Pendo Series B Investor Deck External
 
How does instacart work? Slide Share
How does instacart work? Slide Share How does instacart work? Slide Share
How does instacart work? Slide Share
 
Recommendation at Netflix Scale
Recommendation at Netflix ScaleRecommendation at Netflix Scale
Recommendation at Netflix Scale
 
Como fazer testes com conteúdo e documentar resultados - Ana Paula Freitas
Como fazer testes com conteúdo e documentar resultados - Ana Paula FreitasComo fazer testes com conteúdo e documentar resultados - Ana Paula Freitas
Como fazer testes com conteúdo e documentar resultados - Ana Paula Freitas
 
Stripe Pitch Deck designed by Zlides
Stripe Pitch Deck designed by ZlidesStripe Pitch Deck designed by Zlides
Stripe Pitch Deck designed by Zlides
 
maliPay Pitch Deck.pdf
maliPay Pitch Deck.pdfmaliPay Pitch Deck.pdf
maliPay Pitch Deck.pdf
 
Airbnb Pitch Deck From 2008
Airbnb Pitch Deck From 2008Airbnb Pitch Deck From 2008
Airbnb Pitch Deck From 2008
 
Talent Bin
Talent BinTalent Bin
Talent Bin
 
Properati demo day nxtp silicon valley sep 13
Properati demo day nxtp silicon valley sep 13Properati demo day nxtp silicon valley sep 13
Properati demo day nxtp silicon valley sep 13
 
Workshop MVP Canvas a partir da Lean Inception
Workshop MVP Canvas a partir da Lean InceptionWorkshop MVP Canvas a partir da Lean Inception
Workshop MVP Canvas a partir da Lean Inception
 
What Are the Basics of Product Manager Interviews by Google PM
What Are the Basics of Product Manager Interviews by Google PMWhat Are the Basics of Product Manager Interviews by Google PM
What Are the Basics of Product Manager Interviews by Google PM
 
Pitch deck
Pitch deckPitch deck
Pitch deck
 
Netflix business model
Netflix business modelNetflix business model
Netflix business model
 
Fivetran pitch deck
Fivetran pitch deckFivetran pitch deck
Fivetran pitch deck
 
Planning Your Data Science Projects
Planning Your Data Science ProjectsPlanning Your Data Science Projects
Planning Your Data Science Projects
 

Similaire à RecSys 2020 - iFood recommendation

Using Data Science to Transform OpenTable Into Your Local Dining Expert-(Pabl...
Using Data Science to Transform OpenTable Into Your Local Dining Expert-(Pabl...Using Data Science to Transform OpenTable Into Your Local Dining Expert-(Pabl...
Using Data Science to Transform OpenTable Into Your Local Dining Expert-(Pabl...Spark Summit
 
Reactive declarative UI as code - DroidCon Vietnam 2019
Reactive declarative UI as code - DroidCon Vietnam 2019Reactive declarative UI as code - DroidCon Vietnam 2019
Reactive declarative UI as code - DroidCon Vietnam 2019oradoe
 
Using Data Science to Transform OpenTable Into Your Local Dining Expert
Using Data Science to Transform OpenTable Into Your Local Dining ExpertUsing Data Science to Transform OpenTable Into Your Local Dining Expert
Using Data Science to Transform OpenTable Into Your Local Dining ExpertPablo Delgado
 
Ovenbot the real kitchen of the future
Ovenbot the real kitchen of the futureOvenbot the real kitchen of the future
Ovenbot the real kitchen of the futureshawn212
 
Build an Application from Idea to Release
Build an Application from Idea to ReleaseBuild an Application from Idea to Release
Build an Application from Idea to Releaseideatoipo
 
Xomia_20220602.pptx
Xomia_20220602.pptxXomia_20220602.pptx
Xomia_20220602.pptxLonghow Lam
 
How to Correctly Use Experimentation in PM by Google PM
How to Correctly Use Experimentation in PM by Google PMHow to Correctly Use Experimentation in PM by Google PM
How to Correctly Use Experimentation in PM by Google PMProduct School
 
Alison Berge, UX Portfolio
Alison Berge, UX PortfolioAlison Berge, UX Portfolio
Alison Berge, UX PortfolioAlison Berge
 
[@IndeedEng] Managing Experiments and Behavior Dynamically with Proctor
[@IndeedEng] Managing Experiments and Behavior Dynamically with Proctor[@IndeedEng] Managing Experiments and Behavior Dynamically with Proctor
[@IndeedEng] Managing Experiments and Behavior Dynamically with Proctorindeedeng
 
Anyone Can Build A Recommendation Engine With Solr: Presented by Doug Turnbul...
Anyone Can Build A Recommendation Engine With Solr: Presented by Doug Turnbul...Anyone Can Build A Recommendation Engine With Solr: Presented by Doug Turnbul...
Anyone Can Build A Recommendation Engine With Solr: Presented by Doug Turnbul...Lucidworks
 
Designing for Information Consumption at Varied Distances in the Operating Ro...
Designing for Information Consumption at Varied Distances in the Operating Ro...Designing for Information Consumption at Varied Distances in the Operating Ro...
Designing for Information Consumption at Varied Distances in the Operating Ro...UXPA International
 
Discover your-latent-food-graph-with-this-1-weird-trick -- PyData NYC 2019
Discover your-latent-food-graph-with-this-1-weird-trick  -- PyData NYC 2019Discover your-latent-food-graph-with-this-1-weird-trick  -- PyData NYC 2019
Discover your-latent-food-graph-with-this-1-weird-trick -- PyData NYC 2019AlexEgg1
 
Discover You Latent Food Graph with this 1 Weird Trick
Discover You Latent Food Graph with this 1 Weird TrickDiscover You Latent Food Graph with this 1 Weird Trick
Discover You Latent Food Graph with this 1 Weird TrickGrubhubTech
 
Intensive Workshop:Building Apps -Idea to Release- for Non-Techie Entrepreneurs
Intensive Workshop:Building Apps -Idea to Release- for Non-Techie EntrepreneursIntensive Workshop:Building Apps -Idea to Release- for Non-Techie Entrepreneurs
Intensive Workshop:Building Apps -Idea to Release- for Non-Techie Entrepreneursideatoipo
 
Recommendation Architecture - OpenTable - RecSys 2014 - Large Scale Recommend...
Recommendation Architecture - OpenTable - RecSys 2014 - Large Scale Recommend...Recommendation Architecture - OpenTable - RecSys 2014 - Large Scale Recommend...
Recommendation Architecture - OpenTable - RecSys 2014 - Large Scale Recommend...Jeremy Schiff
 
Restaurants of Seoul - "likes" prediction report
Restaurants of Seoul - "likes" prediction reportRestaurants of Seoul - "likes" prediction report
Restaurants of Seoul - "likes" prediction reportAmelia Choi
 
2019 03 05_biological_databases_part4_v_upload
2019 03 05_biological_databases_part4_v_upload2019 03 05_biological_databases_part4_v_upload
2019 03 05_biological_databases_part4_v_uploadProf. Wim Van Criekinge
 
Ingredients based - Recipe recommendation engine
Ingredients based - Recipe recommendation engineIngredients based - Recipe recommendation engine
Ingredients based - Recipe recommendation engineBharat Gandhi
 

Similaire à RecSys 2020 - iFood recommendation (20)

Using Data Science to Transform OpenTable Into Your Local Dining Expert-(Pabl...
Using Data Science to Transform OpenTable Into Your Local Dining Expert-(Pabl...Using Data Science to Transform OpenTable Into Your Local Dining Expert-(Pabl...
Using Data Science to Transform OpenTable Into Your Local Dining Expert-(Pabl...
 
Reactive declarative UI as code - DroidCon Vietnam 2019
Reactive declarative UI as code - DroidCon Vietnam 2019Reactive declarative UI as code - DroidCon Vietnam 2019
Reactive declarative UI as code - DroidCon Vietnam 2019
 
Using Data Science to Transform OpenTable Into Your Local Dining Expert
Using Data Science to Transform OpenTable Into Your Local Dining ExpertUsing Data Science to Transform OpenTable Into Your Local Dining Expert
Using Data Science to Transform OpenTable Into Your Local Dining Expert
 
Ovenbot the real kitchen of the future
Ovenbot the real kitchen of the futureOvenbot the real kitchen of the future
Ovenbot the real kitchen of the future
 
Scalingprezo
ScalingprezoScalingprezo
Scalingprezo
 
Build an Application from Idea to Release
Build an Application from Idea to ReleaseBuild an Application from Idea to Release
Build an Application from Idea to Release
 
Xomia_20220602.pptx
Xomia_20220602.pptxXomia_20220602.pptx
Xomia_20220602.pptx
 
How to Correctly Use Experimentation in PM by Google PM
How to Correctly Use Experimentation in PM by Google PMHow to Correctly Use Experimentation in PM by Google PM
How to Correctly Use Experimentation in PM by Google PM
 
Alison Berge, UX Portfolio
Alison Berge, UX PortfolioAlison Berge, UX Portfolio
Alison Berge, UX Portfolio
 
[@IndeedEng] Managing Experiments and Behavior Dynamically with Proctor
[@IndeedEng] Managing Experiments and Behavior Dynamically with Proctor[@IndeedEng] Managing Experiments and Behavior Dynamically with Proctor
[@IndeedEng] Managing Experiments and Behavior Dynamically with Proctor
 
Anyone Can Build A Recommendation Engine With Solr: Presented by Doug Turnbul...
Anyone Can Build A Recommendation Engine With Solr: Presented by Doug Turnbul...Anyone Can Build A Recommendation Engine With Solr: Presented by Doug Turnbul...
Anyone Can Build A Recommendation Engine With Solr: Presented by Doug Turnbul...
 
Designing for Information Consumption at Varied Distances in the Operating Ro...
Designing for Information Consumption at Varied Distances in the Operating Ro...Designing for Information Consumption at Varied Distances in the Operating Ro...
Designing for Information Consumption at Varied Distances in the Operating Ro...
 
Discover your-latent-food-graph-with-this-1-weird-trick -- PyData NYC 2019
Discover your-latent-food-graph-with-this-1-weird-trick  -- PyData NYC 2019Discover your-latent-food-graph-with-this-1-weird-trick  -- PyData NYC 2019
Discover your-latent-food-graph-with-this-1-weird-trick -- PyData NYC 2019
 
Discover You Latent Food Graph with this 1 Weird Trick
Discover You Latent Food Graph with this 1 Weird TrickDiscover You Latent Food Graph with this 1 Weird Trick
Discover You Latent Food Graph with this 1 Weird Trick
 
Intensive Workshop:Building Apps -Idea to Release- for Non-Techie Entrepreneurs
Intensive Workshop:Building Apps -Idea to Release- for Non-Techie EntrepreneursIntensive Workshop:Building Apps -Idea to Release- for Non-Techie Entrepreneurs
Intensive Workshop:Building Apps -Idea to Release- for Non-Techie Entrepreneurs
 
Recommendation Architecture - OpenTable - RecSys 2014 - Large Scale Recommend...
Recommendation Architecture - OpenTable - RecSys 2014 - Large Scale Recommend...Recommendation Architecture - OpenTable - RecSys 2014 - Large Scale Recommend...
Recommendation Architecture - OpenTable - RecSys 2014 - Large Scale Recommend...
 
Restaurants of Seoul - "likes" prediction report
Restaurants of Seoul - "likes" prediction reportRestaurants of Seoul - "likes" prediction report
Restaurants of Seoul - "likes" prediction report
 
2019 03 05_biological_databases_part4_v_upload
2019 03 05_biological_databases_part4_v_upload2019 03 05_biological_databases_part4_v_upload
2019 03 05_biological_databases_part4_v_upload
 
Pop up final
Pop up finalPop up final
Pop up final
 
Ingredients based - Recipe recommendation engine
Ingredients based - Recipe recommendation engineIngredients based - Recipe recommendation engine
Ingredients based - Recipe recommendation engine
 

Plus de Renan Moreira de Oliveira

PicPay - GenAI Finance Assistant - ChatGPT for Customer Service
PicPay - GenAI Finance Assistant - ChatGPT for Customer ServicePicPay - GenAI Finance Assistant - ChatGPT for Customer Service
PicPay - GenAI Finance Assistant - ChatGPT for Customer ServiceRenan Moreira de Oliveira
 
AI & Big Data - Personalização da Jornada - PicPay - TDC
AI & Big Data - Personalização da Jornada - PicPay - TDCAI & Big Data - Personalização da Jornada - PicPay - TDC
AI & Big Data - Personalização da Jornada - PicPay - TDCRenan Moreira de Oliveira
 
Dev para Engenheiro de Dados (From Dev to Data Engineer)
Dev para Engenheiro de Dados (From Dev to Data Engineer)Dev para Engenheiro de Dados (From Dev to Data Engineer)
Dev para Engenheiro de Dados (From Dev to Data Engineer)Renan Moreira de Oliveira
 
Big data e globo.com - Uma visão sobre a cultura de dados
Big data e globo.com - Uma visão sobre a cultura de dadosBig data e globo.com - Uma visão sobre a cultura de dados
Big data e globo.com - Uma visão sobre a cultura de dadosRenan Moreira de Oliveira
 
Excelsior - Perfil usando Big Data e Web Semântica
Excelsior - Perfil usando Big Data e Web SemânticaExcelsior - Perfil usando Big Data e Web Semântica
Excelsior - Perfil usando Big Data e Web SemânticaRenan Moreira de Oliveira
 
Transição do desenvolvimento web para apps - o caminho suave
Transição do desenvolvimento web para apps - o caminho suaveTransição do desenvolvimento web para apps - o caminho suave
Transição do desenvolvimento web para apps - o caminho suaveRenan Moreira de Oliveira
 
Ontologias e sua utilização em aplicações semânticas - UFF - CASI - 2014
Ontologias e sua utilização em aplicações semânticas - UFF - CASI - 2014Ontologias e sua utilização em aplicações semânticas - UFF - CASI - 2014
Ontologias e sua utilização em aplicações semânticas - UFF - CASI - 2014Renan Moreira de Oliveira
 
Introdução a web semântica e o case da globo.com
Introdução a web semântica e o case da globo.comIntrodução a web semântica e o case da globo.com
Introdução a web semântica e o case da globo.comRenan Moreira de Oliveira
 

Plus de Renan Moreira de Oliveira (20)

PicPay - GenAI Finance Assistant - ChatGPT for Customer Service
PicPay - GenAI Finance Assistant - ChatGPT for Customer ServicePicPay - GenAI Finance Assistant - ChatGPT for Customer Service
PicPay - GenAI Finance Assistant - ChatGPT for Customer Service
 
AI & Big Data - Personalização da Jornada - PicPay - TDC
AI & Big Data - Personalização da Jornada - PicPay - TDCAI & Big Data - Personalização da Jornada - PicPay - TDC
AI & Big Data - Personalização da Jornada - PicPay - TDC
 
AI na jornada do usuário de ecommerce
AI na jornada do usuário de ecommerceAI na jornada do usuário de ecommerce
AI na jornada do usuário de ecommerce
 
Data science Framework
Data science FrameworkData science Framework
Data science Framework
 
Sistemas de Recomendação
Sistemas de RecomendaçãoSistemas de Recomendação
Sistemas de Recomendação
 
Big data e Machine Learning na globo.com
Big data e Machine Learning na globo.comBig data e Machine Learning na globo.com
Big data e Machine Learning na globo.com
 
What is AB, MVT and MAB?
What is AB, MVT and MAB?What is AB, MVT and MAB?
What is AB, MVT and MAB?
 
Dados importam, seja data-driven!
Dados importam, seja data-driven!Dados importam, seja data-driven!
Dados importam, seja data-driven!
 
Machine Learning na globo-com
Machine Learning na globo-comMachine Learning na globo-com
Machine Learning na globo-com
 
Big Data to Machine Learning
Big Data to Machine LearningBig Data to Machine Learning
Big Data to Machine Learning
 
Dev para Engenheiro de Dados (From Dev to Data Engineer)
Dev para Engenheiro de Dados (From Dev to Data Engineer)Dev para Engenheiro de Dados (From Dev to Data Engineer)
Dev para Engenheiro de Dados (From Dev to Data Engineer)
 
Big data e globo.com - Uma visão sobre a cultura de dados
Big data e globo.com - Uma visão sobre a cultura de dadosBig data e globo.com - Uma visão sobre a cultura de dados
Big data e globo.com - Uma visão sobre a cultura de dados
 
Big data e a globo.com - 2017
Big data e a globo.com - 2017Big data e a globo.com - 2017
Big data e a globo.com - 2017
 
Big Data e seu fiel companheiro Spark
Big Data e seu fiel companheiro SparkBig Data e seu fiel companheiro Spark
Big Data e seu fiel companheiro Spark
 
Big Data na Globo.com - Dev Version - 2016
Big Data na Globo.com - Dev Version - 2016Big Data na Globo.com - Dev Version - 2016
Big Data na Globo.com - Dev Version - 2016
 
Big Data na globo.com
Big Data na globo.comBig Data na globo.com
Big Data na globo.com
 
Excelsior - Perfil usando Big Data e Web Semântica
Excelsior - Perfil usando Big Data e Web SemânticaExcelsior - Perfil usando Big Data e Web Semântica
Excelsior - Perfil usando Big Data e Web Semântica
 
Transição do desenvolvimento web para apps - o caminho suave
Transição do desenvolvimento web para apps - o caminho suaveTransição do desenvolvimento web para apps - o caminho suave
Transição do desenvolvimento web para apps - o caminho suave
 
Ontologias e sua utilização em aplicações semânticas - UFF - CASI - 2014
Ontologias e sua utilização em aplicações semânticas - UFF - CASI - 2014Ontologias e sua utilização em aplicações semânticas - UFF - CASI - 2014
Ontologias e sua utilização em aplicações semânticas - UFF - CASI - 2014
 
Introdução a web semântica e o case da globo.com
Introdução a web semântica e o case da globo.comIntrodução a web semântica e o case da globo.com
Introdução a web semântica e o case da globo.com
 

Dernier

Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 

Dernier (20)

Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 

RecSys 2020 - iFood recommendation

  • 1. How does iFood use recommendation to improve food delivery experience ?! Luiz Mendes & Renan Oliveira
  • 2. Luiz Mendes Lead Data Scientist Food Graph Project From Belo Horizonte @lfmendes https://www.linkedin.com/in/lfomendes/
  • 3. Renan Oliveira Principal Scientist Recommendation & Search From Rio @renan_oliveira
  • 4. iFood Brain AI + DA + DE 150 people 40 squads 5 countries
  • 5. IFOOD IN NUMBERS 40 million orders 200k restaurants 150k drivers 1000 cities *these numbers are only from Brazil
  • 6. AN UNIQUE MOMENT - YOU CAN'T FAST-FORWARD OR SKIP Time and Quality Decision process Special occasion We are not a streaming service. Ordering food has an additional difficulty being assertive because fixing a mistake is not like skipping a media: placing an order involves more money and logistical operation.
  • 7. FOOD IS A VERY PERSONAL CHOICE Taste Profile Speed Brand Price Affinity Offer Affinity etc… Taste Profile Dish Cuisine Offers Rating etc… Match
  • 8. CHALLENGES Locality geographical constraint for model training Speed if you are hungry you will want to eat soon Serviceability production capacity and restaurant quality Feedback implicit (engagement) vs explicit (ratings) Growth cold start problem
  • 9. EVERYWHERE CAN BE PERSONALIZED Push Notification List of Restaurants List of Dishes Search Results UI Components
  • 10. PILLARS OF IFOOD 1:1 User Profile Which cuisine does she like most? Context How would the offer change on weekends? Journey If a user ordered "n" yesterday, what are the best "y" to offer today? Dish Profile Healthy? Low-calorie? How allergy-risk?
  • 11. Candunga Collaborative Filtering for Lists 5 2 2 ? 3 4 5 3 ? ASH GOKU SEIYA
  • 12. ALS WITH MULTIPLE MATRICES .9 .7 .5 .7 .5 .3 U1 U2 U3 Main Matrix Customized Discovery The classic ALS approach (user x item with implicit feedback) worked very well for recurring users. The conversion was not so good for users without a long history of purchases or for new items.
  • 13. ALS WITH MULTIPLE MATRICES .35 .50 .28 .29 .61 .32 .42 .18 C1 C2 C3 "Clusters" Matrix Group of users Implicit and explicit feedback We can use any feature known to the user or the item to make a hybrid approach to content-based and collaborative filtering. Not using the user in the matrix index, the matrix becomes less sparse.
  • 14. CANDUNGA .35 .32 .28 .29 .61 .32 .42 .18 C1 C2 C3 .9 .7 .5 .7 .5 .3 U1 U2 U3 features - No limit on number of matrices - Features from user, item or booth - Added the feature layer - Items can be stores or products - Bayesian optimization to define the weight of each matrix - NDCG for offline evaluation
  • 15. before after LUNCH LIST FOR LUIZ MENDES Japanese Healthy In the old version of the list, the top items were desserts and junk food. Luiz prefers japanese and healthy foods.
  • 17. RESULTS IN THE FEED OF ALL RESTAURANTES +38%conversion uplift +29%coverage uplift Recommendation Control
  • 19. EMBEDDINGS An embedding is a relatively low-dimensional space into which you can translate high-dimensional vectors. The most known embeddings are word embeddings, that are build based on the position of the word in a text and which words come before and after it. to learn more: https://developers.google.com/machine-learning/crash-course/embeddings/video-lecture
  • 20. EMBEDDINGS IN IFOOD food2vec search2vec*foodgraph Text based - fasttext Build with ifood text data Text based - word2vec Created based on search queries and the chosen restaurant Content and graph based Created based on connections and features
  • 22. food2vec Create word embeddings Build with ifood text data Use fasttext to have better out of the vocabulary embeddings Text data is very food specific and contains misspellings
  • 24. pasta related words vegetarian related words pizza related words japanese cuisine related words food2vec
  • 25. pasta related words vegetarian related words pizza related words japanese cuisine related words Edamame is ingredient common in both japanese and vegetarian dishes and it is the middle of the groups food2vec
  • 26. food2vec Create dish embeddings Use the weighted mean of the dish name and description words Weight is based on IDF (inverse document frequency)
  • 28. food2vec Can be used to augment dish lists Frango grelhado. Acompanha cuscuz marroquino com alho poró e ervilhas e cenoura. Filé de Saint Peter grelhado. Acompanha purê de abóbora e legumes ao vapor (brócolis e vagem). Salada Caesar de salmão cru defumado Hamburguer vegano + acompanhamento + mini salada Risoto integral de ervilha com shimeji e tofu. Take an example list Find similar dishes for all example Merge all neighbours and sort by similarity
  • 34. Movie Rotten link: www.rotten... Imdb link: www.imdb… Liked by: 90% Description: An orpha.. The Land Before Time Don Bluth Directed by Lucasfilm Produced by Knowledge Graph
  • 35. Python? Which Python are you looking for? Knowledge Graph
  • 36. Food Delivery contains many entities: Users, Restaurants, Dishes, Ingredients, Delivery, Vendors... Food Graph CONTAINS Subject Object Apple pie><CONTAINS><apple
  • 37. User A Restaurant R Tomatoes Chickpea Lettuce ordered from contains Vegan is to from Driver D Food Graph
  • 38. Data Enrichment Stream of “Enriched” data Taxonomy Normalized Dish Names Serving Size Meal Type Ingredients Weights, Volumes Tags ... FKG “Better” Entity Representations RecSys Marketing Search ... Fill in Missing information by Graph completion * 33.7% of dishes have no description. Food Graph
  • 40. “You are the average of the five people you spend the most time with.” jim rohn
  • 41. Food Graph Embeddings PinSage - pinterest Must ● use node features (excludes node2vec for example) ● be able to create embeddings for unseen nodes ● be scalable (millions of nodes and possibly billions of edges) ● tested on production somewhere https://medium.com/pinterest-engineering/pinsage-a-new-graph-convolutional-neural-network-for-web-scale-recommender-systems-88795a107f48
  • 43. Food Graph Embeddings A Localized convolution based on Random Walks ● Starting from A make random walks and get the most visited nodes as neighbours
  • 44. Food Graph Embeddings A Localized convolution based on Random Walks ● Starting from A make random walks and get the most visited nodes as neighbours ● B, C and D - First Hop A B C F E D
  • 45. Food Graph Embeddings Localized convolution based on Random Walks ● Starting from A make random walks and get the most visited nodes as neighbours ● B, C and D - First Hop ● For each neighbour repeat this ○ B -> A and C ○ C -> A, B, E, and F ○ D -> A A B C F E D
  • 46. Food Graph Embeddings Localized convolution based on Random Walks ● Starting from A make random walks and get the most visited nodes as neighbours ● B, C and D - First Hop ● For each neighbour repeat this ○ B -> A and C ○ C -> A, B, E, and F ○ D -> A How many hops? Usually 2 A B C F E D
  • 47. Food Graph Embeddings Localized convolution based on Random Walks ● Starting from A make random walks and get the most visited nodes as neighbours ● B, C and D - First Hop ● For each neighbour repeat this ○ B -> A and C ○ C -> A, B, E, and F ○ D -> A How many hops? Usually 2, if you go to far you might find Kevin Bacon*, or use almost the whole graph for one node A B C F E D * https://en.wikipedia.org/wiki/Six_Degrees_of_Kevin_Bacon
  • 48. Food Graph Embeddings A Computational Graph for new A
  • 50. Food Graph Embeddings AB C F E D A C A A B Computational Graph for new AC D B
  • 51. Food Graph Embeddings AB C F E D A C A A BConvolve 1. Get the first representation of A and C 2. Pass through a convolution layer to create the second B representation a. send neighbors through a dense neural network and then apply a aggregator/pooling function (e.g., a element-wise mean or weighted sum, denoted as γ ) Ɣ C A B B Convolve
  • 52. Food Graph Embeddings AB C F E D A C A A BConvolve 1. The weights are shared between “same step” convolutions Ɣ C A B B Convolve Convolve Convolve Convolve w1 w1 w2
  • 53. Food Graph Embeddings in iFood PinSage algorithm uses a homogeneous graph, that is, all nodes are the same type. To transpose this to iFood we created first a Bipartite Graph of users and dishes.
  • 54. Food Graph Embeddings in iFood PinSage algorithm uses a homogeneous graph, that is, all nodes are the same type. To transpose this to iFood we created first a Bipartite Graph of users and dishes.
  • 55. Food Graph Embeddings in iFood PinSage algorithm uses a homogeneous graph, that is, all nodes are the same type. To transpose this to iFood we created first a Bipartite Graph of users and dishes.
  • 56. Food Graph Embeddings in iFood PinSage algorithm uses a homogeneous graph, that is, all nodes are the same type. To transpose this to iFood we created first a Bipartite Graph of users and dishes.
  • 57. Food Graph Embeddings in iFood PinSage algorithm uses a homogeneous graph, that is, all nodes are the same type. To transpose this to iFood we created first a Bipartite Graph of users and dishes.
  • 58. Food Graph Embeddings in iFood We use food2vec embeddings, category, cuisine and many other features as input. The result is an embedding that contains both content from itself and neighbours.
  • 60. Embeddings in Recommendation These embeddings can e will be used in many projects in iFood: ● Similarity based recommendation ● Improve search results ● As features for classification/regression models ● Features for recommendation algorithms ● Improve Lean to Rank models
  • 62. THANK YOU! if you want to revolutionize the food delivery market we're hiring! https://materiais.ifood.com.br/recsys