SlideShare a Scribd company logo
1 of 71
Download to read offline
Knowledge Graphs and
Chatbots with Neo4j
GraphAware, world’s #1 Neo4j consultancy
graphaware.com
@graph_aware
● Christophe Willemsen
● From Belgium but living in Southern Italy
● Principal Consultant at GraphAware
● Expert in Graphs and Search
● Currently researching in Natural Language Understanding
and its implementation in chatbots
About me
@ikwattro
● How to represent Knowledge in a Graph
○ Text Processing
■ Processing Text
■ Information Extraction
■ Keywords Extraction
○ Enrichment
■ Concept Bases
■ Visual Content Metadata
■ External Knowledge Bases
● Knowledge Graphs to power advanced applications
○ Our demo : Brain Bro
○ Knowledge Graphs in the Real Life
○ Phonetic issues
○ Soft Cosine Measure (SCM)
○ Visual and Temporal Memory for Recall
Outline
● Original domain model,
for eg authors of news,
news, views, original
topics, etc.
● Standard text
processing features
● Information Extraction
● Enrichment
● Facts
● Knowledge Entities
and Semantic
relationships
● Built from aggregation
and validation of layer
1 and 2
● Offers Multi-View
(Perspectives)
DOMAIN MODEL
LAYER 1
TEXT UNDERSTANDING
LAYER 2
KNOWLEDGE GRAPH
LAYER 3
USER CONTEXT
LAYER 4
● Keeps track of the user
conversation
● Relates conversation
steps to entry points in
the Knowledge Graph
● Use distance to
determine out of
context situations
How to represent
Knowledge in a Graph?
● Original domain model,
for eg authors of news,
news, views, original
topics, etc.
● Standard text
processing features
● Information Extraction
● Enrichment
● Facts
● Knowledge Entities
and Semantic
relationships
● Built from aggregation
and validation of layer
1 and 2
● Offers Multi-View
(Perspectives)
DOMAIN MODEL
LAYER 1
TEXT UNDERSTANDING
LAYER 2
KNOWLEDGE GRAPH
LAYER 3
USER CONTEXT
LAYER 4
● Keeps track of the user
conversation
● Relates conversation
steps to entry points in
the Knowledge Graph
● Use distance to
determine out of
context situations
● Natural Language Processing
○ Sentence segmentation
○ Tokenization
○ Stopwords Removal
○ Part of Speech Tagging
○
Text Understanding
● Natural Language Processing
○ Sentence segmentation
○ Tokenization
○ Stopwords Removal
○ Part of Speech Tagging
○ Named Entity Recognition
Text Understanding
CALL ga.nlp.annotate({text: n.text, id: id(n)})
Text Understanding
NER
● Natural Language Processing
○ Sentence segmentation
○ Tokenization
○ Stopwords Removal
○ Part of Speech Tagging
○ Named Entity Recognition
○ Syntactic Dependencies Parsing
Text Understanding
● Facts
○ Using Semantic Parsers to extract facts from sentences in a
Subject-Root-Object form
Text Understanding
● Keywords Extraction
○ Unsupervised algorithm
○ Using TextRank wich under the hood uses PageRank
○ Performs better than most supervised algorithms
○ http://bit.ly/graphaware-textrank
Text Understanding
Enrichment
CALL ga.nlp.enrich.concept
({enricher:’conceptnet5’, node: n})
Enrichment
Concept Bases
Enrichment
Visual Metadata
Enrichment
External Knowledge Bases
Find articles mentioning companies being founded by
Elon Musk and in the car industry
● Original domain model,
for eg authors of news,
news, views, original
topics, etc.
● Standard text
processing features
● Information Extraction
● Enrichment
● Facts
● Knowledge Entities
and Semantic
relationships
● Built from aggregation
and validation of layer
1 and 2
● Offers Multi-View
(Perspectives)
DOMAIN MODEL
LAYER 1
TEXT UNDERSTANDING
LAYER 2
KNOWLEDGE GRAPH
LAYER 3
USER CONTEXT
LAYER 4
● Keeps track of the user
conversation
● Relates conversation
steps to entry points in
the Knowledge Graph
● Use distance to
determine out of
context situations
● How to build it ?
○ Aggregate all the information from the previous steps
○ Use external tools to validate some assumptions, e.g. :
Director of marketing -> corporate position
○ Create a new graph from those informations
The Knowledge Graph
Knowledge Graphs to power
Advanced Applications
BrainBro
● NER issues
Knowledge Graphs IRL
● NER issues
○ Default recognizers are trained on generic texts and will often
perform poorly when lot of indentation is used
○ Dropbox IPO, Forty Seven, Consumer Business Group, Melinda
Gates Foundation (without Bill), …
○ You can “easily” build your own models with external
knowledge bases like wikidata
Knowledge Graphs IRL
● Phonetic Matching
○ SOUNDEX, DOUBLE METAPHONE, FUZZY
○ ELASTIC PHONETIC ANALYSIS PLUGIN
Knowledge Graphs IRL
● Visual Metadata Validation
Knowledge Graphs IRL
● Visual Metadata Validation
○ Build a top-k vocabulary of the article, or the surrounding article parts of the
image
○ Use word2vec to compute relevancy of class labels returned by image
recognition services
○ Use SCM ( Soft Cosine Measure ) [1] [2]
Knowledge Graphs IRL
1. Grigori Sidorov et al. Soft Similarity and Soft Cosine Measure: Similarity of Features in
Vector Space Model, 2014. (link to PDF)
2. Delphine Charlet and Geraldine Damnati, SimBow at SemEval-2017 Task 3: Soft-Cosine
Semantic Similarity between Questions for Community Question Answering, 2017. (link to
PDF)
Visual and Temporal
Memory for Recall
● Original domain model,
for eg authors of news,
news, views, original
topics, etc.
● Standard text
processing features
● Information Extraction
● Enrichment
● Facts
● Knowledge Entities
and Semantic
relationships
● Built from aggregation
and validation of layer
1 and 2
● Offers Multi-View
(Perspectives)
DOMAIN MODEL
LAYER 1
TEXT UNDERSTANDING
LAYER 2
KNOWLEDGE GRAPH
LAYER 3
USER CONTEXT
LAYER 4
● Keeps track of the user
conversation
● Relates conversation
steps to entry points in
the Knowledge Graph
● Use distance to
determine out of
context situations
● Intent detection
○ What did Ahmed Fathi say about blockchains ?
○ Where is ABC Arabia Bank located ?
○ What does a person with a leader position think about
investment banks ?
Querying Knowledge
● Intent detection
○ What did Ahmed Fathi say about blockchains ?
○ Where is ABC Arabia Bank located ?
○ What does a person with a leader position think about
investment banks ?
Understand what we want out of the knowledge graph
Querying Knowledge
● Intent detection
○ What did Ahmed Fathi say about blockchains ?
○ Where is ABC Arabia Bank located ?
○ What does a person with a leader position thinks about
investment banks ?
Understand what we want out of the knowledge graph
Querying Knowledge
Looking for facts?
● Intent detection
○ What did say Ahmed Fathi about blockchains ?
○ Where is ABC Arabia Bank located ?
○ What does a person with a leader position thinks about
investment banks ?
Understand what we want out of the knowledge graph
Querying Knowledge
Looking for a Location entity
● Intent detection
○ What did say Ahmed Fathi about blockchains ?
○ Where is ABC Arabia Bank located ?
○ What does a person with a leader position think about
investment banks ?
Understand what we want out of the knowledge graph
Querying Knowledge
If you “say” something, do you
“think” it ?
● Entity Extraction
○ What did Ahmed Fathi say about blockchains ?
○ Where is ABC Arabia Bank located ?
○ What does a person with a leader position think about
investment banks ?
Querying Knowledge
● Entity Extraction
○ What did Ahmed Fathi say about blockchains ?
○ Where is ABC Arabia Bank located ?
○ What does a person with a leader position think about
investment banks ?
Determine Entry Points in the Knowledge Graph as well as
semantic constraints
Querying Knowledge
● Entity Extraction
○ What did Ahmed Fathi say about blockchains ?
○ Where is ABC Arabia Bank located ?
○ What does a person with a leader position thinks about
investment banks ?
Determine Entry Points in the Knowledge Graph as well as
semantic constraints
Querying Knowledge
Person Entity : Ahmed Fathi
Semantic: SAY
Topic: blockchain
● Entity Extraction
○ What did say Ahmed Fathi about blockchains ?
○ Where is ABC Arabia Bank located ?
○ What does a person with a leader position thinks about
investment banks ?
Determine Entry Points in the Knowledge Graph as well as
semantic constraints
Querying Knowledge
Company Entity : ABC Arabia Bank
● Entity Extraction
○ What did say Ahmed Fathi about blockchains ?
○ Where is ABC Arabia Bank located ?
○ What does a person with a leader position thinks about
investment banks ?
Determine Entry Points in the Knowledge Graph as well as
semantic constraints
Querying Knowledge
Company Position : Leader position
Person: related to position
Semantic: think
Topic: investment bank
● Query representation
○ Queries should be treated as original corpus and pass the same
set of processing
Querying Knowledge
Can this be used to match against a Person label in the
Knowledge Graph ?
How to match “do think about” with a “SAY” relationship in the Knowledge
Graph?
How to match “do think about” to a “SAY” relationship in the Knowledge
Graph?
Probabilistic Traversals
● Probabilistic Traversals
○ Use a probability based classifier like Naive Bayes for
determining the type of the relationship to traverse
○ Avoid to return non-relevant results in a “Always return
something architecture”
● Dynamic Query Stack
○ Depending on the intent, the graph should be queried
differently, there is no rocket science out of the box answer to
how, just knowing your domain and lot lot lot of failures and
tests
○ The Knowledge Graph is queried but not only that, you could
also query the NLP graph for tf-idf enforcement and score the
results with different weights at the end
● Queries made
○ EntityLinking()
○ EntitiesSimilarity()
○ SemanticSimilarity()
○ TraversalProbability()
○ KeywordSensitivePageRank()
○ TopicSensitivePageRank()
○ TF-IDF()
● Lot of techniques
○ Minimum subgraph matching
○ Sequence pattern recognition for SVO generation when queries
are not parsed fully
○ Voice adaptations aka soundex
○ Deep learning
○ ...
User Query and Context
● Conversation
○ After all, chatbots are considered as Conversational Interfaces, it
wouldn’t have this name if the end goal of such systems is
having a conversation with a machine
○ Keeping track of where the user is in the conversation can help
to add more constraints to the queries
User Context
● When to go out ?
○ A user can quickly go out of context during a conversation, for
example :
* How is the weather in San Francisco ?
-- it is 25 degrees
* what size?
-- ?? Are you really gonna try to find a response?
○ We use distance calculation in the graph based to trigger
Signals if the user is out of context
User Context
● Some more thoughts
○ Embrace failures
○ Monitor
○ Humans are still a thing
○ ..
world’s #1 Neo4j consultancy
www.graphaware.com @graph_aware
Thank you !
Christophe Willemsen
@ikwattro

