23
GraphAware ® RELEVANT SEARCH LEVERAGING KNOWLEDGE GRAPHS WITH NEO4J Alessandro Negro Chief Scientist @ GraphAware graphaware.com @graph_aware, @AlessandroNegro

Relevant Search Leveraging Knowledge Graphs with Neo4j

Embed Size (px)

Citation preview

Page 1: Relevant Search Leveraging Knowledge Graphs with Neo4j

GraphAware®

RELEVANT SEARCH LEVERAGING KNOWLEDGE GRAPHS WITH NEO4J

Alessandro Negro Chief Scientist @ GraphAware

graphaware.com@graph_aware, @AlessandroNegro

Page 2: Relevant Search Leveraging Knowledge Graphs with Neo4j

‣ The rise of Knowledge Graphs

‣ Relevant Search

‣ Knowledge Graphs for e-Commerce

‣ Infrastructure

‣ Conclusions

OUTLINE

GraphAware®

Page 3: Relevant Search Leveraging Knowledge Graphs with Neo4j

“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

Page 4: Relevant Search Leveraging Knowledge Graphs with Neo4j

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

Page 5: Relevant Search Leveraging Knowledge Graphs with Neo4j

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

Page 6: Relevant Search Leveraging Knowledge Graphs with Neo4j

DATA SPARSITYPROBLEM

GraphAware®

Collaborative Filtering

‣ Cold Start

Content Based Recommendation

‣ Missing Data

‣ Wrong Data

Text Search

‣ User agnostic

‣ Relevant Search

Page 7: Relevant Search Leveraging Knowledge Graphs with Neo4j

KNOWLEDGE GRAPH: DATA CONVERGENCE

GraphAware®

Page 8: Relevant Search Leveraging Knowledge Graphs with Neo4j

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.”

Page 9: Relevant Search Leveraging Knowledge Graphs with Neo4j

RELEVANT SEARCH DIMENSIONS

GraphAware®

Page 10: Relevant Search Leveraging Knowledge Graphs with Neo4j

KNOWLEDGE GRAPHSTHE 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

Page 11: Relevant Search Leveraging Knowledge Graphs with Neo4j

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 CASEE-COMMERCE

GraphAware®

→ Text search and catalog navigation as Sales People

Page 12: Relevant Search Leveraging Knowledge Graphs with Neo4j

KNOWLEDGE GRAPHFOR E-COMMERCE

GraphAware®

Page 13: Relevant Search Leveraging Knowledge Graphs with Neo4j

INFRASTRUCTUREA 10K-FOOT VIEW

GraphAware®

Page 14: Relevant Search Leveraging Knowledge Graphs with Neo4j

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

Page 15: Relevant Search Leveraging Knowledge Graphs with Neo4j

THE NEO4J ROLES

GraphAware®

‣ Single source of truth

‣ Cleansing

‣ Fast access to connected data

‣ Query

‣ Knowledge Graph store

‣ Merging External Data

‣ Existing Data Augmentation

Page 16: Relevant Search Leveraging Knowledge Graphs with Neo4j

Natural Language Processing

‣ Unsupervised Topic Identification

‣ Word2Vec

‣ Clustering (Label Propagation)

EXTERNALISE INTENSE PROCESSES

GraphAware®

Recommendation model building

‣ Content-Based

‣ Collaborative Filtering (internal and external)

Page 17: Relevant Search Leveraging Knowledge Graphs with Neo4j

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

Page 18: Relevant Search Leveraging Knowledge Graphs with Neo4j

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

CRAFTINGSIGNALS

GraphAware®

Page 19: Relevant Search Leveraging Knowledge Graphs with Neo4j

→ 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

PERSONALISINGSEARCH

Tying personalisation back to search

‣ Query-time personalisation

‣ Index-time personalisation

Page 20: Relevant Search Leveraging Knowledge Graphs with Neo4j

→ Search for things, not for strings

CONCEPTSEARCH

GraphAware®

Basic Approaches:

‣ Concept field (Manual Tagging)

‣ Synonyms

Content Augmentation (ML based)

‣ Co-occurrence

‣ Latent Semantic Analysis

‣ Latent Dirichlet Allocation

‣ Word2Vec

Page 21: Relevant Search Leveraging Knowledge Graphs with Neo4j

COMBINED SEARCH APPROACHES

GraphAware®

Page 22: Relevant Search Leveraging Knowledge Graphs with Neo4j

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

Page 23: Relevant Search Leveraging Knowledge Graphs with Neo4j

www.graphaware.com@graph_aware

GraphAware

GraphAware®

world’s #1 Neo4j consultancy