chatbots and voice conversational interfaces with amazon alexa, neo4j and graphaware nlp

49

Upload: christophe-willemsen

Post on 22-Jan-2018

1.827 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP
Page 2: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Hello humans !

Page 3: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Forget everything !

Page 4: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Everything you know…

Page 5: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Everything you learned…

Page 6: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

is OVER !!!

Page 7: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Welcome to a brand new world…

Page 8: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

The world of VOICE

Page 9: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

From Alexa

Page 10: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

To Google Home,

Page 11: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

In-car systems,

Page 12: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

and smartwatches

Page 13: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Touch is no longer the primary UI

Page 14: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

The touch era is OVER !

Page 15: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP
Page 16: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Chatbot and Conversational Experiences with Amazon

Alexa, Neo4j and GraphAware NLP

GraphDB Meetup Czech RepublicJune 14th, 2017

Christophe Willemsen - @ikwattro

Page 17: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Program of tonight

• Chatbots history

• Voice-driven chatbot anatomy

• Let’s build our conference assistant

• Introduction to Natural Language Processing

• Let’s chat..bot

Page 18: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Chatbots history

• Alan Turing Test

Page 19: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Chatbots history

• Eliza (1966) mimicked human conversations by matching user

prompts to scripted responses. It was able, at least for a time, to

pass the Turing test

Page 20: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Chatbots history

• Parry (1972) – Inexplicably simulated a person with paranoid

schyzophrenia. Parry was more advanced than Eliza.

Page 21: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Chatbots history

• 1988 – Jabberwacky

• 1992 - Dr. Sbaitso

• 1995 – A.L.I.C.E

• 2001 – Smarterchild

• 2006 – IBM’s Watson

• 2010 – SIRI

• 2012 – Google NOW

• 2016 – Bots for Messenger, TAY

• And Alexa ? Ask her !

Page 22: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Chatbot anatomy

• Voice Commands

• Intent detection

• Intent handling

• Response

Page 23: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Our conference assistant

• Tell me how many sessions ?

• Tell me how many sessions about a specific topic ?

• Recommend me a session based on my topic preferences

• Find me a session about a specific topic with NLP

Alexa should be able to :

Page 24: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Dataset usedGraphconnect London 2017 schedule

Page 25: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Voice command

• Give a name to our Alexa skill -> CONFERENCE ASSISTANT

• Define our first intent name (code) -> talksCount

• Define our first utterance

Page 26: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

ALEXA, ASK CONFERENCE ASSISTANT

(skill invocation)

HOW MANY SESSIONS TODAY ?

(skill utterance)

INTENT DETECTION

SPEECH TO TEXT

TEXT TO SPEECH

LAMBDA FUNCTIONOR

YOUR API SERVER

ALEXA VOICE SERVICE

Page 27: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Utterances

• How many sessions ?

• How much sessions ?

• How many talks at the conference ?

• How many talks today ?

Page 28: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Intent detection

• 2 main types of detection :

-> Pattern matching (how | count)* many (session | talks) today?

-> Classification machine learning, neural networks, word2vec, ..

Page 29: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Alexa send to the skill API

Page 30: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Your skill returns a text response

Page 31: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Intent detection

• 2 main types of detection :

-> Pattern matching (how | count)* many (session | talks) today?

-> Classification machine learning, neural networks, word2vec, ..

Page 32: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

First intent test

ALEXA, HOW MANY SESSIONS TODAY ?

Page 33: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

ALEXA, ASK CONFERENCE ASSISTANT

(skill invocation)

HOW MANY SESSIONS TODAY ?

(skill utterance)

INTENT DETECTION

SPEECH TO TEXT

TEXT TO SPEECH

LAMBDA FUNCTIONOR

YOUR API SERVER

ALEXA VOICE SERVICE

Page 34: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Slots

• Variables in the utterances

• Should be filled with possible values

• Slots are sent in the intent request to your API

Page 35: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Slots

HOW MANY SESSIONS ABOUT {topic}

Page 36: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Second intent test

ALEXA, HOW MANY SESSIONS ABOUT

PERFORMANCE ?

Page 37: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Adding personalization

• If you have informations about the attendees and their topic

preferences, you can easily get the sessions in accordance with it.

Page 38: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Adding personalization

Page 39: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Adding personalization

Page 40: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Third intent test

ALEXA, RECOMMEND ME A SESSION

Page 41: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

GraphAware NLP

• Graph based Natural Language Processing framework

• Information Extraction, Sentiment Analysis, Data enrichment

(ontologies and concepts), similiraty computation, knowledge

enrichment, …

• Beta program, first public open-source version to be released very

soon

Page 42: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP
Page 43: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Enriching with concepts

Page 44: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Enriching with concepts

Page 45: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Tackling the last intent

• Question / response game

• Treat question as text and process NLP

• Relate question text with Session abstracts texts

• Special type of utterance with only one slot {text}

Page 46: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Demo

Page 47: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Fun / Ideas with Alexa

Page 48: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Resources

• https://github.com/alexylem/jarvis

Page 49: Chatbots and Voice Conversational Interfaces with Amazon Alexa, Neo4j and GraphAware NLP

Thank you !

Questions?

graphaware.com

@graph_aware