More Related Content

What's hot

Azure環境の監視とログ
Azure環境の監視とログAzure環境の監視とログ
Azure環境の監視とログyoshiki komori
 
述語ロックの歴史 r2
述語ロックの歴史 r2述語ロックの歴史 r2
述語ロックの歴史 r2Sho Nakazono
 
データ仮想化を活用したデータ分析のフローと分析モデル作成の自動化のご紹介
データ仮想化を活用したデータ分析のフローと分析モデル作成の自動化のご紹介データ仮想化を活用したデータ分析のフローと分析モデル作成の自動化のご紹介
データ仮想化を活用したデータ分析のフローと分析モデル作成の自動化のご紹介Denodo
 
LOD技術の概要と LinkData.orgを用いたLOD公開
LOD技術の概要とLinkData.orgを用いたLOD公開LOD技術の概要とLinkData.orgを用いたLOD公開
LOD技術の概要と LinkData.orgを用いたLOD公開Kouji Kozaki
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.4.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.4.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.4.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.4.0対応)fisuda
 
Banco de Dados em Grafos com Neo4J
Banco de Dados em Grafos com Neo4J  Banco de Dados em Grafos com Neo4J
Banco de Dados em Grafos com Neo4J Daniel San Martin
 
IDA,VC,DID関連仕様 最新情報 - OpenID BizDay #15
IDA,VC,DID関連仕様 最新情報 - OpenID BizDay #15IDA,VC,DID関連仕様 最新情報 - OpenID BizDay #15
IDA,VC,DID関連仕様 最新情報 - OpenID BizDay #15OpenID Foundation Japan
 
