Abstract:
A method and system for calibration of a data acquisition path is achieved by applying a voice utterance to a first high quality microphone and reference path and to a test acquisition path including a test microphone such as a lower quality one used in a car. The calibration device includes detecting the power density of the reference signal Y R  through the reference path and detecting the power density of the signal Y N  through the acquisition path. A processor processes these signals to provide an output signal representing a noise estimate and channel estimate. The processing uses equation derived by modeling convolutive and additive noise as polynomials with different orders and estimating model parameters using maximum likelihood criterion and simultaneously solving linear equations for the different orders.

Description:
This application claims priority under 35 USC §119(e)(1) of provisional application No. 60/279,117, filed Mar. 28, 2001. 

   FIELD OF INVENTION 
   This invention relates to speech recognition and more particularly to calibration of speech data acquisition path. 
   BACKGROUND OF INVENTION 
   A speech acquisition path refers to the whole speech transmission path before the speech is actually digitized. 
   Typical speech acquisition path includes therefore air from lips to the microphone, microphone, wires, antialiasing filters, analog-to-digital converter. This is determining the transfer function of the system. Noises can be introduced at each of these devices and from power supply of the analog-to-digital converter. 
   Practical speech acquisition lines, especially for low cost devices, introduce both convolutive and additive noises to the input speech, and cause additional statistical mismatch between an utterance to be recognized and trained speech model set. Such mismatch will cause performance degradation. 
   Previously, SNR-dependent cepstral normalization (SDCN), fixed-code-word-dependent cepstral normalization (FCDCN) [See A. Acero.  Acoustical and Environmental Robustness in Automatic Speech Recognition . Kluwer Academic Publishers, 1993], multi-variate Gaussian based cepstral normalization [P. Moreno, B. Raj, and R. Stem. Multi-variate Gaussian based cepstral normalization. In  Proc. of IEEE Internat. Conf. on Acoustics, Speech and Signal Processing , Detroit, 1995] and statistical re-estimation [P. Moreno, B. Raj, and R. Stern. A unified approach to robust speech recognition. In  Proceedings of European Conference on Speech Communication and Technology , Madrid, Spain, Sept. 1995] have been proposed to deal with similar problem. They all assume that the distortions can be modeled by a bias in the cepstral domain, which is clearly not the case for additive distortions. Vector Taylor series has been used to approximate the distortion as function of cepstral representation of additive and convolutive noises. See reference P. J. Moreno, B. Raj, and R. M. Stern. A vector taylor series approach for environment-independent speech recognition. In  Proc. of IEEE Internat. Conf on Acoustics, Speech and Signal Processing , Atlanta, Ga., 1996. 
   SUMMARY OF INVENTION 
   In accordance with one embodiment of the present invention the parameters of the convolutive and additive noise are determined by a calibration of the speech acquisition path to compensate for the mismatch between an utterance to be recognized and a trained speech model set. In the power spectrum domain both types of noises are modeled as polynomial functions of frequency. The model parameters are estimated with maximum likelihood (ML) criterion on a set of simultaneous recordings. 

   
     DESCRIPTION OF DRAWINGS 
       FIG. 1  illustrates the equipment configuration for the calibration according to one embodiment of the present invention. 
       FIG. 2  illustrates the process steps for the calibration; 
       FIG. 3  illustrates the results of estimation for convolutive noise estimation at 30 db SNR; 
       FIG. 4  illustrates the results of estimation for additive noise elimination at 30 db SNR; 
       FIG. 5  illustrates the results of estimation for convolutive noise estimation at 24 db SNR; 
       FIG. 6  illustrates the results of estimation for additive noise elimination at 24 db SNR; 
       FIG. 7  illustrates that the estimation of the convolutive bias with independent component model gives 4.7 to 8.4 time larger estimation error. 
       FIG. 8  illustrates that the estimation of additive bias with independent component model gives 7.5 to 12.3 time larger estimation error than with polynomial models. 
   

   DESCRIPTION OF PREFERRED EMBODIMENTS 
   In the power-spectral domain, the additive and convolutive noises are modeled as polynomial functions of frequency. The model parameters are estimated with Maximum Likelihood (ML) criterion, on a set of simultaneous recordings. 
   Once the parameter of the convolutive and additive noises are determined, speech recognizers can be compensated with these parameters, either by speech enhancement, or by model adaptation. See references: M. J. F. Gales. “nice” model-based compensation schemes for robust speech recognition. In  Robust speech recognition for unknown communication channels , pages 55-64, Pont-a-mousson, France, 1997; Y Gong. Speech recognition in noisy environments: A survey.  Speech Communication,  16(3):261-291, April 1995; and C. H. Lee. On feature and model compensation approach to robust speech recognition. In  Robust speech recognition for unknown communication channels , pages 45-54, Pont-a-mousson, France, 1997. 
   The present invention is determining the transfer function and associated noise estimate. What we want to determine is the frequency response of the microphone as well as the noise that may have been introduced by the A/D (analog to digital )conversion process. This is particularly needed for low quality microphones and noisy systems. To model the transfer function we need to determine the microphone followed by H (the linear filter) and the noise N of the A/D system. Hardware illustrated in  FIG. 1  is used. 
   The equipment  10  used is outlined in FIG.  1 . It produces two signals: reference Y R  and noisy Y N . Y R  is assumed to give a digitized speech signal under the same acoustic environment of the speech used to train the recognizer and is represented by microphone  11  and DAT (high quality data recording) equipment  15 . For this reference H is 1 and N is zero. Y N  is the noisy speech signal under the acoustic environment of the target application with the test microphone  13  and equipment under test path  17 . Reference microphone  11  is the one used for recording the training database, and test microphone  13  is the one to be used in the target product for field operation. The equipment test path  17  may introduce both convolutive noises (microphone, pre-A/D (pre analog to digital) filter) and additive noises (environmental noises, any noises introduced before A/D, etc.), even when there is no background noise. The purpose here is to estimate the two noise components, with very short speech utterance (typically one) represented by X. 
   In the equipment configuration  FIG. 1 , we identify two environments: reference (R) and noisy (N). We represent a signal by its power spectral density sampled with a DFT (Discrete Fourier Transform) of 2M dimensions. Using Y R  and Y N  the distortion parameters are determined. For a given signal X, reference signal is
 
