Abstract:
Speech recognition pattern matching is improved by using reference VCV (vowel-consonant-vowel) patterns, wherein dynamic programming finds the pattern difference (d), then integrating in the positive time (g1) and negative time (g2), then connecting patterns for a total distance integral (g*=g1+g2).

Description:
This is a continuation of application Ser. No. 946,128 filed 12/23/86, which is a continuation of application Ser. No. 529,813 filed 9/6/83 now abandoned. 
    
    
     BACKGROUND OF THE INVENTION 
     This invention relates to a pattern matching apparatus adapted to compare patterns, which are expressed as sequences of feature vectors, such as speech patterns. 
     A pattern matching method is widely used in a pattern recognition system in order to recognize an unknown pattern. In pattern recognition systems, pattern matching methods such as word level matching, and phoneme or syllable level matching has been proposed. With both of these methods, a time normalization matching method (a so-called DP matching method) utilizing dynamic programming for dealing with variations in speech speed, or the so-called two-step DP matching method proposed to prevent segmentation errors in continuously spoken word patterns and phoneme patterns have been used widely. These methods are described in detail in U.S. Pat. No. 3,816,722 and U.S. Pat. No. 4,049,913. 
     The number of reference patterns to be prepared in advance in connection with continuous speech recognition carried out with phoneme or syllable level matching may be extremely small as compared with that carried out by the word level matching. This allows a reduction in not only the user&#39;s reference pattern-registering load but also in the required memory capacity and in the required amount of computation. However, the recognition rate for the matching method which uses the phoneme level is low due to the influence of coarticulation. 
     In order to deal with such problems, it is useful that a consonant-vowel (which will be hereinafter referred to as &#34;CV&#34;) combination and a vowel-consonant-vowel (which will be hereinafter referred to as &#34;VCV&#34;) combination, which contain not only the ordinary information on phoneme level but also the information on the phoneme transition, be set as a recognition unit. 
     The following methods can generally be thought of as methods of preparing reference patterns. 
     (a) CV patterns are prepared. In this method, the number of reference patterns may be small. However, since reference patterns describing the V-to-C transition are not prepared, the recognition rate may decrease. Furthermore, it is difficult to determine a segmentation point because of the difficulty in finding a starting point of the consonant in continuous speech. 
     (c) VCV patterns are prepared. In this method, the reference pattern include both the V-to-C transition and C-to-V transition, so that attaining a high recognition rate can be expected. However, since there are a very large number of types of VCV patterns, the user&#39;s reference pattern-registering load, memory capacity and a processing requirements increase. A boundary between matching sections consists of a vowel, therefore, a matching section (segmentation points) can be easily determined because a vowel portion can be easily found. (c) CV patterns and VC patterns are prepared. In this method, a recognition rate as high as that in method (b) can be expected. Moreover, the number of types of reference patterns may be smaller than that used in method (b). However, it is not easy to cut out a section corresponding to VC. 
     SUMMARY OF THE INVENTION 
     Therefore, it is an object of the present invention to provide a pattern matching apparatus capable of reliably carrying out the syllable segmentation. 
     It is another object of the present invention to provide a pattern matching apparatus capable of reducing the user&#39;s reference pattern-registering load. 
     It is still another object of the present invention to provide a pattern matching apparatus capable of reducing memory capacity and the required amount of computation. 
     It is a further object of the present invention to provide a pattern matching appartaus used in a speech recognition system having all of the above-mentioned characteristics. 
     According to the present invention, a novel pattern matching apparatus can be obtained, which comprises a memory for storing an input pattern A={a(1), a(2), . . . , a(i), . . . , a(I)}, which is expressed as a sequence of feature vectors; a memory for storing a first reference pattern B 1  ={b 1  (1), b 1  (2), . . . , b 1  (j), . . . , b 1  (J 1 )} and a second reference pattern B 2  ={b 2  (1), b 2  (2), . . . b 2  (j), . . . , b 2  (J 2 )}, which are expressed as sequences of feature vectors; a calculator for calculating a first quantity representing a distance or other measurement representing a relationship between feature vectors a(i) and b 1  (j) or b 2  (j) at the designated point (i, j); the integral point using integral g(i,j) being a calculator for calculating first and second quantities representing distances between features a(i) and b 1  (j) and between features a(i) and b 2  (j), respectively, at a designated point (i,j); a calculator for calculating first and second integrals g 1  (i,j) and g 2  (i,j) of the first and second quantities at the point (i,j) by a time normalization matching method utilizing dynamic programming on the basis of said first and second quantities at the point (i,j), said first integral being obtained in a positive time direction from (i,j)-(1,1) to (I,J 1 ) with respect to said first reference pattern, and said second integral being obtained in a negative time direction from (i,j)= (I,J 2 ) with respect to said second reference pattern; a calculator for calculating an optimum integral at a designated coordinate i as a minimum or maximum value out of a set {g 1  (i, j), j=1, 2, . . . , J} of integrals in the positive direction with respect to the integral g 1  (i, j) in the positive direction, and as a value of the integral g(i, l) at a starting point (i.e. j=1) with respect to the integral g 2  (i, j) in the negative direction; a memory for storing the optimum integral {g 1  (i), i=1, 2 . . . , I} in the positive direction and the optimum integral {g 2  (i), i=1, 2 . . . , I} in the negative direction; and a means for determining the first quantity between the input pattern and a reference pattern which is obtained by connecting a front portion of the first reference pattern and second reference pattern together as a minimum or maximum value out of the results obtained by calculating g*(i)=g 1  (i)+g 2  (i) for each i. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIGS. 1A and 1B show slope constraints for matching paths and weighting for determining a distance integral according to the present invention; 
     FIG. 2 illustrates the basic principle of the pattern matching according to the present invention; 
     FIG. 2 is a block diagram showing the construction of a pattern matching apparatus applied to speech recognition according to the present invention; and 
     FIG. 4 illustrates an example of a method of separating an input speech pattern into VCV syllable patterns. 
     The above and other objects as well as characteristics of the invention will become apparent from the following description given with reference to the drawings. 
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENT 
     The basic principle of the present invention will be described first, and its concrete construction will then be described in detail with reference to an embodiment thereof. In pattern matching, which will now be described, the concept of distance is used as a measure; other measurements representing relationships between pattern may, of course, be used instead. 
     The present invention has been achieved by improving the previously-described method (c) thus reducing the user&#39;s reference pattern-registering load, memory capacity and required amount of computation. In the method according to the present invention, a VCV pattern is used instead of the VC pattern in the method (c) to describe the V-to-C transition. Matching is carried out by VCV level by using a pattern obtained by connecting a VC portion of the VCV pattern and a CV pattern. Thus, the matching can be carried out excellently with respect to the recognition rate, user&#39;s reference pattern-registering load, memory capacity, amount of processing required and easiness in segmentation. 
     In the pattern matching carried out using VCV level, a matching section (a segmentation) can be easily obtained (performed) if a vowel portion is used as a candidate for a VCV boundary. Let a sequence of feature vectors in a certain VCV section of the input speech be expressed by the following formula; 
     
         {a(1), a(2), . . . , a(i), . . . , a(I)}                   (1), 
    
     and the VCV patterns to be matched with the above pattern be V 1  CV 2 . In this case the V 1  CV pattern (V may be arbitrarily selected) and the CV 2  pattern are used as reference patterns. Let the patterns V 1  CV and CV 2  be expressed by formulas (2) and (3). 
     
         {b.sub.1 (1), b.sub.1 (2), . . . , b.sub.1 (j), . . . , b.sub.1 (J.sub.1)}(2) 
    
     
         {b.sub.2 (1), b.sub.2 (2), . . . , b.sub.2 (j), . . . , b.sub.2 (J.sub.2)}(3) 
    
     Since V 1  CV 2  is a pattern obtained by connecting a V 1  CV pattern and a CV 2  pattern, a V 1  C portion of the V 1  CV pattern and the CV 2  pattern are connected together to carry out the pattern matching. Namely, the DP matching is carried out in the positive time direction (i.e., in the direction from the point (1,1) to the point (I,J) in FIG. 1A, or in the direction as shown by symbol P in FIG. 2) with respect to the V 1  CV pattern, and in the negative time direction (i.e., in the direction from the point (I,J 2 ) to the point (1,1) in FIG. 1B, or in the direction as shown by symbol N in FIG. 2) with respect to the CV 2  pattern. An integral g(i, j) of a distance d(i, j) between the feature vectors a(i) and b 1  (j) (or b 2  (j)) is developed in accordance with the following recurrence relation equation. 
     An integral g 1  (i, j) in the positive time direction under the initial condition g 1  (1, 1)=d 1  (1, 1) is determined in accordance with the recurrence relation equation (4), ##EQU1## wherein j=1, 2, . . . , J 1 , for each i ranging from 1 to I. The equation (4) corresponds to the integration of a distance from the point (1, 1) up to the point (I, J 1 ) with a slope constraint and a weight shown in FIG. 1A on lattice time points of 1×J 1 . 
     An integral g 2  (i, j) in the negative time direction under the initial condition g 2  (I, J 2 )=d 2  (1, J 2 ) is determined in accordance with the equation (5), ##EQU2## wherein j=J 2 , J 2  -1, . . . , 2, 1, for each i ranging 1 to I (i=I, I-1, . . . 2, 1). The equation (5) corresponds to the integration of a distance from the point (I, J 2 ) down to the point (1, 1) with an slope constraint and a weight shown in FIG. 1B. 
     The results of the above two DP matching operations are then combined with each other to obtain the matching results with respect to V 1  CV 2 . Namely, the sum, 
     
         g&#39;(i)=g.sub.1 (i, J.sub.1)+g.sub.2 (i, 1)                  (6) 
    
     of an integral in the positive direction and that in the negative direction at each input time i is determined. ##EQU3## is then determined with respect to all combinations of the two patterns, and, finally, a combination of the two patterns having a minimum value among all of the combinations is obtained as the result of recognition. 
     Such a combination of the two DP matching operations (the positive time direction matching an negative time direction matching) is disclosed in the Proceedings of the Institute of Acoustic Engineers of Japan, No. 2-2-18, published in October, 1979. 
     However, when this method is used, the matching of a pattern, in which the terminal end of the V 1  CV pattern is connected to the starting end of the CV 2  pattern, with an input pattern is carried out. 
     In view of this, a V 1  CV pattern in the present invention is released at its terminal and, so that a starting end of a CV 2  pattern may be connected to any portion of the V 1  CV pattern. For the V 1  C n  V pattern when n-th consonant C n  is selected among a predetermined number of consonants, 
     
         g.sub.1 *(i)=min g.sub.1 (i, j)                            (8) 
    
     
         j=1, . . . , J.sub.1 
    
     is determined for each time point i of the input pattern, and for the CV 2  pattern, 
     
         g.sub.2 *(i)=g.sub.2 (i, 1)                                (9) 
    
     is determined. Then, an integral ##EQU4## is further obtained. An integral g* for an another consonant is then determined. The integrals g* for all of the consonants prepared in advance are determined in the same manner. Finally, a consonant indicating a minimum value is judged as the consonant in an intermediate position in the VCV pattern. As shown in FIG. 2, the equation (8) indicates the result of matching the portion before the i-th frame of an input pattern with V 1  CV pattern whose terminal end is released, and the equation (9) the results of matching the portion after the i-th frame of the input pattern with a CV 1  pattern whose both ends are fixed. The equation (10) indicates the optimum result of matching the VCV pattern with a pattern obtained by connecting a terminal end-released V 1  CV pattern and a starting end-fixed CV 2  pattern. Therefore, according to the present invention, matching using the VCV level is possible with respect to a VCV pattern which is not prepared. This allows the user&#39;s reference pattern-registering load and the capacity of a memory used for the registration to be reduced remarkably. 
     An example of the construction of the present invention applied to a speech recognition system will now be described. In this example, the recognition using the VCV syllable level is carried out as mentioned previously. 
     The analyzer unit 1 shown in FIG. 3 is adapted to extract a feature vector a(i) in an i-th frame, which consists of a predetermined number of feature parameters (for example, spectrum information), from an input speech signal, Speech-in, at every predetermined frame by a known method, and outputs an input pattern A of the formula (1) expressed by a sequence of feature vectors thus obtained. 
     In a vowel extractor unit 2, a vowel portion of the input pattern from the analyzer unit 1 is extracted to determine a boundary in a VCV syllable pattern and a segmentation signal representative of the boundary time point is generated. This boundary is preferably in the center of the vowel portion since a region in the vicinity of the center of the vowel portion is stable, and therefore, can be extracted easily. Each vowel is determined in the following manner. Sequences of feature vectors with respect to five predetermined vowels /a/, /i/, /u/, /e/, /o/ are obtained by training and stored in a vowel memory 3. A distance between a sequence of feature vectors of a vowel portion obtained from the input pattern and each of the sequences of feature vectors of vowels read out from the memory 3 is calculated to determine a vowel of the shortest distance as a vowel in the vowel portion of the input pattern. Let V i  be a vowel in a front position in a VCV pattern thus determined, and V 2  a vowel in a rear position therein. Signals representative of these vowels are supplied to a VCV memory 4 and a VCV memory 5. 
     FIG. 4 shows the relation between the input pattern and the VCV syllable pattern. An input vowel pattern A 1  has as a vowel V 1  in a front position therein, a front half portion of a vowel V 1  being in a rear position of a preceding syllable pattern, and has a vowel V 2  in a rear position therein, a front half portion of a vowel V 2  in a rear position in the same pattern A 1 . Namely, the pattern A 1  consists of V 1  C 1  V 2 , and a pattern A 2  consists of V 2  C 2  V 3 . 
     A sequence of feature vectors according to the equation (2) with respect to VCV patterns of all combinations of V 1  C n  V 0  patterns, in which /a/, /i/, /u/, /e/, /o/ are allotted as vowels V 1  in a front position; an arbitrary vowel (/a/ in this embodiment) as a vowel V 0  in a rear position; and N pieces of consonants /k/, /s/, /t/, /c/, /n/, /h/, . . . /b/, /p/, /ky/, /ny/, /y/, /w/, which are prepared in advance, as consonants in the central position, are stored in the VCV memory 4. A sequence of feature vectors according to the equation (3) with respect to CV patterns, in which the above consonants and vowels are allotted as the consonant in a front position and the vowels in a rear position, are stored in advance in the CV memory 5. The speech of the above-mentioned patterns are uttered several times to obtain sequences of feature vectors using a means similar to the analyzer unit 1, and a representative sequence of vectors (for example, an average sequence of vectors) may be used. When semivowels /ya/, /yu/, /yo/ are added to the above-mentioned vowels allotted as V in the CV patterns stored in the CV memory 5, more accurate recognition can be achieved. 
     The VCV memory 4 and CV memory 5 generate a V 1  C n  V 0  pattern and a C n  V 2  pattern, respectively, to a multiplexer 7 in response to signals representative of V 1 , V 2  supplied from the vowel extractor unit 2 and a signal C n  representative of a n-th consonant C n . 
     On the other hand, a sequence of feature vectors of one utterance or a predetermined length of the input pattern is stored in a buffer memory 6. The buffer memory 6 generates a VCV syllable pattern having time points T V1 , T V2  as boundary points to a distance calculator unit 8 in response to the segmentation signals T V1 , T V2  supplied from the unit 2. 
     The multiplexer 7 is adapted to supply a signal from the VCV memory 4 when K=K 1 , and a signal from the CV memory 5 when K=K 2 , to the distance calculator unit 8 in  accordance with a control signal K from a controller 15. 
     The calculator unit 8 is adapted to calculate a distance d(i, j) in a predetermined range of a frame i of the input pattern and a frame j of a reference pattern between a sequence of feature vectors of a VCV pattern or a CV pattern, which is a reference pattern from the multiplexer 7, and a sequence of feature vectors of the input pattern expressed by the formula (1) and supplied from the buffer memory 6. The distance d(i, j) thus obtained is stored in the calculator unit 8. 
     A recurrence relation calculator unit (g 1  &amp; g 2  calculator unit) 9 is adapted to calculate a distance integral g 1  (i, j) between an input syllable pattern V 1  CV 2  and a reference syllable pattern V 1  C n  V 0  on the basis of equation (4) using a positive-direction DP matching method when K=K 1  and a distance integral g 2  (i, j) between the input syllable pattern V 1  CV 2  and a reference syllable pattern C n  V 2  on the basis of the equation (5) using a negative-direction DP matching method when K=K 2 , and store the results in a memory 10. 
     An optimum integral calculator unit 11 is adapted to calculate on the basis of equation (8) the smallest value g 1  *(i) among a total of J 1  integrals obtained for each of the time points i of the input pattern read out from the memory 10 (wherein J 1  is the length of a reference pattern V 1  C n  V 0 ). Also g 2  *(i) is determined on the basis of the equation (9) as g 2  (i, l). The g 1  *(i)  and g 2  *(i) for the time points i thus obtained are stored in a memory 12. 
     A calculator (g* estimator) 13 is adapted to determine on the basis of the equation (10) a matching distance g* which gives the smallest sum of the integrals g 1  *(i) and g 2  *(i) for each time point i read out from the memory 12, and sends the resultant g* to a judging unit 14. The integral g* is a distance for the reference syllable pattern including the n-th consonant C n , and, therefore, it is expressed as g*[C n  ]. A distance g*[C n+1  ] for a reference syllable pattern including a (n+1)th consonant is then determined. The smallest value among a total of N pieces of thus obtained g*[C n  ] (wherein n is 1 to N) distances is then determined in the judging unit 14 to conclude that the consonant giving the smallest value is the consonant C included in the input syllable pattern. Such a judging unit can be formed with a known minimum value detecting circuit consisting of a register and a comparator. 
     The judging unit 14 judges on the basis of the vowels V 1 , V 2  extracted by the vowel extractor unit 2 and the consonant C concludes as mentioned above that the input syllable pattern is V 1  CV 2 , and outputs the conclusion as the result of the determination or recognition. 
     According to the above operations, the recognition of one input syllable pattern A 1  (in FIG. 4) among the time sequence syllable patterns is completed, and the recognition of a subsequent input syllable pattern A 2  is then carried out. The time sequence syllable patterns are thus recognized in order with the vowels therein in an overlapping state. Finally, the input speech is recognized with due consideration given to the overlapping recognition of vowels. 
     In the above described embodiment of the present invention, the asymmetric equations (4) and (5) are used as the recurrence relation equations for the DP matching. In addition to these, there are some symmetric equations for the DP matching. For example, ##EQU5## can be used instead of the equation (4), and ##EQU6## instead of the equation (5). It has been experimentally proven that the DP matching according to a symmetric equation has a higher recognition performance than the DP matching according to an asymmetric equation. When a symmetric equation is used, it is necessary that the integrals g 1 , g 2  be normalized on the basis of the lengths of an input pattern and a reference pattern. Where a matching operation is carried out with both ends of the patterns fixed, the integrals are generally normalized by the sum of the lengths of two patterns to be compared with other. Let, for example, I and J be the lengths of two patterns to be compared. A matching distance finally determined is expressed as: ##EQU7## 
     When the same concept is applied to the present invention, ##EQU8## can be used instead of, for example, the equation (7). In the equation (7), the integrals are normalized by the weighted sum of the lengths of input pattern and reference patterns. 
     Therefore, when the equations (11) and (12) are used, an apparatus according to the present invention is so formed that a matching distance calculator unit is capable of normalizing integrals by dividing the sum g*(i) of optimum integrals in the positive direction and optimum integration amounts in the negative direction for the respective i&#39;s by the weighted sum of the input pattern and two reference patterns, and thereafter determining a minimum value out of the resulting values.