PROBABILISTIC MATCHING FOR DIALOG STATE TRACKING WITH LIMITED TRAINING DATA
First Claim
Patent Images
1. A method for dialog state tracking in a dialog system for conducting a dialog between a virtual agent and a user, the method comprising:
- providing an ontology in which a set of values are indexed by slot;
receiving a user utterance and, with a speech-to-text converter, converting the user utterance to a text string comprising a segment of a dialog;
detecting mentions in the dialog segment;
extracting candidate slot values from the ontology, based on the detected mentions;
ranking the candidate slot values, comprising computing a feature vector for each detected mention and ranking the candidate slot values with a prediction model trained on (slot, value) pair labels and feature vectors for mentions in a set of training dialog segments, the feature vectors include values for lexicalized and delexicalized features for the detected mention; and
updating a dialog state based on the ranking of the candidate slot values; and
outputting a dialog act of the virtual agent, based on the updated dialog state,wherein the converting of the utterance, detecting mentions, extracting candidate slot values, ranking the candidate slot values, and updating the dialog state are performed with a processor.
6 Assignments
0 Petitions
Accused Products
Abstract
A system and method for dialog state tracking employ an ontology in which a set of values are indexed by slot. A segment of a dialog is processed to detect mentions. Candidate slot values are extracted from the ontology, based on the detected mentions. The candidate slot values are ranked. A dialog state is updated, based on the ranking of the candidate slot values, which may be conditioned on the output of a temporal model, which predicts whether the value of the slot has been instantiated, modified, or is unchanged.
31 Citations
22 Claims
-
1. A method for dialog state tracking in a dialog system for conducting a dialog between a virtual agent and a user, the method comprising:
-
providing an ontology in which a set of values are indexed by slot; receiving a user utterance and, with a speech-to-text converter, converting the user utterance to a text string comprising a segment of a dialog; detecting mentions in the dialog segment; extracting candidate slot values from the ontology, based on the detected mentions; ranking the candidate slot values, comprising computing a feature vector for each detected mention and ranking the candidate slot values with a prediction model trained on (slot, value) pair labels and feature vectors for mentions in a set of training dialog segments, the feature vectors include values for lexicalized and delexicalized features for the detected mention; and updating a dialog state based on the ranking of the candidate slot values; and outputting a dialog act of the virtual agent, based on the updated dialog state, wherein the converting of the utterance, detecting mentions, extracting candidate slot values, ranking the candidate slot values, and updating the dialog state are performed with a processor. - View Dependent Claims (2, 3, 6, 7, 9, 10, 11, 12, 13, 14, 15, 16, 21)
-
-
4. A method for dialog state tracking in a dialog system for conducting a dialog between a virtual agent and a user, the method comprising:
-
providing an ontology in which a set of values are indexed by slot; receiving a user utterance and, with a speech-to-text converter, converting the user utterance to a text string comprising a segment of a dialog; detecting mentions in the dialog segment; extracting candidate slot values from the ontology, based on the detected mentions; ranking the candidate slot values; for each of a set of the slots, predicting whether the slot value has been instantiated or modified, the prediction being performed with a spectral tracking model based on a representation of the segment of the dialog and prior slot predictions, wherein in the spectral tracking model, for each of set of dialog segments, each slot is associated with a first vector of discrete variables representing an initial state and a second vector of discrete variables representing a next state, wherein in each vector, a first of the variables indicates whether the slot has been instantiated, a second of the variables indicates whether the value of the slot has been modified, and a third of the variables indicates whether the value of the slot is non-instantiated; and updating a dialog state based on the ranking of the candidate slot values, the updating of the dialog state being conditioned based on the slot predictions; and outputting a dialog act of the virtual agent, based on the updated dialog state, wherein the converting of the utterance, detecting mentions, extracting candidate slot values, ranking the candidate slot values, and updating the dialog state are performed with a processor. - View Dependent Claims (8)
-
-
5. (canceled)
-
17. A dialog system comprising:
-
a speech-to-text converter, which converts a human-generated utterance to a text string; and a system for dialog state tracking comprising; memory which stores an ontology in which a set of values are indexed by slot; a mention detection component, which detects mentions in an input dialog segment of a dialog comprising the text string; a searching component, which extracts candidate slot values from the ontology, based on the detected mentions; a ranking component, which ranks the candidate slot values; an update component, which updates a dialog state based on the ranking of the candidate slot values; and a contextualizing component, which conditions the updating of the dialog state for at least one of the slots based on a prediction that the value of the slot has been instantiated or modified, the prediction being made independently of the candidate slot values, the prediction being made with a spectral tracking model which has been learned using sequences of dialog turns annotated with corresponding state descriptors, each state descriptor including, for each slot of the dialog state, an indicator that encodes whether the slot is not-instantiated, instantiated, or modified; an output component which outputs a dialog act; and a processor which implements the mentioned detection component, searching component, ranking component, update component, and contextualizing component. - View Dependent Claims (18, 19, 22)
-
-
20. In a dialog system for conducting a dialog between a virtual agent and a user, a method comprising:
-
receiving a user utterance and, with a speech-to-text converter, converting the user utterance to a text string comprising a segment of a dialog; detecting mentions in the dialog segment of the dialog; identifying candidate slot values in an ontology of (slot, value) pairs, based on the detected mentions, the values being linguistically preprocessed such that a given slot value in a (slot,value) pair is matched to a plurality of different mentions; ranking the identified candidate slot values using a classifier trained on a set of features extracted from mentions and respective (slot,value) pair labels; updating a dialog state based on the ranking of the candidate slot values, the updating of the dialog state for at least one of the slots being conditioned on the output of a temporal model which predicts whether the value of the slot has been instantiated, modified or is unchanged; and outputting a dialog act of the virtual agent, the detecting mentions, identifying candidate slot values, and the updating of the dialog state being implemented by a processor.
-
Specification