Learning the Structure of Task-Oriented
Conversations from the Corpus
Ananlada Chotimongkol
Language Technologies Institute
School of Computer Science
Carnegie Mellon University
Dialog Reading Group
December 3rd, 2004
Outline
Introduction
Form-based dialog structure
Task structure
Dialog mechanisms
Dialog structure learning
Concept identification and clustering
Form identification
Operation Classification
Dialog Reading Group
December 3rd, 2004
Outline
Introduction
Form-based dialog structure
Task structure
Dialog mechanisms
Dialog structure learning
Concept identification and clustering
Form identification
Operation Classification
Dialog Reading Group
December 3rd, 2004
Building a new dialog system
“When would
you like to
leave?”
“I would like to fly to
Seattle tomorrow.”
Speech
Recognizer
Natural
Language
Understanding
Dialog Reading Group
Domain
Knowledge
Dialog
Manager
Speech
Synthesizer
Natural
Language
Generator
December 3rd, 2004
Domain knowledge
Steps in the task
Important information, keywords
Specify the desired flight
Search for flights that match the criteria
Negotiate the flights
Make a reservation
Destination, date, time, airlines, etc.
Domain language: how do people talk
Dialog Reading Group
December 3rd, 2004
What is the problem?
“When would
you like to
leave?”
“I would like to fly to
Seattle tomorrow.”
Speech
Recognizer
Natural
Language
Understanding
Dialog Reading Group
Domain
Knowledge
Dialog
Manager
• Can’t reuse
• Time consuming
• Speech
May need an expert
Synthesizer
Natural
Language
Generator
December 3rd, 2004
Research goal
Reduce human effort on acquiring
domain knowledge when create a dialog
system in a new domain
By learning the domain knowledge from
data
Dialog Reading Group
December 3rd, 2004
Observations
Task-oriented conversations have a
clear structure
Reflects domain information e.g. a task is
divided into sub-tasks
Has recurring patterns that are observable
through the language
Dialog Reading Group
December 3rd, 2004
The solutions
To learn domain knowledge from data
1. Specify the structure of task-oriented
conversations
Capture sufficient domain knowledge
Domain-independent
Learnable
2. Learn the structure from a corpus of
human-human conversations
Dialog Reading Group
December 3rd, 2004
Dialogue structure
Task Structure (data representation)
Necessary information for achieving a task
goal
Steps in the task
Domain keywords
Dialog mechanism (operations)
The ways that the participants
communicate and perform the task
Dialog Reading Group
December 3rd, 2004
Outline
Introduction
Form-based dialog structure
Task structure
Dialog mechanisms
Dialog structure learning
Concept identification and clustering
Form identification
Operation Classification
Dialog Reading Group
December 3rd, 2004
Existing dialog structures:
Theoretical-oriented
Examples:
Theory of Discourse Structure (Grosz and Sidner,
1986)
Discourse Representation Theory (DRT) (Kamp
and Reyle, 1993)
Focus on developing a theory that helps
interpret discourse meaning
Might be too complex to be implemented in a
dialog system
Use hand-written rules to recognize the
structure
Dialog Reading Group
December 3rd, 2004
Existing dialog structures:
Engineering-oriented
Examples:
Plan-based theory (Allen and Perrault,
1980)
The theory of Conversation Acts (Traum
and Hinkelman, 1992)
Focus on practical issues:
Predictability of each dialog component
The implementation of the structure in a
dialog system
Dialog Reading Group
December 3rd, 2004
What are missing?
Don’t describe key domain information that
the participants communicate in a dialog.
The role of city names in a travel domain
It is not clear how to apply the structure in a
dialog system
The relations between dialog structure
components and dialog system components
How a dialog manager should treat each
component
Dialog Reading Group
December 3rd, 2004
Form-based dialog structure
Describe a dialog structure with an existing
dialog manger frameworks
Have a concrete mapping between dialog
structure components and dialog system
components
A form-based architecture has been used
successfully in many dialog systems
A form-based structure consists of:
A task structure (forms and slots)
Dialogue mechanisms (form operators) that
advance the dialog
Dialog Reading Group
December 3rd, 2004
Outline
Introduction
Form-based dialog structure
Task structure
Dialog mechanisms
Dialog structure learning
Concept identification and clustering
Form identification
Operation Classification
Dialog Reading Group
December 3rd, 2004
Task Structure
3-level of organization
1. Task: a subset of conversations that
has a specific goal
2. Sub-task: a step in a task that
contributes toward a task goal
=> form
3. Concept: key information
=> slot
Dialog Reading Group
December 3rd, 2004
Task Structure:
Bus schedule enquiry domain
1. Task (multiple tasks):
Which bus runs between A and B?
When will the bus X arrive?
2. Sub-tasks: no further decomposition
3. Concepts:
Bus Number={61C, 28X, …}
Location={CMU, airport, …}
Dialog Reading Group
December 3rd, 2004
Departure time query form
F: Query_Departure_Time
Depart_Location: carnegie_mellon
Arrive_Location: the airport
Arrive_Time: Hour: four Minute: thirty
Bus_Number: 28X
Dialog Reading Group
December 3rd, 2004
Task Structure:
Travel planning domain
1. Task: create travel itinerary
2. Sub-tasks:
Flight reservation
Hotel reservation
Car rental reservation
3. Concepts:
airlines={Continental, US-Airways, …}
hotel={Hilton, Marriott, …}
Dialog Reading Group
December 3rd, 2004
Task Structure:
Map reading domain
Task: draw a line (a route)
Sub-tasks:
Draw a segment of a line
Concepts:
Landmark = {white_mountain, Machete, …}
Orientation = {down, left, …}
Distance = {a couple of centimeters, an inch, …}
Dialog Reading Group
December 3rd, 2004
Outline
Introduction
Form-based dialog structure
Task structure
Dialog mechanisms
Dialog structure learning
Concept identification and clustering
Form identification
Operation Classification
Dialog Reading Group
December 3rd, 2004
Dialogue mechanisms
Operations that the participants use to
advance the dialog toward the goal
Task-oriented operations
Manipulate a form (data structure)
Examples: init_form, fill_form
Discourse-oriented operations
Manage the flow of a conversation
Examples: acknowledgement, greeting
Dialog Reading Group
December 3rd, 2004
Dialogue mechanisms (2)
Have a unique consequence on the
state of the conversation
init_form causes a system to create a new
form
Domain independent, only operation
parameters that are different
Fill city_name in flight_information form
Fill bus_number in bus_information form
Dialog Reading Group
December 3rd, 2004
Air travel-planning domain
PT8: request_form_info: WHAT TIME WOULD YOU LIKE TO DEPART DepLoc:[PITTSBURGH ]
X9: fill_form_info: /UM/ EARLY DepT:[MORNING ]NOT BEFORE DepT:[H:[SEVEN ]]
PT10: acknowledge: OKAY
access_DB
inform_result: U.S. AIRWAYS HAS A NON-STOP …
1st leg Form
Dept_Loc: City: PITTSBURGH
Dept_Date: Month: FEBRUARY Date:
TWENTIETH
Dept_Time: EARLY TimeP: MORNING
NOT BEFORE Hour: SEVEN
Flight_ref:
Arr_Loc: City: HOUSTON State: TEXAS
Airport: INTERCONTINENTAL
Arr_Date:
Arr_Time:
Airline_company:
Bus schedule enquiry domain
U2: fill_form_info: i wanted to take the 28X bus from /um/ DepLoc:[forbes avenue]
to ArLoc:[the airport]
F: Query_Departure_Time
Depart_Location: forbes avenue
Arrive_Location: the airport
Arrive_Time:
Bus_Number: 28X
Outline
Introduction
Form-based dialog structure
Task structure
Dialog mechanisms
Dialog structure learning
Concept identification and clustering
Form identification
Operation Classification
Dialog Reading Group
December 3rd, 2004
Learning framework
Goal: minimize human effort
Use unsupervised learning when possible
Incorporating information from existing knowledge
sources
If additional knowledge from a human is required
Train an initial model with a small amount of annotated
data
Use unsupervised learning or active learning to
selectively explore un-annotated data
A human can correct a mistake
Dialog Reading Group
December 3rd, 2004
Dialog structure components
Domain-dependent -> have to learn in every
domain
Task structure (forms, slots)
Expression for task-oriented operations
Domain-independent -> infrastructure or
have to learn only once
List of operations
Expression for discourse-oriented operations
Dialog Reading Group
December 3rd, 2004
Outline
Introduction
Form-based dialog structure
Task structure
Dialog mechanisms
Dialog structure learning
Concept identification and clustering
Form identification
Operation Classification
Dialog Reading Group
December 3rd, 2004
Concept identification and
clustering
Goal: Identify concept members cluster
together the ones that belong to the
same concept
City={Pittsburgh, Boston, Austin, …}
Assumption:
Word boundaries include compound word
boundaries are given
Dialog Reading Group
December 3rd, 2004
Concept identification steps
1. Identify potential concept members
Filter out noise, function words
2. Cluster similar words together
Statistical-based clustering: Mutual informationbased and Kullback-Liebler-based
Knowledgebase clustering: WordNet
3. Select clusters that represent domain
concepts
Use the same criteria as (1), but work on a
cluster level
Dialog Reading Group
December 3rd, 2004
Outline
Introduction
Form-based dialog structure
Task structure
Dialog mechanisms
Dialog structure learning
Concept identification and clustering
Form identification
Operation Classification
Dialog Reading Group
December 3rd, 2004
Form Identification
Goal: determine different types of forms
that occur in the domain
Assumption:
A dialog may be annotated with concept
labels
Dialog Reading Group
December 3rd, 2004
Approach
Segment a dialog into a sequence of subtasks (form boundaries identification)
Group together the sub-tasks that belong to
the same form type
Train a classifier on lexicon cohesion (Hearst,
1994) and prosodic features
Use unsupervised clustering based on cosine
similarity
Identify a set of slots that associated with
each form type
Analyze a cluster of similar form instances
Dialog Reading Group
December 3rd, 2004
Outline
Introduction
Form-based dialog structure
Task structure
Dialog mechanisms
Dialog structure learning
Concept identification and clustering
Form identification
Operation Classification
Dialog Reading Group
December 3rd, 2004
Operation Classification
Goal: Learn the expressions that associate
with each operation
by classifying an utterance into a pre-defined set
of operations
Assumption
A dialog may be annotated with concepts labels
List of operation types are given
Operation boundaries are known
Dialog Reading Group
December 3rd, 2004
Supervised classification
Use a Markov model (Woszczyna and Waibel,
1994)
States = operation types
Transition probability = dependency between
operation types
Emission probability = P(W|operation_type)
Enhanced models
Use domain concepts as word classes to reduce a
data sparseness problem
Add prosodic features
Dialog Reading Group
December 3rd, 2004
Unsupervised learning
and active learning
1. Train an initial classifier from human-labeled data
2. Apply the current classifier to an unlabeled
operation
(Unsupervised learning) if the confidence is high, add
this instance and the predicted label into the training set
(Active learning) if the confidence is low, ask a human to
label this instance and then add it into the training set
3. Train a new classifier on all labeled data (both
machined-labeled and human-labeled)
Step 2-3 can be iterated
Dialog Reading Group
December 3rd, 2004
Classifier confidence score
1. Difference in probability between the
first rank and the second rank
2. The entropy of the classifier output
1
H (T ) p (T j | U i ) log
p (T j | U i )
j
High entropy = low confidence
Dialog Reading Group
December 3rd, 2004
Suggestion?
Dialog Reading Group
December 3rd, 2004
0
You can add this document to your study collection(s)
Sign in Available only to authorized usersYou can add this document to your saved list
Sign in Available only to authorized users(For complaints, use another form )