A mobile device is described which is adapted for automatic speech recognition (asr). A speech input receives an unknown speech input signal from a user. A local controller determines if a remote asr processing condition is met, transforms the speech input signal into a selected one of multiple different speech representation types, and sends the transformed speech input signal to a remote server for remote asr processing. A local asr arrangement performs local asr processing of the speech input including processing any speech recognition results received from the remote server.

Patent
   9886944
Priority
Oct 04 2012
Filed
Oct 04 2012
Issued
Feb 06 2018
Expiry
Oct 04 2032
Assg.orig
Entity
Large
2
120
currently ok
13. A method for automatic speech recognition (asr) of a speech input, the method comprising:
sending the speech input to a local asr arrangement;
sending the speech input to a remote server for remote asr processing;
and after sending the speech input to the remote server, determining if a remote asr processing condition is met, wherein determining if the remote asr processing condition is met occurs while the local asr arrangement processes the speech input;
and when the remote asr processing condition is determined to be met, suspending speech processing by the local asr arrangement so that recognition results solely from the remote asr processing are used to produce an output interpretation of the speech input.
16. At least one non-transitory computer-readable storage medium storing processor-executable instructions that when executed by a computer system, cause the computer system to perform a method for automatic speech recognition (asr) of a speech input, the method comprising:
sending the speech input to a local asr arrangement;
sending the speech input to a remote server for remote asr processing;
and after sending the speech input to the remote server, determining if a remote asr processing condition is met, wherein determining if the remote asr processing condition is met occurs while the local asr arrangement processes the speech input;
and when the remote asr processing condition is determined to be met, suspending speech processing by the local asr arrangement so that recognition results solely from the remote asr processing are used to produce an output interpretation of the speech input.
1. A mobile device adapted for automatic speech recognition (asr) of speech input, the mobile device comprising:
a local asr arrangement configured to perform local asr processing of the speech input including processing any speech recognition results received from a remote server; and
a local controller configured to perform:
sending the speech input to the local asr arrangement;
sending the speech input to the remote server for remote asr processing; and
after sending the speech input to the remote server, determining if a remote asr processing condition is met,
wherein the local controller determines if the remote asr processing condition is met while the local asr arrangement processes the speech input, and
wherein local asr recognition processes are suspended by the local asr arrangement in response to the local controller determining that the remote asr processing condition is met so that recognition results solely from the remote asr processing are used to produce an output interpretation of the speech input.
2. The mobile device according to claim 1, wherein the local controller transforms the speech input into a selected one of a plurality of different speech representation types, and wherein the local controller transforms the speech input signal and sends the transformed speech input.
3. The mobile device according to claim 2, wherein the local controller suspends transforming the speech input signal and sending the transformed speech input signal if it determines that the remote asr condition is not met.
4. The mobile device according to claim 1, wherein the local controller transforms the speech input signal into a selected one of a plurality of different speech representation types, and wherein the local controller selects one of the speech representation types based on different bandwidth characteristics of the speech representation types.
5. The mobile device according to claim 1, wherein the remote asr processing condition is a function of a connection condition between the mobile device and the remote server.
6. The mobile device according to claim 1, wherein the remote asr processing condition is a function of a projected accuracy benefit associated with the remote asr processing.
7. The mobile device according to claim 6, wherein the projected accuracy benefit is based on a metadata function reflecting one or both of application state and dialog context.
8. The mobile device according to claim 1, wherein the remote asr processing condition is a function of one or both of a local asr processing latency characteristic and a remote asr processing latency characteristic.
9. The mobile device according to claim 1, wherein the remote asr processing condition is a function of a recognition cost characteristic.
10. The mobile device according to claim 1, wherein the local controller transforms the speech input signal into a selected one of a plurality of different speech representation types, and wherein the plurality of different speech recognition types include one or more of asr feature vectors, lossy compressed speech, lossless compressed speech, and uncompressed speech.
11. The mobile device according to claim 1, wherein determining if the remote asr processing condition is met reflects an adaptation process based on speech recognition operation over time.
12. The mobile device according to claim 11, wherein the adaptation process is an automatic unsupervised adaptation process.
14. The method of claim 13, further comprising transforming the speech input into a selected one of a plurality of different speech representation types, and wherein sending the speech input comprises sending the transformed speech input.
15. The method of claim 13, further comprising transforming the speech input into a selected one of a plurality of different speech representation types based on different bandwidth characteristics of the speech representation types.
17. The at least one non-transitory computer-readable storage medium of claim 16, wherein the method further comprises transforming the speech input into a selected one of a plurality of different speech representation types, and wherein sending the speech input comprises sending the transformed speech input.

