Date post: | 22-Dec-2015 |
Category: |
Documents |
Upload: | augustus-hamilton |
View: | 216 times |
Download: | 0 times |
CONVERSE
Intelligent Research Ltd.David Levy, Bobby Batacharia
University of SheffieldYorick Wilks, Roberta Catizone, Alex Krotov
Converse
What is CONVERSE?
• A conversation program designed for the Loebner competition in 1997.
• What is the Loebner competion?– Turing test where a number of judges converse
with the submitted programs using a keyboard. They then decide which of the programs is the most real (One of the entrants is a real person sitting behind a terminal in another room).
• We won
Converse
What is CONVERSE
• Script driven system that tries to keep control of the conversation by posing questions to the user.
Converse
Character Personality
• Catherine, a 26 year-old female journalist
• Born in Britain, living in New York
• We store information about Catherine in a Database.
Converse
Technical Details
• Written in C and C++
• Runs under Windows 95
• Modular System Architecture
• Can converse on 60 different topics– Abortion, work, travel, death, religion, gun-
control...
• Speech component was added later for output
Converse
Parser
• Prospero Parser (off the shelf)– Tags part of speech– Parses the input
• Parser Post Processor (PPP)– Flattens the parse tree– Corrects deficiencies of Prospero
Converse
MicroQueries
• Defines a set of patterns (to be mapped on to the scripts eventually).
• Individual patterns are connected to each other with logical functions.
• Access to the input as well as Wordnet functions.
Converse
Data Modules
• Person Database (PDB)– Stores all the information for each user– Stores information about the system character
• Wordnet– Synonyms and word definitions
• Collins– Famous people, places and things
Converse
Action Modules
• Where-to-Go
• Pisces
• Special Cases
• Scripts
• Information Scavenger
• Topic Change
• Generator
Converse
Where-to Go Module
• Dispatcher module that decides which of the action modules should handle an utterance.
• Each action module places a bid (indicating the confidence that it has a valid response) and the highest bid wins.
• An action module can extract data from the input and store it in the database.
Converse
Pisces
• Question Answering Module
• Divided into 2 parts - question recognition and question answering
• Contains twenty different question types
• Questions are answered by first consulting the person database
• Wordnet is used to enrich the search and for definitions.
Converse
Pisces
• Collins is used for famous entities - people and places.
• If a response cannot be formulated, then a filler response is given. The filler responses are typed according to the question type.
• We distinguish WH questions from other question types.
Converse
Special Cases
• Handles exceptional cases– rude language– illogical birthdays or age– Talk about sex– Violence
• A response is triggered from a set of canned phrases for the above categories.
Converse
Script Module
• Guides the conversation through a network of script lines
• Each script line has – Some canned text– Links to other related scripts and – A set of Microqueries (patterns that map onto the
scripts)
• Keeps track of what the system has said to avoid repeats.
Converse
Information Scavenger
• Extracts any possible information from an user utterance if it is a statement.
• It is only activated if no other action modules have extracted information from the current utterance.
Converse
Topic Change Module
• Controls the flow of conversation
• Decides what order the available 60 topics should be presented to the user.
• Can be triggered by the user.– The system uses content words from the user’s
response to try to match to topic keywords
Converse
Generator
• Takes the results of the action modules and assembles then into a coherent utterance.
• Uses information from the Person Database where necessary.
• Connectives are added where need to ensure a smooth flowing respons.
• Consults a module that provides a number of different ways to say the same thing.
Converse
Limitations
• Parser not meant for dialogue
• We don’t really take into account the user’s previous utterances even though we have kept a dialogue history.
• Doesn’t have an inference engine.
Converse
Advantages
• Flexible design - modular architecture
• Person database allows for swapping of different system personalities
• Has hooks for incorporating large data resources (encyclopedias, knowledge bases etc.)