Patent Publication Number: US-5832430-A

Title: Devices and methods for speech recognition of vocabulary words with simultaneous detection and verification

Description:
CROSS-REFERENCE TO RELATED APPLICATION 
     This application is a continuation-in-part application of commonly assigned U.S. patent application Ser. No. 08/366,162, filed Dec. 29, 1994, U.S. Pat. No. 5,710,864. 
    
    
     BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     This invention relates generally to speech recognition and more particularly to devices and methods for continuous speech recognition of vocabulary words. 
     2. Description of Related Art 
     The current speech recognition technology allows building speech interfaces for human machine interaction with good performances when the system is used by a cooperative speaker or tested in laboratory conditions (no disfluences, no out-of-vocabulary words, no out-of-grammar sentences, clear speech, etc.). However, for even the simplest human machine interaction, the automatic speech recognition (ASR) systems must face up to a lot of unexpected inputs. For example, it is extremely difficult to anticipate the range of utterances that may be spoken by a particular user (out-of-vocabulary words, out-of-grammar sentences, restarts and other disfluences). The first outcome is the degradation of the recognition performance with the consequent rejection of the interface by the user. 
     Several ways have been studied to solve these problems using both acoustic and language knowledge. For command based interface systems, word spotting technology is being used to detect the presence of a set of keywords in unconstrained speech. The use of acoustic filler or garbage models and language constraints in hidden Markov model (HMM) based continuous speech recognition (CSR) systems for small vocabulary have been shown to perform far better than competing approaches for unconstrained speech. Topic spotting is a step between word spotting and CSR, assuming a model for the input speech consisting of relevant regions of speech alternating with irrelevant ones, where relevance is a function of the task (dates, phone numbers, movie names, etc.). Topic spotting detects and identifies small grammatical units while not requiring understanding of all the input speech. Both techniques, word and topic spotting, give as output a transcription of the input speech in terms of keywords or word strings and fillers hypotheses. In both cases, a validation of the hypotheses is needed in terms of a measure of the confidence. As the final goal of ASR is the understanding of the message, we can try to decode the whole utterance with a CSR system, including a mechanism that accounts for the presence of words or sounds that are not included in a prespecified lexicon and grammar. This mechanism could be used to accept for further interpretation only the portions of an utterance that have been decoded with a sufficient degree of confidence. On the other hand, a confidence measure associated with this mechanism can also serve to identify regions where the decoded string is most likely in error, allowing appropriate decisions to be made at higher levels of processing. 
     Speech recognition is a process by which one or more unknown speech utterances are identified. Speech recognition is generally performed by comparing the features of an unknown utterance with the features of known words. Known words as used herein include, without limitation, words, phrases, lexical units and/or strings. The unknown speech utterance is typically represented by one or more digital pulse code modulated (PCM) signals. The features, or characteristics, of the known words are typically defined through a process known as training. 
     Through training, samples of known words are examined and their features are recorded as recognition models in a recognition database. Each recognition model is essentially a reference pattern which represents a single known word. Each known word includes one or more phones. A phone as used herein is defined as the acoustic manifestation of one or more linguistically-based phonemes or phoneme-like items. 
     Speech recognizers typically extract features from the unknown utterance to characterize it. There are many types of speech recognizers, such as, for example, conventional template-based and HMM recognizers, as well as, recognizers utilizing recognition models based on neural networks. 
     The particular features associated with the unknown utterance are often referred to as a test pattern. The recognizer compares one or more recognition models, or combinations thereof, to the test pattern. A scoring technique is used to provide a relative measure of how well various recognition model combinations match the test pattern. The unknown utterance is recognized by the known words associated with the recognition models with which the test pattern most closely matches. 
     Recognition model parameters are estimated from static training data stored during an initial training mode. The model parameters are produced separate and apart from their intended use during a recognition mode. The model parameters, once generated, cannot always be adjusted or tuned to improve their recognition accuracy. 
     Utterance verification (UV) is a process by which the hypotheses produced by a speech recognizer are associated with a confidence measure to determine whether the speech segments decoded are correct. One way to incorporate a utterance verification process to the speech recognizer is to use the UV as a post-processor where given the segmentation provided by the speech recognizer, the UV assigns a confidence measure to each segment. This strategy is call two-pass recognition/verification. 
     In order to explain utterance verification, the following defines various notation. It is assumed that the input to the speech recognizer is a sequence of feature vectors Y={y 1 ,y 2 , . . . y t  } representing a speech utterance which may contain both within-vocabulary (targets) and out-of-vocabulary (impostors) words. The output of the system is a word string hypothesis W=w 1 , . . . , w K  of length K. As the model parameters for a particular unit are not known, they have to be estimated from the training data assuming certain form of the density P(Y|λ). It is assumed that the density P(Y|λ) corresponds to a hidden Markov density, λ being the set of HMM parameters. The concatenation of the HMMs which compose the word w is designed as λ w . 
     Most HMM based speech recognizers produce a maximum likelihood word sequence using acoustic and language models according to the Bayes&#39; equation. ##EQU1## where P(Y|W) is given by the HMMs of the words in the lexicon, P(W) is provided by the language model and P(Y) is the apriori probability of the acoustic sequence. As P(Y) is the same for each possible string sequence, most speech recognition systems do not attempt to compute it. In this way, the score associated with each word or even to the whole string is a relative measure which does not measure the goodness of the match. So, this measure is not useful for evaluating confidence about the speech utterance. 
     In many speech recognition systems, utterance verification is performed using statistical hypothesis testing. The likelihood rate LR test is designed to determine whether a sequence of feature vectors Y were generated by a given family of probability densities, defining the following test: 
     H 0  : null hypothesis, Y was generated by the model λ c   
     H 1  : alternative hypothesis, Y was generated by the alternative model λ a , ##EQU2## where τ is a decision threshold. In ASR applications, λ c  and λ a  define two different hidden Markov densities. The correct hidden Markov density P(Y|λ c ) given by the λ c  set of HMM parameters models correctly decoded hypotheses for a given recognition unit and the alternative hidden Markov density P(Y|λ a ) given by the λ a  set of HMM parameters models the incorrectly decoded hypotheses, or false alarms (substitutions and insertions), for a given recognition unit. 
     The performance of the overall system (recognition/verification) is a function of the confidence threshold. There is a compromise between the number of false alarms accepted and the number of correct hits rejected. Type I error or false rejection relates to those words correctly decoded but rejected by the utterance verification process and type II error or false alarm relates to the word insertions and substitutions. Low confidence thresholds decrease the number of type I errors but increase the type II errors. On the other hand, high confidence thresholds increase the number of type I errors but decrease the type II errors. 
     Assuming hidden Markov densities for targets and impostors, Equation (2) can be written as ##EQU3## where Q c  = q 1   c , . . . , q T   c  !=the sequence of states for the correct model, 
     Q a  = q 1   a , . . . , q T   a  !=the sequence of states for the alternative model, 
     π q .sbsb.1.spsb.a a  =the initial state probability of the state q 1  for the model λ a , 
     π q .sbsb.1.spsb.c c  =the initial state probability of the state q 1  for the model λ c , 
     b q .sbsb.1.spsb.a a  (y i )=the observation density of the feature vector y i  for the state q 1  and the model λ a  for i=1,2, . . . , T, 
     b q .sbsb.1.spsb.c c  (y i )=the observation density of the feature vector y i  for the state q i  and the model λ c  for i=1,2, . . . , T, 
     a q .sbsb.i.spsb.a a ,  q .sbsb.i+1.spsb.a =the transition probability from the state q i  to the state q i+1  for i=1,2, . . . , T-1, and 
     a q .sbsb.i.spsb.c c ,  q .sbsb.i+1.spsb.c =the transition probability from the state q i  to the state q i+1  for i=1,2, . . . , T-1. 
     Furthermore, suppose that a Viterbi decoder is used to compute the model probabilities P(Y|λ). Then, the following approximation is assumed 
     
         P(Y|λ)=P(Y,Q/λ)                     (4) 
    
     with ##EQU4## being the single best state sequence. So, the likelihood ratio is computed as ##EQU5## 
     Equations (2), (5) and (6) form the basis for a two-pass utterance verification procedure. The first pass gives a segmentation of the input speech in word hypotheses with their likelihood scores (null hypotheses). Based on this maximum likelihood segmentation, the second pass computes the alternate hypothesis likelihoods for each word hypothesis segment. This gives a likelihood ratio for each word hypothesis. As this measure is based on the model likelihoods, we call this ratio as model likelihood ratio. This ratio could be used to accept or reject single words or could be combined to give a ratio score for the whole string. 
     The two-pass strategy assumes that the segmentation given by the speech recognizer is the optimum single segmentation and the UV system verifies the segments separately. Usually, the system uses different models in the two passes. However, this strategy does not take advantage of the verification process to segment the speech input so one can only expect an improvement in the detection of incorrect label segments but not in the recognition performance of the system. 
     SUMMARY OF THE INVENTION 
     It is an object of the invention to enable performing automatic speech recognition with a search algorithm that directly optimizes a likelihood ratio. 
     It is a further object of the invention to enable word hypothesis detection and verification to be performed simultaneously in a one-pass procedure to provide for an increase in both detection and verification performances. 
     It is a further object of the invention to use utterance verification jointly with a speech recognizer to provide segmentation of the speech input to maximize a confidence measure. 
     It is a further object of the invention to implement a search algorithm based on HMMs with identical topologies and a single optimum sequence of states associated with alternative hypotheses related to the presence or absence of a known word in an examined utterance. 
     The above and other objectives are achieved in the invention with systems, methods, and apparatuses that variously receive, store, process, and output various data to obtain a confidence measure of the presence of a known word according to a Viterbi algorithm that is based directly on the three-dimensional (3-D) modeling space of states in a first embodiment or that is modified based on various assumptions in a second embodiment. 
     A speech recognition system in accordance with the principles of the invention preferably includes receiving, storing and processing devices. The receiving device operates to receive an input signal representing a speech utterance. The storing device operates to store a plurality of recognition models. Each one of the recognition models preferably represents a known word within a vocabulary. In one embodiment, discriminative techniques are used wherein the known words include both keywords and phonetically similar alternatives. The processing device, which preferably includes at least one processing unit, operates to process the input signal utilizing certain ones of the plurality of recognition models to identify one or more words represented within the input signal. The processing device generates an output signal representing a confidence measure corresponding to the relative accuracy of the performed identification process. 
     The invention concerns the utilization of a plurality of recognition models to identify a known word within a received input signal. Each one of the recognition models preferably represents a particular known word within a vocabulary, while the received input signal represents a speech utterance. The preferred method identifies the known word utilizing one or more of the plurality of recognition models, and generates an output signal representing a confidence measure corresponding to the relative accuracy of the identification step. 
     One embodiment for using and/or distributing the invention is as software stored to a storage medium. The software embodiment includes a plurality of processing system instructions for controlling at least one processing unit for performing speech recognition in accordance with the invention. More particularly, the processing system instructions cause the processing system to generate an output signal or data set representative of a confidence measure and an output signal or data set representative of the known word identified and that is the subject to a target hypothesis. The confidence measure is a measure of the probability that the target hypothesis is correct. The storage mediums utilized to implement the software embodiment include, without limitation, magnetic, optical, or semiconductor chip, as well as suitably arranged combinations thereof. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     The invention will be described with reference to the following drawings, wherein 
     FIG. 1 is a perspective view of a three-dimensional hidden Markov search space of states of recognition models; 
     FIG. 2 is a block diagram of one continuous speech recognizer in accordance with principles of the invention; 
     FIG. 3 is an isometric view of a processing system that may be programmed to perform continuous speech recognition in accordance with principles of the present invention; 
     FIG. 4 is a block diagram of one microprocessing system that may be used in conjunction with the processing system of FIG. 3; and 
     FIG. 5 is a flow diagram of a method of known word recognition according to the invention. 
    
    
     DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS 
     FIG. 1 is a perspective view of a 3-D HMM search space useful in explaining specific embodiments of the invention. 
     With reference to FIG. 1, q t  =(q t   c ,q t   a ) is a point in a 3 dimensional space defined by (λ c ,λ a ,t). We define a path in the 3-D space as Q 3D  ={q t .sbsb.1,q t .sbsb.2, . . . ,q t .sbsb.T }=(Q c ,Q a ). In this way, the paths Q c  and Q a , defined by equation (5), can be seen as the projection over the two orthogonal planes (λ c ,t) and (λ a ,t) of a 3-D path, as shown in FIG. 1, which maximizes the likelihoods P(Y,Q|λ c ) and P(Y,Q|λ a ) separately over a speech segment. In the two-pass procedure, the speech segment was defined by the Viterbi backtrace on the plane (λ c ,t). 
     Quantities Π q .sbsb.1,A q .sbsb.t-11.sub.,q.sbsb.t and B q .sbsb.t (y t ) are defined according to the following expressions: ##EQU6## In terms of these new expressions, equation (6) can be rewritten as 
     
         LR(Y,λ.sup.c,λ.sup.a)=Π.sub.q .sbsb.qB.sub.q .sbsb.1(y.sub.1) . . . A.sub.q .sbsb.T-1,.sub.q .sbsb.TB.sub.q .sbsb.T(Y.sub.T)                                          (10) 
    
     where A q  .sbsb.T-1, q  .sbsb.TB q  .sbsb.T(y T ) is called the frame likelihood ratio. Equation (10) provides the way to define a one-pass search algorithm for utterance verification. In this way, we define the best single 3-D path Q 3D  as the sequence of states which maximize the likelihood ratio as follows: ##EQU7## where Q 3D  can be found by a 3-D Viterbi search defining the recursion ##EQU8## where N c  =the number of states of the model λ c , and 
     N a  =the number of states of the model λ a , 
     π n   c  =the initial state probability of the state i for the model λ c , 
     π m   a  =the initial state probability of the state m for the model λ a , 
     b n   c  (y t )=the observation density for the feature vector y t  for the state n and the model λ a , 
     b m   c  (y t )=the observation density for the feature vector y t  for the state m and the model λ c , 
     a in   c  =the transition probability from the state i to the state n for the model λ c , and 
     a jm   a  =the transition probability from the state j to the state m for the model λ a . 
     The accumulated path score δ t  (n,m), obtained by this one pass procedure corresponds to a measure of confidence in the path terminating in state n at time T. This search procedure can be applied directly over the speech signal, giving a new segmentation of the speech input in terms of maximizing the confidence measure based on the frame likelihood ratio. 
     However, this procedure may be simplified to reduce the complexity of the decoder and its computation load by making various assumptions. By placing constraints on the alternate hypothesis model, it is possible to formulate a simple search algorithm which directly optimizes a likelihood ratio criterion. Suppose that λ c  and λ a  are HMMs with identical topologies, and the expression in Equation (10) is constrained so that q t   c  =q t   a  =q t  for each t=1, . . . ,T. In this way, the single optimum state sequence, Q, is decoded according to the following criterion ##EQU9## Then a new likelihood ratio can be defined which can be decomposed as ##EQU10## in terms of the local densities. As a result, the process of identifying the optimum state sequence can take the form of a modified Viterbi algorithm where the recursion is defined as ##EQU11## where N=the number of states in models λ c  and λ a . The accumulated path score, δ t  (j), obtained by this one pass procedure corresponds to a measure of confidence in the path terminating in state j at time t. Equation (15) is equivalent to the standard Viterbi algorithm applied to a modified HMM with transition probabilities ##EQU12## initial state probabilities ##EQU13## and observation densities ##EQU14## Note that the observation density for an HMM state i corresponds to a frame based likelihood ratio. This procedure demonstrates that recognition and verification can be performed simultaneously as opposed to the two-pass procedure where strings are hypothesized and verified in separate steps. 
     FIG. 2 illustrates a block diagram of one continuous speech recognizer in accordance with the principles of the invention. This embodiment is preferably processing system based, wherein the principles of the invention are implemented in software, as previously introduced. The software is preferably compiled and stored to a suitable conventional storage medium, either internal or external to the processing system. Alternate preferred embodiments may also be implemented in hardware or firmware, as well. 
     The illustrated system operates on real physical speech input signals, preferably PCM signals, to provide real physical output signals. The illustrated system preferably provides both recognized speech signals and an accept/reject data signal, also preferably in digital form, as first and second outputs, respectively. 
     The illustrated embodiment utilizes a likelihood ratio decoder. The likelihood ratio decoder outputs a confidence measure signal that is input to a decision rule device that outputs an accept/reject data output signal for a known word that has been identified. The likelihood ratio decoder also outputs a data output signal for the target hypothesis for the known word. 
     It should be noted that the preferred confidence measure processor may be adapted to, and implemented in conjunction with, any suitable speech recognizer, including, without limitation, template based dynamic time warping systems and neural network based systems, to name two examples. 
     The illustrative system in FIG. 2 includes a conventional feature extractor 100, a likelihood ratio decoder 101, a memory 102 that stores a target model λ c  and an alternative λ a  model, and a memory 103 that stores a recognition model that includes a language model and a lexicon. Memories 102 and 103 may be included in the same or separate memory devices. 
     Conventional feature extractor 100 receives unknown speech signals. Extractor 102 produces one or more observation or feature vectors, Y={y 1 ,y 2 , . . . , y T  } corresponding to times 1,2, . . . ,T. The feature vectors characterize signal components of a received speech input signal. Feature extractor 100 is preferably of the conventional capstral feature vector type. However, any suitably arranged conventional feature extractor may be utilized in conjunction with or in place of the foregoing, including, without limitation, a filter bank, a linear predictive coding, or a discrete Fourier transform feature extractor, to name three other examples. The feature vectors produced by feature extractor 100 are provided to the likelihood ratio decoder 101. 
     The models λ c  and λ a  are hidden Markov models (HMMs). Each model λ a  and λ c  is generally an N-state model which reflects first and second order statistics such as spectral means and variances. Each HMM state corresponds to the statistics associated with the temporal events of a known word. HMMs are accordingly characterized by state transition matrices which provide a statistical description of how new states may be reached from old states, and observation probability matrices which provide descriptions of which feature vectors are likely to be observed in a given state. 
     Based on the models λ c  and λ a  selected, data signals representing the parameters of initial state probabilities, observation densities and transition probabilities stored in memory 102 are supplied to the likelihood ratio processor 101. Language model signals and lexicon signals representing the parameters of the lexicon and the language model of the recognition model stored in memory 103 are input to the likelihood ratio decoder. The lexicon signals may relate to individual known words of the vocabulary and the language model signals may relate to, for example, possible orderings of those words. In the first embodiment of the invention, the likelihood ratio decoder 101 directly determines confidence measures in terms δ t  (n,m) of equation (14) at various segmentations and with new segmentations produced continuously over the speech signal. 
     In the second embodiment of the invention, the confidence measure processor directly determines confidence measures in terms of δ t  (j) of equation (15). 
     In both the first and second embodiments, a signal is produced that can be compared to previous signals that have been produced in the likelihood ratio decoder 101 and a maximum, or otherwise optimum, signal or signals determined. 
     The optimum signal, or signals, determined by the likelihood ratio decoder is output to a decision rule device 104 where it is compared to a signal, or signals, related to a decision threshold to output a reject or accept signal. Additionally, the likelihood ratio decoder 101 outputs a signal representative of the target hypothesis for a known word corresponding to the optimum signal or signals. 
     Thus, one-pass speech recognition verification, unlike the related art two-pass recognition/verification, does not assume that the segmentation given by a speech recognizer is the correct segmentation for utterance verification. Rather, by simultaneous detection and verification, speech recognition performance is improved. 
     While FIG. 2 illustrates the various components of the speech recognizer as separate elements, a physical separation of the various components is not necessary. The speech recognizer may be implemented as a special purpose integrated circuit (e.g., ASIC) having a main or central processor section for overall, system-level control, and separate sections dedicated to performing various specific computations, functions and other processes under the control of the central processing section. It will be appreciated by those skilled in the art that the speech recognizer can also be implemented using a plurality of separate dedicated or programmable integrated or other electronic circuits or devices (e.g., hardwired electronic or logic devices such as PLDs, PLAs, PALs, or the like). The speech recognizer can also be implemented using a suitably programmed general purpose computer, e.g., a microprocessor, microcontroller or other processor device (CPU or MPU), either alone or in conjunction with one or more peripheral (e.g., integrated circuit) data and signal processing devices. In generally, any device or assembly of devices satisfying the structural and operational requirements as set out herein can be used as the speech recognizer. A distributed processing architecture is preferred for maximum data/signal processing capability and speed. 
     FIG. 3 illustrates an isometric view of an illustrative processing system, a personal computer 400, which may be programmed to perform speech recognition in accordance with the principles of the present invention. As previously introduced, a preferred embodiment for using and/or distributing the present invention is as software. The software preferably includes a plurality of processing system instructions for controlling at least one processing unit for performing speech recognition. 
     Personal computer 400, which is coupled with a conventional microphone 409, includes a hardware casing 401 (illustrated having a cut-away view), a monitor 404, a keyboard 405 and a mouse 408. The microphone 409, illustrative of a typical speech input receiving device, operates to receive sound waves and to generate representative electric signals, preferably digital PCM signals. The monitor 404, and the keyboard 405, the mouse 408, and the microphone 409 may be replaced by, or combined with, other suitably arranged output and input devices, respectively. For example, microphone 409 may be replaced by, or combined with, other conventional suitably arranged sound receiving devices, such as, videophone and conventional telephony device and service technologies. 
     Hardware casing 401 includes both a floppy disk drive 402 and a hard disk drive 403. Floppy disk drive 402 is operable to receive, read and write to external disks, while hard disk drive 403 is operable to provide fast access data storage and retrieval. Although only floppy disk drive 402 is illustrated, the personal computer 400 may be equipped with any suitably arranged structure for receiving and transmitting data, including, for example, tape and compact disc drives, and serial and parallel data ports. Within the cut away portion of hardware casing 401 is a processing unit 406, coupled with a memory storage device 407, which in the illustrated embodiment is a random access memory (RAM). Although personal computer 400 is shown having a single processing unit 406, personal computer 400 may be equipped with a plurality of processing units 406 operable to cooperatively carry out the principles of the invention. Although personal computer 400 is shown having the single hard disk drive 402 and memory storage device 407, personal computer 400 may similarly be equipped with any suitably arranged memory storage device, or plurality thereof. 
     Although a personal computer 400 is used to illustrate a single embodiment of a processing system, the principles of the invention may be implemented within any processing system having at least one processing unit and a means for receiving speech input data, including, for example, sophisticated calculators and hand held, mini, mainframe and super computers, including RISC and parallel processing architectures, as well as within processing system network combinations of the foregoing. 
     One aspect of the illustrative processing system embodiment is that unknown speech utterances need not be received and recognized coincidentally. Storage devices, such as floppy disks, for example, may be used to enable continuous speech data to be received and processed at or after recordation. 
     FIG. 4 illustrates a block diagram of an illustrative microprocessing system, including a processing unit and a memory storage device, which may be utilized in conjunction with personal computer 400. The microprocessing system includes a single processing unit 406 coupled via data bus 503 with a single memory storage device 407, such as the RAM illustrated in FIG. 4, for example. Memory storage device 407 is operable to store one or more instructions which processing unit 406 is operable to retrieve, interpret and execute. Processing unit 406 includes a control unit 500, an arithmetic logic unit (ALU) 501, and a local memory storage device 502, such as, for example, stackable cache or a plurality of registers. Control unit 500 is operable to fetch instructions from memory storage device 407. ALU 501 is operable to perform a plurality of operations, including addition and Boolean AND needed to carry out instructions. Local memory storage device 502 is operable to provide local high speed storage used for storing temporary results and control information. 
     FIG. 5 illustrates a flow diagram of one preferred method. The exemplary process begins upon receipt of an input signal representative of a speech utterance in step 601. The received input signal is processed to produce one or more feature vectors, step 602. The feature vectors are used to characterize the received input signal. 
     In step 603, language model parameters and lexicon parameters are read and related signals input for determining a confidence measure. Similarly, in step 604, target and alternate model parameters are read and related signals input for determining a confidence measure. 
     In step 605, the various signals from steps 602, 603 and 604 are processed to determine confidence measures for various target hypotheses according to the recursion formula of equation (14) or equation (15). 
     In step 606, a confidence measure is determined. Finally, in step 607, an identification, or indicator signal is preferably produced accepting or rejecting the identified known word along with a target hypothesis signal representing the identified known word and its associated target model by comparing the confidence measure signal to a decision threshold signal. 
     While the invention has been described in conjunction with specific embodiments thereof, it is evident that many alternatives, modifications and variations will be apparent to those skilled in the art. Accordingly, preferred embodiments of the invention as set forth herein are intended to be illustrative, not limiting. Various changes may be made without departing from the spirit and scope of the invention as defined in the following claims.