The present invention relates to digital signal processing, and more particularly to automatic speech recognition.
The last few decades have seen the rising use of hidden Markov models (HMM) in automatic speech recognition (ASR) in various applications, such as hands-free dialing for cellphones. In this case a user orally tells the cellphone to call a name, and the cellphone's ASR recognizes the utterance as a call command plus a name in its telephone directory. Of course, utterance-level verification of the recognized items is a necessary component for such real-world ASR applications. By computing an utterance-level confidence score or confidence measure (CM), an utterance verification (UV) system can measure how well the recognition hypothesis matches the observed utterance data. Utterances whose confidence scores fall below a pre-determined threshold are rejected. Ideally, misrecognized in-vocabulary (IV) and out-of-vocabulary (OOV) phrases would be rejected by the utterance verification mechanism.
Various methods have been proposed for computing confidence measures, and these methods fall into three categories. The first category is based on some predictor features, such as acoustic score per frame and HMM state duration. An ideal predictor feature should provide strong information to separate the correctly recognized utterances from other misrecognition utterances, and the distribution overlap between the two classes should be small. However, so far, none of the predictor features is ideal in this sense.
The other two categories of confidence measures are based on statistical frameworks: a posteriori probability or hypothesis testing. Confidence measures in the category of a posteriori probability use a model to compute a score to normalize the likelihood of a recognition result, so that the normalized likelihood approximates the a posteriori probability of the recognized sequence given the observation sequence.
Confidence measures which are based on hypothesis testing use likelihood ratio testing between one model and its competing model (e.g., an anti-model or a filler model). The framework of hypothesis testing is flexible enough to incorporate a variety of methods, such as discriminative training, that may progressively improve performance of CM computation. For example, see Rahim et al. Discriminative Utterance Verification for Connected Digits Recognition, 5 IEEE Tran. Speech and Audio Processing 266 (May 1997).
Most of the foregoing methods can generate accurate confidence measures. However, for mobile devices, confidence measures face some unique challenges. Mobile devices are portable. They may be used everywhere, but they usually have limited memory and computational resources. Hence, for mobile applications, confidence measures have to be robust to noise distortion, which frequently occurs in real environments. Moreover, they have to be efficiently computed because of restrictions on computational cost. These problems may be addressed in the following two aspects:
The present invention provides utterance verification methods with an accept/reject decision using a product of confidence measures.
a-1c are a flowchart and system diagrams.
a-2b illustrate a processor and network connections.
1. Overview
b illustrates the generic approach of an utterance verifier analyzing the output of a recognizer to either accept or reject the hypothesized utterance recognition. The preferred embodiment methods relate to the utterance verification as shown in the lower half of flowchart
Preferred embodiment methods include efficient extraction of utterance verification (UV) features to build confidence measurements. One UV feature is a normalized likelihood score that approximates the a posteriori probability of correct recognition given an observation sequence; this reuses computational results from the recognizer. The normalization term is usually obtained using specific models, e.g., a specific anti-model or N-best output from recognition results; however, the preferred embodiment normalization term is the maximum likelihood score that can be obtained during recognition stage. Thereby the preferred embodiment methods avoid explicit evaluation of specific models and thus have low computational costs.
Preferred embodiment methods also provide a final UV confidence score by fusion of two or more confidence scores and also provides for possible bias of the score with further UV features. This enhances system performance.
Preferred embodiment methods further include adaptation of the UV decision model to improve performance during use.
Preferred embodiment systems (cellphones with hands-free dialing, PDAs, etc.) perform preferred embodiment methods with any of several types of hardware: digital signal processors (DSPs), general purpose programmable processors, application specific circuits, or systems on a chip (SoC) which may have multiple processors such as combinations of DSPs, RISC processors, plus various specialized programmable accelerators.
2. Recognizer Background
The section provides a brief example HMM recognizer (
More explicitly, for an acoustic model λ with multivariate Gaussian mixture state probability densities, the conditional probability of observing MFCC feature vector O(t) for time (frame) t given the state at time t is equal to q (i.e., st=q), and the Gaussian mixture coefficient at time t is equal to p (i.e., mt=p) is:
P[O(t)|st=q, mt=p, λ]=G(O(t), μq,p, σq,p)
where the model λ has μq,p as the vector of means and σq,p as the vector of standard deviations where the multivariate Gaussian is taken to have a diagonal covariance matrix. The model parameters (state transition probabilities, mixture coefficients, μq,p, and σq,p) are established by training the model on the corresponding triphone. (As indicated by the broken-line box in
Then using these conditional probabilities, compute the a posteriori probability of st=q and mt=p given the observed feature vector sequence, O(1), O(2), . . . O(T), such as by the forward-backward method. In particular, define αq(t) as the forward probability of state q at time t and βq(t) as the corresponding backward probability:
αq(t)=P[O(1) . . . O(t)|st=q, λ]
βq(t)=P[O(t+1) . . . O(T)|st=q, λ]
Then, including the mixture coefficients gives
where the divisions by a sum are for normalization.
As previously noted, the recognizer applies the Viterbi algorithm using αq(t) and βq(t) to find the probabilities of state sequences and eventually find the model probability P[λ|O(1) . . . O(T)]. Then the recognizer compares the probabilities computed for the various acoustic models to hypothesize/recognize the triphone corresponding to the model with the highest probability as the phone for that segment of the utterance. Repeating for successive observation segments and phones in the utterance gives the final recognition hypothesis (sequence of phones) for the utterance.
Common alternative approaches use acoustic models of monophones, words, syllables, et cetera instead of triphones. Further, alternative models use feature vectors related to frame LPC coefficients, frame energy, et cetera rather than MFCC vectors.
3. Utterance Verification Feature Vectors
As motivation for the first preferred embodiment method of utterance verification (UV) feature extraction, consider the following. A recognizer applied to utterance u (observation MFCC vector sequence O(u)) yields a recognized word or word string (e.g., a recognized sequence of phones h1 h2 . . . hM) together with a D-dimensional real-valued UV vector, Fx. That is, Fx is the UV feature vector for a UV system and has D components, each of which is a UV feature:
Fx=[f0, f1, . . . , fD−1]
For example, the component f0 could be the log-likelihood of the recognized sequence of phones from O(u).
Now assume that the UV feature vector Fx can be classified into one of two hypotheses. One hypothesis, denoted as H0, assumes that the recognition result is correct, and the alternative hypothesis, denoted as H1, assumes that the recognition result is not correct. The problem of utterance verification is to choose a hypothesis given Fx.
In the framework of hypothesis testing, the choice (decision) is made by comparing the following log-likelihood ratio of the observation sequence to a threshold.
where ΛH0 denotes the UV decision model for H0 and ΛH1, denotes the UV decision model for H1. When LLR[O(u)] is larger than a (positive) threshold, hypothesis H0 (correct recognition) is accepted; otherwise, H0 is rejected.
Preferred embodiment methods provide reliable, robust, and efficient hypothesis decision making (confidence measures) preferred embodiment methods of extraction of the UV feature vector Fx and of training the decision model parameters for UV decision models ΛH0. and ΛH1.
Preferred embodiment UV feature vectors, Fx, are extracted only from speech segments, as silence and non-speech segments do not have discriminative information for utterance verification.
First, suppose phone hi has been hypothesized (recognized) within the observed sequence of acoustic (MFCC) vectors Oi={o1,i, o2,i, o3,i, . . . , oTi,i} where ot,i denotes the observation vector at time (frame) t for hypothesized phone hi and Ti is the number of frames for this phone. Let T denote the total frame count of the speech (non-silence) segments; then T=Σ1≦i≦MTi where M is the number of phones hypothesized (recognized) in the utterance.
(a) Likelihood UV Feature
A first confidence measure (UV feature) for a recognized phone sequence is based on a posteriori probability of the hypothesized phone sequence [h1 . . . hM] given observation sequence O
f0=log{P{[h1 . . . hM]|O}}.
Assuming independence at the phone level, the above a posteriori probability can be written as:
f0=Σ1≦i≦Mlog{P[hi|Oi]}
where P[hi|Oi] is the a posteriori probability of phone hi given the utterance portion Oi recognized as hi. This f0 is the first component of the foregoing preferred embodiment UV feature vector Fx.
Rewriting in terms of the probability of the observations given the hypothesized phone:
The above a posteriori probability requires computations of the following probabilities.
The probability of observing Oi given phone hi, P[Oi|hi], can be computed by the forward probability αq(t)=P[Oi|st=Ti=q, hi], with q substituted with the last state of phone hi.
Typically, P[Oi] is computed by summing over all phones {h1, . . . , hW}. Notice that the hypothesized phones {h1, . . . , hM} are a subset of all phones. That is, the typical computation is:
P[Oi]=Σ1≦m≦WP[Oi|hm]P[hm]
which requires evaluation of P[Oi|st=Ti=q, hm] with q taken as the last state of phone hm for each phone hm.. The evaulation may use the same procedure to compute the forward probability αq(t).
However, preferred embodiment methods instead apply the following simplifications. Note that assuming independence at the frame level, the above probability of the observed segment, Oi, given each phone can be rewritten in terms of a product of probabilities of observing frames ot,i given the phone:
P[Oi|hm]=Π1≦t≦TiP[Ot,i|hm]
Further, assume that each phone occurs equally likely so that the P[hm] can be ignored, the P[Oi] can then be approximated as
P[Oi]=Π1≦t≦TiΣ1≦m≦WP[ot,i|hm]. (2)
Further replacing the sum with the simpler maximum over phones, the preferred embodiment methods approximates P[Oi] as
P[Oi]=Π1≦t≦Ti{max1≦m≦WP[ot,i|hm]}.
Since all of the conditional probabilities, P[ot,i|hm], are computed as part of model scoring during the recognition processing of the observation segment o1,i, o2,i, . . . , oTi,i, this UV feature does not increase computational complexity. That is, in
Known methods set the probablity P[hi] to 1, as the phone hi for evaluating log{P[Oi|hi]} in Eq. (1). Alternatively, the probability is assumed to be a constant as the approximation done in Eq. (2), and hence can be ignored.
Thus the overall UV feature is:
(b) N-Best UV feature
A second confidence measure (UV feature) is based on the intuition that the larger the number of alternative recognized phone sequences, the lower the confidence in a recognized utterance. This intuition is based on an observation that, when an utterance is difficult to be recognized, for instance a name uttered in a car driven on a highway, a recognition system usually presents as many outputs (recognition hypotheses) as possible. In contrast, when a name is easy to be recognized, for instance, a name uttered in a quiet office, the recognition system has only one output and that can also be correct. The many recognition results are also called N-Bests if the probability P{O|[h1 . . . hM]} of each hypothesized phone sequence [h1 . . . hM] is ranked.
The N-Bests are computed as part of the recognition computations. In particular, the recognizer applied to an input MFCC vector observation sequence O computes probabilities for hypothesized sequences of phones, and these hypothesized sequences can be ordered according to probability. That is, the recognizer evaluates the recognized hypothesis of h1,1, h1,2, h1,3, . . . , h1,M, as P{O|[h1,1 . . . h1,M]}. Similarly, alternative hypotheses were also evaluated during the recognition: for hypothesis hk,1, hk,2, hk,3, . . . , hk,M, the output would be P{O|[hk,1 . . . hk,M]}. Notice that if an utterance is easy to be recognized, its correspondingly correct phone sequence can have a much larger probability than those of the alternative hypotheses. Hence, using a pruning procedure with a pruning threshold can eliminate those hypotheses with lower probabilities. Given the pruning threshold, the number of the kept hypotheses can vary significantly. The pruning threshold is typically applied at each frame, so it needs to be carefully selected to keep the correct phone sequence from being eliminated during the recognition process.
From the N-Bests methodology, a preferred embodiment defines an N-Bests UV feature as
where N is a positive integer (which would vary with vocabulary size) and ξ is a corresponding empirically determined negative number. One preferred embodiment takes N=20 and ξ=−50.
4. Fused Confidence Scores
The preferred embodiment methods fuse two or more separate confidence scores for a UV model to obtain a final confidence score. Thus this section considers two confidence scores plus a fusion. The first confidence score is generated for each utterance based on Gaussian UV modeling. Denote a UV feature for utterance u as f0(u); for example, the f0 of the preceding section. The UV feature value is assigned to one of two sets, Sc and Se (“correct” and “error”): Sc consists of the UV feature values, f0(u), that are generated when the utterances, u, are correctly recognized, and Se consists of the UV feature values when the utterances are misrecognized.
For sets Sc and Se compute means μc and μe plus deviations σc and σe, respectively, using the f0(u) for a set of training utterances. The utterance verification models now consists of two Gaussian densities, Λc=G(; μc, σc) and Λe=G(; μe, σe).
A first confidence score of an input utterance u is computed using the UV feature f0(u) in a log-likelihood ratio:
A second confidence score of the input utterance u is computed using the UV feature f0(u) with logistic modeling. The model is trained by labeling each UV feature value f0(u) for u in the set Sc as 1, and each UV feature value f0(u) for u in set Se as 0. The model approximates the logistic labeling by
Scr2(u)=1/[1+exp(−w1−w2f0(u))]
where w1 and w2 are the parameters (weights) of the logistic model. Usually, maximum likelihood training is used to learn these model parameters. That is, apply a recognizer to a training set of utterances, {uj}, and classify each uj according to the correctness of the recognition as either in Sc or Se. Also compute the f0(uj) and then find w1 and w2 to minimize
Σui ∈ Sc|1−1/[1+exp(−w1−w2f0(ui))]|2
+Σuj ∈ Se|1/[1+exp(−w1−w2f0(uj))]|2
Because 1 was taken as the label for set Sc and 0 for set Se, the score Scr2(u) can be considered as an approximation to the a posteriori probability of correct recognition of the utterance u.
Confidence scores Scr1(u) and Scr2(u) each provide a posteriori probability-like confidence measures of correct recognition of utterance u. The preferred embodiment fuses the two scores by multiplication to give an overall score:
Scr(u)=Scr1(u)Scr2(u)
Empirically, this score can be improved by biasing with the second UV feature value, f1(u), from the preceding section. The final two-UV-feature decision score is then:
Scr(u)=Scr1(u)Scr2(u)+f1(u)
5. Adaptation of the Utterance Verification
The Gaussian modeling for the first confidence score, Scr1( ) of section 4 can be adaptive in either a supervised or an un-supervised way. In the supervised way, the UV system has feed-back from the user (or some other sources) that the recognition is correct or incorrect. In the un-supervised way, the UV system relies on its decision using Scr(u). In either way, the following method is used to adapt (update) the Gaussian modeled confidence score Scr1( ) after verification of the utterance u:
μc←a μc+b f0(u)
when u correctly recognized
μe←a μe+b f0(u)
otherwise
where b=1−a, and a is typically taken in the range 0.950≦a≦0.999.
6. Experimental Results
The preferred embodiment methods were evaluated using the WAVES database which was collected in vehicles using an AKG M2 hands-free distant talking microphone in three recording environments: parked car with engine off; stop-and-go driving; and highway driving. There are 20 speakers in the database. Each speaker has 120 utterances of 90 names. Therefore, the utterances in the database were noisy. Another difficulty was due to multiple pronunciations of names. It is therefore very interesting to see the performance of different compensation algorithms on this database.
Experiments were also conducted in other types of noise, such as TIMIT noise, babble, subway, etc.
Baseline acoustic models in the recognizer are triphone HMMs with mixtures of four Gaussians per state. A Gaussian mixture tying scheme was used to effectively share Gaussian densities. Acoustic models were trained using Phonebook database.
Evaluation of the verification tasks is based on false acceptance rate (FA) of incorrectly recognized units and false rejection rate (FR) of correctly recognized units. The rates are calculated as fractions:
In addition to the ROC, equal error rate (EER) is also used. It is the number where FA is equal to FR. The lower the EER, the better the system performs.
Two tasks are used to evaluate the system:
Using the confidence score Scr(u), EERs in highway, stop-n-go, and parked conditions are respectively 14.44%, 13.88%, and 13.21% for OOV task. For IV task, EERs are 21.67%, 26.92%, 14.29%, respectively in highway, stop-n-go, and parked conditions.
As an example, for the case of highway driving
7. Modifications
The preferred embodiments can be modified while retaining one or more of the features of fused confidence scores.
For example, other UV features could be used in the confidence scores, such as the number of phones in a hypothesis h1 h2 . . . hM with individual probabilities P[hj|Oj] greater than a threshold or the ratio of the hypothesized (best) phone probability to the second-best phone probability, and so forth.
This application claims priority from provisional Appl. No. 60/746,449, filed May 4, 2006. The following co-assigned, copending applications disclose related subject matter: application Ser. No. 11/196,601, filed Aug. 3, 2005 now pending; application Ser. No. 12/133,197, filed Jun. 4, 2008, now pending; and U.S. Pat. No. 7,584,097, issued Sep. 1, 2009.
Number | Name | Date | Kind |
---|---|---|---|
4837831 | Gillick et al. | Jun 1989 | A |
5710866 | Alleva et al. | Jan 1998 | A |
6260011 | Heckerman et al. | Jul 2001 | B1 |
6421640 | Dolfing et al. | Jul 2002 | B1 |
20020069058 | Jin et al. | Jun 2002 | A1 |
20040032933 | Groves et al. | Feb 2004 | A1 |
20040210437 | Baker | Oct 2004 | A1 |
20050119883 | Miyazaki et al. | Jun 2005 | A1 |
20050187768 | Godden | Aug 2005 | A1 |
20060035632 | Sorvari et al. | Feb 2006 | A1 |
Number | Date | Country | |
---|---|---|---|
60746449 | May 2006 | US |