The present application is a national stage application under 35 U.S.C. § 371 of PCT Application No. PCT/US2012/058613, filed Oct. 4, 2012, which is herein incorporated by reference in its entirety.

The invention generally relates to automatic speech recognition (ASR), and more specifically, to client-server ASR on mobile devices.

An automatic speech recognition (ASR) system determines a semantic meaning of a speech input. Typically, the input speech is processed into a sequence of digital speech feature frames. Each speech feature frame can be thought of as a multi-dimensional vector that represents various characteristics of the speech signal present during a short time window of the speech. For example, the multi-dimensional vector of each speech frame can be derived from cepstral features of the short time Fourier transform spectrum of the speech signal (MFCCs)—the short time power or component of a given frequency band—as well as the corresponding first- and second-order derivatives (“deltas” and “delta-deltas”). In a continuous recognition system, variable numbers of speech frames are organized as “utterances” representing a period of speech followed by a pause, which in real life loosely corresponds to a spoken sentence or phrase.

The ASR system compares the input utterances to find statistical acoustic models that best match the vector sequence characteristics and determines corresponding representative text associated with the acoustic models. More formally, given some input observations A, the probability that some string of words W were spoken is represented as P(W|A), where the ASR system attempts to determine the most likely word string:

W ^ = arg max W P ( W | A )
Given a system of statistical acoustic models, this formula can be re-expressed as:

W ^ = arg max W P ( W ) P ( A | W )
where P(A|W) corresponds to the acoustic models and P(W) reflects the prior probability of the word sequence as provided by a statistical language model.

The acoustic models are typically probabilistic state sequence models such as hidden Markov models (HMMs) that model speech sounds using mixtures of probability distribution functions (Gaussians). Acoustic models often represent phonemes in specific contexts, referred to as PELs (Phonetic Elements), e.g. triphones or phonemes with known left and/or right contexts. State sequence models can be scaled up to represent words as connected sequences of acoustically modeled phonemes, and phrases or sentences as connected sequences of words. When the models are organized together as words, phrases, and sentences, additional language-related information is also typically incorporated into the models in the form of a statistical language model.

The words or phrases associated with the best matching model structures are referred to as recognition candidates or hypotheses. A system may produce a single best recognition candidate the recognition result or multiple recognition hypotheses in various forms such as an N-best list, a recognition lattice, or a confusion network. Further details regarding continuous speech recognition are provided in U.S. Pat. No. 5,794,189, entitled “Continuous Speech Recognition,” and U.S. Pat. No. 6,167,377, entitled “Speech Recognition Language Models,” the contents of which are incorporated herein by reference.

Recently, ASR technology has advanced enough to have applications that are implemented on the limited footprint of a mobile device. This can involve a somewhat limited stand-alone ASR arrangement on the mobile device, or more extensive capability can be provided in a client-server arrangement where the local mobile device does initial processing of speech inputs, and possibly some local ASR recognition processing, but the main ASR processing is performed at a remote server with greater resources, then the recognition results are returned for use at the mobile device.

U.S. Pat. Publication 20110054899 describes a hybrid client-server ASR arrangement for a mobile device in which speech recognition may be performed locally by the device and/or remotely by a remote ASR server depending on one or more criteria such as time, policy, confidence score, network availability, and the like.

