IP Library Granted Patent US 11,599,730
Granted Patent B2
US 11,599,730 · App. 16/870,568 · Granted Mar 7, 2023

Learning dialogue state tracking with limited labeled data

Inventors: Chien-Sheng Wu (Singapore, SG); Chu Hong Hoi (Singapore, SG); Caiming Xiong (Menlo Park, CA)
Assignee: Salesforce.com, Inc.
G06F40/35G06K9/6257G06N3/08G06N5/04G10L15/16G10L15/22G10L15/30
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,599,730
App. No.
16/870,568
Granted
Mar 7, 2023
Kind
B2
Abstract

Embodiments described in this disclosure illustrate the use of self-/semi supervised approaches for label-efficient DST in task-oriented dialogue systems. Conversational behavior is modeled by next response generation and turn utterance generation tasks. Prediction consistency is strengthened by augmenting data with stochastic word dropout and label guessing. Experimental results show that by exploiting self-supervision the joint goal accuracy can be boosted with limited labeled data.

Claims (53)

1. A method for self-supervised training of a dialogue state tracking (DST) module, the method comprising:

receiving, from a database, a first input of unlabeled dialogue data including a time sequence of dialogue pairs, each dialogue pair including a respective unlabeled user utterance and a respective unlabeled system response;

generating, via the DST module, a predicted system response subsequent to a first dialogue pair based on a first set of dialogue pairs that occur by and include the first dialogue pair in the time sequence of dialogue pairs and a predicted dialogue state from the first dialogue pair;

generating, via the DST module, a predicted user utterance corresponding to the first dialogue pair based on a second set of dialogue pairs that occur prior to the first dialogue pair in the time sequence of dialogue pairs and the predicted dialogue state from the first dialogue pair;

computing an unsupervised loss metric based on the predicted system response and the generated user utterance for the first dialogue pair; and

updating the DST module based on the unsupervised loss metric.

2. The method of claim 1 , wherein the predicted system response is generated, at a first dialogue turn associated with the first dialogue pair, as a conditional probability distribution of the predicted system response for a subsequent dialogue turn conditioned on the first set of dialogue pairs and the predicted dialogue state inferred from the first dialogue pair at the first dialogue turn.

3. The method of claim 1 , wherein the predicted user utterance is generated, at a first dialogue turn associated with the first dialogue pair, as a conditional probability distribution of the predicted current user utterance for the first dialogue turn conditioned on the second set of dialogue pairs and the predicted dialogue state inferred from the first dialogue pair at the first dialogue turn.

4. The method of claim 1 , wherein the predicted system response or the predicted user utterance is generated by a gated recurrent unit initialized by information from a context encoder that encodes the first input of unlabeled dialogue data.

5. The method of claim 4 , wherein the gated recurrent unit receives a state corresponding to a last hidden layer of the context encoder as an initial state.

6. The method of claim 1 , wherein the predicted system response or the predicted user utterance is generated by a gated recurrent unit initialized by information from a state generator that generates state information for each dialogue pair in the time sequence of the dialogue pairs.

7. The method of claim 6 , wherein the gated recurrent unit receives hidden states of the state generator queried by each domain-slot pair and a respective context vector corresponding to the respective domain-slot pair, and generates each output word conditioned on the hidden states of the context encoder.

8. The method of claim 1 , wherein the unsupervised loss metric is computed as a sum of a first cross entropy between the predicted system response and an actual system response from a second dialogue pair subsequent to the first dialogue pair, and a second cross entropy between the generated user utterance and an actual user utterance from the first dialogue pair.

9. The method of claim 1 , further comprising:

receiving a second input of labeled dialogue data;

computing a supervised loss metric for the DST module from the second input of labeled dialogue data;

computing the unsupervised loss metric for the DST module from the second input of labeled dialogue data but without dialogue labels;

computing a weighted sum of the supervised loss metric and the unsupervised metric; and

updating the DST module based on the weighted sum of the supervised loss metric and the unsupervised loss metric.

10. The method of claim 9 , further comprising:

alternately training the DST module by:

using the weighted sum of the supervised loss metric and the unsupervised loss metric derived from labeled dialogue data; and

using the unsupervised loss metric derived from unlabeled dialogue data.

11. A system for self-supervised training of a dialogue state tracking (DST) module, the method comprising:

a memory storing instructions for self-supervised training of the DST module; and

a processor configured to read and execute the instructions from the memory to:

