IP Library Granted Patent US 10,832,664
Granted Patent B2
US 10,832,664 · App. 15/682,133 · Granted Nov 10, 2020

Automated speech recognition using language models that selectively use domain-specific model components

Inventors: Fadi Biadsy (New York, NY); Diamantino Antionio Caseiro (Philadelphia, PA)
Assignee: Google LLC
G10L15/197G10L15/02G10L15/18G10L15/32G10L15/183G10L15/19
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 10,832,664
App. No.
15/682,133
Granted
Nov 10, 2020
Kind
B2
Abstract

Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for language models using domain-specific model components. In some implementations, context data for an utterance is obtained. A domain-specific model component is selected from among multiple domain-specific model components of a language model based on the non-linguistic context of the utterance. A score for a candidate transcription for the utterance is generated using the selected domain-specific model component and a baseline model component of the language model that is domain-independent. A transcription for the utterance is determined using the score the transcription is provided as output of an automated speech recognition system.

Claims (58)

1. A method performed by one or more computers, the method comprising:

obtaining context data for an utterance, the context data indicating (i) a linguistic context that includes one or more words preceding the utterance, and (ii) a non-linguistic context;

selecting, from among multiple domain-specific model components of a language model that have been respectively trained for different groups of features, a subset of the domain-specific model components to use in recognizing the utterance, the subset of the domain-specific model components being selected based on the non-linguistic context of the utterance, wherein each of the domain-specific model components corresponds to a different aspect of non-linguistic context, wherein the domain-specific model components comprise different sets of n-gram features for n-grams, and wherein each of the domain-specific model components has corresponding weights for its n-gram features trained based on language examples from multiple users that occur in the aspect of non-linguistic context corresponding to the domain-specific model component;

generating a score for a candidate transcription for the utterance using the language model, the score being generated using (i) the selected subset of the domain-specific model components, and (ii) a baseline model component of the language model that is domain-independent and includes corresponding weights for a respective set of features, wherein the score is generated without using the domain-specific model components that were not selected;

determining a transcription for the utterance using the score; and

providing the transcription as output of an automated speech recognition system,

wherein the language model comprising the baseline model component and the multiple domain-specific model components is trained by, for each of a plurality of training language examples each labeled as occurring in one or more particular aspects of non-linguistic context:

triggering, for use in training the language model on the corresponding training language example in unison with the baseline model component, one or more of the domain-specific model components that correspond to at least one of the one or more particular aspects of non-linguistic context that the corresponding training language example is labeled as occurring in;

generating, as output from the language model, using both the corresponding weights of the baseline model component and the weights of the one or more triggered domain-specific model components, a language model score; and

updating, using the language model score output from the language model, the weights of the one or more triggered domain-specific model components without updating the corresponding weights of the baseline model component.

2. The method of claim 1 , wherein the domain-specific model components each correspond to a different domain in a set of multiple domains, and the baseline model does not correspond to any of the multiple domains.

3. The method of claim 1 , wherein the baseline model component is configured to provide a the language model score independent of non-linguistic context information.

4. The method of claim 1 , wherein the baseline model component and each of the domain-specific model components are log-linear models, each of the log-linear models comprising weights corresponding to a respective set of features.

5. The method of claim 4 , wherein the respective set of features for each of the log-linear models comprises n-gram features.

6. The method of claim 5 , wherein the baseline model component includes weights for features that represent occurrence of n-grams independent of non-linguistic context; and

wherein the domain-specific model components include weights for features that represent occurrence of n-grams in specific non-linguistic contexts, each of the domain-specific model components having weights for a different non-linguistic context.

7. The method of claim 1 , wherein the language model includes (i) the baseline model component, which uses linguistic context information and does not use non-linguistic context information, and (ii) the domain-specific model components, which use both linguistic context information and non-linguistic context information.

8. The method of claim 1 , wherein each of the domains corresponds to at least one of a location, a time condition, a user characteristic, a device characteristic, or a device status.

9. The method of claim 1 , wherein generating the score for the candidate transcription comprises:

generating the score using a scoring function that changes according to which domain-specific model components are selected.

10. The method of claim 1 , wherein generating the score for the candidate transcription comprises:

determining (i) first feature values for first n-gram features of the baseline model component and (ii) second feature values for second n-gram features of a particular domain-specific model component in the selected subset.

11. The method of claim 10 , wherein the second n-gram features of the particular domain-specific model component correspond to a subset of words or phrases having n-gram features in the baseline model component, but represent occurrence of the words or phrases in a particular non-linguistic context associated with the domain-specific model component.

12. The method of claim 10 , wherein generating the score for the candidate transcription for the utterance using the language model comprises:

multiplying the first feature values with corresponding weights for the first n-gram features in the baseline model;

multiplying the second feature values with corresponding weights for the second n-gram features in the particular domain-specific model component; and

generating the score using a sum of results of the multiplications.

13. The method of claim 10 , wherein generating the score for the candidate transcription for the utterance using the language model comprises:

determining a sum of (i) weights for the first n-gram features of the baseline model and (ii) weights for the second n-gram features of the particular domain-specific model component; and

