What is the key to the holistic success of the fastest growing and most successful companies of our time globally? Well, often the key is the rapid increase in collected and analysed data. Graph databases provide a way to organise semantically by classes, not tables, are web-aware, and are superior for handling deep, complex relationships than traditional relational or NoSQL data stores. It is these deep, complex relationships that can provide the rich context for hyper-personalising your product offering, inspiring consumers to purchase. In this talk, we describe how we are using artificial intelligence at Farfetch to not only help build a knowledge graph but also to evolve our insights with state-of-the-art graph-based AI.
Presented at Connected Data London Meetup (October 2019).
6. Farfetch at a glance
6
> 3,000*
Employees across 13 countries
$1.4 Billion*
Gross Merchandise Value
> 3,000*
Brands available for consumers
to shop
> 1,000**
Luxury sellers on the
Marketplace
$601**
AOV on Marketplace
> 2.9 Million*
Orders on Marketplace
1.7 million**
Active Marketplace consumers
$307 Billion
Size of personal luxury good
industry (Bain estimates)
*Correct for full year 2018 **As at Q1 2019
15**
Marketplace language sites
9. A New Perspective: Emphasising Relationships
● Businesses and their products/services are all about Entities and Relationships
● Examples of entities and relationships in industry:
Farfetch Consumer searches Product with Terms
Amazon Seller sells Product to Consumer
Uber Driver provides Trip to Rider
Facebook Person shares Status with Friend
● How can we represent, analyse, and visualise this kind of data?
10. 10
What is a knowledge graph?
A knowledge graph can describe
● a collection of nodes (entities) representing business and fashion entities
has_term
has_synonym
has_child
Properties:
Inherit = true
● and with labeled relationships between the nodes
Product
D&G
tote bag
Attribute
Leopard
Print Attribute
Leopard
Spots
Attribute
Animal
Print
Properties:
Language = “EN”
● each containing information (properties)
Properties:
ProductID = 123
12. 12
Why use a knowledge graph?
● Have naturally highly connected-data
● Derive new insights with Graph Analysis & Graph-based AI
● Enable stakeholders to easily visualise relationships and make informed decisions
● Flexible schema to facilitate evolution to expand business entities
● Optimized for storing and querying graphs
○ Significantly faster than SQL databases for querying relationships
○ Relationships are a fundamental structure, so following relationships is a
single lookup, making this operation blazingly fast
13. Where Business Meets Fashion
A domain specific knowledge graph for fashion.
Business vs Fashion Entities
Business Fashion
Product
Content
Brand
Category
Customer
Season
Gender
...
Occasion
Celebration
Theme
Style
Trend
DNA
Pattern
Colour
Material
Synonym
...
Order
Payment
Promotion
Review
...
14. 📖 Constructing a unified semantic fashion vocabulary
🏷 Connecting these fashion entities with business entities in a KG via AI
🧬 Inferring DNA from the relationships in the Knowledge Graph (KG)
We’re mapping fashion DNA to decode personal style
15. We’re mapping fashion DNA to decode personal style
Loosely Structured
Data
Powerful fashion
DNA, new
knowledge, and
insights
Data Science Data Science
Taxonomy
Knowledge
Graph
Recs
Search
16. 16
Communicating a graph
Product Managers
“How can we improve the
customer experience?”
“How can we increase
GMV/revenue?”
Data Scientists
“Wow, looks like a NN,
hold my Pandas 🐼🐼🐼,
I’m onboard!!”
Backend Engineers
“Why do we need a
graph?”
“Which graph database
meets the requirements?”
Data Engineers
“Is your Airflow
dizzy🥴😵? It’s traversing
through cyclic
connections💫?!”
20. 20
Building a fashion knowledge graph
Search Recommendations ...
Fashion Knowledge Graph
Associates fashion entities with business entities
AI Knowledge cleaning Entity resolution Schema mapping
Applications
Taxonomy &
Graph
Construction
Knowledge
Collection
Expert Knowledge Data-Driven Insights
21. 21
AI: A Multi-Modal Multi-Task Approach
Images Text
Computer
Vision NLP
Deep
Classifier
Example output
Product Type: Dress
Colour: White
Occasion: Wedding
Theme: Classic
23. How many ways can you say “puffer jacket”?
Padded
coat
Down
coat
Duvet
coat
Quilted
coat
Puffer
jacket
Down-filled
jacket
Down
jacket
Quilted
jacket
Duvet
jacket
Down-filled
coat
Padded
jacket
Puffer
coat
27. 27
Features from Graphs
Extract features from the graph such as:
● nodes
○ degree
● pairs
○ number of common neighbours
● groups
○ custer assignments
● Infer DNA
● Link Prediction
● Anomaly Prediction
● Clustering
● ...
Adjacency Matrix
29. 29
What is Deep Walk?
Learn a latent representation of adjacency matrices
using deep learning based language processing.
● Infer DNA
● Link Prediction
● Anomaly Prediction
● Clustering
● ...
Adjacency Matrix Latent Representation
35. 35
Takeaways
● Graphs can offer a new, democratised
perspective on enterprise data
● When graph based analytics and AI
are performed on connected data, we
can derive powerful new knowledge
and insights
● Which can drive hyper-personalisation,
improving the customer experience