Speech recognition method and apparatus for use therein

Abstract: A speech recognition method and apparatus includes a microphone for inputting a spoken word, a memory for storing a plurality of data representing a standard pattern of a spoken word composed of an average vector and a variance/covariance matrix, a device for shifting the standard pattern, a calculator for calculating a plurality of Maharanobis distances between the data representing a time series of parameters of the spoken word input by the microphone and a plurality of data representing the shifting standard pattern, a detector for detecting data representing the minimum Maharanobis distance calculated by the calculator, and a recognizing device for recognizing whether the input spoken word is the word represented by the standard pattern based on the data representing the minimum Maharanobis distance detected by the detector. The recognizing device calculates a plurality of dynamic programming values of the inputted spoken word over time while the standard pattern is shifted. The recognizing device also determines whether one of the plurality of the dynamic programming values is below a predetermined threshold value, and then recognizes the inputted spoken word as the word represented by the standard pattern when the recognizing device determines that one of the plurality of dynamic programming values is below the predetermined threshold value.

Description: The present invention relates to a speech recognition method and to a speech recognition apparatus using the word spotting method which simultaneously detects and recognizes words from speech. Although devices which recognize a limited vocabulary of a specific speaker have already entered practical use, the recognition of the speech of unspecified speakers is not being performed precisely enough by currently available devices. If speech recognition of unspecified speakers becomes possible, it will be applicable to a wide range of speech, for example, to the recognition of telephone speech. Therefore, whether or not a speech recognition apparatus can be used with unspecified speakers is important. Conventionally, in order to perform speech recognition intended for unspecified speakers, the following suggestions have been offered: (1) prepare a plurality of reference patterns for one category; (2) regularize the spectrum; or (3) use an average reference pattern. As for suggestion (3), the Dynamic Programming (DP) matching method with high precision, which uses the Mahalanobis distance of the feature parameter, is suggested. The method is mentioned in detail in "Word Speech Recognition by DP Matching Using Mahalanobis Distance", Denshi Tsushin Gakkai Ronbunshi, Vol.J66-A No.1 (January 1983), pp. 64-70. Although it is possible to form a recognition apparatus suitable for unspecified speakers by using such a method, for example, in the case of telephone speech recognition, the recognition environment thereof is noisy, unlike that in a soundproof room without any noise, and causes an incorrect recognition to accompany an incorrect detection of the speech section. Since the above Mahalanobis DP method recognizes the word after selecting the speech section, it has the disadvantage of conducting an incorrect recognition if an incorrect selection is caused by noise. It is an object of the present invention to provide an apparatus and method for recognizing speech which correctly detects the speech section of inputted auditory information inputted into a speech recognition apparatus. The invention as set forth in claims 1 and 7 provides a speech recognition apparatus and method which can simultaneously detect a speech section of inputted information and recognize the speech, so as to overcome the above-mentioned disadvantage of the prior art. Embodiments of the invention may provide a speech recognition apparatus comprising input means for inputting a spoken word, memory means for storing data representing a standard pattern of a word composed of an average vector and a variance/covariance matrix, shift means for shifting the data representing the standard pattern, calculation means for calculating a plurality of Mahalanobis distances between the data representing a time series of parameters of the spoken word input by the input means and a plurality of data representing the shifting standard pattern stored in the memory means, retention means for retaining data representing the plurality of Mahalanobis distances together with the data representing the standard patterns used by the calculation means for the calculations, detection means for detecting data representing the minimum Mahalanobis distance retained in the retention means, and recognition means for recognizing whether the input spoken word is the word represented by the standard pattern based on the data representing the minimum Mahalanobis distance retained by the retention means and detected by the detection means. The calculation means can calculate each of the plurality of distances by using a measure of the power of the inputted spoken word, the average vector of the inputted spoken word, and variance/covariance matrix of the inputted spoken word. The apparatus can also include means for converting the input spoken word into data representing a time series of parameters of the input spoken word. In one embodiment, the recognition means can comprise calculation means for calculating a plurality of dynamic programming values of the inputted spoken word over time while the shift means shifts the standard pattern, determining means for determining whether one of the plurality of dynamic programming values is below a predetermined threshold value, and means for recognizing the inputted spoken word as the word represented by the standard pattern when the determining means determines that one of the plurality of dynamic programming values is below the predetermined threshold value. The apparatus can further include means for setting this predetermined threshold value. The invention further provides methods of speech recognition as defined in the appended claims. Such a method may comprise the steps of converting a spoken word into data representing a time series of parameters, calculating a plurality of Mahalanobis distances between the data representing the time series of parameters and data representing a shifting standard pattern of a spoken word comprising an average vector and a variance/covariance matrix, determining the minimum Mahalanobis distance, and recognizing whether the spoken word converted in the converting step is the word represented by the standard pattern based on the minimum Mahalanobis distance detected in the detecting step. The recognizing step can comprise the steps of calculating a plurality of dynamic processing values over time of the spoken word converted in the converting step using the shifting standard pattern, determining whether one of the plurality of dynamic programming values is below a predetermined threshold value, and recognizing the spoken word converted in the converting step as the word represented by the standard pattern when one of the plurality of dynamic programming values is determined in the determining step to be below the predetermined threshold value. The method can also comprise the additional step of setting the predetermined threshold value. In addition, the calculation step can comprise the step of calculating each of the plurality of distances using a measure of the power of the spoken word converted in the converting step, the average vector of the spoken word converted in the converting step, and a variance/covariance matrix of the spoken word converted in the converting step. BRIEF DESCRIPTION OF THE DRAWINGS Fig.1 is a view showing the composition of the present invention; Fig.2 is a flowchart for designing a standard pattern; Fig.3 is an explanatory view of a word detection method; Fig.4 is a view showing the composition of the present invention applied to a telephone speech recognition; Fig.5 is a flowchart of operations of the apparatus shown in Fig.4; and Fig.6 is a view showing the composition of a speech input and output apparatus. DESCRIPTION OF THE PREFERRED EMBODIMENTS [Explanation of Principle of Operations] The connected DP (Dynamic Programming) matching method using the Mahalanobis distance uses an average vector and a variance/covariance matrix as a reference pattern. The reference pattern is not found by analyzing one item of speech as found in a normal DP matching method, but by learning the average vector and the variance/covariance matrix. The learning operation is performed for each word as follows. In the following description, all of the speech data to be used is converted to LPC cepstrums or a time series of speech parameters. A word which is average in time and spectrum is selected as a kernel word from a plurality of identical words. The selected word is called a kernel pattern. Then, the DP matching is conducted between the kernel pattern and the time series of the speech parameters of the identical words so as to determine a frame of a speech pattern input as a sample of a standard pattern corresponding to each frame of the kernel pattern. Much data of the frame corresponding to each frame of the kernel pattern is selected by using many identical words, and the average vector and the variance/covariance matrix are found from the data. The average vector and the variance/covariance matrix are respectively calculated as follows: (1) Average Vector X ℓ (k) : ℓth frame data of Kth input speech vector X X ℓ : average value of ℓth frame data of input speech vector X (2) Variance/Covariance Matrix By using the average vector and the variance/covariance matrix thus found, the word is recognized as follows: (1) Cumulative Distance i: i frame of input speech vector j: j frame of standard pattern d(i,j): distance between i and j (2) Optimal Integral Path Length (3) Distance d(i,j) = (Xi- Xj ) Sj -1 (Xi- Xj ) t Xi: input vector in i frame Xj : average vector in j frame Sj: variance/covariance matrix in j frame (4) DP Value D(i) = P (i, j) C (i, j) j: standard pattern length By calculating D(i) of each word while shifting the standard pattern by one frame, it can be found that, when the word n is ended, the value D(i) of the word is reduced. The word section can be found from the reduction of the value D(i) and it is recognized that the standard pattern at that time is identical with the word of the speech. Therefore, it is possible to set a certain threshold value for the DP value, set the point, where the DP value becomes lower than the threshold value, as the recognition point, and simultaneously select and recognize the word. [Specific Description according to Composition Views] Fig.1 shows the composition of a recognition apparatus of the present invention. A recognition station is only used in an actual recognition operation, while a learning station is used in designing a standard pattern. Referring to Fig.1, the recognition apparatus is constituted by an average vector and variance/covariance matrix calculation unit 1 for calculating an average vector and a variance/covariance matrix, a standard pattern storing unit 2 for storing a plurality of standard patterns composed of the average vector and the variance/covariance matrix, a speech analysis unit 3 for analyzing input speech and converting the speech into parameters, a Dynamic Programming (DP) matching unit 4 for executing Dynamic Programming (DP) by using the standard pattern stored in the standard pattern storing unit 2 so as to calculate points (the Mahalanobis distance between the input word and the standard pattern), and a recognition output unit 5 for determining and outputting the recognized word by using the result of the DP executed in the Dynamic Programming (DP) matching unit 4. In the average vector and variance/covariance matrix calculation unit 1, a central processing unit (CPU) makes a calculation according to the flowchart shown in Fig.2. Since Fig.2 shows the calculation of the average vector and the variance/covariance matrix of one word, it is possible to obtain all the standard patterns for a number of recognition object words by repeating the calculation the number of times corresponding to the number of recognition object words. The variable k for counting the repetition is cleared in S1, and speech data such as a kernel pattern is read in S2. The variable k is increased in S3, and in S4 it is determined whether or not the repetition counter k has reached a predetermined number K. When the number of recognition object words is K and k is lower than K, the calculation proceeds to S5. The DP matching is performed between the input data and the kernel pattern, and data corresponding to each frame of the kernel pattern is determined in S5. Based on the data, the following calculations are made in S6: The above calculations are repeated while reading the data one after another until k reaches K. When k is higher than K, the average vector and the variance/covariance matrix are calculated by using the equations (1) and (2) in S7. Since the learning operation is thus completed, the calculated average vector and variance/covariance matrix are stored in the standard pattern storing unit 2 shown in Fig.1. [Recognition Station] The recognition station will be described with reference to Figs.1, 3 and 6. The speech input from a microphone 200 as a recognition object passes a low-pass filter 201, is converted from analog data to digital data by an A/D converter 202, passes an interface 203 and is transmitted to a speech analysis apparatus. Subsequent processes of the recognition station are performed in a central processing unit (CPU) 205. However, the standard pattern is stored in a memory 204, and the DP value calculated from the input speech and the standard pattern is also stored in the memory 204 in correspondence with information representing the word of the standard pattern, for example, address information, code information and so on. The speech analysis unit 3 converts the input speech as the recognition object into an electrical signal whose parameters are suitable for speech recognition, for example, LPC cepstrums. In the DP matching unit 4, the DP value of the time series of the speech parameters of the input speech and the standard pattern stored in the standard pattern storing unit 4 is calculated by the method shown in the equations (3), (4), (5) and (6). The recognition output unit 5 determines the recognition word based on the DP value found in the DP matching unit 4 and outputs the recognition result. Referring to Fig.3, i shows the time axis of the input speech and j shows the time axis of the standard pattern. When there are three kinds, A, B and C, of recognition object words, the DP value is calculated for each word. If the word C is input, the DP value is decreased near the time when the word speech is completed. Therefore, the word section is detected from the time when a value lower than a predetermined proper threshold value appears, and the word is determined from the value representing the standard pattern stored in the memory corresponding to the DP value and output as the recognition result by, for example, a display. Alternatively, the recognition result can be output as a voice waveform. This is accomplished by transmitting the recognition result from the CPU 205 to the interface 203, a digital-to-analog circuit 209, a low-pass filter 210, an amplifier 211, and a speaker 212, which outputs the recognition result as a voice waveform output. Fig.4 shows an embodiment in which the above recognition apparatus is used for telephone speech recognition. Fig.4 shows one such embodiment. The recognition apparatus is constituted by a message vocalizing circuit 6 of a speech synthesis apparatus, the above-mentioned speech recognition circuit 7, a DP value monitoring circuit 8 for monitoring the DP value and sending a signal when the DP value becomes lower than the threshold value to a control unit 9 for controlling the whole recognition apparatus. The operations of the control unit 9 of the apparatus shown in Fig.4 will be described according to the flowchart shown in Fig.5. A message for guidance is sent to a telephone by the message vocalizing circuit 6 in S1. In S2, after a shrill confirmation sound is given, the speech recognition circuit 7 is activated. Since the DP value for each word is found and output by the speech recognition circuit 7, the DP value monitoring circuit 8 monitors the output value. As shown in S3, if the DP value is not lower than the threshold value, the recognition operation is continued, and if the DP value becomes lower than the threshold value, a signal is sent to the control unit 9, the operation of the recognition circuit 7 is stopped in response to another shrill confirmation sound which shows that the speech has been recognized, and a reply is made to the recognition by, for example, outputting speech with the message vocalizing circuit. By repeating the above process several times, speech is exchanged with a speaker using the telephone. [Another Embodiment] In the above embodiment, the distance measure taking into account the power of the input speech may be used. In this case, the following equation can be substituted for the equation (5): d(i,j) = λ|y i - y j + (1-λ) (X i - X j ) S j -1 (X i - X j ) t λ: weight coefficient (0.0-1.0) y i : power of input speech in i frame y j : average power in j frame As described above, since the power is considered to some extent when the spotting is performed, even if the parameter which is used is unlikely to reflect the power, for example as with the LPC cepstrum, the efficiency of the spotting is still enhanced. The individual components represented by the blocks shown in Figures 1, 4, and 6 are all well known in the voice recognition art in their specific construction and operation is not critical to the operation or best mode for carrying out the invention. Moreover, the steps illustrated in Figures 2 and 5 can be easily programmed into well known central processing units by persons of ordinary skill and since such programming per se is not part of this invention, no further description thereof is deemed necessary.