generating the score based on the sum.

14. The method of claim 1 , further comprising:

obtaining data indicating multiple candidate transcriptions for the utterance;

generating a score for each of the multiple candidate transcriptions, wherein the score for each of the multiple candidate transcriptions is generated using the baseline language model component and the selected domain-specific model component; and

wherein determining the transcription for the utterance comprises selecting, as the transcription for the utterance, a particular candidate transcription of the multiple candidate transcriptions based on the generated scores.

15. The method of claim 1 , wherein each of the domain-specific model components has multiple feature sets.

16. The method of claim 15 , wherein generating the score for the candidate transcription comprises generating the score using at least one, but less than all, of the feature sets of the selected domain-specific model component.

17. The method of claim 15 , wherein generating the score for the candidate transcription comprises generating the score using all of the feature sets of the selected domain-specific model component.

18. An automated speech recognition system comprising:

one or more computers and one or more computer-readable storage media storing instructions that, when executed by the one or more computers, cause the one or more computers to perform operations comprising:

obtaining context data for an utterance, the context data indicating (i) a linguistic context that includes one or more words preceding the utterance, and (ii) a non-linguistic context;

selecting, from among multiple domain-specific model components of a language model that have been respectively trained for different groups of features, a subset of the domain-specific model components to use in recognizing the utterance, the subset of the domain-specific model components being selected based on the non-linguistic context of the utterance, wherein each of the domain-specific model components corresponds to a different aspect of non-linguistic context, wherein the domain-specific model components comprise different sets of n-gram features for n-grams, and wherein each of the domain-specific model components has corresponding weights for its n-gram features trained based on language examples from multiple users that occur in the aspect of non-linguistic context corresponding to the domain-specific model component;

generating a score for a candidate transcription for the utterance using the language model, the score being generated using (i) the selected subset of the domain-specific model components, and (ii) a baseline model component of the language model that is domain-independent and includes corresponding weights for a respective set of features, wherein the score is generated without using the domain-specific model components that were not selected;

determining a transcription for the utterance using the score; and

providing the transcription as output of the automated speech recognition system,

wherein the language model comprising the baseline model component and the multiple domain-specific model components is trained by, for each of a plurality of training language examples each labeled as occurring in one or more particular aspects of non-linguistic context:

triggering, for use in training the language model on the corresponding training language example in unison with the baseline model component, one or more of the domain-specific model components that correspond to at least one of the one or more particular aspects of non-linguistic context that the corresponding training language example is labeled as occurring in;

generating, as output from the language model, using both the corresponding weights of the baseline model component and the weights of the one or more triggered domain-specific model components, a language model score; and

updating, using the language model score output from the language model, the weights of the one or more triggered domain-specific model components without updating the corresponding weights of the baseline model component.

19. One or more non-transitory computer-readable media storing instructions that, when executed by one or more computers, cause the one or more computers to perform operations comprising:

obtaining context data for an utterance, the context data indicating (i) a linguistic context that includes one or more words preceding the utterance, and (ii) a non-linguistic context;

selecting, from among multiple domain-specific model components of a language model that have been respectively trained for different groups of features, a subset of the domain-specific model components to use in recognizing the utterance, the subset of the domain-specific model components being selected based on the non-linguistic context of the utterance, wherein each of the domain-specific model components corresponds to a different aspect of non-linguistic context, wherein the domain-specific model components comprise different sets of n-gram features for n-grams, and wherein each of the domain-specific model components has corresponding weights for its n-gram features trained based on language examples from multiple users that occur in the aspect of non-linguistic context corresponding to the domain-specific model component;

generating a score for a candidate transcription for the utterance using the language model, the score being generated using (i) the selected subset of the domain-specific model components, and (ii) a baseline model component of the language model that is domain-independent and includes corresponding weights for a respective set of features, wherein the score is generated without using the domain-specific model components that were not selected;

determining a transcription for the utterance using the score; and

providing the transcription as output of an automated speech recognition system,

wherein the language model comprising the baseline model component and the multiple domain-specific model components is trained by, for each of a plurality of training language examples each labeled as occurring in one or more particular aspects of non-linguistic context:

triggering, for use in training the language model on the corresponding training language example in unison with the baseline model component, one or more of the domain-specific model components that correspond to at least one of the one or more particular aspects of non-linguistic context that the corresponding training language example is labeled as occurring in;

generating, as output from the language model, using both the corresponding weights of the baseline model component and the weights of the one or more triggered domain-specific model components, a language model score; and

updating, using the language model score output from the language model, the weights of the one or more triggered domain-specific model components without updating the corresponding weights of the baseline model component.

Assignments (2)
CHANGE OF NAME Recorded Oct 20, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044567/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 25, 2017
From: BIADSY, FADI; CASEIRO, DIAMANTINO ANTONIO
To: GOOGLE INC.
Reel/Frame 043400/0714 →
Continuity (2)
Provisional Application 62377264 · Aug 19, 2016
Related Publication 20180053502A1 · Feb 22, 2018
Cited By (3)
US 12,400,644 US 12,579,973 US 12,592,222