Creating a Context-Aware solution, Complex Event Processing with FIWARE Perseo
Creating a Context-Aware solution, Complex Event Processing with FIWARE PerseoCreating a Context-Aware solution, Complex Event Processing with FIWARE Perseo
Creating a Context-Aware solution, Complex Event Processing with FIWARE PerseoFernando Lopez Aguilar
 
9장 시소러스, 통제어휘집, 메타데이터
9장 시소러스, 통제어휘집, 메타데이터9장 시소러스, 통제어휘집, 메타데이터
9장 시소러스, 통제어휘집, 메타데이터sunhee kim
 
Active directoryと認証・認可
Active directoryと認証・認可Active directoryと認証・認可
Active directoryと認証・認可Hiroki Kamata
 
S3をDB利用 ショッピングセンター向けポイントシステム概要
S3をDB利用 ショッピングセンター向けポイントシステム概要S3をDB利用 ショッピングセンター向けポイントシステム概要
S3をDB利用 ショッピングセンター向けポイントシステム概要一成 田部井
 
監査要件を有するシステムに対する PostgreSQL 導入の課題と可能性
監査要件を有するシステムに対する PostgreSQL 導入の課題と可能性監査要件を有するシステムに対する PostgreSQL 導入の課題と可能性
監査要件を有するシステムに対する PostgreSQL 導入の課題と可能性Ohyama Masanori
 
Microsoft Project Online 活用ガイド
Microsoft Project Online 活用ガイドMicrosoft Project Online 活用ガイド
Microsoft Project Online 活用ガイドkumo2010
 
しばちょう先生による特別講義! RMANバックアップの運用と高速化チューニング
しばちょう先生による特別講義! RMANバックアップの運用と高速化チューニングしばちょう先生による特別講義! RMANバックアップの運用と高速化チューニング
しばちょう先生による特別講義! RMANバックアップの運用と高速化チューニングオラクルエンジニア通信
 
バックアップ時の問題から学んだDBエンジニアに必要なスキルとは
バックアップ時の問題から学んだDBエンジニアに必要なスキルとはバックアップ時の問題から学んだDBエンジニアに必要なスキルとは
バックアップ時の問題から学んだDBエンジニアに必要なスキルとはTakeshiYamamoto2049
 
Oracle Database Migration to Oracle Cloud Infrastructure
Oracle Database Migration to Oracle Cloud InfrastructureOracle Database Migration to Oracle Cloud Infrastructure
Oracle Database Migration to Oracle Cloud InfrastructureSinanPetrusToma
 
Oracleのソース・ターゲットエンドポイントとしての利用
Oracleのソース・ターゲットエンドポイントとしての利用Oracleのソース・ターゲットエンドポイントとしての利用
Oracleのソース・ターゲットエンドポイントとしての利用QlikPresalesJapan
 
Apache Avro vs Protocol Buffers
Apache Avro vs Protocol BuffersApache Avro vs Protocol Buffers
Apache Avro vs Protocol BuffersSeiya Mizuno
 
App center analyticsを使い倒そう
App center analyticsを使い倒そうApp center analyticsを使い倒そう
App center analyticsを使い倒そうAtsushi Nakamura
 

What's hot (20)

Azure環境の監視とログ
Azure環境の監視とログAzure環境の監視とログ
Azure環境の監視とログ
 
述語ロックの歴史 r2
述語ロックの歴史 r2述語ロックの歴史 r2
述語ロックの歴史 r2
 
データ仮想化を活用したデータ分析のフローと分析モデル作成の自動化のご紹介
データ仮想化を活用したデータ分析のフローと分析モデル作成の自動化のご紹介データ仮想化を活用したデータ分析のフローと分析モデル作成の自動化のご紹介
データ仮想化を活用したデータ分析のフローと分析モデル作成の自動化のご紹介
 
LOD技術の概要と LinkData.orgを用いたLOD公開
LOD技術の概要とLinkData.orgを用いたLOD公開LOD技術の概要とLinkData.orgを用いたLOD公開
LOD技術の概要と LinkData.orgを用いたLOD公開
 
Azure Key Vault
Azure Key VaultAzure Key Vault
Azure Key Vault
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.4.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.4.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.4.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.4.0対応)
 
Banco de Dados em Grafos com Neo4J
Banco de Dados em Grafos com Neo4J  Banco de Dados em Grafos com Neo4J
Banco de Dados em Grafos com Neo4J
 
IDA,VC,DID関連仕様 最新情報 - OpenID BizDay #15
IDA,VC,DID関連仕様 最新情報 - OpenID BizDay #15IDA,VC,DID関連仕様 最新情報 - OpenID BizDay #15
IDA,VC,DID関連仕様 最新情報 - OpenID BizDay #15
 
