IP Library Granted Patent US 11,830,477
Granted Patent B2
US 11,830,477 · App. 16/993,797 · Granted Nov 28, 2023

Fast and robust unsupervised contextual biasing for speech recognition

Inventors: Young Mo Kang (Redwood City, CA); Yingbo Zhou (Mountain View, CA)
Assignee: Salesforce, Inc.
G10L15/063G10L15/16G10L15/26G10L2015/0631G10L2015/088
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,830,477
App. No.
16/993,797
Granted
Nov 28, 2023
Kind
B2
Abstract

An automatic speech recognition (ASR) system that determines a textual representation of a word from a word spoken in a natural language is provided. The ASR system uses an acoustic model, a language model, and a decoder. When the ASR system receives a spoken word, the acoustic model generates word candidates for the spoken word. The language model determines an n-gram score for each word candidate. The n-gram score includes a base score and a bias score. The bias score is based on a logarithmic probability of the word candidate, where the logarithmic probability is derived using a class-based language model where the words are clustered into non-overlapping clusters according to word statistics. The decoder decodes a textual representation of the spoken word from the word candidates and the corresponding n-gram score for each word candidate.

Claims (61)

1. An automatic speech recognition (ASR) system, the system comprising:

a language model in the ASR system, the language model configured to:

receive a word candidate in word candidates that correspond to a spoken word in a context;

determine a base score for the word candidate, wherein the base score is a first logarithmic probability of the word candidate being a textual representation of the spoken word;

receive a second logarithmic probability for the word candidate generated by a class-based language model;

determine a bias score associated with the word candidate, wherein the bias score is based on the second logarithmic probability, whether the candidate word is in the context for the spoken word and whether the candidate word was included in a vocabulary that trained the language model; and

combine the base score and the bias score of the word candidate into an n-gram score of the word candidate; and

a decoder neural network in the ASR system, the decoder neural network configured to determine the textual representation of the spoken word in a natural language using the n-gram score associated with the word candidate.

2. The ASR system of claim 1 , wherein the language model is configured to increase the base score with the bias score for the word candidate that is an out-of-vocabulary word, wherein the out-of-vocabulary word is a word that is not included in a vocabulary used to train the language model.

3. The ASR system of claim 1 , wherein the language model is configured to decrease the base score with the bias score for the word candidate that is a vocabulary word, wherein the vocabulary word is a word that is included in a vocabulary used to train the language model.

4. The ASR system of claim 1 , further configured to:

build the class-based language model using a second vocabulary of words, wherein the class-based language model has a plurality of non-overlapping classes of words according to n-gram statistics for the words in the second vocabulary of words;

determine a logarithmic probability for a word in the second vocabulary of words from the class-based language model, wherein the logarithmic probability is based on a class in the non-overlapping classes; and

store the logarithmic probability for the word in the second vocabulary of words in a memory accessible to the language model.

5. The ASR system of claim 1 , further comprising:

an acoustic model configured to receive the spoken word and determine the word candidates for the spoken word.

6. The ASR system of claim 5 , wherein the acoustic model is further configured to determine an acoustic score for the word candidate in the word candidates; and

the decoder neural network is further configured to determine the textual representation of the spoken word using acoustic scores associated with the word candidates.

7. The ASR system of claim 1 , wherein the bias score does not depend on previous words received by the ASR system and the base score depends on the previous words received by the ASR system.

8. A method comprising:

receiving, at a language model stored in memory and executing on a processor, a word candidate in word candidates that correspond to a spoken word in a context;

determining, using the language model, a base score for the word candidate, wherein the base score is a first logarithmic probability of the word candidate being a textual representation of the spoken word;

receiving a second logarithmic probability for the word candidate generated by a class-based language model;

determining a bias score associated with the word candidate, wherein the bias score is based on the second logarithmic probability, whether the candidate word is in the context for the spoken word and whether the candidate word was included in a vocabulary that trained the language model; and

combining the base score and the bias score of the word candidate into an n-gram score of the word candidate; and