Y R   Δ [Y R   (1) ,Y R   (2) , . . . Y R   (M) ] t =H R X  (1)
 
and that of the noisy signal is:
 
 Y   N     Δ [Y   N   (1)   , Y   N   (2)   , . . . Y   N   (M) ] t   =H   N   X+N   N   +e   (2)
 
where e is assumed to be a zero mean Gaussian distribution with diagonal covariance matrix, i.e., e:[0, R].
 
   As the pre-A/D filtering  15   a  as well as other parts of the reference equipment are of much higher acoustic quality than that of most speech recognizers, it is assumed that HR contains the information on the reference microphone  11 . H N  models the test microphone  13  and the pre A/D filter  17   a  of the equipment test path N N  models the noise background introduced at any point of the test equipment. H R  and H N  are both M-dimensional diagonal matrices, and N N  a M-dimensional vector. One can remove X by substituting H R   −1 Y R  for X. 
   From Equation 1 and Equation 2, we have:
 
 Y   N   =H   Δ   Y   R   +N   N   +e   (3)
 
with
 
 H   Δ     Δ H   N   H   R   −1  (ratio of transfer function)  (4)
 
We are interested in the estimate acoustic changes represented by H Δ  and N N . There are so many combinations to determine these values. A model is assumed herein that Y N  is only true when Y N  follows a Gaussian distribution as in equation 5.
 