Creating a Context-Aware solution, Complex Event Processing with FIWARE Perseo
Creating a Context-Aware solution, Complex Event Processing with FIWARE PerseoCreating a Context-Aware solution, Complex Event Processing with FIWARE Perseo
Creating a Context-Aware solution, Complex Event Processing with FIWARE Perseo
 
9장 시소러스, 통제어휘집, 메타데이터
9장 시소러스, 통제어휘집, 메타데이터9장 시소러스, 통제어휘집, 메타데이터
9장 시소러스, 통제어휘집, 메타데이터
 
Active directoryと認証・認可
Active directoryと認証・認可Active directoryと認証・認可
Active directoryと認証・認可
 
S3をDB利用 ショッピングセンター向けポイントシステム概要
S3をDB利用 ショッピングセンター向けポイントシステム概要S3をDB利用 ショッピングセンター向けポイントシステム概要
S3をDB利用 ショッピングセンター向けポイントシステム概要
 
監査要件を有するシステムに対する PostgreSQL 導入の課題と可能性
監査要件を有するシステムに対する PostgreSQL 導入の課題と可能性監査要件を有するシステムに対する PostgreSQL 導入の課題と可能性
監査要件を有するシステムに対する PostgreSQL 導入の課題と可能性
 
Microsoft Project Online 活用ガイド
Microsoft Project Online 活用ガイドMicrosoft Project Online 活用ガイド
Microsoft Project Online 活用ガイド
 
しばちょう先生による特別講義! RMANバックアップの運用と高速化チューニング
しばちょう先生による特別講義! RMANバックアップの運用と高速化チューニングしばちょう先生による特別講義! RMANバックアップの運用と高速化チューニング
しばちょう先生による特別講義! RMANバックアップの運用と高速化チューニング
 
バックアップ時の問題から学んだDBエンジニアに必要なスキルとは
バックアップ時の問題から学んだDBエンジニアに必要なスキルとはバックアップ時の問題から学んだDBエンジニアに必要なスキルとは
バックアップ時の問題から学んだDBエンジニアに必要なスキルとは
 
Oracle Database Migration to Oracle Cloud Infrastructure
Oracle Database Migration to Oracle Cloud InfrastructureOracle Database Migration to Oracle Cloud Infrastructure
Oracle Database Migration to Oracle Cloud Infrastructure
 
Oracleのソース・ターゲットエンドポイントとしての利用
Oracleのソース・ターゲットエンドポイントとしての利用Oracleのソース・ターゲットエンドポイントとしての利用
Oracleのソース・ターゲットエンドポイントとしての利用
 
Apache Avro vs Protocol Buffers
Apache Avro vs Protocol BuffersApache Avro vs Protocol Buffers
Apache Avro vs Protocol Buffers
 
App center analyticsを使い倒そう
App center analyticsを使い倒そうApp center analyticsを使い倒そう
App center analyticsを使い倒そう
 

Similar to Knowledge graphs + Chatbots with Neo4j

Knowledge Graphs and Chatbots with Neo4j and IBM Watson - Christophe Willemsen
Knowledge Graphs and Chatbots with Neo4j and IBM Watson - Christophe WillemsenKnowledge Graphs and Chatbots with Neo4j and IBM Watson - Christophe Willemsen
Knowledge Graphs and Chatbots with Neo4j and IBM Watson - Christophe WillemsenGraphAware
 
Discovering Emerging Tech through Graph Analysis - Henry Hwangbo @ GraphConne...
Discovering Emerging Tech through Graph Analysis - Henry Hwangbo @ GraphConne...Discovering Emerging Tech through Graph Analysis - Henry Hwangbo @ GraphConne...
Discovering Emerging Tech through Graph Analysis - Henry Hwangbo @ GraphConne...Neo4j
 
Illustrating Graphs Visually through Neo4j Bloom
Illustrating Graphs Visually through Neo4j BloomIllustrating Graphs Visually through Neo4j Bloom
Illustrating Graphs Visually through Neo4j BloomNeo4j
 
Getting a Data Science Job
Getting a Data Science JobGetting a Data Science Job
Getting a Data Science JobAlexey Grigorev
 
Neo4j Generative AI workshop at GraphSummit London 14 Nov 2023.pdf
Neo4j Generative AI workshop at GraphSummit London 14 Nov 2023.pdfNeo4j Generative AI workshop at GraphSummit London 14 Nov 2023.pdf
Neo4j Generative AI workshop at GraphSummit London 14 Nov 2023.pdfNeo4j
 
GDSC-UB_Google_interview_process_final.pdf
GDSC-UB_Google_interview_process_final.pdfGDSC-UB_Google_interview_process_final.pdf
GDSC-UB_Google_interview_process_final.pdfGdscUb
 
How to become a data scientist
How to become a data scientist How to become a data scientist
How to become a data scientist Manjunath Sindagi
 
2016 XUG Conference Big Data: Big Deal for Personalized Communications or Meh?
2016 XUG Conference   Big Data: Big Deal for Personalized Communications or Meh?2016 XUG Conference   Big Data: Big Deal for Personalized Communications or Meh?
2016 XUG Conference Big Data: Big Deal for Personalized Communications or Meh?Jeffrey Stewart
 
Agile Mumbai 2022 - Rohit Handa | Combining Human and Artificial Intelligence...
Agile Mumbai 2022 - Rohit Handa | Combining Human and Artificial Intelligence...Agile Mumbai 2022 - Rohit Handa | Combining Human and Artificial Intelligence...
Agile Mumbai 2022 - Rohit Handa | Combining Human and Artificial Intelligence...AgileNetwork
 
Andrii Belas "Modern approaches to working with categorical data in machine l...
Andrii Belas "Modern approaches to working with categorical data in machine l...Andrii Belas "Modern approaches to working with categorical data in machine l...
Andrii Belas "Modern approaches to working with categorical data in machine l...Lviv Startup Club
 
