Abstract:
A pattern recognition device includes a feature vector calculator; a model selecting unit; a correction vector calculator; a feature vector correcting unit; and a pattern recognition unit. The correction vector calculator calculates, for each of the selection models, a modified directional vector having N dimensional components (N≧1). A value of the n-th dimensional component (N≧n≧1) of the modified directional vector is obtained by subtracting a value of the n-th dimensional component of the variance vector multiplied by a predetermined coefficient from an absolute value of the n-th component of a different vector between the average vector and feature vectors to obtain a first value, and then multiplying the first value by a plus or minus sign identical to a sign of the n-th dimensional component of the difference vector, and further calculate a correction vector with respect to a vector obtained by superimposing the modified directional vectors.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
       [0001]    This application is based upon and claims the benefit of priority from the prior Japanese Patent Application No. 2009-076965, filed on Mar. 26, 2009; the entire contents of which are incorporated herein by reference. 
       BACKGROUND OF THE INVENTION 
       [0002]    1. Field of the Invention 
         [0003]    The present invention relates to a pattern recognition device, a pattern recognition method and a computer program product. 
         [0004]    2. Description of the Related Art 
         [0005]    When performing speech recognition, a feature of speech to be recognized is compared with models that have learned speech features to determine which model is close to the speech to be recognized. In speaker-independent speech recognition, speaker and noise environment are different between when a model learns and when the model is used for speech recognition, so that bias occurs between the model and an input speech feature. As a representative method for reducing an influence exerted by the bias, there is a CMN method (see B. Atal, “Effectiveness of linear prediction characteristics of the speech wave for automatic speaker identification and verification,” J. Acoust. Soc. AM., vol. 55, pp. 1304-1312, 1974). 
         [0006]    In the CMN method, feature amounts in a certain defined time section are averaged and an average value thus obtained is subtracted from each feature amount, so as to remove the influence by the bias. The CMN method is effective as the method of reducing the influence by the bias, and a calculation amount thereof is small. 
         [0007]    As another method of removing the effect of the bias, there is an MLLR method (see C. J. Leggetter and P. C. Woodland, “Maximum likelihood linear regression for speaker adaptation of continuous-density hidden Markov models”, Computer Speech and Language, vol. 9, pp. 171-185, 1995) and an SBR method (see U.S. Pat. No. 5,590,242). In the MLLR method, a condition in which the bias does not change in time is assumed. The SBR method uses a Hidden Markov Model (HMM) represented by a Gaussian distribution as the model. In the SBR method, the bias is corrected by approximating variance of the Gaussian distribution by a unit matrix in a bias section calculator of the MLLR method. 
         [0008]    In the SBR method, an average of differences between an average vector of each model and each feature vector is used as a correction vector, and a feature vector is corrected by subtracting the average vector from the feature vector. Thus, the correction taking into account the influence of the noise and the like can be performed. 
         [0009]    However, in the SBR method, because the variance of the model distribution is approximated, there may be a case in which bias correction performance is deteriorated. On the other hand, in the MLLR method, because the correction vector is a weighted average obtained by weighting the difference between the average vector of the models and the feature vector with standard deviation, and a condition in which the bias does not change in time is assumed, the correction performance is deteriorated when the bias sequentially changes. 
       SUMMARY OF THE INVENTION 
       [0010]    According to an aspect of the present invention, a A pattern recognition device includes a feature vector calculator configured to calculate a feature vector from input pattern; a model selecting unit configured to select, from models, one or more selection models whose distances from the feature vector are within a predetermined range, each of the models being represented by both an average vector of a pattern and a variance vector indicating variance of the pattern, and the average vector and the variance vector each having N dimensional components (N≧1); a correction vector calculator configured to calculate, for each of the selection models, a modified directional vector having the N dimensional components, a value of an n-th dimensional component (N≧n≧1) of the modified directional vector being obtained by subtracting a value of the n-th dimensional component of the variance vector multiplied by a predetermined coefficient from an absolute value of the n-th component of a different vector between the average vector and the feature vector to obtain a first value, and then multiplying the first value by a plus or minus sign identical to a sign of the n-th dimensional component of the difference vector, and further calculate a correction vector with respect to a vector obtained by superimposing the modified directional vectors; a feature vector correcting unit configured to correct the feature vector by using the correction vector; and a pattern recognition unit configured to perform recognition of the input pattern by using the feature vector corrected. 
         [0011]    According to another aspect of the present invention, a computer program product having a computer readable medium including programmed instructions. The instructions, when executed by a computer, cause the computer to perform calculating a feature vector from input pattern; selecting, from models, one or more selection models whose distances from the feature vector are within a predetermined range, each of the models being represented by both an average vector of a pattern and a variance vector indicating variance of the pattern, and the average vector and the variance vector each having N dimensional components (N≧1); calculating, for each of the selection models, a modified directional vector having the N dimensional components, a value of an n-th dimensional component (N≧n≧1) of the modified directional vector being obtained by subtracting a value of the n-th dimensional component of the variance vector multiplied by a predetermined coefficient from an absolute value of the n-th component of a different vector between the average vector and the feature vector to obtain a first value, and then multiplying the first value by a plus or minus sign identical to a sign of the n-th dimensional component of the difference vector, and further calculate a correction vector with respect to a vector obtained by superimposing the modified directional vectors; correcting the feature vector by using the correction vector; and performing recognition of the input pattern by using the feature vector corrected. 
         [0012]    According to still another aspect of the present invention, a pattern recognition method includes calculating, by a feature vector calculator, a feature vector from input pattern; selecting by a model selecting unit, from models, one or more selection models whose distances from the feature vector are within a predetermined range, each of the models being represented by both an average vector of a pattern and a variance vector indicating variance of the pattern, and the average vector and the variance vector each having N dimensional components (N≧1); calculating by a correction vector calculator, for each of the selection models, a modified directional vector having the N dimensional components, a value of an n-th dimensional component (N≧n≧1) of the modified directional vector being obtained by subtracting a value of the n-th dimensional component of the variance vector multiplied by a predetermined coefficient from an absolute value of the n-th component of a different vector between the average vector and the feature vector to obtain a first value, and then multiplying the first value by a plus or minus sign identical to a sign of the n-th dimensional component of the difference vector, and further calculate a correction vector with respect to a vector obtained by superimposing the modified directional vectors; correcting, by a feature vector correcting unit, the feature vector by using the correction vector; and performing, by a pattern recognition unit, recognition of the input pattern by using the feature vector corrected. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0013]      FIG. 1  is a block diagram showing a pattern recognition device according to a first embodiment; 
           [0014]      FIG. 2  is a view showing a flow chart showing a pattern recognition method according to the first embodiment; 
           [0015]      FIG. 3  is a block diagram showing the pattern recognition device according to a second embodiment; 
           [0016]      FIG. 4  is a view showing a flow chart for illustrating a pattern recognition method according to the second embodiment; and 
           [0017]      FIG. 5  is an illustration diagram showing a hardware configuration of the pattern recognition device according to the embodiment. 
       
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       [0018]    Exemplary embodiments are described below with reference to drawings. An “input pattern” includes speech data, character data, image data and the like. A “pattern” includes not only a waveform of signal and the like but also a parameter relating to the waveform. 
       First Embodiment 
       [0019]      FIG. 1  is a block diagram showing a pattern recognition device according to a first embodiment. The pattern recognition device in  FIG. 1  has a feature vector calculator  101 , a model storage unit  102 , a model selecting unit  103 , a correction vector calculator  104 , a correction vector storage unit  105  and a feature vector correcting unit  106 . 
         [0020]    The feature vector calculator  101  converts the input pattern to a feature vector used in a speech recognition process. The model storage unit  102  stores therein models of their respective feature vectors obtained by training data. The model of the feature vector is used in the model selecting unit  103  and a pattern recognition unit  107 . 
         [0021]    The model selecting unit  103  receives the feature vector output by the feature vector calculator  101 , and selects a model whose distance from the feature vector is short, so as to output a model parameter thereof to the correction vector calculator  104 . A plurality of models may be selected. 
         [0022]    The correction vector calculator  104  calculates a correction vector from the model selected by the model selecting unit  103  and the feature vector calculated by the feature vector calculator  101 . The correction vector storage unit  105  stores therein the correction vector output by the correction vector calculator  104 . 
         [0023]    The feature vector correcting unit  106  corrects the feature vector output from the feature vector calculator  101  using the correction vector stored in the correction vector storage unit  105 . The pattern recognition unit  107  performs pattern recognition using the corrected feature vector output from the feature vector correcting unit  106 . In more detail, a model whose distance from the corrected feature vector is short is selected from the models stored in the model storage unit  102 , and information corresponding to the selection model is output as a result of the pattern recognition. 
         [0024]      FIG. 2  is a flow chart showing a pattern recognition method according to the first embodiment. In this embodiment, a speech recognition method performed by a speech recognition device is described as the pattern recognition method. The model having a mixture Gaussian distribution as an output probability distribution may be used as the model, and for example, this may be an HMM or a DP matching. 
         [0025]    At step S 101  in  FIG. 2 , the feature vector calculator  101  converts a quantized speech waveform to a feature vector for each constant time period (hereinafter, referred to as a “frame”). At step S 102 , it is judged whether the input pattern to be recognized is present. When the speech waveform being the input pattern is not present, the speech recognition process is finished, and when this is present, the procedure shifts to a step S 103 . Meanwhile, the feature vector may be created by any method, and this may be an MFCC or an LPC coefficient, for example. 
         [0026]    Processes from the step S 103  to the step S 108  are performed for each frame. At step S 103 , the model selecting unit  103  selects M models whose “distance” from the feature vector created by the feature vector calculator  101  at step S 101  is short. The model whose “distance” is short means the model having high likelihood for the feature vector. 
         [0027]    The model in this embodiment is the HMM having the mixture Gaussian distribution as an output distribution, and herein, a Gaussian distribution constituting each mixture distribution of each state constituting the HMM is regarded as one model, and M Gaussian distributions having the high likelihood are selected. 
         [0028]    Meanwhile, the “distance” from the feature vector is not limited to the likelihood, and a Euclidean distance between the feature vector and an average vector may also be applied, for example. 
         [0029]    At step S 104 , in the correction vector calculator  104 , the correction vector is calculated from the Gaussian distribution selected by the model selecting unit  103  and the feature vector output by the feature vector calculator  101 . The correction vector is calculated as follows. 
         [0030]    First, a modified value l mn  is obtained by an expression (1) for each model m. 
         [0000]    
       
         
           
             
               
                 
                   
                     
                       
                         
                           
                             l 
                             mn 
                           
                           = 
                           
                             
                               
                                 
                                   x 
                                   n 
                                 
                                 - 
                                 
                                   z 
                                   mn 
                                 
                               
                               
                                  
                                 
                                   
                                     x 
                                     n 
                                   
                                   - 
                                   
                                     z 
                                     mn 
                                   
                                 
                                  
                               
                             
                              
                             
                               ( 
                               
                                 
                                    
                                   
                                     
                                       x 
                                       n 
                                     
                                     - 
                                     
                                       z 
                                       fmn 
                                     
                                   
                                    
                                 
                                 - 
                                 
                                   ασ 
                                   mn 
                                 
                               
                               ) 
                             
                           
                         
                       
                       
                         
                           if 
                            
                           
                               
                           
                            
                           
                             ( 
                             
                               
                                 
                                    
                                   
                                     
                                       x 
                                       n 
                                     
                                     - 
                                     
                                       z 
                                       mn 
                                     
                                   
                                    
                                 
                                 - 
                                 
                                   ασ 
                                   mn 
                                 
                               
                               &gt; 
                               0 
                             
                             ) 
                           
                         
                       
                     
                     
                       
                         
                           
                             l 
                             mn 
                           
                           = 
                           0 
                         
                       
                       
                         
                           if 
                            
                           
                               
                           
                            
                           
                             ( 
                             
                               
                                 
                                    
                                   
                                     
                                       x 
                                       n 
                                     
                                     - 
                                     
                                       z 
                                       mn 
                                     
                                   
                                    
                                 
                                 - 
                                 
                                   ασ 
                                   mn 
                                 
                               
                               &lt;= 
                               0 
                             
                             ) 
                           
                         
                       
                     
                   
                   } 
                 
               
               
                 
                   ( 
                   1 
                   ) 
                 
               
             
           
         
       
     
         [0031]    wherein, x n  is an n-th dimensional component of an input feature vector, 
         [0032]    z mn  is n-th dimensional component of the average vector of the selected Gaussian distribution m, 
         [0033]    σ m , is n-th dimensional component of a standard deviation vector of the selected Gaussian distribution m. 
         [0034]    In the expression (1), a value of a coefficient α is preferably experimentally determined using a test set of the training data with which information obtained by the recognition is associated in advance. For example, the test set used in the speech recognition is preferably different depending on a surrounding environment of the speech and feature of the device to which the speech is input and the like. 
         [0035]    The coefficient α may also be dynamically changed by feeding back a recognition result when performing the speech recognition process. 
         [0036]    Next, the modified values l mn  of the M selection models are averaged out by a following expression (2) to obtain an n-th dimensional modified value l n  for xn. The vector having the modified value l n  as the n-th dimensional component is referred to as a modified directional vector. 
         [0000]    
       
         
           
             
               
                 
                   
                     l 
                     n 
                   
                   = 
                   
                     
                       1 
                       M 
                     
                      
                     
                       
                         ∑ 
                         
                           m 
                           = 
                           1 
                         
                         M 
                       
                        
                       
                         l 
                         mn 
                       
                     
                   
                 
               
               
                 
                   ( 
                   2 
                   ) 
                 
               
             
           
         
       
     
         [0037]    Meanwhile, the method of obtaining l n  is not limited to the expression (2), and l n  may be obtained by a likelihood-weighted average as in an expression (3). 
         [0000]    
       
         
           
             
               
                 
                   
                     l 
                     n 
                   
                   = 
                   
                     
                       
                         ∑ 
                         
                           m 
                           = 
                           1 
                         
                         M 
                       
                        
                       
                         
                           w 
                           m 
                         
                          
                         
                           l 
                           mn 
                         
                       
                     
                     
                       
                         ∑ 
                         
                           m 
                           = 
                           1 
                         
                         M 
                       
                        
                       
                         w 
                         m 
                       
                     
                   
                 
               
               
                 
                   ( 
                   3 
                   ) 
                 
               
             
           
         
       
     
         [0038]    wherein, w mn  is likelihood of the Gaussian distribution m for the feature vector x. 
         [0039]    Next, the correction vector is obtained by an expression (4) using the modified directional vector. 
         [0000]        b   nt   =βl   nt +(1−β) b   n,t−1  (0&lt;=β&lt;=1)  (4) 
         [0040]    wherein, b nt  is an n-th dimensional component of the correction vector at time t, 
         [0041]    l nt  is an n-th dimensional component of the modified directional vector at time t, 
         [0042]    β is a constant (0≦β≦1), and 
         [0043]    b n, t−1  is an n-th dimensional component of the correction vector applied to the correction of the last time. 
         [0044]    Meanwhile, b n, t−1  is stored in the correction vector storage unit  105 . 
         [0045]    The equation to calculate the correction vector is not limited to the expression (4), and the correction vector may be obtained by averaging out the modified directional vectors by a time section T as in an expression (5). 
         [0000]    
       
         
           
             
               
                 
                   
                     b 
                     nta 
                   
                   = 
                   
                     
                       1 
                       T 
                     
                      
                     
                       
                         ∑ 
                         
                           t 
                           = 
                           
                             ta 
                             - 
                             T 
                           
                         
                         ta 
                       
                        
                       
                         l 
                         nt 
                       
                     
                   
                 
               
               
                 
                   ( 
                   5 
                   ) 
                 
               
             
           
         
       
     
         [0046]    wherein, b nta  is the n-th dimensional component of the correction vector at time ta, and 
         [0047]    l ns  is the n-th dimensional component of the modified directional vector at time s. 
         [0048]    When ta&lt;T, b nta  is set as a time average from t=0 to t=t a  in place of the expression (5). 
         [0049]    The correction vector may also be the weighted average as in an expression (6). 
         [0000]    
       
         
           
             
               
                 
                   
                     b 
                     nta 
                   
                   = 
                   
                     
                       
                         
                           ∑ 
                           
                             t 
                             = 
                             ts 
                           
                           ta 
                         
                          
                         
                           
                             α 
                             t 
                           
                            
                           
                             l 
                             nt 
                           
                         
                       
                       
                         
                           ∑ 
                           
                             t 
                             = 
                             ts 
                           
                           ta 
                         
                          
                         
                           α 
                           t 
                         
                       
                     
                      
                     
                         
                     
                      
                     
                       ( 
                       
                         
                           α 
                           
                             t 
                             - 
                             1 
                           
                         
                         &lt; 
                         
                           α 
                           t 
                         
                       
                       ) 
                     
                   
                 
               
               
                 
                   ( 
                   6 
                   ) 
                 
               
             
           
         
       
     
         [0050]    After obtaining b nt , further, by a following equation (7), the obtained b nt  is multiplied by a constant γ for adjusting a correction state to obtain a final correction vector b nt ′. 
         [0000]      b nt ′=γb nt   (7) 
         [0051]    At step S 105 , it is judged whether to store the correction vector calculated by using the equations (1) to (7) in the correction vector storage unit  105 . When this is stored, the procedure proceeds to the step S 106 , and when this is not stored, the procedure proceeds to the step S 107 . The judgment may be performed using any criterion. For example, the calculated correction vector may be stored each time without condition. Alternatively, it is possible to store once at constant frame interval, for example, every three frames. 
         [0052]    At step S 106 , the correction vector is stored in the correction vector storage unit  105 . An initial value of the correction vector having been stored in the correction vector storage unit  105  may be any value. For example, a 0 vector whose values of all dimensions are 0 or a vector indicating noise obtained by averaging out the feature vectors in a silent section in an input signal and the like may be used. 
         [0053]    At step S 107 , the feature vector correcting unit  106  corrects the feature vector calculated at step S 104  using the correction vector stored in the correction vector storage unit  105 . For the correction at the time at which the correction vector is not stored in the correction vector storage unit  105 , the correction vector stored the last time may be used as the correction vector at the time. 
         [0054]    The correction method is represented by a following expression (8) by setting the correction vector at time t, the feature vector at time t, and the corrected feature vector to b t , x t , and x′ t , respectively. 
         [0000]        x′   t   =x   t   −b   t   (8) 
         [0055]    At step S 108 , the pattern recognition unit  107  performs the speech recognition using the feature vector corrected by the feature vector correcting unit  106 . As for a specific method of the speech recognition using a mixture distribution HMM, refer to the known documents. 
         [0056]    In this embodiment, the speech recognition device is described by way of example. In this embodiment, each model is represented by both an average and an amount indicating variation of the distribution. The models correspond to different pieces of speech data or different speech data sets. Thus, an average of an input pattern and an amount indicating variation of the distribution of the input pattern are obtained, and models similar to the input pattern are selected based on the average and the amount thus obtained. Furthermore, the selected models are superimposed so as to generate a pattern having a few differences with the input pattern. In this manner, it is possible to recognize the input pattern. In other words, a modified amount of the feature vector is defined by the expression (1), and a correction amount is obtained from the average of the modified amounts relating to the selected models. 
         [0057]    Meanwhile, the amount may be a multi-dimensional amount such as the vector or may be a scalar value (one-dimensional value). Therefore, the invention is may be applied to the pattern recognition device in which the model is represented by both an average and an amount indicating the feature of the distribution (such as variance and kurtosis). 
         [0058]    Also, although the feature vector is time-series data in this embodiment, the present invention is may be applied to a case in which the input feature vector is not the time-series data, by directly setting the modified directional vector as the correction vector. In more detail, when calculating the correction vector, it is set that β=1 in the expression (4), and γ=1 in the expression (7). 
       Second Embodiment 
       [0059]    In this embodiment, the speech recognition to which a method referred to as “pruning” is applied is performed in the speech recognition device using the Hidden Markov Model (HMM) having the mixture Gaussian distribution as the output probability distribution. In more detail, a result of this pruning is used when selecting the model. 
         [0060]      FIG. 3  is a block diagram showing the pattern recognition device according to the second embodiment. The operations of the units to which the same reference numerals are given in  FIGS. 1 and 3  are identical, and the descriptions thereof are not repeated herein. 
         [0061]    A pattern recognition unit  207  has the same function to calculate the output result as the pattern recognition unit  107 ; however, this outputs model selection candidates to a model selecting unit  203 . The model selecting unit  203  selects a model from the model selection candidates output from the pattern recognition unit  207 . The operation to select the model is similar to that of the model selecting unit  103 . 
         [0062]      FIG. 4  is a flow chart for illustrating the pattern recognition method according to the second embodiment. At step S 201  in  FIG. 4 , the speech waveform is converted to the feature vector for each frame. At step S 202 , it is judged whether the input pattern to be recognized is present. When there is no speech waveform to be processed being the recognition target, the speech recognition process is finished, and when there is the speech waveform, the procedure proceeds to a step S 203 . 
         [0063]    At step S 203 , the feature vector correcting unit  106  reads out the correction vector stored in the correction vector storage unit  105  to correct the input feature vector. 
         [0064]    At step S 204 , the pattern recognition unit  207  executes the speech recognition using the corrected feature vector. At that time, at time t, only a recognition result candidate(s) whose likelihood is equal to or larger than a predetermined threshold is set as the calculation target at time (t+1), and a candidate(s) whose likelihood is smaller than the threshold is removed from the calculation target. This is referred to as the “pruning”. 
         [0065]    In the first embodiment, a selection criterion of the model is to select the model whose “distance” from the input feature vector is short. At step S 205 , a model to be used in the calculation is selected from the model candidates remained as the calculation target after the pruning. 
         [0066]    Processes at steps S 206  and S 207  are identical to the processes at steps S 103  and S 104  in  FIG. 2 , so that the description thereof is not repeated herein. The correction vector calculated at step S 207  is used at step S 203  at (t+1) being the next time. 
         [0067]    Meanwhile, as another method of selecting the model, the method to further select only top X models whose distance from the input feature vector is short from the candidates remained after the pruning may be used. 
         [0068]    At step S 208 , it is judged whether to store the correction vector calculated by using the expressions (1) to (7) in the correction vector storage unit  105 . When this is stored, the procedure proceeds to a step S 209 , and when this is not stored, the procedure returns to the step S 201  to repeat the processes. Any criterion may be used in the judgment. For example, the calculated correction vector may be stored each time without condition. Alternatively, it is possible to store once at constant frame interval, for example, every three frames. 
         [0069]    At step S 209 , the correction vector is stored in the correction vector storage unit  105 . An initial value of the correction vector having been stored in the correction vector storage unit  105  may be any value. For example, a 0 vector whose values of all dimensions are 0 or the vector indicating the noise obtained by averaging out the feature vectors in a silent section in the input signal and the like may be used. 
       (Execution by Computer and the Like) 
       [0070]    Next, a hardware configuration of the pattern recognition device according to any one or both of the first and second embodiments is described with reference to  FIG. 5 .  FIG. 5  is an illustration diagram showing the hardware configuration of the pattern recognition device according to the embodiment. 
         [0071]    The pattern recognition device according to this embodiment is provided with a control device such as a central processing unit (CPU)  51 , a storage device such as a read only memory (ROM)  52  and a random access memory (RAM)  53 , a communication I/F  54  for connecting to a network to communicate, and a bus  61  for connecting each unit. 
         [0072]    The program executed in the pattern recognition device according to the embodiment is embedded in the ROM  52  and the like in advance and is provided. 
         [0073]    The program executed in the pattern recognition device according to the embodiment may be configured to be recorded in a computer-readable recording medium such as a compact disk read only memory (CD-ROM), a flexible disk (FD), a compact disk recordable (CD-R) and a digital versatile disk (DVD) as an installable or executable file and provided. 
         [0074]    Further, the program executed in the pattern recognition device according to the embodiment may be configured to be stored in the computer connected to the network such as the Internet and provided by download via the network. Also, the program executed by the pattern recognition device according to this embodiment may be configured to be provided or distributed via the network such as the Internet. 
         [0075]    The program executed by the pattern recognition device according to this embodiment has a module configuration including the above-described each unit, and as an actual hardware, it is configured such that the CPU  51  reads the program from the above-described ROM  52  to execute, thereby loading the above-described each unit on a main storage, and the each unit is generated on the main storage. 
         [0076]    The present invention is not limited to the above-described embodiments as they are, and may be embodied by modifying the structural components without departing from the spirit of the invention in a practical phase. In addition, various inventions may be attained by appropriately combining some of the structural components disclosed in the above-described embodiments. For example, some of the structural components may be eliminated from the structure of the embodiment. Furthermore, the structural components of different embodiments may be appropriately combined. 
         [0077]    As described above, the pattern recognition device according to the embodiment of the present invention is useful in recognizing the input pattern of which bias sequentially changes, and especially suitable for the speech recognition. 
         [0078]    Additional advantages and modifications will readily occur to those skilled in the art. Therefore, the invention in its broader aspects is not limited to the specific details and representative embodiments shown and described herein. Accordingly, various modifications may be made without departing from the spirit or scope of the general inventive concept as defined by the appended claims and their equivalents.