BACKGROUND AND FIELD OF THE INVENTION 
       [0001]    This invention relates to a method of deriving a compressed acoustic model for speech recognition. 
         [0002]    Speech recognition, or more commonly called automatic speech recognition has many applications such as automatic voice response, voice dialing and data entry etc. The performance of a speech recognition system is usually based on accuracy and processing speed and a challenge is to design speech recognition systems with lower processing power and smaller memory size without affecting accuracy or processing speed. In recent years, this challenge is greater with smaller and more compact devices also demanding some form of speech recognition application. 
         [0003]    In the paper “Subspace Distribution Clustering Hidden Markov Model” by Enrico Bocchieri and Brian Kan-Wing Mak, IEEE transactions on Speech and Audio Processing, Vol. 9, No. 3, March 2001, a method was proposed which reduces the parameter space of acoustic models, thus resulting in savings in memory and computation. However, the proposed method still requires a relative large amount of memory. 
         [0004]    It is an object of the present invention to provide a method of deriving a compressed acoustic model for speech recognition which provides the public with a useful choice and/or alleviates at least one of the disadvantages of the prior art. 
       SUMMARY OF THE INVENTION 
       [0005]    This invention provides a method of deriving a compressed acoustic model for speech recognition. The method comprises: (i) transforming an acoustic model into eigenspace to obtain eigenvectors of the acoustic model and their eigenvalues, (ii) determining predominant characteristics based on the eigenvalues of every dimension of each eigenvector; and (iii) selectively encoding the dimensions based on the predominant characteristics to obtain the compressed acoustic model. 
         [0006]    Through the use of eigenvalues, this provides means for determining the importance of each dimension of the acoustic model which forms the basis for the selective encoding. In this way, this creates a compressed acoustic model having a much reduced size, than in cepstral space. 
         [0007]    Scalar quantization is preferred for the encoding since such quantizing is “lossless”. 
         [0008]    Preferably, determining the predominant characteristics includes identifying eigenvalues that are above a threshold. The dimensions corresponding to eigenvalues above the threshold may be coded with a higher quantization size than dimensions with eigenvalues below the threshold. 
         [0009]    Advantageously, prior to the selectively encoding, the method includes normalising the transformed acoustic model to convert every dimension into a standard distribution. The selectively encoding may then include coding each normalised dimension based on a uniform quantization code book. Preferably, the code book has a one byte size, although this is not absolutely necessary and depends on the application. 
         [0010]    If one byte code book is used, then preferably, the normalised dimensions having an importance characteristic higher than an importance threshold is coded using one byte code word. On the other hand, the normalised dimensions having an importance characterise lower than an importance threshold may then be coded using a code word of less than 1 byte. 
         [0011]    The invention further provides an apparatus/system for deriving a compressed acoustic model for speech recognition. The apparatus comprises means for transforming an acoustic model into eigenspace to obtain eigenvectors of the acoustic model and their eigenvalues, means for determining predominant characteristics based on the eigenvalues of every dimension of each eigenvector; and means for selectively encoding the dimensions based on the predominant characteristics to obtain the compressed acoustic model. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0012]    An embodiment of the invention will now be described, by way of example, with reference to the accompanying drawings in which, 
           [0013]      FIG. 1  is a block diagram showing a broad overview of a process for deriving a compressed acoustic model in eigenspace for speech recognition; 
           [0014]      FIG. 2  is a block diagram showing the process of  FIG. 1  in greater detail and also including decoding and decompression steps; 
           [0015]      FIG. 3  is a graphical representation of linear transformation of an uncompressed acoustic model; 
           [0016]      FIG. 4  including  FIGS. 4   a  to  4   c  are graphs showing standard normal distribution of dimensions of eigenvectors after normalisation; 
           [0017]      FIG. 5  illustrates the different coding techniques with and without discriminant analysis; and 
           [0018]      FIG. 6  is a table showing different model compression efficiencies. 
       
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT 
       [0019]      FIG. 1  is a block diagram showing a broad overview of a preferred process for deriving a compressed acoustic model of this invention. At step  10 , an original uncompressed acoustic model is first translated and represented in cepstral space and at step  20 , the cepstral acoustic model is converted into eigenspace to determine what parameters of the cepstral acoustic model are important/useful. At step  30 , parameters of the acoustic model are coded based on the importance/usefulness characteristics and thereafter, the coded acoustic features are assembled together as a compressed model in eigenspace at steps  40  and  50 . 
         [0020]    Each of the above steps will now be described in greater detail by referring to  FIG. 2 . 
         [0021]    At step  110 , the uncompressed original signal model such as, for example, speech input is represented in cepstral space. A sampling of the uncompressed original signal model is taken to form a model in cepstral space  112 . The model in cepstral space  112  forms a reference for subsequent data input. The cepstral acoustic model data is then subjected to discriminant analysis at step  120 . A Linear Discriminant Analysis (LDA) matrix is employed to the uncompressed original signal model (and sampling) to transform the uncompressed original signal model (and sampling) in cepstral space into data in eigenspace. It should be noted that the uncompressed original signal model is a vector quantity, and thus includes a quantity and a direction. 
         [0022]    A. Discriminant Analysis 
         [0023]    Through linear discriminant analysis, the most predominant information in the sense of acoustic classification is explored, evaluated and filtered. This is based on the realisation that in speech recognition, it is important that the speech received is processed accurately, but it may not be necessary to code all features of the speech since some may not be necessary and would not contribute to the accuracy of the recognition. 
         [0024]    Let&#39;s assume R n  is the original feature space, which is a n-dimension hyperspace. Each x ε R n  has a class label that is meaningful in ASR systems. Next, at step  130 , an aim is to find a linear transformation (LDA matrix) A, by converting into eigenspace, that optimize the classification performance in the transformed space y ε R p , which is a p-dimension hyperspace (normally, p≦n), where 
         [0000]      y=Ax 
         [0000]    with y being a vector in eigenspace and x being data in cepstral space. 
         [0025]    In LDA (Linear Discriminant Analysis) theory, A can be found from 
         [0000]      Σ WC   −1 Σ BC Φ=ΦΛ 
         [0000]    where Σ WC  and Σ BC  are the within class (WC) and across class (BC) covariance matrix respectively, and Φ and Λ are n·n matrix of eigenvectors and eigenvalues of M WC   −1 M BC , respectively. 
         [0026]    A is constructed by choosing p eigenvectors corresponding to p largest eigenvalues. When A is derived correctly from y and x, an LDA matrix that optimises acoustic classification is derived which aids in exploring, evaluating and filtering the uncompressed original signal model. 
         [0027]      FIG. 3  shows graphically the end result of the linear transformation to reveal two classes of data along a useful dimension (Dim) and one nuisance dimension (Dim) which has no useful information. The classes of data may be, for example, phoneme, biphoneme, triphoneme and so forth. A first ellipse  114  and a second ellipse  116  both represent regions of data resulting from Gaussian distributions. A first bell curve  115  results from a projection of points from within the first ellipse  114  onto a first sub-axis  118 . Similarly, a second bell curve  117  results from a projection of points from within the second ellipse  116  onto the first sub-axis  118 . The first sub-axis  118  is derived using LDA on the regions of data shown in the first ellipse  114  and the second ellipse  116 . A second sub-axis  119  which is orthogonal to the first sub-axis  118  is inserted at the point of intersection between the first ellipse  114  and the second ellipse  116 . The second sub-axis  119  clearly separates data points into separate classes as the first ellipse  114  and the second ellipse  116  are merely approximate regions of separate classes. Thus, the classes present in the uncompressed original signal model are ascertained from the relative positions of the separated data regions. This technique may be employed primarily for the separation of two classes of data. Each class of data may also be known as a feature of the acoustic signal. 
         [0028]    As it would be appreciated, from the data distribution of the two classes, and through LDA, it is possible to determine the eigenvalues of corresponding eigenvectors defined in order of dominance or importance based on the eigenvalues. In other words, with LDA, higher eigenvalues represents more discriminative information whereas lower eigenvalues represent lesser discriminative information. 
         [0029]    After each feature of the acoustic signal is classified based on their predominant characteristics in the speech recognition, the acoustic data is normalised at  140 . 
         [0030]    B. Normalisation in Eigenspace 
         [0031]    Mean estimation in eigen-space: 
         [0000]    
       
         
           
             µ 
             = 
             
               
                 E 
                  
                 
                   ( 
                   
                     y 
                     t 
                   
                   ) 
                 
               
               = 
               
                 
                   1 
                   T 
                 
                  
                 
                   
                     ∑ 
                     
                       t 
                       = 
                       1 
                     
                     T 
                   
                    
                   
                     y 
                     t 
                   
                 
               
             
           
         
       
     
         [0032]    Standard Variance estimation in eigen-space: 
         [0000]    
       
         
           
             Σ 
             = 
             
               
                 E 
                  
                 
                   ( 
                   
                     
                       ( 
                       
                         
                           y 
                           t 
                         
                         - 
                         
                           E 
                            
                           
                             ( 
                             
                               y 
                               t 
                             
                             ) 
                           
                         
                       
                       ) 
                     
                      
                     
                       
                         ( 
                         
                           
                             y 
                             t 
                           
                           - 
                           
                             E 
                              
                             
                               ( 
                               
                                 y 
                                 t 
                               
                               ) 
                             
                           
                         
                         ) 
                       
                       T 
                     
                   
                   ) 
                 
               
               = 
               
                 
                   E 
                    
                   
                     ( 
                     
                       
                         y 
                         t 
                       
                        
                       
                         y 
                         t 
                         T 
                       
                     
                     ) 
                   
                 
                 - 
                 
                   
                     E 
                      
                     
                       ( 
                       
                         y 
                         t 
                       
                       ) 
                     
                   
                    
                   
                     
                       E 
                        
                       
                         ( 
                         
                           y 
                           t 
                         
                         ) 
                       
                     
                     T 
                   
                 
               
             
           
         
       
       
         
           
             
               Σ 
               diag 
             
             = 
             
               
                 
                   1 
                   T 
                 
                  
                 
                   
                     ∑ 
                     
                       t 
                       = 
                       1 
                     
                     T 
                   
                    
                   
                     
                       y 
                       t 
                       T 
                     
                      
                     
                       y 
                       t 
                     
                   
                 
               
               - 
               
                 
                   µ 
                   T 
                 
                  
                 µ 
               
             
           
         
       
     
         [0033]    Normalization: 
         [0000]        ŷ   t =sqrt(Σ diag )·( y   t −μ) 
         [0000]    where y t =eigenspace vector, E(y t )=expectation of y t , Σ diag =covariance matrix of elements on diagonal of variance, and T=time. 
         [0034]    Speech feature is assumed as Gaussian distributions, this normalization converts every dimension into a standard normal distribution N(μ,σ)with μ=0 and σ=1 (see  FIGS. 4   a  to  4   c ). 
         [0035]    This normalization provides two advantages for the model compression: 
         [0036]    Firstly, since all the dimensions share the same statistics, a uniform singular codebook can be employed for model coding-decoding at every dimension. There is no need to design different codebooks for different dimensions or use other kinds of vector codebooks. This could save memory space for model storing. If the size of the codebook is defined as 2 8 =256, one byte is enough to represent a code word. 
         [0037]    Secondly, since the dynamic range of a codebook is limited compared to floating point representation, model coding-decoding may bring serious problems when floating point data falls outside the range of the codebook, such as overflow, truncation and saturation, which will eventually result in ASR performance degradation. With this normalization, this conversion loss can be effectively controlled. For example, if the fix-point range is set as ±3σ confidence interval, the data percentage that causes saturation problem in coding-decoding would be: 
         [0000]    
       
         
           
             
               
                 
                   ∫ 
                   
                     - 
                     ∞ 
                   
                   
                     μ 
                     - 
                     
                       3 
                        
                       σ 
                     
                   
                 
                  
                 
                   
                     
                       N 
                       
                         y 
                         i 
                       
                     
                      
                     
                       ( 
                       
                         μ 
                         , 
                         σ 
                       
                       ) 
                     
                   
                    
                   
                      
                     
                       y 
                       i 
                     
                   
                 
               
               + 
               
                 
                   ∫ 
                   
                     μ 
                     - 
                     
                       3 
                        
                       σ 
                     
                   
                   
                     + 
                     ∞ 
                   
                 
                  
                 
                   
                     
                       N 
                       
                         y 
                         i 
                       
                     
                      
                     
                       ( 
                       
                          
                         
                           μ 
                           , 
                           σ 
                         
                       
                       ) 
                     
                   
                    
                   
                      
                     
                       y 
                       i 
                     
                   
                 
               
             
             ≈ 
             
               0.26 
                
               % 
             
           
         
       
     
         [0000]    It has been found that this minor coding-decoding error/loss is unobservable in ASR performance. 
         [0038]    C. Different Coding-Decoding Precision Based on Discriminant Capability. 
         [0039]    After the model is normalised, it is subjected to discriminant or selective coding at 150 of the mean vectors and covariance matrices of the acoustic model based on the quantization code book size of 1 byte. The LDA projection on the eigenvector corresponding to larger eigenvalues is considered to be more important to classification. The larger the eigenvalue, the higher importance of its corresponding direction in the sense of ASR. Thus, the maximum code word size is used to represent the class. 
         [0040]    A threshold to segregate the “larger eigenvalues” and the other eigenvalues is determined through cross validation experiments. Firstly, a part of training data and training model is set aside. The ASR performance is then evaluated based on the set-aside data. This process of training and evaluating the ASR performance is repeated for different thresholds until a threshold value is found that provides the best recognition performance. 
         [0041]    Since dimensions in eigenspace have different importance characteristics for voice classification, different compression strategies with different precisions are employed without affecting ASR performance. Also, since all the parameters of the acoustic model are multidimensional vectors or matrices, scalar coding is implemented on every dimension of each model parameter. This is particularly advantageous since scalar coding is “lossless”. In this instance, scalar coding is “lossless” compared with ubiquitous vector quantization (VQ). VQ is a lossy compression method. The size of VQ codebook has to be increased in order to reduce quantization error. However, a larger codebook results in larger compressed model size and slower decoding process. Furthermore, it&#39;s difficult to “train” a large VQ codebook robustly with limited training data. This difficulty would reduce the accuracy for speech recognition. It should be noted that the size of a scalar codebook is significantly less. This correspondingly helps to improve decoding speed. A small scalar code book may also be estimated more robustly than a large VQ code book with limited training data. Using the small scalar code book may also help avoid additional accuracy loss introduced by quantization error. Thus, scalar quantization outperforms VQ in relation to speech recognition with limited training data. 
         [0042]    The selective coding is illustrated in  FIG. 5  in which dimensions having higher eigenvalues are coded using the maximum 8 bits (1 byte) whereas dimensions having lower eigenvalues are coded using lower bits. Through this selective coding, it would be appreciated that a reduction in memory size can be achieved. 
         [0043]    After the selective coding, a compressed model in eigenspace is derived at  160 . The compressed model in eigenspace is significantly smaller than data in cepstral space. 
         [0044]      FIG. 2  also illustrates decoding steps  170  and  180  where, if necessary, the compressed model are decoded in a discriminant manner and the compressed model decompressed to obtain the original uncompressed model. 
         [0045]    An example of the of the compression efficiency is shown in  FIG. 6  which is a table depicting compression ratios of equal compression techniques compared with selective compression techniques as proposed by this invention. It can be seen that the selective compression technique can achieve a higher compression ratio. 
         [0046]    Having now fully described the invention, it should be apparent to one of ordinary skill in the art that many modifications can be made hereto without departing from the scope as claimed.
A method of deriving a compressed acoustic model for speech recognition is disclosed herein. In a described embodiment, the method comprises transforming an acoustic model into an eigenspace at step 20, determining eigenvectors of the eigenspace and their eigenvalues, and selectively encoding dimensions of the eigenvectors based on values of the eigenspace at step 30 to obtain a compressed acoustic model at steps 40 and 50.