Claims: A speech recognition apparatus comprising: input means (3) for inputting a speech signal; memory means (2) for storing a plurality of standard patterns of words each composed of an average vector and a matrix including variance and covariance information; comparison means (4) for comparing the input speech signal with said plurality of standard patterns stored in said memory means by a dynamic programming (DP) matching process, using Mahalanobis distance as a measure, and for outputting a comparison result for each standard pattern; and outputting means (5) responsive to said comparison results for identifying a standard word which is most similar to a word occurring in the input speech signal; characterised in that said comparison means (4) is arranged to perform said matching process, without pre-judging specific segments of the input speech signal as candidates for matching, so as to process the input speech signal to generate each of said comparison results as a time-varying signal, and in that said outputting means (5) detects the occurrence of a word and determines which word is most similar to the input speech by detecting a characteristic variation in the corresponding time-varying comparison result signal output by the comparison means (4). A speech recognition apparatus according to claim 1, wherein said comparison means calculates each of a plurality of distances using a measure of the power of the input speech, the average vector of the input spoken word, and the matrix including variance and covariance information of the input speech. A speech recognition apparatus according to claim 1 or 2, further comprising means (3) for converting the input speech signal into data representing a time series of parameters of the input speech. An apparatus according to claim 3 wherein said comparison means includes: calculation means for calculating a plurality of Mahalanobis distances between data representing the time series of parameters of the input speech signal by said input means and a series of parameters representing the standard pattern stored in said memory means, shifted relative to the input speech time series; and retention means for retaining data representing the plurality of Mahalanobis distances together with the data representing the standard patterns used by said calculation means for the calculations. An apparatus according to any preceding claim, wherein said outputting means determines the word which is most similar to the input speech by detecting when the comparison result associated with that word falls below a predetermined threshold value. An apparatus according to claim 5, further comprising means for setting said predetermined threshold value. A speech recognition method comprising: (a) inputting a speech signal; (b) storing a plurality of standard patterns of words each composed of an average vector and a matrix including variance and covariance information; (c) comparing the input speech signal with said plurality of stored standard patterns by a dynamic programming (DP) matching process, using Mahalanobis distance as a measure, and outputting a comparison result for each standard pattern; and (d) using said comparison results to identify a standard word which is most similar to a word occurring in the input speech signal; characterised in that said matching process is performed without pre-judging specific segments of the input speech signal as candidates for matching, so as to process the input speech signal to generate each of said comparison results as a time-varying signal, and in that said identifying step (d) comprises detecting a characteristic variation in the corresponding time-varying comparison result signal so as to detect the occurrence of a word and determine which word is most similar to the input speech. A speech recognition method according to claim 7, wherein in said step (c) each of a plurality of distances is calculated using a measure of the power of the input speech, the average vector of the input spoken word, and the matrix including variance and covariance information of the input speech. A speech recognition method according to claim 7 or 8, further comprising converting the input speech signal into data representing a time series of parameters of the input speech. A method according to claim 9 wherein said comparing step (c) includes: calculating a plurality of Mahalanobis distances between data representing the time series of parameters of the input speech signal and a series of parameters representing the stored standard pattern, shifted relative to the input speech time series; and retaining data representing the plurality of Mahalanobis distances together with the data representing the standard patterns used for the calculations. A method according to any of claims 7 to 10 wherein said identifying step (d) comprises determining the word which is most similar to the input speech by detecting when the comparison result signal associated with that word falls below a predetermined threshold value. A method according to claim 11, further comprising setting said predetermined threshold value.

Inventors: KOSAKA TETSUO, SAKURAI ATSUSHI, TAMURA JUNICHI, KOSAKA, TETSUO, SAKURAI, ATSUSHI, TAMURA, JUNICHI
Applicants: CANON KK, CANON KABUSHIKI KAISHA
Application year: 1990
Main classification: G10L5
IPC codes: G10L15, G10L11