Let the i-th observed Y N  be Y N (i), and the i-th observed Y R  be Y R (i). The likelihood of a set of T observed noisy signals is then: 
               P   ⁡     (         Y   N     ⁡     (   1   )       ,       Y   N     ⁡     (   2   )       ,       …   ⁢           ⁢       Y   N     ⁡     (   T   )         |   λ       )       =       ∏     i   =   1     T     ⁢       1         (     2   ⁢   π     )       M   /   2       |   R   ⁢     |     1   /   2           ⁢     exp       -     1   2       ⁢     (         Y   N     ⁡     (   i   )       -       H   Δ     ⁢       Y   R     ⁡     (   i   )         -       N   N   i     ⁢       R     -   1       ⁡     (         Y   N     ⁡     (   i   )       -       H   Δ     ⁢       Y   R     ⁡     (   i   )         -     N   N       )                             (   5   )             
 
With limited amount of data, direct estimation of the parameters H Δ ∈R M  and N N ∈R M  of the model may give unreliable results in noisy conditions. We propose to further limit the solutions of the two set of parameters in the spaces spanned by polynomial functions.
 
   The further modeling to constraint the values of H Δ  uses the polynomial model. We assume the H Δ  has a value as a function of frequency and the change is not sudden but is smooth and a polynomial of a low order. We assume a noise will follow a Gaussian distribution. Let k∈[0, M) be the frequency index, and 
                 v   ⁡     (   k   )       ⁢     Δ     _   _       ⁢     k   M       ∈     [     0   ,   1     ]             (   6   )             
 
be the normalized frequency: In order to reduce the number of free parameters and improve the robustness of the estimation, we further assume that H Δ  is an order-P polynomial function of normalized frequency v:
 
H Δ   Δ diag└b 1   t θ H , b 2   t θ H , . . . b k   t θ H , . . . b M   t θ H   (7)
 
where
 
b k   t   Δ [1,v(k),v 2 (k), . . . v P−1 (k)]  (8)
 
θ H   Δ └θ H   (1) ,θ H   (2) , . . . θ H   P−1 ┘ t   (9)
 
Similarly, we assume that N N  is an order-Q polynomial function of normalized frequency.
 
N N   Δ [C 1   t θ N ,C 2   t θ, . . . C k   t θ N , . . . C M   t θ N ] t   (10)
 
where
 
c k   t   Δ [1,v(k),v (2) (k), . . . v Q−1 (k)]  (12)
 
The model parameter set is then:
 
λ Δ {θ H ,θ N ,R}  (13)
 
Determination of Parameters:
 
When you change H Δ  and N N  in a Gaussian distribution it will change the shape. We change the shape so that the probability of observing Y N  is maximized and is represented by equations 14 and 15.
 
Polynominal Coefficients;
 
Using maximum likelihood criterion to determine the parameter set λ, we have 
                   ∂               ∂     θ   H         ⁢     p   ⁡     (         Y   N     ⁡     (   1   )       ,       Y   N     ⁡     (   2   )       ,       …   ⁢           ⁢       Y   N     ⁡     (   T   )         |   λ       )         =         ∑     i   -   1     T     ⁢       ∑     k   =   1     M     ⁢       (         Y   N   k     ⁡     (   i   )       -       b   k   t     ⁢     θ   H     ⁢       Y   R   k     ⁡     (   i   )         -       c   k   t     ⁢     θ   N         )     ⁢       ∂               ∂     θ   H         ⁢     {       b   k   t     ⁢     θ   H       }     ⁢       Y   R   k     ⁡     (   i   )             =   0             (   14   )             
                   ∂               ∂     θ   N         ⁢     p   ⁡     (         Y   N     ⁡     (   1   )       ,       Y   N     ⁡     (   2   )       ,       …   ⁢           ⁢       Y   N     ⁡     (   T   )         |   λ       )       ⁢       ∑     i   =   1     T     ⁢       ∑     k   =   1     M     ⁢       (         Y   N   k     ⁡     (   i   )       -       b   k   t     ⁢     θ   H     ⁢       Y   R   k     ⁡     (   i   )         -       c   k   t     ⁢     θ   N         )     ⁢       ∂               ∂     θ   N         ⁢     {       c   k   t     ⁢     θ   N       }             =   0           (   15   )             
 
with 
                   ∂               ∂     θ   H         ⁢     {       b   k   t     ⁢     θ   H       }       =     b   k             (   16   )             
                   ∂               ∂     θ   N         ⁢     {       c   k   t     ⁢     θ   N       }       =     c   k             (   17   )             
 
   By interchanging the summations, Equation 14 and Equation 15 can be rewritten as: 
                 ∀   p     ⁢     =     1   ⁢           ⁢   …   ⁢           ⁢   P         ,           ∑     j   =   1     P     ⁢       θ   H     (   j   )       ⁢       ∑     k   =   1     M     ⁢         v     p   +   j   -   2       ⁡     (   k   )       ⁢       ∑     i   =   1     T     ⁢       Y   R   k     ⁡     (   i   )                 +       ∑     j   =   1     Q     ⁢       θ   N     (   j   )       ⁢       ∑     k   =   1     M     ⁢         v     p   +   j   -   2       ⁡     (   k   )       ⁢       ∑     i   =   1     T     ⁢       Y   R   k     ⁡     (   i   )                   =       ∑     k   =   1     M     ⁢         v     p   -   1       ⁡     (   k   )       ⁢       ∑     i   =   1     T     ⁢         Y   R   k     ⁡     (   i   )       ⁢       Y   N   k     ⁡     (   i   )                         (   18   )             
                 ∀   q     ⁢     =     1   ⁢           ⁢   …   ⁢           ⁢   Q         ,           ∑     j   =   1     P     ⁢       θ   H     (   j   )       ⁢       ∑     k   =   1     M     ⁢         v     q   +   j   -   2       ⁡     (   k   )       ⁢       ∑     i   =   1     T     ⁢       Y   R   k     ⁡     (   i   )                 +     T   ⁢       ∑     j   =   1     Q     ⁢       θ   N     (   j   )       ⁢       ∑     k   =   1     M     ⁢       v     q   +   j   -   2       ⁡     (   k   )                 =       ∑     k   =   1     M     ⁢         v     q   -   1       ⁡     (   k   )       ⁢       ∑     i   =   1     T     ⁢       Y   N   k     ⁡     (   i   )                       (   19   )             
 
Denote: 
               α   ⁡     (     m   ,   f   ,   g     )       ⁢     Δ     _   _       ⁢       ∑     k   =   1     M     ⁢         v   m     ⁡     (   k   )       ⁢       ∑     i   =   1     T     ⁢         f   k     ⁡     (   i   )       ⁢       g   k     ⁡     (   i   )                       (   20   )             
               β   ⁡     (     m   ,   f     )       ⁢     Δ     _   _       ⁢       ∑     k   =   1     M     ⁢         v   m     ⁡     (   k   )       ⁢       ∑     i   =   1     T     ⁢       f   k     ⁡     (   i   )                     (   21   )             
               γ   ⁡     (   m   )       ⁢     Δ     _   _       ⁢   T   ⁢       ∑     k   =   1     M     ⁢       ν   m     ⁡     (   k   )                 (   22   )             
 
and
 
 A   p     Δ └A   p   (1)   ,A   p   (2)   , . . . A   p   (P) ┘ with  A   p   (j) =α( p+j −2 ,Y   R   ,Y   R )  (23)
 
 B   p     Δ └B   p   (1)   ,B   p   (2)   , . . . B   p   (Q) ┘ with  B   p   (j) =β( p+j −2 ,Y   R )  (24)
 
  C   q     Δ └C   q   (1)   , . . . B   q   (P) ┘ with  C   q   (j) =β( q+j− 2 ,Y   R )  (25)
 
 D   q     Δ └D   q   ( 1) ,D   q   (2)   , . . D   q   (Q) ┘ with  D   q   (j) =γ( q+j −2)  (26)
 
 u Δ [u   1   ,u   2   , . . . u   p]   t  with  u   p =α( p− 1 ,Y   R   Y   N )  (27)
 
 v Δ [υ   1 ,υ 2 , . . . υ Q ] t  with υ q =β( q− 1 ,Y   N )  (28)
 
Equation 19 and Equation 20 can be expressed as a linear system where H and N parameters are variable as follows: 
                     ∑     j   =   1     P     ⁢       θ   H     (   j   )       ⁢     A   p     (   j   )           +       ∑     j   =   1     Q     ⁢       θ   N     (   j   )       ⁢     B   p     (   j   )             =   u     ,           ⁢     p   =     1   ⁢           ⁢   …   ⁢           ⁢   P               (   29   )             
                     ∑     j   =   1     P     ⁢     θ   H     (   j   )         +       ∑     j   =   1     Q     ⁢       θ   N     (   j   )       ⁢     D   q     (   j   )             =     u   q       ,           ⁢     q   =     1   ⁢           ⁢   …   ⁢           ⁢   Q               (   30   )             
 
Or, equivalently: 
                 [         A       B           C       D         ]     ⁢           [           θ   H               θ   N           ]     =     [         u           v         ]             (   31   )             
 
where
 
  A   (P×P)     Δ [A   1   ,A   2   , . . . A   P ] t   (32)
 
 B   (P×Q)     Δ [B   1   ,B   2   , . . . B   P ] t   (33)
 
 C   (QXP)     Δ [C   1   ,C   2   , . . . C   Q ] t   =B   T   (34)
 
 D   (Q×Q)     Δ [D   1   ,D   2   , . . . D   Q ] t   (35)
 
Equation 31 is a linear system of P+Q variables, and can be solved by a general linear system solution method. See W. H. Press, B. P. Flannery, S. A. Teukolsky, and W. T. Vetterling.  Numerical Recipes in C. The Art of scientific programming . Cambridge University Press, 1988.
 
Solving Linear System Equations:
 
Alternatively, a more efficient solution can be used, which solves one linear equation of order P and another of Q, rather than jointly solving linear systems with (P+Q) variables.
 
From Equation 31 and Equation 34, we have the following block linear equations:
 
 Aθ   H   +Bθ   N   =v   (36)
 
 B   t θ H   +Dθ   N   =v   (37)
 
From Equation 36,
 
θ H   =A   −1 ( u−Bθ   N )  (38)
 
From Equation 37 and Equation 38 we obtain a linear system of equation on θ N :
 
( D−B   t   A   −1   B )θ N   =v−B   t   A   −1   u   (39)
 
Solving Equation 31 can therefore be achieved by first solving Equation 39 for θ N  and then using Equation 38 for θ H . Similarly, for θ H , we can derive, from Eq-37,
 
θ N   =D   −1 ( v−B   t θ H )  (40)
 
From Eq-36 and Eq-40 we obtain a linear system of equation on θ H :
 
( A−BD   −1   B   t )θ H   =u−BD   −1   v   (41)
 
Solving Equation 31 can therefore also be achieved by first solving Equation 41 for θ H  and then using Equation 40 for θ N .
 
Depending on the order of polynomials, one of the two solutions could be computationally more efficient than the other. Finally, we point out the property that A and D are symmetrical and contain only positive elements. That property can be exploited for more efficient solutions.
 
Covariance Matrix:
 
To solve for the coefficients of the covariance matrix, we make use of the two equalities: 
                 ∂     ∂   A       ⁢   log   ⁢        A          =     A     -   1               (   42   )             
                 ∂     ∂   A       ⁢     a   t     ⁢   A   ⁢           ⁢   a     =     a   ⁢           ⁢     a   t               (   43   )             
 
   To calculate the covariance matrix, we set the derivative of the logarithm of Equation 5 with respect to R-1 to zero, which gives: 
             R   =       1   T     ⁢       ∑     i   -   1     T     ⁢       (         Y   N     ⁡     (   i   )       -       H   Δ     ⁢       Y   R     ⁡     (   i   )       ⁢     N   N         )     ⁢           ⁢     (         Y   N     ⁡     (   i   )       -       H   Δ     ⁢       Y   R     ⁡     (   i   )         -     N   N       )     ⁢   t                 (   44   )             
 
   To quantify the goodness of the fitting between the model and data, we use:
 
∈=Trace(R).  (45)
 
   Referring to  FIG. 2  there is illustrated the process steps for calibration. A voice utterance i is applied to a high quality path and a test path as illustrated in  FIG. 1  (Step  1 ) and in Step  2  a measurement is made for each frame. For each frame of each utterance i the power spectrum is determined for reference Y R  and test Y N  After all frames are measured Step  3 , for each utterance calculate equations 32-35 and 27 and 28 for A, B, C, D, u and v (Step  4 ). In Step  5  the noise estimate θ N  and the channel estimate θ H  are calculated using equation 31 or the noise estimate θ N  using equation 39 and channel estimate θ H  is calculated using equation 38. 
   Referring to the test equipment  10  of  FIG. 1 , the outputs Y R  and Y N  are applied to processor  19  that processes the signals according to  FIG. 2  described above to produce the channel estimate θ H  and the noise estimate θ N  signal outputs. These output may be displayed on a display or directly applied to modify acoustic models in a recognizer. For example, the test equipment described in  FIG. 1  may be used to test a cellular phone in a car. After a test utterance in the car using the test calibration unit described above the reference signal and the test signal are processed and the equipment provides a channel estimation and noise estimation either on the display for the user to manually enter the findings in the speech recognizer of the car or the outputs are provided directly to the recognizer. 
   To show this actually works we generate this kind of environment. The goal is to identify them back. The system has to recover the H and N from the observed Y N . One is synthesized distortion and the other is recovered. 
   To simulate a distortion, the test speech signal yR(n) is modified in time domain according to the following operation:
 
 yN ( n )= yR ( n )* h   Δ ( n )+ n   N ( n )  (46)
 
   The speech signal in the example is an utterance of the digit string two five eight nine six oh four (5.6 seconds). ho(n) is a five-coefficient FIR band-pass filter with cutoff frequencies at 0.10 and 0.35 and 26 dB attenuation. nN(n) is a computer generated white Gaussian noise sequence. 
   In speech signal, the energy is concentrated at low frequencies, which yields higher polynomial fitting error at high frequencies. To balance the errors, speech signal is pre-emphasized. As pre-emphasizing speech signal is a common practice in speech recognition, H Δ  and N N  estimated using pre-emphasized speech could be directly usable for compensation. 
   Throughout the experiments reported, 
   
       
       
         
           we used 9th order of polynomes for convolutive noises (P=9), and 6th order of polynomes for additive noises (Q=6). 
           Noise estimate shown in the figures (labeled as “noise.PW”) are obtained by averaging 30 seconds of noise power spectra. 
           In the figures below, “C” stands for convolutional noise, and “A” for additive noise. “POLY” stands for an estimate obtained by polynomial models. “FILTER” stands for the frequency response of the band-pass FIR filter. 
         
       
     
  
   To measure the estimation error, we use averaged inner product of the difference between the estimated noise and a reference: 
               e   ν     ⁢     Δ     _   _       ⁢     1   M     ⁢       (       ν   ^     -   ν     )     t     ⁢     (       ν   ^     -   ν     )     ⁢           ⁢       ∀   ν     ⁢     ∈     {       H   Δ     ,     N   N       }                 (   47   )             
         For convolutive noise, the reference Ĥ Δ  is the power spectrum of the filter h Δ (n).   For additive noise, the reference {circumflex over (N)} N  is the average of power spectra of the noise sequence.       

     FIG. 3  to  FIG. 6  shows the results of estimation for convolutive and additive noises. In order to test the robustness against additive noise, A white Gaussian noise is introduced to the test channel, with variable SNR. 
   The results are shown for a wide SNR ranges from 30 dB to −6 dB. In each figure, estimate by independentcomponent bias model and by polynomial bias model are shown along with a reference bias. The following can be observed: 
   
       
       
         
           At 30 dB, the estimates of convolutive noise by both models are fairly close to the reference (FIG.  3 ). However, for additive noise, while the polynomial model gives good estimate, the estimate of additive noise by independent-component bias model shows large error with respect to the reference (FIG.  4 ). 
         
       
     
  
   To show the relative improvement using polynomial models, FIG.  7  and  FIG. 8  plot the estimation error according to Equation 47, as function of SNR.
           FIG. 7  shows that the estimation of convolutive bias with independent component model gives 4.7 to 8.4 time larger estimation error than with polynomial models.     FIG. 8  shows that the estimation of additive bias with independent component model gives 7.5 to 12.3 time larger estimation error than with polynomial models.