0% found this document useful (0 votes)
96 views

Chat Bots: Welcome To The World of Living People and Artificial Intelligence Entities Called Bots!

A chat bot is a computer program that can converse with humans via text in natural language. Chat bots have been around since the 1960s, starting with ELIZA, and work by matching patterns in user input to predefined responses. They are tested using the Turing test and can answer common questions but not all. Chat bots are defined using AIML and can be created and deployed for customer service, information, or games.

Uploaded by

HazlinaShariff
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
96 views

Chat Bots: Welcome To The World of Living People and Artificial Intelligence Entities Called Bots!

A chat bot is a computer program that can converse with humans via text in natural language. Chat bots have been around since the 1960s, starting with ELIZA, and work by matching patterns in user input to predefined responses. They are tested using the Turing test and can answer common questions but not all. Chat bots are defined using AIML and can be created and deployed for customer service, information, or games.

Uploaded by

HazlinaShariff
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 27

Chat Bots

Ruta Mehta
Mugdha Jain
Welcome to the Jeetendra Mirchandani
world of living
people and artificial
intelligence entities
called bots!
Questions We’ll Answer
A Chat Bot…
 What is it? Who wants it? Why?
 Since when is it around?
 How does it work?
 How do you test it?
 Can it answer all my questions?
 Can I make one of my own?
 Where can I put it to work?
Introduction

 Chat Bot: A computer program that can talk to humans in


natural language!
 Uses Artificial Intelligence Markup Language (AIML) to
represent knowledge.
 Can replace a human for monotonous jobs of answering
queries, e.g. E-help desk.
How It All Started
 Eliza – the first chat bot made by Joseph Weizenbaum.
 Eliza Effect
– tendency of humans to attach associations to terms from prior
experience.
 Working of Eliza is based on
– Knowledge Representation
– Pattern Recognition
– Substitution of key words into known phrases.
How does it respond

 Looks for certain patterns of words in the user's input.


 Replies with pre-determined output, if the pattern is
matched.
 Needs to have an idea of what the user will chat
 Has suitable responses defined in the AIML file
Architecture of a Chat Bot

Responder

AIML Interpreter

AIML Objects

A Chat Bot
Knowledge Representation
 Types of AIML objects
– Topics
– Categories
 E.g. :
<aiml>
<topic name=“the topic” >
<category>
<pattern>PATTERN</pattern>
<that>THAT</that>
<template>TEMPLATE</template>
</category>
</topic>
</aiml>
Example AIML Object

 AIML Object <category>


<category> <pattern>YES</pattern>
<pattern>HELLO</pattern> <that>DO YOU LIKE MOVIES</that>
<template>Hi there!</template> <template>What is your favorite movie?
</category> </template>
</category>
 Chat Sequence
User: Hello! Chat Bot: Do you like Movies?
Chat Bot: Hi There! User: Yes
Chat Bot: What is your favorite
movie
Topics and Categories

 Topic: an optional top-level element that contains category


elements
 Category: consists of an input question (pattern) and an
output answer (template)
 Types of Categories
– Atomic Category
– Default Category
– Recursive Category
Atomic Category

 Contains patterns that does not have wildcards


“*” or “_”.
 Example:

 Conversation:
<category>
<pattern>10 DOLLARS</pattern>
<template> wow, what a cheap </template>
</category>

User: This watch is for 10 dollars


Chat Bot: Wow, what a cheap watch!
Default Category

 Contains patterns that have wildcards “*” or “_”.


 Example:
<category>
<pattern>10 *</pattern>
<template> It is ten.</template>
</category>
 Conversation:
User: 10 dollars.
Chat Bot: It is ten.
Recursive category
 Template calls the pattern matcher recursively
 Uses <srai> tag, that stands for symbolic recursion artificial
intelligence
 For example,
In English there are different ways to ask about X:
Describe x?
Tell me about X?
Do you know what X is?
The knowledge is stored in the simplest way.
Whatever the question is, it will be reduced to category like <What is>.
Input normalization
 Substitution normalizations
Abbreviations such as "Mr." may be spelled out as "Mister" to avoid
sentence-splitting at the period in the abbreviated form.
 Sentence-splitting normalizations
Rule: break sentences at periods. It relies upon substitutions performed
in the substitution phase.
 Pattern-fitting normalizations
Remove all characters that are not normal characters; like converting
lowercase letters to uppercase .
Example
<category> <category>
<pattern>HELLO</pattern> <pattern>WHAT IS 2 *</pattern>
<template> <random> <template><random>
<li>Well hello there!</li> <li>Two.</li>
<li>Hi there!</li> <li>Four.</li>
<li>Hi there. I was just wanting <li>Six.</li>
to talk</li>
<li>12.</li>
<li>Hello there !</li>
</random></template></category
</random></template></category> >
<category> <category>
<pattern>_ WHAT IS 2 AND <pattern>HALO</pattern>
2</pattern>
<template>
<template>
<srai>HELLO</srai>
<sr/><srai>WHAT IS 2 AND
2</srai> </template>
</template> </category>
</category>
Question : Halo, What is 2 and 2

