converse intelligent research ltd. david levy, bobby batacharia university of sheffield yorick...
TRANSCRIPT
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.)