chatbots group-8 ravikant narayan gaurav jain. introduction interaction is in natural language no...

33
CHATBOTS GROUP-8 RaviKant Narayan Gaurav Jain

Upload: milo-victor-strickland

Post on 13-Dec-2015

217 views

Category:

Documents


3 download

TRANSCRIPT

CHATBOTS

GROUP-8RaviKant Narayan

Gaurav Jain

Introduction

Interaction is in natural language

No use of formal languages

Revolutionary step in the field of human-machine interaction

Artificial Conversational agents

Example chat-ELIZA

Men are all alike.

IN WHAT WAY?

They're always bugging us about something or other.

CAN YOU THINK OF A SPECIFIC EXAMPLE?

Well, my boyfriend made me come here.

YOUR BOYFRIEND MADE YOU COME HERE

He says I'm depressed much of the time.

I AM SORRY TO HEAR YOU ARE DEPRESSED

Motivation

Use at places like railway enquiry

psychotherapy

Play MUDs,tell stories

How it all started

The Turing test -The Imitation game

PARRY-Artificial paranoia

The Turing test as a simulation validator

The Loebner Prize

Elizabeth

Script Command Notations

W: Welcome message Q: quitting message N: No match V: Void input I: Input transformation / : Comment K: Key word pattern R: key word response M: Memorise phrase N: No match O: Output transformation &: Action to be perform

ELIZABETHKnowledge stored as script in text file

Script file – 4 parts

Part 1 – Script command line

Holds welcome, void and no keyword messages

Part 2 – Input transformation rules

Part 3 – Output transformation rules

Part 4 – Keyword patterns

Example

Input Transformation rule I MUM => mother

Output Transformation rule O my => YOUR

Keyword Transformation rule K I LIKE [string]ING R HAVE YOU [string]ED AT ALL RECENTLY?

Dynamic Processing

Modification of script while conversing

Adding, Memorization, deleting

New scripts could be added while ongoing conversation

Responses are kept at a hold for future matching

Script commands can be deleted

Pattern matching algorithm

Firstly some preparations done for pattern matching algorithm(like removing illegal characters)

Then five stages

Stage 1 - All input transformation rules applied one by one

Stage 2 – Keyword pattern matching

Pattern matching algorithm contd

Stage 3 – Output transformation rules applied

Stage 4 – In case no match found in stage 2, it gives void or no keyword message

Stage 5 – Dynamic processes performed if required

ALICE

Artificial Linguistic Internet Computer Entity

Has knowledge about patterns in English conversation

The storage is done in AIML files

A derivative of XML

AIML

Artificial Intelligence Markup Language

AIML objects(data objects)

Fundamentals units are Topics and Categories

Topic – Like a node

Has a name and a list of related categories

continued

Category – A rule for giving outputs based on given input patterns

Contains a pattern(user input) and a template(represents possible output)

Categories typesAtomic Categories :- No wildcard symbols (_ and *) in the patterns

Default categories :- Patterns have wild card symbols

Recursive categories :- Templates contain srai and sr tags

Srai :- Simply recursive artificial intelligence

Continued

Sr :- Symbolic Reduction

Reducing complex grammatical forms to simpler ones

Dealing with synonyms

Divide and Conquer.

Pattern Matching in ALICE

Requires Preparation

Normalization Process

Three step procedure

Normalization Process

Three steps

Substitution Normalization

Sentence Splitting Normalization

Pattern filling Normalization

Example

Input - “ I do not know. Do you, or will you, have a robots.txt file”

Step1 - “I do not know. Do you, or will you, have a robots dot txt file”

Information susceptible to loss in next steps is retained

ContinuedStep2 - “I do not know.” “Do you, or will you, have a robots dot txt file”

The input split into sentences

Step3 - “I DO NOT KNOW” “DO YOU OR WILL YOU HAVE A ROBOTS DOT TXT FILE”

Punctuation removal

Conversion to upper case

Pattern matching algorithm

The algorithm is similar to that used in Graphmaster set of files and directories

First the preperation work is done

Then a depth first search combined with backtracking is used to get a matching pattern

Exampleuser inputs”halo what is 2 and 2”

Converted to :- Sentence 1 – Halo Sentence 2 – WHAT IS 2 AND 2

Atomic pattern match found for HALO as HELLO

Dealing with synonyms

continued

Template available for WHAT IS 2 *

Backtracking applied

Pattern match found and response selected randomly from list of responses

Answer is “Hi there! Four.”

continued

(1) <category>

<pattern>_ WHAT IS 2 AND 2</pattern> <template> <sr/> <srai>WHAT IS 2 AND 2</srai>

</template> </category>

(2) <category> <pattern>WHAT IS 2 *</pattern>

<template> <random> <li>Two.</li> <li>Four.</li> <li>Six.</li> <li>12.</li> </random>

</template> </category>

continued

(3) <category> <pattern>HALO</pattern>

<template> <srai>HELLO</srai> </template> </category>

(4) <category> <pattern>HELLO</pattern>

<template> <random> <li>Well hello there!</li> <li>Hi there!</li>

<li>Hi there. I was just wanting to talk</li> <li>Hello there !</li> </random>

</template> </category>

How alice responded to complex sentences

Human:I will now give you a very comlex sentence and you have to figure out what does it mean

ALICE: Would you recommend this action to a friend?

Human: what would you do if you were left stranded in very lonely island away from all human beings with nobody to speak to ,with only a handful of clothes and food

ALICE: I will let you know when I become a left stranded in very lonely island away from all human beings with nobody to speak to with only a handful of clothes and food.

Tricks

Chatbots use a lot of them for a more human effect

Some use a trick of deduction

To let the user speak first and then reply from the deduction made from that

Tricks Contd

Some use the approach of slowing down

The chatbot takes a specific amount of time to reply as a human would

Making seemingly random mistakes intentionally

Tricks Contd

Can say I dont know

launch a new story

Why do you ask that?, which is really a way of changing the subject.

ApplicationsA large number of them possible

Use at places like railway enquiry

Saves lot of valuable human resources

As a psychiatrist(hard to find a good listener these days)

Continued

ITS :- Intelligent Tutoring System

Chatbots in foreign language learning

The system uses a communication response mechanism

The learning is motivated by the personality of the learner

Social engineering

ConclusionChatbots have wide range of applications like artificial tutoring, social networking etc.

Come handy in case of call centers

Most aspects of chatbots are pretty well developed today

Need to do a lookout against mean users who tend to take undue advantage of the facility

References1. Ayse Pinar Saygin1,Ilyas Cicekli & Varol Akman,Turing Test:50 years later,Department of Cognitive Science,University of California,San Diego;Department of Computer Engineering,Bilkent University,Bilkent, 2000

2. Bayan Abu Shawar,Eric Atwell ,Using Dialogue Corpora to train a chatbot, School of computing University of leeds England, 2002

3. H. Chad Lane,Intelligent tutoring systems: Prospect for Guided Practice and Efficient Learning Institute for creative technologies, University of southern California, 2006

4.http://en.wikipedia.org/wiki/Chatbots