_ What is 2 and 2

</sr>
<srai> WHAT IS 2 AND 2 </srai>
HALO
WHAT IS 2 AND *
HELLO
WHAT IS 2 *
Well hello there!
Hi there! Two
Hi there. I was just Four
wanting to talk. Six
Hello there ! 12

Answer : Hi There! Six


Graph-master – an example interpreter

 AIML interpreter: tries to match word by word to obtain the


largest pattern matching which is the best one.
 Graph-master: an interpreter that models this behavior
 Contains a set of nodes called Node-mappers .
 Node-Mappers : map branches from each node where
branches represent the first words of all patterns.
 Each leaf node contains a template.
Flowchart for Pattern Matching

yes
Search sub-graph Try all remaining
Node-mapper yes
rooted at child suffixes of input Match?
Contains ‘_’?
node linked by ‘_’ following ‘X’
no
no

Search sub-graph
Node-mapper yes rooted at child yes
Match?
Contains ‘X’? node linked by ‘X’
using input ‘tail’
no no

yes Search sub-graph Try all remaining


Node-mapper yes
rooted at child suffixes of input Match?
Contains ‘*’?
node linked by ‘*’ following ‘X’
Some Observations

 Priority order at every node:


– ‘_’ wildcard, followed by
– an atomic word, followed by
– ‘*’ wildcard .
 Patterns need not be ordered alphabetically
 The matching is word-by-word, not category-by-category
 Highly restricted form of depth-first search
Turing Test
 Alan Turing proposed the Turing Test as a replacement for
the question “Can machines think?”
 Turing's aim is to provide a method to assess whether or not a
machine can think.
 The test
– A man (A), a woman (B) and an interrogator (C) chat.
– The objective of the interrogator is to determine which of the other
two is the woman
– If a machine (bot) chats instead of A or B and fools the interrogator,
it has passed the Turing test.
Can It Answer All My Questions?

 A Chat Bot has a limited number of patterns and responses.


 The AIML structure supports regular expressions
 In AIML, you can define recursive categories.
 The bot may sometimes give funny replies, but that depends
on the AIML spec, i.e. Its brain!
How to build a bot of your own
 Components – An AIML Object Spec, AIML interpreter,
and a responder!
 A Chat Bot represents and models a character.
 The brain is the AIML file, that defines patterns and
corresponding replies
 A bot can be trained to be an Expert System about a special
theme – large data!
 Training data – Yahoo Chat!
What is a Chat Bot useful for?

 Commercial chatter bots to help customers


– At web-shops and e-commerce sites.
– Bots to receive complaints from users, online
 An interactive (talking) encyclopedia.
 Chatter bots administrating IRC-channels and Hotline server.
 The Psychiatrist – the famous pronoun reversal trick
 Starship Titanic, a game created by the famous writer Douglas
Adams along with Terry Jones
Questions We Answered
A Chat Bot…
 What is it? Who wants it? Why?
 Since when is it around?
 How does it work?
 How do you test it?
 Can it answer all my questions?
 Can I make one of my own?
 Where can I put it to work?
Clarifications
 How powerful is JavaCC-built parser?
– As long as one can use JavaCC's look-ahead specification to guide the
parsing where the LL(1) rules are not sufficient, JavaCC can handle any
grammar that is not left-recursive.
 Powerful than a yacc generated parser?
– AIML is connected to a system that allows for learning new patterns and
putting them into a context
– Context sensitive
 Learning ?
– Dialogue Corpora can be used to train a Chatbot! (See References)
 Intelligent?
– Even Turing tests have different levels and yet cannot finally decide whether
the system is intelligent or not. Nowadays a system is considered to be
intelligent if it is able to mimic intelligent behaviour (e.g. within a specified
domain).
Thank You
References

 The Anatomy of A.L.I.C.E.: Dr. Richard S. Wallace,


http://www.alicebot.org/anatomy.html
 Artificial Intelligence Markup Language (AIML), A.L.I.C.E. AI
Foundation, http://alicebot.org/TR/2001/WD-aiml/
 AIML Interpreter Overview 2004, http://www.aimlbots.com/en/aiml-
interpreters.html
 Computing machinery and intelligence, Alan Turing [1950],
http://www.abelard.org/turpap/turpap.htm
 Using Dialogue Corpora to Train a Chatbot (Bayan Abu Shawar, Eric
Atwell)
http://www.comp.leeds.ac.uk/andyr/research/papers/techreport2003_02.pdf
Project Proposal

 Extension to Chat Bot, that will reply emails


 Will maintain a chat session in terms of email-session-id
 Can be useful for auto replying to emails that have a
common reply, related to the question in the email
– e.g. – help@cse - email to register your complaints!

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy