IP Library › Granted Patent US 11,133,001
Granted Patent B2
US 11,133,001 · App. 16/230,556 · Granted Sep 28, 2021

Generating dialogue events for natural language system

Inventors: Jacob Daniel Andreas (San Francisco, CA); Daniel Louis Klein (Orinda, CA); David Leo Wright Hall (Berkeley, CA); Laurence Steven Gillick (Newton, MA); Pengyu Chen (Union City, CA)
Assignee: Microsoft Technology Licensing, LLC
G10L15/22G10L15/1815G10L15/1822G10L2015/223
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,133,001
App. No.
16/230,556
Granted
Sep 28, 2021
Kind
B2
Abstract

A method for generating a dialogue event in a natural language processing system comprises loading, into a computer memory, a computer-readable seed command describing an ordered sequence of two or more top-level dialogue events. A dialogue event includes a client utterance or a computerized assistant response. The seed command includes one or more sub-commands, each sub-command corresponding to a portion of the ordered sequence of two or more top-level dialogue events, and the focal sub-command of the one or more sub-commands being parametrized by a seed semantic parameter. The method further comprises re-parametrizing the focal sub-command by outputting a plurality of different re-parametrized focal sub-commands wherein, in each re-parametrized focal sub-command, the seed semantic parameter is replaced by one of a plurality of different synthetic semantic parameters. The method further comprises, for each of the plurality of different synthetic semantic parameters: saving a corresponding re-parametrized focal sub-command.

Claims (46)

1. A method for generating dialogue events in a natural language processing system, comprising:

loading, into a computer memory, a computer-readable seed command describing an ordered sequence of two or more top-level dialogue events, wherein:

a dialogue event includes a client utterance or a computerized assistant response; and

the seed command includes one or more sub-commands, each sub-command corresponding to a portion of the ordered sequence of two or more top-level dialogue events, and a focal sub-command of the one or more sub-commands being parametrized by a seed semantic parameter indicating a semantic situation described in the computer-readable seed command;

re-parametrizing the focal sub-command by outputting a plurality of different re-parametrized focal sub-commands wherein, in each re-parametrized focal sub-command, the seed semantic parameter is replaced by one of a plurality of different synthetic semantic parameters, each alternative semantic parameter indicating a different alternative semantic situation not described in the computer-readable seed command; and

for each of the plurality of different synthetic semantic parameters, saving a corresponding alternative computer-readable seed command, each alternative computer-readable seed command including a corresponding re-parametrized focal sub-command, wherein the alternative computer-readable seed commands have a predetermined format usable to train the natural language processing system to respond to different corresponding semantic situations.

2. The method of claim 1 , wherein one of the sub-commands is a primitive command to access an application programming interface (API), the seed semantic parameter is an API-specific parameter for accessing the API, and re-parametrizing the primitive command includes storing a different API-specific parameter for accessing the API.

3. The method of claim 1 , wherein one of the sub-commands is a primitive command to output a computer assistant utterance, the seed semantic parameter is a computer-readable description of a natural language feature of the computer assistant utterance, and re-parametrizing the primitive command includes storing a computer-readable description of a different natural language feature.

4. The method of claim 1 , wherein one of the sub-commands is a primitive command to recognize content of one or more client utterances and is configured to generate a result dialogue event including a computer-readable description of recognized content of the one or more client utterances, the seed semantic parameter is a computer-readable description of a natural language feature of the client utterance, and re-parametrizing the primitive command includes storing a computer-readable description of a different natural language feature.

5. The method of claim 1 , wherein the focal sub-command is configured to generate up to one result dialogue event, and a second one of the sub-commands is configured to be conditionally executed, responsive to the focal sub-command returning a result dialogue event, the method further including re-parametrizing the second sub-command.

6. The method of claim 1 , the method further comprising using one of the re-parametrized focal sub-commands to generate an ordered sequence of one or more dialogue events including alternative client utterances and corresponding alternative computerized assistant responses, in the predetermined format usable to train the natural language processing system to respond to different semantic situations.

7. The method of claim 6 , wherein generating the ordered sequence of one or more dialogue events includes:

outputting an initial ordered sequence of one or more dialogue events based on the re-parametrized focal sub-command; and

paraphrasing the initial ordered sequence to generate the ordered sequence.

8. The method of claim 1 , wherein a synthetic semantic parameter of the plurality of different synthetic parameters is acquired by:

graphically displaying a portion of the computer-readable seed command corresponding to the seed semantic parameter; and

receiving one or more computer inputs indicating the synthetic semantic parameter.

9. The method of claim 1 , wherein a synthetic semantic parameter of the plurality of different synthetic parameters is acquired by operating a computer model linking a computer-readable description of the seed semantic parameter to one or more candidate synthetic semantic parameters.