Embodiments of the present invention are directed to a mobile device and corresponding method for automatic speech recognition (ASR). A local controller determines if a remote ASR processing condition is met, transforms the speech input signal into a selected one of multiple different speech representation types, and sends the transformed speech input signal to a remote server for remote ASR processing. A local ASR arrangement performs local ASR processing of the speech input including processing any speech recognition results received from the remote server.

The local controller may transform the speech input signal and send the transformed speech input signal independently of whether or not the remote ASR processing condition is met. Or the local controller may transform the speech input signal and send the transformed speech input signal only if the remote ASR processing condition is met. The local controller may suspend transforming the speech input signal and sending the transformed speech input signal if it determines that the remote ASR condition is not met.

Even if the remote ASR processing condition is met, the local ASR arrangement may continue the local ASR processing. Or if the remote ASR processing condition is met, the local ASR arrangement processes may suspend local ASR processing except for processing speech recognition results received from the remote server.

The local controller may determine if the remote ASR processing condition is met while the local ASR arrangement is performing the local ASR processing. In that case, after the local controller determines that the remote ASR processing condition is met, it may start sending the transformed speech signal to the remote server starting from the beginning of the speech input signal. Or the local controller may determine if the remote ASR processing condition is met after the local ASR arrangement produces a recognition result.

The local controller may select one of the speech representation types based on different bandwidth characteristics of the speech representation types. The different speech recognition types may include one or more of ASR feature vectors, lossy compressed speech, lossless compressed speech, and uncompressed speech. The recognition results from the remote server may include one or more of unformatted recognition text, formatted recognition text, and a semantic interpretation.

The remote ASR processing condition may be a function of one or more of recognition confidence associated with local ASR processing of the speech input signal, connection condition between the mobile device and the remote server, projected accuracy benefit associated with the remote ASR processing (e.g., based on a metadata function reflecting one or both of application state and dialog context), a local ASR processing latency characteristic, a remote ASR processing latency characteristic, and a recognition cost characteristic.

Determining if the remote ASR processing condition is met may reflect an adaptation process based on speech recognition operation over time. For example, the adaptation process may be an automatic unsupervised adaptation process.

FIG. 1 shows various elements in a hybrid ASR arrangement according to an embodiment of the present invention.

FIG. 2 shows various functional steps in a hybrid ASR arrangement according to one embodiment of the present invention.

FIG. 3 shows various functional steps in a hybrid ASR arrangement according to another embodiment of the present invention.

Various embodiments of the present invention are directed to hybrid ASR for a mobile device using a client-server arrangement. A local controller decides when to spend a speech input on to the remote server for recognition depending on such criteria as local recognition confidence score, condition of the data connection, etc. In addition, the local controller further selects a specific type of speech representation to send to the remote server, for example, based on bandwidth characteristics of the different types of speech representations.

FIG. 1 shows various elements in a hybrid ASR arrangement according to an embodiment of the present invention. A speech input 101 on mobile device 100 receives an unknown speech input signal from a user. A local controller 104 determines if a remote ASR processing condition is met, transforms the speech input signal into a selected one of multiple different speech representation types, and sends the transformed speech signal over a wireless communication network 105 to a remote server 106 having a remote ASR processing arrangement. A local ASR arrangement 102 uses local recognition data sources 103 to perform local ASR processing of the speech input signal including processing of any speech recognition results from the remote ASR server 106. The ASR server 106 uses server recognition data sources 107 to perform remote ASR processing and once that process is complete, returns its speech recognition result (unformatted recognition text, or derivatives of the result such as formatted recognition text or a semantic interpretation) back to the mobile device 100 as a recognition output result 108.