determining, using a decoder neural network, the textual representation of the spoken word in a natural language using the n-gram score associated with the word candidate.

9. The method of claim 8 , further comprising:

increasing, using the language model, the base score with the bias score for the word candidate that is an out-of-vocabulary word, wherein the out-of-vocabulary word is a word that is not included in a vocabulary used to train the language model.

10. The method of claim 8 , further comprising:

decreasing the base score with the bias score for the word candidate that is a vocabulary word, wherein the vocabulary word is a word that is included in a vocabulary used to train the language model.

11. The method of claim 8 , further comprising:

prior to determining the textual representation for the spoken word, building the class-based language model using a second vocabulary of words, wherein the class-based language model has a plurality of non-overlapping classes of words according to n-gram statistics for the words in the second vocabulary of words;

determining a logarithmic probability for a word in the second vocabulary of words using the non-overlapping classes in the class-based language model;

storing the logarithmic probability for the word in a memory accessible to the language model; and

deleting the class-based language model.

12. The method of claim 8 , further comprising:

receiving, at an acoustic model, the spoken word;

determining, at the acoustic model, the word candidates for the spoken word;

determining, at the acoustic model, an acoustic score for the word candidate in the word candidates; and

determining, using the decoder neural network, the textual representation of the spoken word using the acoustic score associated with the word candidate.

13. An automatic speech recognition (ASR) system, comprising:

a class-based language model of the ASR system trained on a vocabulary of words and including a plurality of non-overlapping classes of words according to n-gram statistics for the words in the vocabulary of words;

a language model of the ASR system, the language model configured to:

generate logarithmic probabilities for words in the vocabulary of words based on the non-overlapping classes generated by the class-based language model; and

determine a base score and a bias score for at least one word candidate for a spoken word, wherein the bias score is based on one of the logarithmic probabilities, whether the candidate word is in a context for the spoken word and whether the candidate word was included in a vocabulary that trained the language model; and

a decoder neural network of the ASR system, the decoder neural network configured to convert the at least one word candidate into a textual representation of the spoken word in a natural language based on a combination of the base score and the bias score.

14. The ASR system of claim 13 , wherein:

the language model is configured to increase the base score with the bias score for the at least one word candidate that is an out-of-vocabulary word, wherein the out-of-vocabulary word is a word that is not included in a vocabulary used to train the language model.

15. The ASR system of claim 13 , wherein:

the language model is configured to decrease the base score with the bias score for the at least one word candidate that is a vocabulary word, wherein the vocabulary word is a word that is included in a vocabulary used to train the language model.

16. The ASR system of claim 13 , further configured to: delete the class-based language model after the logarithmic probabilities for words in the vocabulary of words has been determined.

17. The ASR system of claim 13 , further comprising:

an acoustic model configured to receive the spoken word and determine the at least one word candidate for the spoken word and an acoustic score for the at least one word candidate.

18. The ASR system of claim 13 , wherein the decoder neural network is further configured to determine the textual representation of the spoken word using acoustic scores associated with the at least one word candidate and the combination of the base score and the bias score.

19. The ASR system of claim 13 , wherein the bias score does not depend on previous words processed by the ASR system and the base score depends on the previous words processed by the ASR system.

20. The ASR system of claim 1 , wherein the language model is further configured to:

receive a second word candidate in the word candidates corresponding to the spoken word;

determine a second base score for the second word candidate;

determine a second bias score for the second word candidate; and

combine the second base score and the second bias score into a second n-gram score for the second word candidate; and

wherein the decoder neural network is further configured to determine the textual representation of the spoken word using the n-gram score associated with the word candidate and second word candidate.

Assignments (2)
CHANGE OF NAME Recorded Dec 18, 2024
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 069717/0499 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 14, 2020
From: KANG, YOUNG MO; ZHOU, YINGBO
To: SALESFORCE.COM, INC.
Reel/Frame 053499/0504 →
Continuity (2)
Provisional Application 63019200 · May 1, 2020
Related Publication 20210343274A1 · Nov 4, 2021