# US 2017/0287478 A1 · Hierarchical attention for spoken dialogue state tracking

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2017/0287478 A1
- Document ID: US20170287478A1
- Status: Published application
- Kind: A1
- Application number: 15/473,409
- Filed: 2017-03-29
- Published: 2017-10-05
- Earliest claimed: 2016-03-29
- Assignees: Maluuba Inc.
- Applicants: Maluuba Inc.
- Inventors: Hannes SCHULZ; Jing HE
- Web page: https://patentgrep.com/patent/US20170287478A1

## CPC

- G10L 15/22: Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L 13/08: Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
- G10L 15/16: using artificial neural networks
- G10L 15/197: Probabilistic grammars, e.g. word n-grams
- G10L 15/26: Speech to text systems (G10L15/08 takes precedence)
- G10L 25/30: using neural networks
- G10L 2015/223: {Execution procedure of a spoken command}
- G10L: SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING

## Abstract

Described herein are systems and methods for providing hierarchical state tracking in a spoken dialogue system. A sequence of turns is received by a spoken dialogue system. Each turn includes a user utterance and a machine act. At each turn, a value pointer and a turn pointer are provided for that turn. The value pointer represents a probability distribution over the one or more words in the user utterance that indicates whether each word in the user utterance is a slot value for a slot. The turn pointer identifies which turn in a set of turns includes a currently-relevant slot value for the slot, where the set of turns includes a current turn for which the turn point is being provided, and all turns that precede the current turn.

## Claims

### Claim 1

A computer-implemented method, comprising:
receiving a sequence of turns, each turn comprising:
a user utterance comprising one or more words; and
a machine act comprising one or more words;
for each turn, providing a value pointer comprising a probability distribution over the one or more words in the user utterance that indicates whether each word is a slot value for a slot; and
for each turn, providing a turn pointer that identifies which turn in a set of turns includes a currently-relevant slot value for the slot, the set of turns comprising:
a current turn for which the turn point is being provided; and
all turns that precede the current turn.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, wherein the probability distribution comprises a probability distribution over the one or more words in the user utterance or over the one or more words in the knowledge database.

### Claim 3 (depends on 2)

The computer-implemented method of claim 2, wherein the operation of providing the value pointer for that turn comprises one of:
producing the probability distribution by comparing the one or more words in the user utterance to corresponding one or more words in a knowledge database; or
producing the probability distribution over the one or more words in the user utterance to indicate whether each word in the user utterance is the slot value for the slot.

### Claim 4 (depends on 3)

The computer-implemented method of claim 3, wherein the probability is a first probability and the operation of providing the value pointer further comprises:
for each turn in the set of turns, determining a second probability that user affirmed the slot value mentioned in the machine act of that turn; and
if the user affirmed the slot value, causing the value pointer to point the word cited in the machine act.

### Claim 5 (depends on 3)

The computer-implemented method of claim 3, wherein the operation of providing the value pointer comprises processing, by a recurrent neural network, each word in the user utterance.

### Claim 6 (depends on 5)

The computer-implemented method of claim 5, wherein the recurrent neural network comprises a bi-directional neural network.

### Claim 7 (depends on 1)

The computer-implemented method of claim 1, wherein
the probability distribution is a first probability distribution; and
the method further comprises for each turn, determining a dialogue state by determining, for each slot, a second probability distribution over all of the possible slot values for every slot.

### Claim 8 (depends on 7)

The computer-implemented method of claim 7, further comprising determining a machine action based on the dialogue state.

### Claim 9 (depends on 8)

The computer-implemented method of claim 8, wherein the machine action comprises:
asking a confirming question;
asking for more information; or
sending a message.

### Claim 10

A system, comprising:
at least one processing unit; and
at least one memory storing computer executable instructions which, when executed by the at least one processing unit, performs a method, comprising:
receiving a sequence of turns, each turn comprising:
a user utterance comprising one or more words; and
a machine act comprising one or more words;
for each turn, providing a value pointer comprising a probability distribution over the one or more words in the user utterance that indicates whether each word is a slot value for a slot; and
for each turn, providing a turn pointer that identifies which turn in a set of turns includes a currently-relevant slot value for the slot, the set of turns comprising:
a current turn for which the turn point is being provided; and
all turns that precede the current turn.

### Claim 11 (depends on 10)

The system of claim 10, further comprising instructions for accessing a knowledge database.

### Claim 12 (depends on 11)

The system of claim 11, wherein the probability distribution comprises a probability distribution over the one or more words in the user utterance or over the one or more words in the knowledge database.

### Claim 13 (depends on 12)

The system of claim 12, wherein the instructions for providing the value pointer for that turn comprises instructions for:
producing the probability distribution by comparing the one or more words in the user utterance to corresponding one or more words in a knowledge database; or
producing the probability distribution over the one or more words in the user utterance to indicate whether each word in the user utterance is the slot value for the slot.

### Claim 14 (depends on 13)

The system of claim 13, wherein the probability is a first probability and the instructions for providing the value pointer further comprises instructions for:
for each turn in the set of turns, determining a second probability that user affirmed the slot value mentioned in the machine act of that turn; and
if the user affirmed the slot value, causing the value pointer to point the word cited in the machine act.

### Claim 15 (depends on 13)

The system of claim 13, wherein the instructions for providing the value pointer comprises instructions for processing, by a recurrent neural network, each word in the user utterance.

### Claim 16 (depends on 10)

The system of claim 10, wherein
the probability distribution is a first probability distribution; and
the method further comprises for each turn, determining a dialogue state by determining, for each slot, a second probability distribution over all of the possible slot values.

### Claim 17 (depends on 10)

The system of claim 10, further comprising instructions for determining a machine action based on the dialogue state.

### Claim 18 (depends on 10)

The system of claim 10, wherein the system comprises a server computing device.

### Claim 19

A computer-implemented method, comprising:
receiving a user utterance comprising one or more words;
processing, by a hierarchical pointer network, the user utterance;
determining whether the user utterance includes a high level of noise;
if the user utterance does not include a high level of noise, producing a value pointer by determining a probability distribution over the one or more words in the user utterance that indicates whether each word in the user utterance is a slot value for a slot; and
if the user utterance includes a high level of noise, comparing the one or more words in the user utterance with a knowledge database in an embedding space to derive the value pointer.

### Claim 20 (depends on 19)

The computer-implemented method of claim 19, wherein the hierarchical pointer network comprises a recurrent neural network.