10. The method of claim 8 , further comprising outputting, to a semantic parameter data store, a computer-readable representation of the synthetic semantic parameter indicated by the one or more computer inputs, wherein the semantic parameter data store is addressable based on the seed semantic parameter.

11. The method of claim 10 , wherein one of the plurality of different synthetic semantic parameters is acquired by looking up one or more candidate synthetic semantic parameters in the semantic parameter data store by locating an address defined by the seed semantic parameter.

12. The method of claim 1 , wherein the focal sub-command is one of a plurality of sub-commands selected for re-parametrization.

13. The method of claim 1 , wherein the focal sub-command includes a further layer of one or more further sub-commands, and wherein re-parametrizing the focal sub-command further includes re-parametrizing one or more of the further sub-commands.

14. The method of claim 13 , wherein the further layer of further sub-commands includes further recursive layers of sub-commands, and wherein re-parametrizing the further layer of sub-commands includes recursively re-parametrizing each further recursive layer of sub-commands.

15. The method of claim 14 , further comprising maintaining a grammar model configured to efficiently generate a recursive expansion of a command by re-parametrizing one or more semantic parameters at each further recursive layer of sub-commands for the command.

16. A pipeline for generating a dialogue event in a natural language processing system, comprising:

an annotation acquisition machine configured to load, into a computer memory, a computer-readable seed command describing an ordered sequence of two or more top-level dialogue events, wherein:

a dialogue event includes a client utterance or a computerized assistant response; and

the seed command includes one or more sub-commands, each sub-command corresponding to a portion of the ordered sequence of two or more top-level dialogue events, and a focal sub-command of the one or more sub-commands being parametrized by a seed semantic parameter indicating a semantic situation described in the computer-readable seed command;

a synthetic data generation machine configured to:

re-parametrize the focal sub-command by outputting a plurality of different re-parametrized focal sub-commands wherein, in each re-parametrized focal sub-command, the seed semantic parameter is replaced by one of a plurality of different synthetic semantic parameters, each alternative semantic parameter indicating a different alternative semantic situation not described in the computer-readable seed command; and

for each of the plurality of different synthetic semantic parameters, save a corresponding alternative computer-readable seed command, each alternative computer-readable seed command including a corresponding re-parametrized focal sub-command, wherein the alternative computer-readable seed commands have a predetermined format usable to train the natural language processing system to respond to different corresponding semantic situations.

17. The pipeline of claim 16 , wherein a synthetic semantic parameter of the plurality of different synthetic parameters is acquired by:

graphically displaying a portion of the computer-readable seed command corresponding to the seed semantic parameter; and

receiving one or more computer inputs indicating the synthetic semantic parameter.

18. The pipeline of claim 16 , wherein generating the ordered sequence of one or more dialogue events includes:

outputting an initial ordered sequence of one or more dialogue events based on the re-parametrized focal sub-command; and

paraphrasing the initial ordered sequence to generate the ordered sequence.

19. The pipeline of claim 16 , wherein the focal sub-command includes a further layer of one or more further sub-commands, and wherein re-parametrizing the focal sub-command further includes re-parametrizing one or more of the further sub-commands.

20. A computer system, comprising:

a logic device; and

a storage device configured to hold instructions executable by the logic device to:

load, into a computer memory, a computer-readable seed command describing an ordered sequence of two or more top-level dialogue events, wherein:

a dialogue event includes a client utterance or a computerized assistant response; and

the seed command includes one or more sub-commands, each sub-command corresponding to a portion of the ordered sequence of two or more top-level dialogue events, and a focal sub-command of the one or more sub-commands being parametrized by a seed semantic parameter indicating a semantic situation described in the computer-readable seed command;

re-parametrize the focal sub-command by outputting a plurality of different re-parametrized focal sub-commands wherein, in each re-parametrized focal sub-command, the seed semantic parameter is replaced by one of a plurality of different synthetic semantic parameters, each alternative semantic parameter indicating a different alternative semantic situation not described in the computer-readable seed command; and

for each of the plurality of different synthetic semantic parameters, save a corresponding alternative computer-readable seed command, each alternative computer-readable seed command including a corresponding re-parametrized focal sub-command, wherein the alternative computer-readable seed commands have a predetermined format usable to train the natural language processing system to respond to different corresponding semantic situations.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 28, 2020
From: SEMANTIC MACHINES, INC.
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 053904/0601 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 18, 2019
From: ANDREAS, JACOB DANIEL; KLEIN, DANIEL LOUIS; HALL, DAVID LEO WRIGHT; GILLICK, LAURENCE STEVEN; CHEN, PENGYU
To: SEMANTIC MACHINES, INC.
Reel/Frame 048058/0617 →
Continuity (2)
Provisional Application 62645702 · Mar 20, 2018
Related Publication 20190295545A1 · Sep 26, 2019
Cited By (1)
US 12,579,050