In specific embodiments, the local controller 104 may transform the speech input signal and send the transformed speech input signal independently of whether or not the remote ASR processing condition is met. For example, FIG. 2 shows various functional steps in such an embodiment where the mobile device 100 initially receives an unknown speech input signal from a user, step 201, and forwards it to the local ASR arrangement 102 for local ASR processing, step 202. The local controller 104 determines if the remote ASR processing condition is met, step 203, and if so, selects a specific one of the different speech representation types, step 204, transforms the speech input signal into the selected type of speech representation, step 205, and sends the transformed speech input signal to the remote ASR server 106, step 206.

Once the remote ASR server 106 has completed processing of the transformed speech input signal, it returns its recognition results back to the local device 100, step 207, for further processing by the local ASR processing arrangement 102. Different specific embodiments may have different specific arrangements as to exactly what is done in this regard. For example, if the remote ASR processing condition is met, the local ASR arrangement 102 may continue the local ASR processing including additional processing of the recognition results from the remote ASR server 106 to produce its final recognition output interpretation 108. Or if the remote ASR processing condition is met, the local ASR arrangement 102 processes may suspend local ASR processing except for processing speech recognition results received from the remote ASR server 106 so that the output interpretation 108 is based solely on the remote recognition results.

In some other specific embodiments, the local controller 104 may transform the speech input signal and send the transformed speech input signal only if the remote ASR processing condition is met. FIG. 3 shows various functional steps in such an embodiment where the mobile device 100 initially receives an unknown speech input signal from a user, step 301, and forwards it to the local ASR arrangement 102 for local ASR processing, step 302. The local controller may suspend transforming the speech input signal and sending the transformed speech input signal if it determines that the remote ASR condition is not met. The local controller 104 automatically selects a specific one of the different speech representation types, step 303, transforms the speech input signal into the selected type of speech representation, step 304, and sends the transformed speech input signal to the remote ASR server 106, step 305. The local controller 104 also determines if the remote ASR processing condition is met, step 306, and if so, receives those remote recognition results when they become available, step 307. If in step 306 the local controller 104 determines that the remote ASR processing condition is not met, then the output interpretation 108 will be based solely on the recognition results from the local ASR processing arrangement 102.

In such an embodiment, the local controller may determine if the remote ASR processing condition is met, step 306 while the local ASR arrangement 102 is performing the local ASR processing. In that case, after the local controller 104 determines that the remote ASR processing condition is met, it may start sending the transformed speech signal to the remote server, step 304, starting from the beginning of the speech input signal. Or the local controller 104 may determine if the remote ASR processing condition is met, step 306, after the local ASR arrangement 102 produces a local recognition result, for example, based on the local recognition results and its confidence.

In any embodiment, the local controller 104 may select one of the speech representation types based on different bandwidth characteristics of the speech representation types. For example, one specific embodiment may be based on three different types of speech representations:

In cases where the type of speech representation is anything less than an uncompressed waveform, some embodiments may send the uncompressed waveform later for adaptation and assessment purposes. For any of the various different speech representation types, it may be advantageous to do some local signal enhancement on the mobile device 100 before sending the speech signal to the remote ASR server 106. Examples of specific such enhancement techniques include without limitation noise suppression/reduction, de-reverberation, beam-forming and echo compensation. It can be advantageous to perform such signal enhancement techniques on the mobile device 100 before sending the speech representation signal through lossy compression. This is known to make such signal enhancement techniques more effective as well as allowing reduced compression loss. In addition, such enhancement techniques are highly likely to be performed—if available on the mobile device 100—for the local ASR arrangement 102 anyways. And in the specific case of beam-forming, performing it locally on the mobile device 100 allows sending the beam-formed speech representation signal to the remote ASR server over a signal channel, whereas by contrast, performing such signal beam-forming on the remote ASR server 106 would require transmitting over multiple channels.

In specific embodiments, the remote ASR processing condition may be a function of one or more of recognition confidence associated with local ASR processing of the speech input, a connection condition between the mobile device and the remote server, a projected accuracy benefit associated with the remote ASR processing, a local ASR processing latency characteristic, a remote ASR processing latency characteristic, and/or a recognition cost characteristic.