Tackle Your Everyday Business Problems Like an Architect, Melissa Shepard
Tackle Your Everyday Business Problems Like an Architect, Melissa ShepardTackle Your Everyday Business Problems Like an Architect, Melissa Shepard
Tackle Your Everyday Business Problems Like an Architect, Melissa ShepardCzechDreamin
 
Create Knowledge with Users at Agile Korea 2013
Create Knowledge with Users at Agile Korea 2013Create Knowledge with Users at Agile Korea 2013
Create Knowledge with Users at Agile Korea 2013Kenji Hiranabe
 
Maryna Sokyrko & Oleksandr Chugui: Building Product Passion: Developing AI ch...
Maryna Sokyrko & Oleksandr Chugui: Building Product Passion: Developing AI ch...Maryna Sokyrko & Oleksandr Chugui: Building Product Passion: Developing AI ch...
Maryna Sokyrko & Oleksandr Chugui: Building Product Passion: Developing AI ch...Lviv Startup Club
 
Big data101kagglepresentation
Big data101kagglepresentationBig data101kagglepresentation
Big data101kagglepresentationAlexandru Sisu
 
Developing Information Architecture with Non-Technical Stakeholders
Developing Information Architecture with Non-Technical StakeholdersDeveloping Information Architecture with Non-Technical Stakeholders
Developing Information Architecture with Non-Technical StakeholdersVanessa Turke
 
General introduction to AI ML DL DS
General introduction to AI ML DL DSGeneral introduction to AI ML DL DS
General introduction to AI ML DL DSRoopesh Kohad
 
Neo4j Product Update and Bloom Demo
Neo4j Product Update and Bloom DemoNeo4j Product Update and Bloom Demo
Neo4j Product Update and Bloom DemoNeo4j
 
National Wildlife Federation- OMS- Dreamcore 2011
National Wildlife Federation- OMS- Dreamcore 2011National Wildlife Federation- OMS- Dreamcore 2011
National Wildlife Federation- OMS- Dreamcore 2011nonlinear creations
 
Labeling all the Things with the WDI Skill Labeler
Labeling all the Things with the WDI Skill Labeler Labeling all the Things with the WDI Skill Labeler
Labeling all the Things with the WDI Skill Labeler Kwame Porter Robinson
 

Similar to Knowledge graphs + Chatbots with Neo4j (20)

Knowledge Graphs and Chatbots with Neo4j and IBM Watson - Christophe Willemsen
Knowledge Graphs and Chatbots with Neo4j and IBM Watson - Christophe WillemsenKnowledge Graphs and Chatbots with Neo4j and IBM Watson - Christophe Willemsen
Knowledge Graphs and Chatbots with Neo4j and IBM Watson - Christophe Willemsen
 
Discovering Emerging Tech through Graph Analysis - Henry Hwangbo @ GraphConne...
Discovering Emerging Tech through Graph Analysis - Henry Hwangbo @ GraphConne...Discovering Emerging Tech through Graph Analysis - Henry Hwangbo @ GraphConne...
Discovering Emerging Tech through Graph Analysis - Henry Hwangbo @ GraphConne...
 
Illustrating Graphs Visually through Neo4j Bloom
Illustrating Graphs Visually through Neo4j BloomIllustrating Graphs Visually through Neo4j Bloom
Illustrating Graphs Visually through Neo4j Bloom
 
Getting a Data Science Job
Getting a Data Science JobGetting a Data Science Job
Getting a Data Science Job
 
Neo4j Generative AI workshop at GraphSummit London 14 Nov 2023.pdf
Neo4j Generative AI workshop at GraphSummit London 14 Nov 2023.pdfNeo4j Generative AI workshop at GraphSummit London 14 Nov 2023.pdf
Neo4j Generative AI workshop at GraphSummit London 14 Nov 2023.pdf
 
GDSC-UB_Google_interview_process_final.pdf
GDSC-UB_Google_interview_process_final.pdfGDSC-UB_Google_interview_process_final.pdf
GDSC-UB_Google_interview_process_final.pdf
 
How to become a data scientist
How to become a data scientist How to become a data scientist
How to become a data scientist
 
2016 XUG Conference Big Data: Big Deal for Personalized Communications or Meh?
2016 XUG Conference   Big Data: Big Deal for Personalized Communications or Meh?2016 XUG Conference   Big Data: Big Deal for Personalized Communications or Meh?
2016 XUG Conference Big Data: Big Deal for Personalized Communications or Meh?
 
Agile Mumbai 2022 - Rohit Handa | Combining Human and Artificial Intelligence...
Agile Mumbai 2022 - Rohit Handa | Combining Human and Artificial Intelligence...Agile Mumbai 2022 - Rohit Handa | Combining Human and Artificial Intelligence...
Agile Mumbai 2022 - Rohit Handa | Combining Human and Artificial Intelligence...
 
Andrii Belas "Modern approaches to working with categorical data in machine l...
Andrii Belas "Modern approaches to working with categorical data in machine l...Andrii Belas "Modern approaches to working with categorical data in machine l...
Andrii Belas "Modern approaches to working with categorical data in machine l...
 
Tackle Your Everyday Business Problems Like an Architect, Melissa Shepard
Tackle Your Everyday Business Problems Like an Architect, Melissa ShepardTackle Your Everyday Business Problems Like an Architect, Melissa Shepard
Tackle Your Everyday Business Problems Like an Architect, Melissa Shepard
 
Create Knowledge with Users at Agile Korea 2013
Create Knowledge with Users at Agile Korea 2013Create Knowledge with Users at Agile Korea 2013
Create Knowledge with Users at Agile Korea 2013
 
Maryna Sokyrko & Oleksandr Chugui: Building Product Passion: Developing AI ch...
Maryna Sokyrko & Oleksandr Chugui: Building Product Passion: Developing AI ch...Maryna Sokyrko & Oleksandr Chugui: Building Product Passion: Developing AI ch...
Maryna Sokyrko & Oleksandr Chugui: Building Product Passion: Developing AI ch...
 
