IP Library › Granted Patent US 11,615,255
Granted Patent B2
US 11,615,255 · App. 16/935,584 · Granted Mar 28, 2023

Multi-turn dialogue response generation with autoregressive transformer models

Inventors: Oluwatobi Olabiyi (Arlington, VA); Erik T. Mueller (Chevy Chase, MD); Rui Zhang (McLean, VA)
Assignee: Capital One Services, LLC
G06F40/56G06F40/284G06F40/35G06K9/6257G06K9/6262G06N3/049G06N20/00G10L15/063G10L15/16G10L15/22G10L2015/0631G10L2015/228
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,615,255
App. No.
16/935,584
Granted
Mar 28, 2023
Kind
B2
Abstract

Machine classifiers in accordance with embodiments of the invention capture long-term temporal dependencies in the dialogue data better than the existing RNN-based architectures. Additionally, machine classifiers may model the joint distribution of the context and response as opposed to the conditional distribution of the response given the context as employed in sequence-to-sequence frameworks. Machine classifiers in accordance with embodiments further append random paddings before and/or after the input data to reduce the syntactic redundancy in the input data, thereby improving the performance of the machine classifiers for a variety of dialogue-related tasks. The random padding of the input data may further provide regularization during the training of the machine classifier and/or reduce exposure bias. In a variety of embodiments, the input data may be encoded based on subword tokenization.

Claims (84)

1. A computer-implemented method, comprising:

initializing a model having a sequence to sequence network architecture, wherein the sequence to sequence network architecture comprises:

an encoder; and

a decoder;

training the model based on a training set comprising a plurality of training sequences, wherein each training sequence comprises an encoder sequence and a decoder sequence, and wherein training the model comprises:

generating an encoding of each training sequence of the plurality of training sequences in the training set; and

for each encoding:

randomly inserting an informative padding, comprising a random sampling of encoded tokens from the training set, into the encoder sequence of the encoding;

prepending a start of sequence token to the decoder sequence of the encoding;

appending an end of sequence token to the decoder sequence of the encoding;

training the encoder using the encoder sequence of the encoding; and

training the decoder using the decoder sequence of the encoding; and

generating, using the trained model, a prediction based on an input data set.

2. The computer-implemented method of claim 1 , wherein each encoding comprises an attention weight for each token in the encoding, and

wherein the attention weights are based on a feed-forward analysis using a position of each token in the encoding.

3. The computer-implemented method of claim 2 , wherein training the encoder comprises updating the attention weight for at least one token in the encoder sequence of the encoding.

4. The computer-implemented method of claim 2 , wherein training the decoder comprises updating the attention weight for at least one token in the decoder sequence of the encoding to an attention weight associated with at least one token in the encoder sequence of the encoding.

5. The computer-implemented method of claim 1 , wherein an encoding of a sequence comprises a vector representation the sequence.

6. The computer-implemented method of claim 1 , wherein generating the prediction comprises:

generating an input encoding of the input data;

generating an output sequence comprising:

a start of output sequence token;

one or more output sequence tokens generated by:

generating a next output sequence token by providing the input encoding to the trained model; and

appending the next output sequence token to the output sequence until the next output sequence token comprises an end of output sequence token; and

generating the prediction based on the output sequence.

7. The computer-implemented method of claim 1 , wherein encoder sequences of the plurality of training sequences comprise a set of dialog prompts.

8. The computer-implemented method of claim 1 , wherein decoder sequences of the plurality of training sequences comprise a set of dialog responses.

9. The computer-implemented method of claim 1 , wherein:

the training set comprises a vocabulary; and

an encoding for a sequence comprises one hundred percent coverage for the vocabulary.

10. The computer-implemented method of claim 1 , wherein the model is configured to generate predictions regarding multi-turn dialogs.

11. A device, comprising:

a processor; and

a memory in communication with the processor and storing instructions that, when read by the processor, cause the device to:

initialize a model having a sequence to sequence network architecture, wherein the sequence to sequence network architecture comprises:

an encoder; and

a decoder;

train the model based on a training set comprising a plurality of training sequences, wherein each training sequence comprises an encoder sequence and a decoder sequence, and wherein training the model comprises:

generating an encoding of each training sequence of the plurality of training sequences in the training set, wherein an encoding comprises an attention weight; and

for each encoding:

randomly inserting an informative padding, comprising a random sampling of encoded tokens from the training set, into the encoder sequence of the encoding;

prepending a start of sequence token to the decoder sequence of the encoding;

appending an end of sequence token to the decoder sequence of the encoding;

training the encoder using the encoder sequence of the encoding, wherein the training the encoder comprises updating the attention weight for the encoder sequence; and

training the decoder using the decoder sequence of the encoding; and

generate, using the trained model, a prediction based on an input data set.

12. The device of claim 11 , wherein training the decoder comprises updating the attention weight for at least one token in the decoder sequence of the encoding to an attention weight associated with at least one token in the encoder sequence of the encoding.

13. The device of claim 11 , wherein an encoding of a sequence comprises a vector representation the sequence.

14. The device of claim 11 , wherein the instructions, when read by the processor, further cause the device to generate the prediction by causing the device to:

generate an input encoding of the input data;

generate an output sequence comprising:

a start of output sequence token;

one or more output sequence tokens generated by:

generating a next output sequence token by providing the input encoding to the trained model; and

appending the next output sequence token to the output sequence until the next output sequence token comprises an end of output sequence token; and

generate the prediction based on the output sequence.

15. The device of claim 11 , wherein encoder sequences of the plurality of training sequences comprise a set of dialog prompts.

16. The device of claim 11 , wherein decoder sequences of the plurality of training sequences comprise a set of dialog responses.

17. The device of claim 11 , wherein:

the training set comprises a vocabulary; and

an encoding for a sequence comprises one hundred percent coverage for the vocabulary.

18. A computer-implemented method, comprising:

initializing a model having a sequence to sequence network architecture, wherein the sequence to sequence network architecture comprises:

an encoder; and

a decoder;

training the model based on a training set comprising a plurality of training sequences, wherein each training sequence comprises encoder sequence and a decoder sequence, and wherein training the model comprises:

generating an encoding of each training sequence of the plurality of training sequences in the training set, wherein an encoding comprises an attention weight;

for each encoding:

randomly inserting an informative padding, comprising a random sampling of encoded tokens from the training set, into the encoder sequence of encoding;

prepending a start of sequence token to the decoder sequence of the encoding;

appending an end of sequence token to the decoder sequence of the encoding; and

training the encoder using the encoder sequence of the encoding, wherein the training the encoder comprises updating the attention weight for the encoder sequence; and

training the decoder using the decoder sequence of the encoding;

obtaining input data;

generating an input encoding of the input data;

generating an output sequence comprising:

a start of output sequence token;

one or more output sequence tokens generated by:

generating a next output sequence token by providing the input encoding to the trained model; and

appending the next output sequence token to the output sequence until the next output sequence token comprises an end of output sequence token; and

generating a prediction based on the output sequence.

19. The computer-implemented method of claim 18 , wherein encoder sequences of the plurality of training sequences comprise a set of dialog prompts.

20. The computer-implemented method of claim 18 , wherein decoder sequences of the plurality of training sequences comprise a set of dialog responses.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 23, 2020
From: OLABIYI, OLUWATOBI; MUELLER, ERIK T.; ZHANG, RUI
To: CAPITAL ONE SERVICES, LLC
Reel/Frame 053290/0681 →
Continuity (2)
Provisional Application 62877076 · Jul 22, 2019
Related Publication 20210027022A1 · Jan 28, 2021