For example, an estimate of the accuracy benefit associated with the remote ASR processing should take into account the consideration that if both the local ASR arrangement 102 and the remote ASR server 106 are likely to arrive at the same recognition conclusion, then there is no accuracy benefit to sending the speech input on to the remote server 106. An estimate of the accuracy improvement due to remote ASR processing may also take into account one or more of the following:

It is worth noting that accuracy per se can only be ascertained from user feedback or manual review (e.g. transcription of the audio). But for the purpose of a remote ASR processing condition, it can be predicted whether and how-often the remote recognition result from the remote ASR server 106 will be significantly different from the local recognition result of the local ASR arrangement 102 based on comparing previous local and remote recognition results produced under similar conditions (application state, dialog context, SNR, etc.). It can be assumed that when the recognition results are likely to differ, then the remote ASR server 106 is expected to be of higher accuracy and thus preferred. This decision as to the remote ASR processing condition can be highly adaptive without supervision (i.e., automatically) so as to take into account available metadata. This adaptation can be useful to allow the system to adjust to changes in the current operating environment, such as changes in load on the remote ASR server 106. Adaptation can also be very “fine-grained”, that is, it can be dependent on specific characteristics of the speaker, the mobile device 100, or state of the current dialog. This adaptation depends on comparing recognition results from the remote ASR server 106 with local recognition results from the mobile device 100. But on those trials where the system decides not to send the speech to the remote ASR server 106, the server side recognition results would not normally be available. Hence, in order to collect information to support this adaptation, the system may sometimes send utterances which it would not normally send. It would do this relatively rarely (perhaps only 1% of the utterances), and it could mark these utterances for low priority processing on the remote ASR server 106.