Big data101kagglepresentation
Big data101kagglepresentationBig data101kagglepresentation
Big data101kagglepresentation
 
L15.pptx
L15.pptxL15.pptx
L15.pptx
 
Developing Information Architecture with Non-Technical Stakeholders
Developing Information Architecture with Non-Technical StakeholdersDeveloping Information Architecture with Non-Technical Stakeholders
Developing Information Architecture with Non-Technical Stakeholders
 
General introduction to AI ML DL DS
General introduction to AI ML DL DSGeneral introduction to AI ML DL DS
General introduction to AI ML DL DS
 
Neo4j Product Update and Bloom Demo
Neo4j Product Update and Bloom DemoNeo4j Product Update and Bloom Demo
Neo4j Product Update and Bloom Demo
 
National Wildlife Federation- OMS- Dreamcore 2011
National Wildlife Federation- OMS- Dreamcore 2011National Wildlife Federation- OMS- Dreamcore 2011
National Wildlife Federation- OMS- Dreamcore 2011
 
Labeling all the Things with the WDI Skill Labeler
Labeling all the Things with the WDI Skill Labeler Labeling all the Things with the WDI Skill Labeler
Labeling all the Things with the WDI Skill Labeler
 

More from Christophe Willemsen

Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and Gra...
Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and Gra...Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and Gra...
Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and Gra...Christophe Willemsen
 
Management des issues Github avec Neo4j et NLP
Management des issues Github avec Neo4j et NLPManagement des issues Github avec Neo4j et NLP
Management des issues Github avec Neo4j et NLPChristophe Willemsen
 
Your own recommendation engine with neo4j and reco4php - DPC16
Your own recommendation engine with neo4j and reco4php - DPC16Your own recommendation engine with neo4j and reco4php - DPC16
Your own recommendation engine with neo4j and reco4php - DPC16Christophe Willemsen
 
Recommendation Engines with Neo4j, Symfony and Reco4PHP
Recommendation Engines with Neo4j, Symfony and Reco4PHPRecommendation Engines with Neo4j, Symfony and Reco4PHP
Recommendation Engines with Neo4j, Symfony and Reco4PHPChristophe Willemsen
 
Moteurs de recommendation avec Neo4j et GraphAwareReco
Moteurs de recommendation avec Neo4j et GraphAwareRecoMoteurs de recommendation avec Neo4j et GraphAwareReco
Moteurs de recommendation avec Neo4j et GraphAwareRecoChristophe Willemsen
 
Recommandations avec Neo4j et le GraphAware Recommendation Engine
Recommandations avec Neo4j et le GraphAware Recommendation EngineRecommandations avec Neo4j et le GraphAware Recommendation Engine
Recommandations avec Neo4j et le GraphAware Recommendation EngineChristophe Willemsen
 
Neo4j au secours de l'Internet of Connected Things
Neo4j au secours de l'Internet of Connected ThingsNeo4j au secours de l'Internet of Connected Things
Neo4j au secours de l'Internet of Connected ThingsChristophe Willemsen
 
Graph Database Prototyping made easy with Graphgen
Graph Database Prototyping made easy with GraphgenGraph Database Prototyping made easy with Graphgen
Graph Database Prototyping made easy with GraphgenChristophe Willemsen
 
Graphgen - le générateur de graphes
Graphgen - le générateur de graphesGraphgen - le générateur de graphes
Graphgen - le générateur de graphesChristophe Willemsen
 
Analysing Github events with Neo4j
Analysing Github events with Neo4jAnalysing Github events with Neo4j
Analysing Github events with Neo4jChristophe Willemsen
 

More from Christophe Willemsen (12)

Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and Gra...
Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and Gra...Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and Gra...
Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and Gra...
 
Management des issues Github avec Neo4j et NLP
Management des issues Github avec Neo4j et NLPManagement des issues Github avec Neo4j et NLP
Management des issues Github avec Neo4j et NLP
 
Your own recommendation engine with neo4j and reco4php - DPC16
Your own recommendation engine with neo4j and reco4php - DPC16Your own recommendation engine with neo4j and reco4php - DPC16
Your own recommendation engine with neo4j and reco4php - DPC16
 
Recommendation Engines with Neo4j, Symfony and Reco4PHP
Recommendation Engines with Neo4j, Symfony and Reco4PHPRecommendation Engines with Neo4j, Symfony and Reco4PHP
Recommendation Engines with Neo4j, Symfony and Reco4PHP
 
Moteurs de recommendation avec Neo4j et GraphAwareReco
Moteurs de recommendation avec Neo4j et GraphAwareRecoMoteurs de recommendation avec Neo4j et GraphAwareReco
Moteurs de recommendation avec Neo4j et GraphAwareReco
 
Recommandations avec Neo4j et le GraphAware Recommendation Engine
Recommandations avec Neo4j et le GraphAware Recommendation EngineRecommandations avec Neo4j et le GraphAware Recommendation Engine
Recommandations avec Neo4j et le GraphAware Recommendation Engine
 
Neo4j au secours de l'Internet of Connected Things
Neo4j au secours de l'Internet of Connected ThingsNeo4j au secours de l'Internet of Connected Things
Neo4j au secours de l'Internet of Connected Things
 
Graph Database Prototyping made easy with Graphgen
Graph Database Prototyping made easy with GraphgenGraph Database Prototyping made easy with Graphgen
Graph Database Prototyping made easy with Graphgen
 
Graphgen - le générateur de graphes
Graphgen - le générateur de graphesGraphgen - le générateur de graphes
Graphgen - le générateur de graphes
 
Analysing Github events with Neo4j
Analysing Github events with Neo4jAnalysing Github events with Neo4j
Analysing Github events with Neo4j
 
