Neo4j as a viable tool in a relevant search ecosystem demonstrating that it offers not only a suitable model for representing several complex data, like text, user models, business goal, and context information but also providing efficient ways for navigating this data in real time. Moreover at an early stage in the "search improvement process" Neo4j can help relevance engineers to identify salient features describing the content, the user or the search query, later will be helpful to find a way to instruct the search engine about those features through extraction and enrichment.
Moreover, the talk demonstrates how the graph model can provide the right support for all the components of the relevant search and concludes with the presentation of a complete end-to-end infrastructure for providing relevant search in a real use case. It will show how it is integrated with other tools like Elasticsearch, Apache Kafka, Stanford NLP, OpenNLP, Apache Spark.
2. ‣ The rise of Knowledge Graphs
‣ Relevant Search
‣ Knowledge Graphs for e-Commerce
‣ Infrastructure
‣ Conclusions
OUTLINE
GraphAware®
3. “Knowledge graphs provide contextual windows
into master data domains and the links between
domains”
KNOWLEDGE GRAPH
CONNECTING THE DOTS
GraphAware®
The Forrester Wave, Master Data Management
4. THE RISE OF
KNOWLEDGE GRAPHS
GraphAware®
E-Commerce
‣ Many data sources
‣ Marketing strategies
‣ Business goals
‣ Category hierarchies
‣ Searches
Enterprise Networks
‣ Uncover new opportunities, hidden leads
Finance
‣ Textual corpora such as financial
documents contain a wealth of
knowledge
‣ Structured knowledge of entities and
relationships
5. Medicine & Health
‣ Dynamic ontologies where data is
categorized and organised around
people, places, things and events
‣ Patterns in disease progression, causal
relations involving disease and
symptoms, new relationships previously
unrecognised
Criminal Investigation & Intelligence
‣ Obfuscated information
‣ Traceability to sources of information
GraphAware®
THE RISE OF
KNOWLEDGE GRAPHS
8. RELEVANT SEARCH
GraphAware®
“Relevance is the practice of improving search
results for users by satisfying their information
needs in the context of a particular user
experience, while balancing how ranking
impacts business’s needs.”
10. KNOWLEDGE GRAPHS
THE MODEL
Search architecture must be able to handle highly heterogenous data
Knowledge Graphs represent the information structure for relevant search
Graphs are the right representation for:
‣ Information Extraction
‣ Recommendation Engines
‣ Context Representation
‣ Rule Engine
11. Critical aspects and peculiarities:
‣ Defined and controlled set of searchable Items
‣ Multiple category hierarchies
‣ Marketing strategy
‣ User feedback and interactions
‣ Supplier information
‣ Business constraints
THE USE CASE
E-COMMERCE
GraphAware®
→ Text search and catalog navigation as Sales People
14. A graph centric approach
THE DATA FLOW
GraphAware®
‣ Async data ingestion
‣ Data Pipeline
‣ Single Neo4j Writer
‣ Microservice approach for
isolation and scalability
‣ Event notification
‣ Multiple views exported into
Elasticsearch
15. THE NEO4J ROLES
GraphAware®
‣ Single source of truth
‣ Cleansing
‣ Fast access to connected data
‣ Query
‣ Knowledge Graph store
‣ Merging External Data
‣ Existing Data Augmentation
16. Natural Language Processing
‣ Unsupervised Topic Identification
‣ Word2Vec
‣ Clustering (Label Propagation)
EXTERNALISE INTENSE
PROCESSES
GraphAware®
Recommendation model building
‣ Content-Based
‣ Collaborative Filtering (internal and
external)
17. Fast, Reliable and Easy-to-tune textual searches
‣ Multiple views for multiple scopes:
‣ Catalog Navigation and Search
‣ Faceting
‣ Product details page
‣ Product variants aggregation
‣ Autocomplete
‣ Suggestion
THE ELASTICSEARCH
ROLES
GraphAware®
→ It is not used as a database
18. Any components of relevance-scoring calculation
corresponding to a meaningful and measurable
information
Two techniques to control relevancy:
‣ Signal Modeling
‣ Ranking Function
Note: balance precision and recall
Multiple sources
CRAFTING
SIGNALS
GraphAware®
19. → Users as a new source of information
GraphAware®
Profile-based personalisation:
‣ Explicit: Users provide profile
information
‣ Implicit: Profile created from user
interactions
Behavioural-Based personalisation
‣ Focus on User-Item Interaction
‣ Make explicit the relationships
among users and items
PERSONALISING
SEARCH
Tying personalisation back to search
‣ Query-time personalisation
‣ Index-time personalisation
22. Knowledge Graphs can
‣ store easy-to-query model
‣ gather data from multiple sources
‣ be easily extended
Search Engines can
‣ provide fast, reliable and easy-to-
tune textual search
‣ provide features like faceting,
autocomplete
CONCLUSION
GraphAware®
→ By combining them, it is possible to offer an unlimited
set of services to the end users