The remote ASR processing condition may be a function of other conditions such as a local ASR processing latency characteristic (i.e., an estimate of the recognition speed of the local ASR arrangement 102). This may be influenced by such factors as computational characteristics of the local mobile device 100 (e.g., number of cores, CPU speed, memory, etc.) and/or load condition at the mobile device 100 (e.g., CPU and memory utilization by the operating system and other running applications at the time when the recognition is about to start). Another consideration may be a remote ASR processing latency characteristic (i.e. latency until a recognition result is received at the mobile device 100). This may be influenced by such factors as data channel conditions and server load (if the remote servers are currently very busy, then don't send). Ideally embodiments seek to not only reduce response latency, but also reduce its variability. Large latency variances can be detrimental to usability for similar or same commands or command categories. For some applications, it may be acceptable for the system to have somewhat higher overall response latency, but prefer to have lower variance in the average latency time.

The remote ASR processing condition also may be a function of one or more recognition cost characteristics such as user's data plan billing status (don't send when the user has used most of their data allowance for the month), server load (if the remote servers are currently very busy, then don't send), and battery status (when the battery is low, sending is more expensive) In the latter case, the local controller 104 might decide to entirely forego sending a speech signal to the remote ASR server 106, or it might do the opposites—end the speech on to the remote ASR server 106 and entirely omit processing by the local ASR arrangement 102.

The local controller 104 may initially determine if the remote ASR processing condition is met at the beginning of speech input, and in some embodiments may reassess that during the course of a speech input. That is, before speech input began, the local controller 104 might decide not to send a new speech input to the remote ASR server 106, and then during the course of recognition or after, local confidence information might cause the local controller 104 to start streaming speech representations to the remote ASR server 106, including a block of data representing the entire speech input from the beginning of the utterance. And conversely, at the beginning of a speech input the local controller 104 may decide to stream speech representations to the remote ASR server 106, but by the end of the speech input the overall recognition confidence may be high, and the local controller 104 might then stop the server side recognition. Some embodiments may also randomly choose some speech inputs to send to the remote ASR server 106 for checking the reliably of the recognition benefit estimate, in which case, we can the local recognition result from the local ASR arrangement 102 may be used without waiting for the result from remote ASR server 106.

Embodiments of the invention may be implemented in whole or in part in any conventional computer programming language such as VHDL, SystemC, Verilog, ASM, etc. Alternative embodiments of the invention may be implemented as pre-programmed hardware elements, other related components, or as a combination of hardware and software components.

Embodiments can be implemented in whole or in part as a computer program product for use with a computer system. Such implementation may include a series of computer instructions fixed either on a tangible medium, such as a computer readable medium (e.g., a diskette, CD-ROM, ROM, or fixed disk) or transmittable to a computer system, via a modem or other interface device, such as a communications adapter connected to a network over a medium. The medium may be either a tangible medium (e.g., optical or analog communications lines) or a medium implemented with wireless techniques (e.g., microwave, infrared or other transmission techniques). The series of computer instructions embodies all or part of the functionality previously described herein with respect to the system. Those skilled in the art should appreciate that such computer instructions can be written in a number of programming languages for use with many computer architectures or operating systems. Furthermore, such instructions may be stored in any memory device, such as semiconductor, magnetic, optical or other memory devices, and may be transmitted using any communications technology, such as optical, infrared, microwave, or other transmission technologies. It is expected that such a computer program product may be distributed as a removable medium with accompanying printed or electronic documentation (e.g., shrink wrapped software), preloaded with a computer system (e.g., on system ROM or fixed disk), or distributed from a server or electronic bulletin board over the network (e.g., the Internet or World Wide Web). Of course, some embodiments of the invention may be implemented as a combination of both software (e.g., a computer program product) and hardware. Still other embodiments of the invention are implemented as entirely hardware, or entirely software (e.g., a computer program product).

Although various exemplary embodiments of the invention have been disclosed, it should be apparent to those skilled in the art that various changes and modifications can be made which will achieve some of the advantages of the invention without departing from the true scope of the invention.

Willett, Daniel, Ganong, III, William F., Vozila, Paul J., Wu, Jianxiong

Patent Priority Assignee Title
10971157, Jan 11 2017 Microsoft Technology Licensing, LLC Methods and apparatus for hybrid speech recognition processing
11990135, Jan 11 2017 Microsoft Technology Licensing, LLC Methods and apparatus for hybrid speech recognition processing
Patent Priority Assignee Title
4712189, Oct 23 1984 Hitachi, Ltd. Table driven translator
5054082, Jun 30 1988 Motorola, Inc. Method and apparatus for programming devices to recognize voice commands
5148471, Nov 20 1989 Motorola, Inc. Communications device with voice recognition and movable element control interface
5297183, Apr 13 1992 Nuance Communications, Inc Speech recognition system for electronic switches in a cellular telephone or personal communication network
5544228, Sep 27 1993 DISNEY ENTERPRISES, INC Method and apparatus for transmission of full frequency digital audio
5594789, Oct 13 1994 GOOGLE LLC Transaction implementation in video dial tone network
5632002, Dec 28 1992 Kabushiki Kaisha Toshiba Speech recognition interface system suitable for window systems and speech mail systems
5774857, Nov 15 1996 Google Technology Holdings LLC Conversion of communicated speech to text for tranmission as RF modulated base band video
5855003, Oct 11 1996 Google Technology Holdings LLC Method and apparatus for establishing a link in a wireless communication system
5943648, Apr 25 1996 Nuance Communications, Inc Speech signal distribution system providing supplemental parameter associated data
5953700, Jun 11 1997 Nuance Communications, Inc Portable acoustic interface for remote access to automatic speech/speaker recognition server
5956683, Sep 21 1995 Qualcomm Incorporated Distributed voice recognition system
5960399, Dec 24 1996 GOOGLE LLC Client/server speech processor/recognizer
6078886, Apr 14 1997 Nuance Communications, Inc System and method for providing remote automatic speech recognition services via a packet network
6088732, Apr 14 1997 Meta Platforms, Inc Control of data transfer and distributed data processing based on resource currently available at remote apparatus
6094680, Jun 27 1996 Microsoft Technology Licensing, LLC System and method for managing distributed resources on networks
6098041, Nov 12 1991 Fujitsu Limited Speech synthesis system
6119087, Mar 13 1998 NUANCE COMMUNICATIONS INC System architecture for and method of voice processing
6173259, Mar 27 1997 Speech Machines, Plc Speech to text conversion
6188985, Oct 03 1997 Texas Instruments Incorporated Wireless voice-activated device for control of a processor-based host system
6195641, Mar 27 1998 Nuance Communications, Inc Network universal spoken language vocabulary
6216013, Mar 10 1994 Cable & Wireless PLC Communication system with handset for distributed processing
6282268, May 06 1997 International Business Machines Corp. Voice processing system
6282508, Mar 18 1997 Kabushiki Kaisha Toshiba Dictionary management apparatus and a dictionary server
6327568, Nov 14 1997 Nuance Communications, Inc Distributed hardware sharing for speech processing
6363348, Oct 20 1997 U S PHILIPS CORPORATION User model-improvement-data-driven selection and update of user-oriented recognition model of a given type for word recognition at network server
6366886, Apr 14 1997 Nuance Communications, Inc System and method for providing remote automatic speech recognition services via a packet network
6374226, Aug 06 1999 Oracle America, Inc System and method for interfacing speech recognition grammars to individual components of a computer program
6408272, Apr 12 1999 Intellectual Ventures I LLC Distributed voice user interface
6424945, Dec 15 1999 Nokia Technologies Oy Voice packet data network browsing for mobile terminals system and method using a dual-mode wireless connection
6434523, Apr 23 1999 Nuance Communications Creating and editing grammars for speech recognition graphically
6453290, Oct 04 1999 PEARSON EDUCATION, INC Method and system for network-based speech recognition
6456974, Jan 06 1997 Texas Instruments Incorporated System and method for adding speech recognition capabilities to java
6487534, Mar 26 1999 Nuance Communications, Inc Distributed client-server speech recognition system
6560590, Feb 14 2000 VERINT AMERICAS INC Method and apparatus for multiple tiered matching of natural language queries to positions in a text corpus
6594628, Sep 21 1995 Qualcomm, Incorporated Distributed voice recognition system
6604075, May 20 1999 Alcatel Lucent Web-based voice dialog interface
6604077, Apr 14 1997 Nuance Communications, Inc System and method for providing remote automatic speech recognition and text to speech services via a packet network
6615171, Jun 11 1997 Nuance Communications, Inc Portable acoustic interface for remote access to automatic speech/speaker recognition server
6615172, Nov 12 1999 Nuance Communications, Inc Intelligent query engine for processing voice based queries
6671669, Jul 18 2000 Qualcomm Incorporated combined engine system and method for voice recognition
6738743, Mar 28 2001 Intel Corporation Unified client-server distributed architectures for spoken dialogue systems
6760705, May 31 2001 MOTOROLA SOLUTIONS, INC Virtual speech interface system and method of using same
6832380, Jun 28 1996 Oracle America, Inc Client-server application partitioning with metering technique for distributed computing
6912588, Apr 02 1998 Intel Corp System and method for managing client requests in client-server networks
6963759, Oct 05 1999 Malikie Innovations Limited Speech recognition technique based on local interrupt detection
7003463, Oct 02 1998 Nuance Communications, Inc System and method for providing network coordinated conversational services
7024363, Dec 14 1999 Nuance Communications, Inc Methods and apparatus for contingent transfer and execution of spoken language interfaces
7050977, Nov 12 1999 Nuance Communications, Inc Speech-enabled server for internet website and method
7058643, May 22 2002 Canadian Imperial Bank of Commerce System, tools and methods to facilitate identification and organization of new information based on context of user's existing information
7058890, Feb 13 2002 Oracle America, Inc Method and system for enabling connectivity to a data system
7099824, Nov 27 2000 Canon Kabushiki Kaisha Speech recognition system, speech recognition server, speech recognition client, their control method, and computer readable memory
7137126, Oct 02 1998 UNILOC 2017 LLC Conversational computing via conversational virtual machine
7366673, Jun 15 2001 Nuance Communications, Inc Selective enablement of speech recognition grammars
7389234, Jul 20 2000 Microsoft Technology Licensing, LLC Method and apparatus utilizing speech grammar rules written in a markup language
7418382, Oct 02 1998 Nuance Communications, Inc Structure skeletons for efficient voice navigation through generic hierarchical objects
7519536, Oct 02 1998 Nuance Communications, Inc System and method for providing network coordinated conversational services
7610204, Jun 15 2001 Nuance Communications, Inc Selective enablement of speech recognition grammars
7729916, Oct 02 1998 Nuance Communications, Inc Conversational computing via conversational virtual machine
8082153, Oct 02 1998 Nuance Communications, Inc Conversational computing via conversational virtual machine
8332227, Oct 02 1998 Nuance Communications, Inc. System and method for providing network coordinated conversational services
8370159, Oct 08 2004 Samsung Electronics Co., Ltd. Multi-layered speech recognition apparatus and method
8868425, Oct 02 1998 Nuance Communications, Inc. System and method for providing network coordinated conversational services
8898065, Jan 07 2011 Microsoft Technology Licensing, LLC Configurable speech recognition system using multiple recognizers
8930194, Jan 07 2011 Microsoft Technology Licensing, LLC Configurable speech recognition system using multiple recognizers
9196252, Jun 15 2001 Nuance Communications, Inc. Selective enablement of speech recognition grammars
20020065660,
20020077811,
20020091515,
20020091527,
20030004720,
20030046074,
20030120486,
20030125955,
20030139924,
20040010409,
20040083109,
20050049860,
20050131704,
20060149551,
20060195323,
20060235684,
20070011010,
20070276651,
20070286099,
20080027723,
20080126490,
20080133124,
20080154612,
20080154870,
20080189111,
20090051649,
20090204410,
20090253463,
20090287477,
20100049521,
20110010168,
20110015928,
20110054899,
20110060587,
20120030712,
20120035932,
20120179457,
20120179463,
20120179464,
20120179469,
20120179471,
20130006620,
20130151250,
20140343948,
CN101971251,
CN1764945,
EP450610,
EP654930,
GB2325112,
JP10207683,
JP10214258,
JP10228431,
JP9098221,
WO9747122,
//////
Executed onAssignorAssigneeConveyanceFrameReelDoc
Sep 28 2012WILLETT, DANIELNuance Communications, IncASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0291020826 pdf
Sep 28 2012WU, JIANXIONGNuance Communications, IncASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0291020826 pdf
Sep 28 2012GANONG, WILLIAM F , IIINuance Communications, IncASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0291020826 pdf
Oct 01 2012VOZILA, PAUL J Nuance Communications, IncASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0291020826 pdf
Oct 04 2012Nuance Communications, Inc.(assignment on the face of the patent)
Sep 20 2023Nuance Communications, IncMicrosoft Technology Licensing, LLCASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0653150894 pdf
Date Maintenance Fee Events
Aug 03 2021M1551: Payment of Maintenance Fee, 4th Year, Large Entity.


Date Maintenance Schedule
Feb 06 20214 years fee payment window open
Aug 06 20216 months grace period start (w surcharge)
Feb 06 2022patent expiry (for year 4)
Feb 06 20242 years to revive unintentionally abandoned end. (for year 4)
Feb 06 20258 years fee payment window open
Aug 06 20256 months grace period start (w surcharge)
Feb 06 2026patent expiry (for year 8)
Feb 06 20282 years to revive unintentionally abandoned end. (for year 8)
Feb 06 202912 years fee payment window open
Aug 06 20296 months grace period start (w surcharge)
Feb 06 2030patent expiry (for year 12)
Feb 06 20322 years to revive unintentionally abandoned end. (for year 12)