Patent ID: 9489375
Filing Date: 2016-11-08
CPC Classification: G06F,G10L

Claim Text:
1. A computer-implemented method performed by at least one computer processor executing computer program instructions tangibly stored on at least one non-transitory computer-readable medium, the method comprising using the at least one computer processor to perform operations of: receiving, by an automatic speech recognition system executed by the at least one computer processor, a first plurality of inputs into a user interface element of a target application while the target application is in a first state; training, by the automatic speech recognition system, a first language model based on the first plurality of inputs, comprising: identifying, by an operating system hooking component included in the speech recognition system executed by the at least one computer processor, a state of the user interface element by intercepting messages between the said user interface element and the computer processor's operating system while the user interface element is displayed in a foreground of a graphical user interface; and associating, by the automatic speech recognition system, the first language model with the user interface element; determining, by the automatic speech recognition system, that the target application is in the first state, wherein determining further comprises determining that the user interface element is in the identified state; applying, by the automatic speech recognition system, the first language model to a first speech input in response to determining that the target application is in the first state; receiving, by the automatic speech recognition system, a second plurality of inputs into the target application while the target application is in a second state that differs from the first state; training, by the automatic speech recognition system, a second language model based on the second plurality of inputs; determining, by the automatic speech recognition system, that the target application is in the second state; and applying, by the automatic speech recognition system, the second language model to second speech input in response to determining that the target application is in the second state.