receive, from a database, a first input of unlabeled dialogue data including a time sequence of dialogue pairs, each dialogue pair including a respective unlabeled user utterance and a respective unlabeled system response;

generate, via the DST module, a predicted system response subsequent to a first dialogue pair based on a first set of dialogue pairs that occur by and include the first dialogue pair in the time sequence of dialogue pairs and a predicted dialogue state from the first dialogue pair;

generate, via the DST module, a predicted user utterance corresponding to the first dialogue pair based on a second set of dialogue pairs that occur prior to the first dialogue pair in the time sequence of dialogue pairs and the predicted dialogue state from the first dialogue pair;

compute an unsupervised loss metric based on the predicted system response and the generated user utterance for the first dialogue pair; and

update the DST module based on the unsupervised loss metric.

12. The system of claim 11 , wherein the predicted system response is generated, at a first dialogue turn associated with the first dialogue pair, as a conditional probability distribution of the predicted system response for a subsequent dialogue turn conditioned on the first set of dialogue pairs and the predicted dialogue state inferred from the first dialogue pair at the first dialogue turn.

13. The system of claim 11 , wherein the predicted user utterance is generated, at a first dialogue turn associated with the first dialogue pair, as a conditional probability distribution of the predicted current user utterance for the first dialogue turn conditioned on the second set of dialogue pairs and the predicted dialogue state inferred from the first dialogue pair at the first dialogue turn.

14. The system of claim 11 , wherein the predicted system response or the predicted user utterance is generated by a gated recurrent unit initialized by information from a context encoder that encodes the first input of unlabeled dialogue data.

15. The system of claim 14 , wherein the gated recurrent unit receives a state corresponding to a last hidden layer of the context encoder as an initial state.

16. The system of claim 11 , wherein the predicted system response or the predicted user utterance is generated by a gated recurrent unit initialized by information from a state generator that generates state information for each dialogue pair in the time sequence of the dialogue pairs.

17. The system of claim 16 , wherein the gated recurrent unit receives hidden states of the state generator queried by each domain-slot pair and a respective context vector corresponding to the respective domain-slot pair, and generates each output word conditioned on the hidden states of the context encoder.

18. The system of claim 11 , wherein the unsupervised loss metric is computed as a sum of a first cross entropy between the predicted system response and an actual system response from a second dialogue pair subsequent to the first dialogue pair, and a second cross entropy between the generated user utterance and an actual user utterance from the first dialogue pair.

19. The system of claim 11 , wherein the processor is further configured to read and execute the instructions from the memory to:

receive a second input of labeled dialogue data;

compute a supervised loss metric for the DST module from the second input of labeled dialogue data;

compute the unsupervised loss metric for the DST module from the second input of labeled dialogue data but without dialogue labels;

compute a weighted sum of the supervised loss metric and the unsupervised metric;

update the DST module based on the weighted sum of the supervised loss metric and the unsupervised loss metric; and

alternately train the DST module by:

using the weighted sum of the supervised loss metric and the unsupervised loss metric derived from labeled dialogue data; and

using the unsupervised loss metric derived from unlabeled dialogue data.

20. A non-transitory processor-readable storage medium storing processor-executable instructions for self-supervised training of a dialogue state tracking (DST) module, the instructions being executed by a processor to:

receive, from a database, a first input of unlabeled dialogue data including a time sequence of dialogue pairs, each dialogue pair including a respective unlabeled user utterance and a respective unlabeled system response;

generate, via the DST module, a predicted system response subsequent to a first dialogue pair based on a first set of dialogue pairs that occur by and include the first dialogue pair in the time sequence of dialogue pairs and a predicted dialogue state from the first dialogue pair;

generate, via the DST module, a predicted user utterance corresponding to the first dialogue pair based on a second set of dialogue pairs that occur prior to the first dialogue pair in the time sequence of dialogue pairs and the predicted dialogue state from the first dialogue pair;

compute an unsupervised loss metric based on the predicted system response and the generated user utterance for the first dialogue pair; and

update the DST module based on the unsupervised loss metric.

Assignments (2)
CHANGE OF NAME Recorded Dec 18, 2024
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 069717/0480 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 14, 2020
From: WU, CHIEN-SHENG; HOI, CHU HONG; XIONG, CAIMING
To: SALESFORCE.COM, INC.
Reel/Frame 052662/0209 →
Continuity (2)
Provisional Application 62945792 · Dec 9, 2019
Related Publication 20210174026A1 · Jun 10, 2021