Présentation symfony drupal
Présentation symfony drupalPrésentation symfony drupal
Présentation symfony drupal
 
GMDSS - Practice1
GMDSS - Practice1GMDSS - Practice1
GMDSS - Practice1
 

Recently uploaded

Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationkaushalgiri8080
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendArshad QA
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfCionsystems
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 

Recently uploaded (20)

Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanation
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and Backend
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdf
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 

Knowledge graphs + Chatbots with Neo4j

  • 1. Knowledge Graphs and Chatbots with Neo4j GraphAware, world’s #1 Neo4j consultancy graphaware.com @graph_aware
  • 2. ● Christophe Willemsen ● From Belgium but living in Southern Italy ● Principal Consultant at GraphAware ● Expert in Graphs and Search ● Currently researching in Natural Language Understanding and its implementation in chatbots About me @ikwattro
  • 3. ● How to represent Knowledge in a Graph ○ Text Processing ■ Processing Text ■ Information Extraction ■ Keywords Extraction ○ Enrichment ■ Concept Bases ■ Visual Content Metadata ■ External Knowledge Bases ● Knowledge Graphs to power advanced applications ○ Our demo : Brain Bro ○ Knowledge Graphs in the Real Life ○ Phonetic issues ○ Soft Cosine Measure (SCM) ○ Visual and Temporal Memory for Recall Outline
  • 4. ● Original domain model, for eg authors of news, news, views, original topics, etc. ● Standard text processing features ● Information Extraction ● Enrichment ● Facts ● Knowledge Entities and Semantic relationships ● Built from aggregation and validation of layer 1 and 2 ● Offers Multi-View (Perspectives) DOMAIN MODEL LAYER 1 TEXT UNDERSTANDING LAYER 2 KNOWLEDGE GRAPH LAYER 3 USER CONTEXT LAYER 4 ● Keeps track of the user conversation ● Relates conversation steps to entry points in the Knowledge Graph ● Use distance to determine out of context situations
  • 6.
  • 7. ● Original domain model, for eg authors of news, news, views, original topics, etc. ● Standard text processing features ● Information Extraction ● Enrichment ● Facts ● Knowledge Entities and Semantic relationships ● Built from aggregation and validation of layer 1 and 2 ● Offers Multi-View (Perspectives) DOMAIN MODEL LAYER 1 TEXT UNDERSTANDING LAYER 2 KNOWLEDGE GRAPH LAYER 3 USER CONTEXT LAYER 4 ● Keeps track of the user conversation ● Relates conversation steps to entry points in the Knowledge Graph ● Use distance to determine out of context situations
  • 8. ● Natural Language Processing ○ Sentence segmentation ○ Tokenization ○ Stopwords Removal ○ Part of Speech Tagging ○ Text Understanding
  • 9. ● Natural Language Processing ○ Sentence segmentation ○ Tokenization ○ Stopwords Removal ○ Part of Speech Tagging ○ Named Entity Recognition Text Understanding
  • 10. CALL ga.nlp.annotate({text: n.text, id: id(n)}) Text Understanding
  • 11.
  • 12.
  • 13. NER
  • 14. ● Natural Language Processing ○ Sentence segmentation ○ Tokenization ○ Stopwords Removal ○ Part of Speech Tagging ○ Named Entity Recognition ○ Syntactic Dependencies Parsing Text Understanding
  • 15.
  • 16.
  • 17.
  • 18. ● Facts ○ Using Semantic Parsers to extract facts from sentences in a Subject-Root-Object form Text Understanding
  • 19.
  • 20.
  • 21. ● Keywords Extraction ○ Unsupervised algorithm ○ Using TextRank wich under the hood uses PageRank ○ Performs better than most supervised algorithms ○ http://bit.ly/graphaware-textrank Text Understanding
  • 23.
  • 24.
  • 26.
  • 28.
  • 30.
  • 31. Find articles mentioning companies being founded by Elon Musk and in the car industry
  • 32. ● Original domain model, for eg authors of news, news, views, original topics, etc. ● Standard text processing features ● Information Extraction ● Enrichment ● Facts ● Knowledge Entities and Semantic relationships ● Built from aggregation and validation of layer 1 and 2 ● Offers Multi-View (Perspectives) DOMAIN MODEL LAYER 1 TEXT UNDERSTANDING LAYER 2 KNOWLEDGE GRAPH LAYER 3 USER CONTEXT LAYER 4 ● Keeps track of the user conversation ● Relates conversation steps to entry points in the Knowledge Graph ● Use distance to determine out of context situations
  • 33. ● How to build it ? ○ Aggregate all the information from the previous steps ○ Use external tools to validate some assumptions, e.g. : Director of marketing -> corporate position ○ Create a new graph from those informations The Knowledge Graph
  • 34.
  • 35. Knowledge Graphs to power Advanced Applications
  • 38. ● NER issues ○ Default recognizers are trained on generic texts and will often perform poorly when lot of indentation is used ○ Dropbox IPO, Forty Seven, Consumer Business Group, Melinda Gates Foundation (without Bill), … ○ You can “easily” build your own models with external knowledge bases like wikidata Knowledge Graphs IRL
  • 39. ● Phonetic Matching ○ SOUNDEX, DOUBLE METAPHONE, FUZZY ○ ELASTIC PHONETIC ANALYSIS PLUGIN Knowledge Graphs IRL
  • 40. ● Visual Metadata Validation Knowledge Graphs IRL
  • 41.
  • 42. ● Visual Metadata Validation ○ Build a top-k vocabulary of the article, or the surrounding article parts of the image ○ Use word2vec to compute relevancy of class labels returned by image recognition services ○ Use SCM ( Soft Cosine Measure ) [1] [2] Knowledge Graphs IRL 1. Grigori Sidorov et al. Soft Similarity and Soft Cosine Measure: Similarity of Features in Vector Space Model, 2014. (link to PDF) 2. Delphine Charlet and Geraldine Damnati, SimBow at SemEval-2017 Task 3: Soft-Cosine Semantic Similarity between Questions for Community Question Answering, 2017. (link to PDF)
  • 44. ● Original domain model, for eg authors of news, news, views, original topics, etc. ● Standard text processing features ● Information Extraction ● Enrichment ● Facts ● Knowledge Entities and Semantic relationships ● Built from aggregation and validation of layer 1 and 2 ● Offers Multi-View (Perspectives) DOMAIN MODEL LAYER 1 TEXT UNDERSTANDING LAYER 2 KNOWLEDGE GRAPH LAYER 3 USER CONTEXT LAYER 4 ● Keeps track of the user conversation ● Relates conversation steps to entry points in the Knowledge Graph ● Use distance to determine out of context situations
  • 45. ● Intent detection ○ What did Ahmed Fathi say about blockchains ? ○ Where is ABC Arabia Bank located ? ○ What does a person with a leader position think about investment banks ? Querying Knowledge
  • 46. ● Intent detection ○ What did Ahmed Fathi say about blockchains ? ○ Where is ABC Arabia Bank located ? ○ What does a person with a leader position think about investment banks ? Understand what we want out of the knowledge graph Querying Knowledge
  • 47. ● Intent detection ○ What did Ahmed Fathi say about blockchains ? ○ Where is ABC Arabia Bank located ? ○ What does a person with a leader position thinks about investment banks ? Understand what we want out of the knowledge graph Querying Knowledge Looking for facts?
  • 48. ● Intent detection ○ What did say Ahmed Fathi about blockchains ? ○ Where is ABC Arabia Bank located ? ○ What does a person with a leader position thinks about investment banks ? Understand what we want out of the knowledge graph Querying Knowledge Looking for a Location entity
  • 49. ● Intent detection ○ What did say Ahmed Fathi about blockchains ? ○ Where is ABC Arabia Bank located ? ○ What does a person with a leader position think about investment banks ? Understand what we want out of the knowledge graph Querying Knowledge If you “say” something, do you “think” it ?
  • 50. ● Entity Extraction ○ What did Ahmed Fathi say about blockchains ? ○ Where is ABC Arabia Bank located ? ○ What does a person with a leader position think about investment banks ? Querying Knowledge
  • 51. ● Entity Extraction ○ What did Ahmed Fathi say about blockchains ? ○ Where is ABC Arabia Bank located ? ○ What does a person with a leader position think about investment banks ? Determine Entry Points in the Knowledge Graph as well as semantic constraints Querying Knowledge
  • 52. ● Entity Extraction ○ What did Ahmed Fathi say about blockchains ? ○ Where is ABC Arabia Bank located ? ○ What does a person with a leader position thinks about investment banks ? Determine Entry Points in the Knowledge Graph as well as semantic constraints Querying Knowledge Person Entity : Ahmed Fathi Semantic: SAY Topic: blockchain
  • 53. ● Entity Extraction ○ What did say Ahmed Fathi about blockchains ? ○ Where is ABC Arabia Bank located ? ○ What does a person with a leader position thinks about investment banks ? Determine Entry Points in the Knowledge Graph as well as semantic constraints Querying Knowledge Company Entity : ABC Arabia Bank
  • 54. ● Entity Extraction ○ What did say Ahmed Fathi about blockchains ? ○ Where is ABC Arabia Bank located ? ○ What does a person with a leader position thinks about investment banks ? Determine Entry Points in the Knowledge Graph as well as semantic constraints Querying Knowledge Company Position : Leader position Person: related to position Semantic: think Topic: investment bank
  • 55. ● Query representation ○ Queries should be treated as original corpus and pass the same set of processing Querying Knowledge
  • 56.
  • 57. Can this be used to match against a Person label in the Knowledge Graph ?
  • 58. How to match “do think about” with a “SAY” relationship in the Knowledge Graph?
  • 59. How to match “do think about” to a “SAY” relationship in the Knowledge Graph?
  • 61. ● Probabilistic Traversals ○ Use a probability based classifier like Naive Bayes for determining the type of the relationship to traverse ○ Avoid to return non-relevant results in a “Always return something architecture”
  • 62. ● Dynamic Query Stack ○ Depending on the intent, the graph should be queried differently, there is no rocket science out of the box answer to how, just knowing your domain and lot lot lot of failures and tests ○ The Knowledge Graph is queried but not only that, you could also query the NLP graph for tf-idf enforcement and score the results with different weights at the end
  • 63. ● Queries made ○ EntityLinking() ○ EntitiesSimilarity() ○ SemanticSimilarity() ○ TraversalProbability() ○ KeywordSensitivePageRank() ○ TopicSensitivePageRank() ○ TF-IDF()
  • 64. ● Lot of techniques ○ Minimum subgraph matching ○ Sequence pattern recognition for SVO generation when queries are not parsed fully ○ Voice adaptations aka soundex ○ Deep learning ○ ...
  • 65.
  • 66. User Query and Context
  • 67. ● Conversation ○ After all, chatbots are considered as Conversational Interfaces, it wouldn’t have this name if the end goal of such systems is having a conversation with a machine ○ Keeping track of where the user is in the conversation can help to add more constraints to the queries User Context
  • 68.
  • 69. ● When to go out ? ○ A user can quickly go out of context during a conversation, for example : * How is the weather in San Francisco ? -- it is 25 degrees * what size? -- ?? Are you really gonna try to find a response? ○ We use distance calculation in the graph based to trigger Signals if the user is out of context User Context
  • 70. ● Some more thoughts ○ Embrace failures ○ Monitor ○ Humans are still a thing ○ ..
  • 71. world’s #1 Neo4j consultancy www.graphaware.com @graph_aware Thank you ! Christophe Willemsen @ikwattro