Speech recognition method and apparatus therefor

Abstract: The present invention aims to provide a high-speed speech recognition method of a high recognition rate, utilizing speaker models. For this purpose, the method of this invention executes an acoustic process on the input speech, then calculates a coarse output probability utilizing an unspecified speaker model, and calculates a fine output probability utilizing an unspecified speaker model and clustered speaker models, for the states estimated, by the result of coarse calculation, to contribute to the result of recognition. Candidates of recognition are extracted by a common language search based on the obtained result, and a fine language search is conducted on thus extracted candidates to determine the result of recognition.

Description: BACKGROUND OF THE INVENTION Field of the Invention The present invention relates to a speech recognition method and an apparatus therefor, and more particularly to a speech recognition method for recognizing the input speech utilizing a model, and an apparatus therefor. Related Background Art Among the conventional speech recognition technologies, few employ models of plural speaker classes, and, even in case such models are employed, there is adopted a method of utilizing models divided into male and female speakers and selecting the model to be used prior to the execution of speech recognition. There has not been a method of utilizing a model of unspecified speaker model or utilizing a male model and a female model at the same time for speech recognition, and there has not existed a high-speed process utilizing such method. In the model preparation for speech recognition, it is generally known that higher performance of recognition can be obtained by forming details in the Hidden Markov Model (HMM) in the direction of phoneme environment. It is also becoming known that higher performance of recognition can be obtained by forming details in the direction of speaker classes, represented by genders. However, while the load of recognition process increases mainly in the output probability calculation of HMM in case of the detailed model formation in the direction of phoneme environment, the load increases both in the output probability calculation and in the language search in case of the detailed model formation in the direction of speaker classes. In the speech recognition, the real-time process is a very important factor that has to be attained in combination with the high recognition rate. It is therefore necessary to realize the real-time process of speech recognition while improving the recognition rate thereof, and, for this purpose, it is necessary to realize a high-speed process utilizing speaker class models. It is known from Kosaka et al "Tree-structured Speaker Clustering for Fast Speaker Adaptation" Proceedings of the International Conference on Acoustics, Speech, Signal Processing (ICASSP), Speech Processing 1. Adelaide, Apr. 19-22, 1994, Pages I-245 - I-248 to provide speaker adaptive speech recognition using hierarchical speaker clustering in which speaker models are arranged in a tree structure to achieve both precise and rough adaptation according to the amount of training. Aspects of the present invention are set out in the appended claims. An embodiment enables high-speed speech recognition with a high recognition rate, by analyzing the input speech, determining the output probability of models, namely an unspecified speaker model and plural speaker models clustered according to plural speaker classes, and the result of analysis of the input speech, and determining the result of recognition of the input speech based on thus determined output probability. BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a functional block diagram of an embodiment of the present invention; Fig. 2 is a flow chart showing the process flow in the embodiment of the present invention; Fig. 3 is a view showing a conventional process utilizing speaker class models; Fig. 4 is a view showing a high-speed process of the present invention utilizing speaker class models; Fig. 5 is a view showing the comparison of process times; Fig. 6 is a view showing speaker classes having a hierarchical structure; Fig. 7 is a chart showing the results of recognition of telephone speeches, utilizing speaker classes; and Fig. 8 is a block diagram showing a hardware configuration of an apparatus embodying the present invention. DESCRIPTION OF THE PREFERRED EMBODIMENTS Fig. 1 is a functional block diagram of an apparatus embodying the present invention. In Fig. 1 there are provided a speech input device 101 including a microphone or an A/D converter for entering the speech of an input speaker; an acoustic process unit 102 for determining speech parameters by acoustic analysis; an output probability calculation unit 103 for calculating a common coarse output probability and a fine output probability for each speaker class; a speaker class model (HMM: Hidden Markov Model) 104; a language search unit 105 for a common coarse language search and a fine language search for each speaker class; a grammar/dictionary unit 106 employed in the language processing; and a display device 107 for outputting the result. Fig. 1 is a functional block diagram of a speech recognition apparatus embodying the present invention, while Fig. 8 shows the hardware configuration of such speech recognition apparatus and the functions of the blocks in Fig. 1 are realized by the components shown in Fig. 8. More specifically, the function of the speech input device 101 is realized by a speech input device 86, and the functions of the acoustic process unit 102, the output probability calculation unit 103 and the language search unit 105 are realized under the control of a CPU 83 according to a control program stored in a ROM 81 or a RAM 82. The speaker class HMM model 104 and the grammar/dictionary 106 are stored in the ROM 81 or the RAM 82. The control program, the HMM and the dictionary stored in the RAM 82 and the parameters required in various processes may be installed from a CD-ROM 84 through an interface (I/F) 85 or from another terminal (not shown) through a public communication line. The display device 107 can be realized by a display device 87 such as a CRT or a liquid crystal display device, and various instruction can be entered by input means 88 such as a keyboard, a mouse and/or a tablet. The speech recognition apparatus is composed of the above-mentioned components and functions according to the flow shown in Fig. 2. A speech cut out by the speech input device 201 (corresponding to 101) is analyzed into speech parameters in each frame by the acoustic process unit 202 (corresponding to 102), and the output probability calculation unit 203 (corresponding to 103) calculates the output probability utilizing the HMM 204 (corresponding to 104). The HMM 204 (corresponding to 104) stores speaker class models clustered into plural speaker classes. At the output probability calculation in 203, the output probability calculation unit at first calculates a common coarse output probability (203-a), and, based on the result of such calculation, calculates again a fine output probability for each speaker class that may contribute to the result of recognition (203-b). Then a common output probability is determined from these output probabilities, and the language search unit 205 (corresponding to 105) executes a common language search based on the grammar/dictionary 206 (corresponding to 106) and the common output probability determined above, thereby determining a candidate of recognition (205-a). The language search unit 205 (corresponding to 105) then executes a fine language search for each speaker class, utilizing the fine output probability for each speaker class, thereby determining a recognition result and its likelihood (205-b). These results are outputted as the results of recognition on 207 (corresponding to 107). [Method of preparation of high definition HMM in consideration of speaker classes] In the following there will be explained methods of preparation of speaker classes and of speaker class HMM. I. Method of preparation of speaker classes In the following there will be explained the method of preparation of speaker classes. In a speaker class, speakers having acoustically similar features are clustered. The similarity of the acoustic features of the speakers can be measured by various methods, such as: 1) a method of considering the acoustic feature of each speaker as a distribution, preparing distributions for the respective speakers and measuring the similarity between the speakers by the distance between such distributions; 2) a method of representing an unspecified speaker space by plural representative points or distributions, determining the deviation of the representative points of each speaker in the unspecified speaker space, and measuring the similarlity between the speakers by such deviation; and 3) a method of preparing partial spaces for respective speakers in consideration of the sound property, making correspondence between such partial spaces in consideration of the sound property and measuring the similarity between the speakers by the sum of the similarities of the partial spaces. The method (1) can be realized by studying the continuous HMM of one distribution for one state for each speaker, utilizing the entire speech space and measuring the similarity between the speakers by determining the distance of the HMM of the speakers. In this method, however, the average of the distribution of each speaker becomes a cepstrum means because the entire speech space of each speaker is represented by one distribution, so that the difference between the speakers may not become conspicuous. Consequently this method cannot be considered preferable. The method (2) can be realized by preparing a code book (for example of a code word size of 1024) of an unspecified speaker (namely studying the discrete distribution HMM of one state of 1024 code words), determining the probabilities of appearance of such code words for each speaker and measuring the similarity between the speakers by the deviation of such appearing probabilities. This method is preferable to the method (1) in that the speech space is divided into partial spaces. However, since this method does not take the sound property into consideration, the measured similarity between the speakers may be based on the similarity between a sound of a speaker and another sound of another speaker, and this method cannot be considered preferable in consideration of such possibility. The method (3) can be realized by preparing models in consideration of the sound for each speaker, and measuring the similarity between the speakers by the sums of the similarities of the corresponding models. For example phoneme HMM's of 1 distribution for 3 states are prepared for each speaker, and the similarity between the speakers is measured by determining the similarity in each corresponding state of each corresponding phoneme of the speakers and calculating the sum of such similarities. In this method, the similarity between the speakers is measured in consideration of the entire speech space of the speakers while making correspondence between the phoneme partial spaces represented by the phoneme and the state, and can therefore be given in consideration of the sound feature, also reflecting the detailed difference in the acoustic feature of each speaker. The similarity between the speakers can also be measured in more detailed manner by replacing the phoneme model with a more detailed HMM dependent on the phoneme environment. In consideration of the foregoing, the similarity between the speakers is determined by the above-explained method (3), and the speaker classes are prepared according to such similarity. In the following there will be explained the algorithm for preparing the speaker classes. II. Algorithm of preparation of speaker classes 1) At first phoneme HMM's of 1 distribution for 3 states are prepared. Considering 24 phonemes excluding the soundless state, each speaker is represented by 72 partial spaces (= 24 phonemes × 3 states). For example for 204 speakers, there are prepared 4,896 HMM's, and the total number of distributions becomes 14,688 (4,896 × number of states (3)). 2) The similarity between the speakers is measured by the phoneme HMM's prepared for each speaker. For two speakers S (1) and S (2) , by defining states  p ,  q for a corresponding state n of a corresponding phoneme m among the phoneme HMM's (24 kinds), the similarity between such states is represented by a distance d( p ,  q ), wherein  p , and  q are represented by:  p = S (1) mn ,  q = S (2) mn since each state is represented by one distribution, the distance d( p ,  q ) can be calculated according to the following equation (2), employing Bhattacharyya distance: d( p'  q ) 1 8 (µ p -µ q ) t Σ p +Σ q 2 -1 (µ p -µ q )+ 1 2 ln |(Σ p +Σ q )/2| |Σ p | ½ |Σq| ½ wherein µ i and Σ i respectively stand for mean value and dispersion.The distances of all the states of all the corresponding phonemes of the speakers are determined by the foregoing equation, and the similarity of the speakers is defined by the distance D(S (1) , S (2) ) which is the sum of the above-mentioned distances. The distance D(S (1) , S (2) ) is calculated by the following equation (3): wherein M indicates the number of kinds of HMM and N indicates the number of states per HMM.The similarity is determined as explained above, for every two of all the speakers. 3) The speakers are clustered by an LBG algorithm, based on the similarities of all the speakers. The LBG algorithm is executed in the following procedure: 1. There is selected a central speaker, for whom the sum of the similarities for all the speakers becomes minimum. The central speaker means a speaker for whom the sum of the similarities becomes minimum in the contemplated class; 2. There is determined a speaker S a farthest from the central speaker within the contemplated class; 3. There is determined a speaker S b who is farthest from the above-mentioned far speaker S a within the contemplated class; 4. The speakers in the contemplated class are divided into a group closer to the speaker S a and another closer to the speaker S b , thereby forming two speaker classes; 5. Central speakers S a1 , S b1 are renewed respectively for thus divided two speaker classes; 6. All the speakers are reclustered by assignment to the closest central speakers, utilizing all the currently determined central speakers (number of which is same as the number of currently contemplated speaker classes). This step 6 is repeated while the renewal of the central speakers is continued, but the sequence proceeds to the next step 7 if the central speakers are no longer renewed. This step is terminated when a desired number of speaker classes is obtained: and 7. Among all the speaker classes, there is determined a class showing the largest sum of the similarities for the central speaker, and the foregoing steps 2, 3, 4, 5 and 6 are executed on such class. The speaker classes are prepared as explained in the foregoing. The prepared speaker classes may be utilized as they are, but the spreading of the speakers may be different in the different classes, according to the above-mentioned method of preparation. If it is desirable to have similar levels of spreading among the different speaker classes, it is possible to fetch, in succession, a closer speaker to each speaker class until the level of spreading (sum of similarities to the central speaker) of the class showing the widest spreading (i.e. having the largest sum of the similarities to the central speaker) becomes similar to the level of spreading of other classes. Such determination of the speaker classes provides uniform spreading of the speaker classes, and the speaker at the boundary belongs to plural speaker classes, so that the speech recognition can be relieved from the significant influence resulting from the error in the determination of the speaker classes. III. Method of preparation of speaker class HMM The phoneme environment-dependent HMM's are prepared by the ordinary EM algorithm, utilizing the speech data of the speakers belonging to each of thus prepared speaker classes. For example, in 4 speaker classes, there are prepared phoneme environment-dependent HMM's of 12 distributions in 3 states (238 kinds). [High-speed speech recognition method utilizing speaker class HMM] In the following there will be explained a high-speed speech recognition method utilizing speaker class HMM. At first there will be explained, with reference to Fig. 3, a conventional speech recognition method utilizing speaker class HMM. In this case, there are basically conducted, in parallel manner, the speech recognition processes by the kinds (N) of the speaker class HMM's, there is required the speech processing of N times, in comparison with the case of employing only one speaker class, namely an unspecified speaker class HMM. Consequently the output probability calculation and the language search required are also N times. If the calculations of such amount are necessary, the use of the speaker class HMM's in the actual speech recognition inevitably necessitates a computer of a very high speed or of parallel processing, in order to realize the real-time process. Such use therefore becomes expensive and is practically unrealistic. In the following there is proposed a speech recognition method utilizing the speaker class HMM's and capable of significantly reducing the amount of the above-mentioned calculations. The proposed method is illustrated in Fig. 4. The proposed speech recognition process is featured by a fact that the unspecified speaker HMM is always used also in the recognition of the speaker class HMM. The unspecified speaker HMM corresponds to an upper speaker class of all the speaker class HMM's. It is intended to improve the efficiency of the output probability calculation and the language search, by employing the result of the unspecified speaker HMM as the estimated value of each speaker class HMM. The proposed high-speed speech recognition method utilizing the speaker class HMM's functions in the following manner: 1) For the result of acoustic analysis, the estimated value of the state output probability of the unspecified speaker HMM (SI HMM) is calculated by the high-speed output probability calculation method IDMM+SQ, utilizing scaler quantization and dimensionally independent output probability calculation; 2) Assuming that the upper rank of the output probability of the unspecified speaker HMM, estimated by IDMM+SQ, is a state contributing to the result of recognition, the state output probability of each speaker class HMM is re-calculated, utilizing the unspecified speaker HMM and each speaker class HMM, to obtain a fine output probability. In this operation, since the unspecified speaker HMM constitutes the upper class of the speaker class HMM's a relatively high output probability can be expected in the unspecified speaker HMM in a state where a high output probability of the speaker class HMM is anticipated. Consequently the output probability of the unspecified speaker HMM, estimated by IDMM+SQ, may be employed as the state output probability of each speaker class HMM; 3) Subsequently there is executed a forward language search, utilizing the total output probability of the unspecified speaker HMM. In this case, the language search is not executed in other speaker classes. In the present speech recognition method, the final result of recognition is determined by a backward language search utilizing the tree-trellis-based search, based on Astar search. The heuristic cost of the Aster search utilizes the forward score of the unspecified speaker and does not require the forward Viterbi search for each speaker class. In this case, the heuristic cost does not satisfy the condition of the Astar search in strict sense, but in practice the difference scarcely matters if the final N-best results are re-sorted since the unspecified speaker HMM, constituting an upper class of the speaker class HMM's provides a relative satisfactory estimated value for the heuristic cost of the speaker class HMM's. The final N-best results have to be re-sorted in any case, since the results among plural speaker classes are employed; 4) Then the final result of recognition is determined by a backward language search for each speaker class. In this operation, the result of the forward language search of the unspecified speaker is used as the heuristic cost of each speaker class, as explained above. In the backward Viterbi search, there is employed the output probability for each speaker class, estimated in the step (2); 5) The results of recognition, determined for the different speaker classes, are re-sorted, and the result of the highest likelihood is taken as the result of recognition of the first rank. In the above-explained method, most of the calculations that may contribute to the result of recognition is made by the information relating to each speaker class. Fig. 5 schematically shows the comparison of the process time of the speech recognition employing the speaker class HMM, in the conventional method and in the method of the present invention, taking the process time in the abscissa. The uppermost graph shows the process time of the conventional recognition employing only one speaker class (unspecified speaker class), and the second graph shows the process time of the recognition employing an unspecified speaker class, made faster by IDMM+SQ (present invention). The third graph shows the process time of the conventional recognition employing IDMM+SQ and the speaker class HMM's of 3 speaker classes simply in parallel manner (as shown in Fig. 3), while the lowermost graph shows the process time of the high-speed speech recognition method with 3 speaker classes, utilizing the proposed speaker class HMM's (as shown in Fig. 4). The process time required for the output probability calculation (Bjot) and the forward/backward language search is variable, depending on the task constituting the object of recognition and on the performance of HMM's, but can be considered to be represented as a reasonable length in the contemplated range. However the process time required for the backward language search, represented as considerably long in these graphs, is less than 0.1 seconds in practice. As a result, in comparison with the conventional method of calculating the speaker class HMM's simply in parallel manner and executing the IDMM+SQ calculation and the forward Viterbi search by the number N of the speaker classes, the proposed method requires the IDMM+SQ calculation for the unspecified speaker HMM and the forward search only once, so that the advantage of the proposed method becomes larger with the increase in the number N. On the other hand, the amount of the output probability re-calculation for the speaker classes and of the backward language search, increasing with the number N of the speaker classes, is limited in the entire calculations. Consequently the method of the present invention can be executed, in the entire process, at a very high speed. As a result, there is provided increased possibility of realizing the real-time process without relying on a high-speed computer or parallel computers, and practical speech recognition can be realized. [Experimental results on speech recognition with speaker class HMM's] Results of an experiment conducted with plural speaker classes are shown in Fig. 7. The speech recognition was experimented with (a) an unspecified speaker class (g1), (2) male and female speaker classes (g2), and (3) 8 speaker classes consisting of four male classes and four female classes (g8). Phoneme environment-dependent HMM's of 6 distributions for 3 states were prepared for each of the above-mentioned speaker classes (1) - (3) (238 kinds in total), and recognition experiment was conducted for 520 words (telephone speeches) pronounced by twenty male and female speakers. The experimental results in Fig. 7 indicate the effect of use of the speaker classes. According to these results, the case utilizing the unspecified speaker class in combination with the speaker classes suppressed the percentage of maximum deterioration and increase the percentages of maximum improvement and of mean improvement. In the foregoing there has been explained a case of employing the unspecified speaker class and the male and female speaker classes, but there may also be employed a larger number of the speaker classes. Also in the foregoing there has been explained a case of utilizing the unspecified speaker class in the common output probability calculation, but there may also be employed any parameter that can be determined from the output probability values of the speaker classes. For example there may be employed the maximum value of the output probabilities of the speaker class HMM's. Furthermore, in the foregoing there has been explained a case of utilizing IDMM+SQ in the calculation of the coarse output probability, but there may also be employed a method of employing HMM of smaller population for the coarse output probability calculation and employing HMM of larger population for the fine output probability calculation, or a method of employing phoneme HMM for the coarse output probability calculation and employing phoneme environment-dependent HMM for the fine output probability calculation. Furthermore, in the foregoing there has been explained a case of doubling the number of the speaker classes for each hierarchic level, but the number of the speaker classes may be increased in any manner. Furthermore, in the foregoing there has been explained a case of clustering the speakers in such a manner that the speakers do not overlap between the different classes, but the clustering may also be made so as to allow such overlapping.

Claims: A speech recognition method comprising the steps of: receiving speech input signals representative of input speech; calculating a coarse output probability of said input speech, utilizing an unspecified speaker model; calculating a fine output probability of said input speech for each speaker class, utilizing said unspecified speaker model and plural speaker models clustered into plural speaker classes; and determining a recognition result for said input speech based on said coarse output probability and said fine output probability obtained from each speaker class. A speech recognition method according to claim 1, wherein each speaker model belongs to one or more speaker class in said plural speaker classes. A speech recognition method according to claim 1 or 2, wherein each of said unspecified speaker model and said plural speaker models is a respective phoneme HMM. A speech recognition method according to any preceding claim, wherein said determining step performs a language search for each speaker class based on said coarse output probability and said fine output probability obtained from each speaker class to determine a recognition result for said input speech. A speech recognition method according to claim 4, wherein said determining step performs a first language search based on said coarse output probability, and then performs a second language search based on said fine output probability obtained from each speaker class. A speech recognition method according to any preceding claim, wherein an unspecified speaker class corresponding to said unspecified speaker model is an upper speaker class of the other speaker classes. A speech recognition method according to any preceding claim, wherein said second calculating step calculates said coarse output probability utilizing a scalar quantization and a dimensionally independent high-speed output probability calculation method. A speech recognition apparatus comprising: means (201) for receiving speech input signals representative of input speech; first calculation means (203-a) for calculating a coarse output probability of said input speech, utilizing an unspecified speaker model; second calculation means (203-b) for calculating a fine output probability of said input speech for each speaker class, utilizing said unspecified speaker model and plural speaker models clustered into plural speaker classes; and determination means (204-206) for determining a recognition result for said input speech based on said coarse output probability and said fine output probability obtained from each speaker class. A speech recognition apparatus according to claim 8, wherein each speaker model belongs to one or more speaker class in said plural speaker classes. A speech recognition apparatus according to any of claims 8 and 9, wherein each of said unspecified speaker model and said plural speaker models is a phoneme HMM. A speech recognition apparatus according to any of claims 8 to 10, wherein said determination means is operable to perform a language search for each speaker class based on said coarse output probability and said fine output probability obtained from each speaker class to determine a recognition result for said input speech. A speech recognition apparatus according to claim 11, wherein said determination means is operable to perform a first language search based on said coarse output probability, and to then perform a second language search based on said fine output probability obtained from each speaker class. A speech recognition apparatus according to any of claims 8 to 12, wherein an unspecified speaker class corresponding to said unspecified speaker model is an upper speaker class of the other speaker classes. A speech recognition apparatus according to any of claims 8 to 13, wherein said second calculating means is operable to calculate said coarse output probability utilizing a scalar quantization and a dimensionally independent high-speed output probability calculation method. A CD ROM (84) comprising processor implementable instructions for controlling a processor to carry out all of the steps of a method as claimed in any one of claims 1 to 7. A computer program comprising processor implementable instructions for instructing a processor (83) to carry out all of the steps of a method as claimed in any one of claims 1 to 7.

Inventors: KOMORI YASUHIRO, KOSAKA TETSUO, YAMADA MASAYUKI, KOMORI, YASUHIRO, KOSAKA, TETSUO, YAMADA, MASAYUKI
Applicants: CANON KK, CANON KABUSHIKI KAISHA
Application year: 1997
Main classification: G10L15
IPC codes: G10L15