Probabilistic matching for dialog state tracking with limited training data

US9977778B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-9977778-B1
Application numberUS-201615342590-A
CountryUS
Kind codeB1
Filing dateNov 3, 2016
Priority dateNov 3, 2016
Publication dateMay 22, 2018
Grant dateMay 22, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

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.

First claim

Opening claim text (preview).

What is claimed is: 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. 2. The method of claim 1 , further comprising: for each of a set of the slots, predicting whether the slot value has been instantiated or modified; and conditioning the updating of the dialog state based on the slot predictions. 3. The method of claim 2 , wherein the prediction is performed with a spectral tracking model based on a representation of the segment of the dialog and prior slot predictions. 4. The method of claim 1 , wherein the detecting of mentions in the dialog segment comprises identifying noun phrases in the text string. 5. The method of claim 1 , wherein the extracting candidate slot values from the ontology based on the detected mentions comprises searching the index of ontology values to extract candidate matches for each identified mention. 6. The method of claim 1 , wherein the providing of the indexed ontology comprises generating the indexed ontology using at least one of stemming, n-gram analysis, and word embedding for cosine similarity computation for each of a set of values for each slot. 7. The method of claim 1 , wherein the method comprises, for each of a plurality of iterations, receiving 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, and updating a dialog state based on the ranking of the candidate slot values. 8. The method of claim 7 , further comprising executing a task based on the updated dialog state of at least a subsequent one of the iterations. 9. The method of claim 1 , further comprising generating an agent dialog act based on the updated dialog state. 10. The method of claim 1 , further comprising detecting a user's intent for the dialog, identifying a topic based on the detected intent, and wherein the extracting candidate slot values from the ontology is also based on the identified topic. 11. The method of claim 1 further comprising learning the ranking model using features for encoding a match between an extracted mention and a candidate slot, value pair. 12. The method of claim 1 , wherein the features are selected from the group consisting of lemma form, maximum edit distance, word embeddings, and combinations thereof. 13. 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. 14. The method of claim 13 , wherein the ranking of the candidate slot values comprises 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. 15. A system comprising memory which stores instructions for performing the method of claim 1 and a processor in communication with the memory for executing the instructions. 16. A computer program product comprising non-transitory memory storing instructions which, when executed by a computer, perform the method of claim 1 . 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. 18. The system of claim 17 , further comprising a learning component which learns the ranking model based on feature vectors for mentions that are matched to respective slot, value pairs. 19. The system of claim 17 , further comprising a learning component which learns a temporal model

Assignees

Inventors

Classifications

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9977778B1 cover?
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 …
Who is the assignee on this patent?
Conduent Business Services Llc
What technology area does this patent fall under?
Primary CPC classification G06F40/35. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 22 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).