US20060229871A1 - State output probability calculating method and apparatus for mixture distribution HMM - Google Patents
State output probability calculating method and apparatus for mixture distribution HMM Download PDFInfo
- Publication number
- US20060229871A1 US20060229871A1 US11/398,620 US39862006A US2006229871A1 US 20060229871 A1 US20060229871 A1 US 20060229871A1 US 39862006 A US39862006 A US 39862006A US 2006229871 A1 US2006229871 A1 US 2006229871A1
- Authority
- US
- United States
- Prior art keywords
- output probability
- distribution
- calculating
- maximum
- output
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000009826 distribution Methods 0.000 title claims abstract description 183
- 239000000203 mixture Substances 0.000 title claims abstract description 64
- 238000000034 method Methods 0.000 title claims description 35
- 238000003909 pattern recognition Methods 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 abstract description 38
- 230000008859 change Effects 0.000 abstract description 15
- 230000006870 function Effects 0.000 description 18
- 238000007796 conventional method Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 6
- 230000007704 transition Effects 0.000 description 5
- 230000004913 activation Effects 0.000 description 4
- 230000015556 catabolic process Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000001186 cumulative effect Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012567 pattern recognition method Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/14—Speech classification or search using statistical models, e.g. Hidden Markov Models [HMMs]
- G10L15/142—Hidden Markov Models [HMMs]
- G10L15/144—Training of HMMs
Definitions
- the present invention relates to a state output probability calculating method and apparatus for a mixture distribution HMM (Hidden Markov Model).
- An HMM is suitable for expressing a time-series signal and is widely used in the fields of pattern recognition which processes a time variant signal as in speech recognition and moving image recognition.
- An HMM is generally formed from a plurality of states and expressed as an output probability which outputs a signal in each state and a transition probability between states.
- FIG. 2 shows an example of an HMM formed from three states.
- s is a state index; a(i,j), a transition probability of transition from the ith state to the jth state; and b(i,o), an output probability at which a signal o is output in the state i.
- HMMs and pattern recognition methods using HMMs have been introduced by many references, and a detailed description thereof will be omitted.
- speech recognition using an HMM is introduced in detail in Lawrence Rabiner and Biing-Hwang Juang, “Fundamentals of Speech Recognition”, Englewood Cliffs N J: PTR Prentice Hall (Signal Processing Series), 1993.
- Speech recognition often uses a continuous mixture distribution HMM representing the output probability distribution as the sum of a plurality of continuous distributions.
- the output probability distribution ( 301 ) of HMM states is represented by the sum of distribution 1 ( 302 ) and distribution 2 ( 303 ).
- FIG. 3 exemplifies a one-dimensional observation signal for the descriptive simplicity.
- pattern recognition such as speech recognition
- An output probability distribution is defined as a multidimensional continuous mixture distribution.
- a Gaussian distribution is often used because of simple calculation.
- the output probability of the mixture distribution is calculated as the weighted sum of output probabilities of a plurality of Gaussian distributions.
- the number of mixture components (number of mixtures) in FIG. 3 is two. In order to build a high performance model, the number of mixture must increase to precisely express the output probability distribution.
- K the number of dimensions of feature vector (observation signal) used
- the logarithmic value is used to prevent an underflow, and the computation load of the computer can advantageously be reduced because the term of power calculation in equation (1) is expanded.
- the constant part (C(m)) independent of the observation signal can be calculated in advance.
- Japanese Patent No. 2983364 discloses an example in which a technique as in Ney is applied to an arc-emission HMM(Mealy machine).
- the present invention has an object to further reduce the amount of output probability calculation of a mixture distribution HMM.
- a state output probability calculating method for a mixture distribution HMM executed by a pattern recognition apparatus which performs pattern recognition of an observation signal by using a mixture distribution HMM in which an event of a recognition target stored in a memory is modeled, is provided.
- the method comprises a first output probability calculating step of calculating weighted output probabilities of all distributions belonging to a state for a first observation signal, obtaining a maximum value of the weighted output probabilities and a maximum distribution which outputs the maximum value, and defining the obtained maximum value as an output probability of a mixture distribution; a maximum distribution storage step of storing, in the memory, information which specifies a maximum distribution obtained in the first output probability calculating step; and a second output probability calculating step of, when a predetermined condition is satisfied, calculating a weighted output probability of the maximum distribution stored in the memory in the maximum distribution storage step, instead of the first output probability calculating step, for a second observation signal observed after the first observation signal, and defining the calculated weighted output probability as the output probability of the mixture distribution.
- FIG. 1 is a functional block diagram of a speech recognition apparatus according to an embodiment of the present invention
- FIG. 2 is a view showing an example of a 3-state HMM
- FIG. 3 is a graph for explaining a technique for calculating the output probability of a conventional mixture distribution HMM
- FIG. 4 is a graph for explaining a technique for calculating the output probability of a mixture distribution HMM of the present invention
- FIG. 5 is a functional block diagram showing the detailed arrangement of a likelihood calculator according to the first and third embodiments of the present invention.
- FIG. 6 is a flowchart showing a sequence of calculating an output probability according to the first embodiment of the present invention.
- FIG. 7 is a functional block diagram showing the detailed arrangement of a likelihood calculator according to the second and fourth embodiments of the present invention.
- FIG. 8 is a flowchart showing a sequence of calculating an output probability according to the second embodiment of the present invention.
- FIG. 9 is a graph for explaining a technique for calculating the output probability of a mixture distribution HMM according to the third embodiment of the present invention.
- FIG. 10 is a flowchart showing a sequence for calculating an output probability according to the third embodiment of the present invention.
- FIG. 11 is a flowchart showing a sequence of calculating an output probability according to the fourth embodiment of the present invention.
- FIG. 12 is a flowchart showing another sequence of calculating an output probability according to the fourth embodiment of the present invention.
- FIG. 13 is a table showing the comparison results of calculation counts of logarithmic output probabilities B′(s,m,O(t)) of all distributions m of states s in the conventional method and the method of the present invention
- FIG. 14 is a table showing the experimental results of recognition rates and processing times in speech recognition to which the present invention is applied.
- FIG. 15 is a block diagram showing the schematic arrangement of a computer system which implements the speech recognition apparatus in FIG. 1 .
- FIG. 4 shows a simple example.
- an output probability b(O(t)) of the mixture distribution for an observation signal O(t) can be approximated by an output probability value b′(1,O(t)) of distribution 1 ( 301 ) at which the O(t) output probability is high.
- the output probability b(O(t+1)) of the mixture distribution for O(t+1) can also be approximated by the output probability value b′(1,O(t+1)) of distribution 1 .
- the present invention uses a high possibility that a distribution for maximizing the output probability of a mixture distribution (called maximum distribution hereinafter) does not change when the change of an observation signal is small.
- maximum distribution a distribution for maximizing the output probability of a mixture distribution
- a distribution serving as a maximum output probability is stored for each state.
- the output probability of the stored distribution is given as the output probability.
- this embodiment exemplifies a case in which the present invention is applied to a speech recognition apparatus
- the present invention is, of course, applicable to a pattern recognition apparatus (e.g., an image recognition apparatus) which requires the output probability calculation of a mixture distribution HMM.
- This embodiment also exemplifies the logarithmic value calculation of an output probability, but is also applicable to a calculation except for the logarithmic value.
- FIG. 1 is a functional block diagram of a speech recognition apparatus according to this embodiment.
- a voice activity detector 101 detects a speech portion from an input voice signal.
- LPC Linear Predictive Coding
- a likelihood calculator 103 refers to the feature vector O(t) and an acoustic model (HMM) 105 as the observation signal and calculates a logarithmic output probability B(s,O(t)) (1 ⁇ s ⁇ S) (where s is the state index) of a state s of the mixture distribution HMM, which is required in decoding process executed by a decoder 104 .
- the decoder 104 forms an HMM state sequence required for speech recognition in accordance with the acoustic model 105 and a language model 106 which records an acceptable grammar and a recognition dictionary listing recognition target words.
- the decoder 104 then refers to the HMM state transition probability and the logarithmic output probability of each state calculated by the likelihood calculator 103 and calculates a cumulative value of the output probabilities for each HMM state sequence using, e.g., a Viterbi algorithm.
- the decoder 104 determines the HMM state sequence with the maximum cumulative value as the recognition result.
- FIG. 5 is the detailed functional block diagram of the likelihood calculator 103 of this embodiment.
- the calculator 103 includes an output probability calculator A ( 503 ) and an output probability calculator B ( 504 ) which have different output probability calculating methods.
- the output probability calculator A calculates logarithmic output probabilities of all distributions of a mixture probability and defines the maximum value as the logarithmic output probability of the state. That is, the calculator A performs the calculation by equation (6).
- Information e.g., an index
- Time at which this calculation was performed is stored in a maximum distribution calculation time storage 502 .
- the other output probability calculator B calculates the logarithmic output probability of the distribution stored in the maximum distribution storage 505 and defines the storage value as the logarithmic output probability.
- a calculating method switching unit 501 performs condition determination for switching between the output probability calculating methods.
- the output probability calculator A is selected when an output probability is calculated for the first time upon activation of the speech recognition apparatus or when a predetermined period of time has elapsed from the time stored in the maximum distribution calculation time storage 502 .
- the output probability calculator B is selected when a predetermined period time has elapsed upon the latest calculation of the maximum distribution.
- the logarithmic output probabilities B′(s,m,O(t)) of all distributions m (1 ⁇ m ⁇ M(s) where M(s) is the number of mixtures of the states s) of the states s are calculated.
- the maximum value of the logarithmic output probabilities is given as the logarithmic output probability B(s,O(t)) of the state s (step S 103 ).
- an index m serving as information which specifies the distribution representing the maximum logarithmic output probability is given as m_max(s). This value is stored in the maximum distribution storage 505 , and time t′(s) at which the maximum distribution of the state s was calculated is stored in the maximum distribution calculation time storage 502 (step S 104 ).
- the logarithmic output probability of the state s is not calculated for the first time (NO in step S 101 ).
- the next processing is performed.
- a predetermined period of time (Th 1 ( s )) from the time t′(s) as the current time t at which the maximum distribution m_max(s) of the state s is calculated has not elapsed (NO in step S 102 )
- the maximum distribution of the state s becomes m_max(s).
- the logarithmic output probability B′(s,m_max(s),O(t)) of the distribution m_max(s) is given as the logarithmic output probability B(s,O(t)) of the state s (step S 105 ).
- step S 102 when the current time has elapsed from t′(s) by a predetermined period of time (Th 1 ( s )), the maximum distribution may greatly change from the time when the observation signal calculates the maximum distribution. A distribution in which the logarithmic output probability is maximum may be changed. For this reason, the logarithmic output probabilities of all distributions and the maximum distribution must be recalculated to update t′(s) and m_max(s) (step S 103 ).
- the condition determinations in steps S 101 and S 102 are executed by the calculating method switching unit 501 .
- the calculation of the maximum value of the logarithmic output probability in step S 103 and the updating of the maximum distribution calculation time in step S 104 are executed by the output probability calculator A ( 503 ).
- the calculation of the logarithmic output probability of the distribution stored in step S 105 is executed by the output probability calculator B ( 504 ).
- the distribution m_max(s) obtained in step S 103 is stored in the maximum distribution storage 505 as a distribution which gives the maximum output probability of the state s.
- the time t′(s) at which the maximum distribution of the state s updated in step S 104 is calculated is stored in the maximum distribution calculation time storage 502 .
- O(t) ⁇ o(t,1), . . . o(t,k), . . . o(t,K) ⁇ : the observation signal (K-dimensional vector) at time t
- the calculations of B′(s,m,O(t)) except for m_max(s) can be omitted for the period of Th 1 ( s ) ⁇ 1.
- the table in FIG. 14 shows the number of mixtures, techniques (conventional method/method of the present invention), recognition rates, and processing times from the left column. Numerical values in the parentheses represent the differences in recognition rates between the conventional method and the method of the present invention.
- the processing time of the present invention is normalized by the processing time of the conventional method.
- the experimental results indicate that the processing time of the present invention is made shorter than that of the conventional method while the recognition rate is kept unchanged.
- the experimental results also indicate that the processing time can further be reduced when the number of mixtures increases.
- the output probability of the stored maximum distribution is used as the output probability to omit output probability calculations of other distributions, thereby reducing the amount of calculation.
- distances between observation signals observed at different times are calculated. When a distance is less than a threshold value, the change of the corresponding observation signal is determined to be small. That is, when the distance between the current observation signal and the observation signal at time when the maximum distribution is obtained is less than the threshold value, the output probability of the stored maximum distribution is given as the output probability of the mixed distribution.
- FIG. 7 A likelihood calculator 103 of the second embodiment is shown in FIG. 7 .
- This arrangement is obtained by adding an observation signal distance calculator 506 to the arrangement of the first embodiment shown in FIG. 1 .
- FIG. 8 is a flowchart showing a sequence for calculating an output probability of the second embodiment. As shown in this flowchart, the condition determination for switching between output probability calculating methods is different from that of the first embodiment. More specifically, step S 102 in FIG. 6 is replaced with step S 106 .
- step S 106 The detailed sequence for calculating the output probability according to the second embodiment will be described with reference to FIGS. 7 and 8 for only processing (step S 106 ) different from that of the first embodiment.
- the observation signal distance calculator 506 calculates a distance D(O(t),O(t′(s))) between a current observation signal O(t) and an observation signal O(t′(s)) at time t′(s) when m_max(s) was calculated in accordance with equation (8). If D(O(t),O(t′(s))) is less than a threshold value (Th 2 ( s )) (No in step S 106 ), the flow advances to step S 105 .
- step S 105 assuming that the change of the observation signal is small and the maximum distribution of the state s does not change, a logarithmic output probability B′(s,m_max(s),O(t)) of a distribution m_max(s) is given as a logarithmic output probability B(s,O(t)) of the state s.
- step S 106 If D(O(t),O(t′(s))) is equal to or larger than the threshold value (Th 2 ( s )) in step S 106 (YES in step S 106 ), the flow advances to step S 103 .
- step S 103 a distribution in which the logarithmic output probability is maximum may be changed due to a large change of the observation signal. The logarithmic output probabilities of all the distributions and the maximum distribution are calculated again to update t′(s) and m_max(s).
- the distance D(O(t),O(t′)) between the two observation signals is calculated by the observation signal distance calculator 506 in accordance with the Euclidean distance represented by equation (8).
- the distance may be calculated using another distance measure such as a street distance or Mahalonobis distance.
- a maximum distribution output probability value calculated by an output probability calculator B ( 504 ) in step S 105 is used as a reference for switching between output probability calculating methods.
- the output probability of distribution 1 is always larger than the output probability of distribution 2 ( 303 ).
- This embodiment uses this fact to switch between the output probability calculating methods. More specifically, when calculating a logarithmic output probability of a given state, the output probability of the stored maximum distribution is calculated first. If the calculated output probability is equal to or larger than the threshold value, this output probability is given as that of the mixture distribution. However, if the calculated output probability is less than the threshold value, the logarithmic output probabilities of all the distributions, and the maximum value and a distribution corresponding to the maximum value are calculated.
- a likelihood calculator 103 of this embodiment is identical to the arrangement ( FIG. 5 ) of the first embodiment.
- a sequence for calculating output probabilities is given in the flowchart in FIG. 10 .
- the condition determination for switching between the output probability calculating methods according to the third embodiment is different from those of the first and second embodiments. More specifically, the condition determination in step S 107 is performed in place of step S 102 of the first embodiment and step S 106 of the second embodiment.
- the output probability of the stored maximum distribution is used for the condition determination in step S 107 . Note that step S 105 for calculating the output probability of the maximum distribution is executed before step S 107 .
- a logarithmic output probability B′(s,m_max(s),O(t)) of a stored maximum distribution m_max(s) is given as a logarithmic output probability B(s,O(t)) of a state s (step S 105 ).
- step S 107 B(s,O(t)) obtained in step S 105 is compared with the threshold value Th 3 ( s ). If B(s,O(t)) exceeds the threshold value, B(s,O(t)) obtained in step S 105 is given as the logarithmic output probability of the state s. However, if B(s,O(t)) is less than the threshold value Th 3 ( s ), the logarithmic output probabilities of all the distributions and the maximum distribution are calculated to update the maximum distribution m_max(s) and the time t′(s) when the logarithmic output probability B(s,O(t)) and maximum distribution were calculated (step S 103 ).
- the threshold value Th 3 ( s ) may be a fixed value determined in advance, or a difference or ratio from a past logarithmic output probability.
- step S 107 when the difference between B(s,O(t)) obtained in step S 105 and the logarithmic output probability B(s,O(t′)) at the time t′ is equal to or less than ⁇ (B(s,O(t)) ⁇ B(s,O(t′)) ⁇ ), processing in step S 103 is performed.
- a ratio ⁇ to the logarithmic output probability at the time t′ serves as the threshold value.
- the ratio of B(s,O(t)) obtained in step S 105 to the logarithmic output probability B(s,O(t′)) at the time t′ is equal to or less than a (B(s,O(t))/B(s,O(t′)) ⁇ ), processing in step S 103 is performed.
- the target time t′ used for logarithmic output probability comparison may be t′(s) at which the maximum distribution was obtained or simply time t ⁇ 1 immediately preceding the current time.
- condition determinations (steps S 102 , S 106 , and S 107 ) to determine whether the maximum distributions are calculated, which are used in the first to third embodiments can be combined.
- the fourth embodiment will exemplify a combination of the first and second embodiments.
- FIG. 11 is a flowchart showing a sequence for calculating an output probability according to the fourth embodiment.
- processing in step S 105 i.e., the step of determining whether an output probability calculator B ( 504 ) performs a calculation is performed by two determination methods, i.e., step S 102 of the first embodiment and step S 106 of the second embodiment.
- step S 105 the step of determining whether an output probability calculator B ( 504 ) performs a calculation
- step S 102 of the first embodiment i.e., step S 102 of the first embodiment and step S 106 of the second embodiment.
- Degradation of recognition accuracy can be expected to be less than in the first and second embodiments which perform step S 105 under the single determination condition. To the contrary, the calculation amount reduction effect of the fourth embodiment is less than those of the first and second embodiments. When the recognition accuracy greatly degrades in the first and second embodiments, the fourth embodiment is performed.
- step S 106 is performed after step S 102 .
- the execution order may be reversed. That is, the determination in step S 102 is performed after step S 106 .
- FIG. 12 is a flowchart of a sequence for calculating an output probability when all the first to third embodiments are combined.
- the arrangement of the likelihood calculator 103 is the same as in the second embodiment shown in FIG. 7 .
- the threshold (Th 1 ( s ), Th 2 ( s ) or Th 3 ( s )) used in the determination of step S 102 , S 106 , or S 107 is set for each sate.
- the present invention is not limited to this.
- a single threshold value may be used for all the states or for each distribution of the states.
- a threshold value may be set for each phoneme to which each HMM state belongs or a phoneme class such as a vowel or consonant.
- the functional arrangement of the speech recognition apparatus shown in FIG. 1 can be implemented by dedicated hardware logic, but can also be implemented by a general-purpose computer system.
- FIG. 15 The schematic arrangement of a computer system which implements the speech recognition apparatus in FIG. 1 is shown in FIG. 15 .
- the illustrated computer system includes the following components, that is, a CPU 1 which controls the overall system, a ROM 2 storing a boot program and permanent data, and a RAM 3 which functions as a main memory.
- a HDD 4 is hard disk device serving as a storage means.
- the HDD 4 stores an OS 10 , a speech recognition program 11 , and an acoustic model 105 and language model shown in FIG. 1 .
- the speech recognition program 11 includes program modules which implement the functions of the voice activity detector 101 , acoustic processor 102 , likelihood calculator 103 , and decoder 104 .
- the HDD 4 also serves as the maximum distribution calculation time storage 502 and maximum distribution storage 505 shown in FIG. 5 or 7 .
- a VRAM 5 is a memory in which image data to be displayed is to be expanded (rasterized). When the image data and the like are expanded in the VRAM 5 , the image data is displayed on a CRT 6 serving as one of the screen display devices.
- a keyboard 7 and a mouse 8 serve as input devices and are connected respectively, to a keyboard controller 7 a and mouse controller 8 b which transmit interrupt signals to the CPU 1 .
- the speech recognition program 11 is activated in accordance with a specific instruction event from, e.g., the keyboard 8 or mouse 8 .
- the speech recognition program 11 is loaded into the RAM 3 and executed by the CPU 11 .
- the computer system thus functions as the speech recognition apparatus.
- the present invention can be applied to an apparatus comprising a single device or to system constituted by a plurality of devices.
- the invention can be implemented by supplying a software program, which implements the functions of the foregoing embodiments, directly or indirectly to a system or apparatus, reading the supplied program code with a computer of the system or apparatus, and then executing the program code.
- a software program which implements the functions of the foregoing embodiments
- reading the supplied program code with a computer of the system or apparatus, and then executing the program code.
- the mode of implementation need not rely upon a program.
- the program code installed in the computer also implements the present invention.
- the claims of the present invention also cover a computer program for the purpose of implementing the functions of the present invention.
- the program may be executed in any form, such as an object code, a program executed by an interpreter, or scrip data supplied to an operating system.
- Example of storage media that can be used for supplying the program are a floppy disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a CD-R, a CD-RW, a magnetic tape, a non-volatile type memory card, a ROM, and a DVD (DVD-ROM and a DVD-R).
- a client computer can be connected to a website on the Internet using a browser of the client computer, and the computer program of the present invention or an automatically-installable compressed file of the program can be downloaded to a recording medium such as a hard disk.
- the program of the present invention can be supplied by dividing the program code constituting the program into a plurality of files and downloading the files from different websites.
- a WWW World Wide Web
- a storage medium such as a CD-ROM
- an operating system or the like running on the computer may perform all or a part of the actual processing so that the functions of the foregoing embodiments can be implemented by this processing.
- a CPU or the like mounted on the function expansion board or function expansion unit performs all or a part of the actual processing so that the functions of the foregoing embodiments can be implemented by this processing.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
Description
- The present invention relates to a state output probability calculating method and apparatus for a mixture distribution HMM (Hidden Markov Model).
- An HMM is suitable for expressing a time-series signal and is widely used in the fields of pattern recognition which processes a time variant signal as in speech recognition and moving image recognition.
- An HMM is generally formed from a plurality of states and expressed as an output probability which outputs a signal in each state and a transition probability between states.
FIG. 2 shows an example of an HMM formed from three states. Referring toFIG. 2 , s is a state index; a(i,j), a transition probability of transition from the ith state to the jth state; and b(i,o), an output probability at which a signal o is output in the state i. In pattern recognition, recognition target events are modeled by a plurality of HMMs. When a time-series signal o(t) (t=1 to T) is observed, a output probability of each event is obtained from the transition and output probabilities of the corresponding HMMs. An event having the highest probability is obtained as the recognition result. - The details of HMMs and pattern recognition methods using HMMs have been introduced by many references, and a detailed description thereof will be omitted. For example, speech recognition using an HMM is introduced in detail in Lawrence Rabiner and Biing-Hwang Juang, “Fundamentals of Speech Recognition”, Englewood Cliffs N J: PTR Prentice Hall (Signal Processing Series), 1993.
- Speech recognition often uses a continuous mixture distribution HMM representing the output probability distribution as the sum of a plurality of continuous distributions. An example is shown in
FIG. 3 . The output probability distribution (301) of HMM states is represented by the sum of distribution 1 (302) and distribution 2 (303). An output probability value b(O) at which a signal O is observed is obtained from b(O)=b′(1,O)+b′(2,O) using the output probability b′(1,O) obtained from distribution 1 (302) and the output probability b′(2,O) obtained from distribution 2 (303). -
FIG. 3 exemplifies a one-dimensional observation signal for the descriptive simplicity. In pattern recognition such as speech recognition, a multi-dimensional feature vector is generally used as an observation signal. An output probability distribution is defined as a multidimensional continuous mixture distribution. A Gaussian distribution is often used because of simple calculation. The output probability of the mixture distribution is calculated as the weighted sum of output probabilities of a plurality of Gaussian distributions. - The number of mixture components (number of mixtures) in
FIG. 3 is two. In order to build a high performance model, the number of mixture must increase to precisely express the output probability distribution. - The actual output probability of a mixture distribution using, e.g., an diagonal Gaussian distribution is calculated by:
where - K: the number of dimensions of feature vector (observation signal) used
- O={o(1), o(2), . . . , o(K)}: observation signal (K-dimensional vector)
- b(O): the output probability of the mixture distribution
- b(m,O): the output probability of the distribution m
- M: the number of mixtures
- w(m): the weight of the distribution m
- σ2(m,k): the k-dimensional variance of the distribution m
- μ(m,k): the k-dimensional mean of the distribution m
- When an output probability is actually calculated on a computer, the logarithmic value B′(m,O) of the weighted output probability is generally calculated by:
- The logarithmic value is used to prevent an underflow, and the computation load of the computer can advantageously be reduced because the term of power calculation in equation (1) is expanded. The constant part (C(m)) independent of the observation signal can be calculated in advance. The logarithmic value B(O) of the output probability of the mixture distribution as the final result can be given by:
- In equation (4), after the weighted logarithmic output probability value of each distribution is obtained, the power calculation and the natural logarithmic operation are still necessary to calculate the output probability of the mixture distribution. To simplify the above calculations, the approximation methods of the output probability calculation are disclosed in H. Ney et al., “Phoneme modeling using continuous mixture densities”, Proc. ICASSP88, pp. 437-440, 1988 (to be referred to as Ney hereinafter) and Japanese Patent No. 2983364.
- In Ney, the output probability of the mixture distribution is approximated using the maximum output probability of the output probabilities of the respective distributions instead of calculating the sum of the output probabilities of the respective distributions, thereby reducing the calculation amount. That is, in place of equation (2), the output probability of the mixture distribution is calculated by:
- Japanese Patent No. 2983364 discloses an example in which a technique as in Ney is applied to an arc-emission HMM(Mealy machine).
- When the approximation of equation (5) is used for equation (4), the logarithmic output probability of the mixture distribution can be simplified as:
- The above conventional technique is excellent because the computation cost is reduced by the approximation while degradation in recognition accuracy by the approximation errors is little. However, output probability calculation of the mixture distribution HMM still requires a large amount of calculation cost.
- In view of the above problems in the conventional art, the present invention has an object to further reduce the amount of output probability calculation of a mixture distribution HMM.
- In one aspect of the present invention, a state output probability calculating method for a mixture distribution HMM, executed by a pattern recognition apparatus which performs pattern recognition of an observation signal by using a mixture distribution HMM in which an event of a recognition target stored in a memory is modeled, is provided. The method comprises a first output probability calculating step of calculating weighted output probabilities of all distributions belonging to a state for a first observation signal, obtaining a maximum value of the weighted output probabilities and a maximum distribution which outputs the maximum value, and defining the obtained maximum value as an output probability of a mixture distribution; a maximum distribution storage step of storing, in the memory, information which specifies a maximum distribution obtained in the first output probability calculating step; and a second output probability calculating step of, when a predetermined condition is satisfied, calculating a weighted output probability of the maximum distribution stored in the memory in the maximum distribution storage step, instead of the first output probability calculating step, for a second observation signal observed after the first observation signal, and defining the calculated weighted output probability as the output probability of the mixture distribution.
- The above and other objects and features of the present invention will appear more fully hereinafter from a consideration of the following description taken in connection with the accompanying drawing wherein one example is illustrated by way of example.
- The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate embodiments of the invention, and together with the description, serve to explain the principles of the invention.
-
FIG. 1 is a functional block diagram of a speech recognition apparatus according to an embodiment of the present invention; -
FIG. 2 is a view showing an example of a 3-state HMM; -
FIG. 3 is a graph for explaining a technique for calculating the output probability of a conventional mixture distribution HMM; -
FIG. 4 is a graph for explaining a technique for calculating the output probability of a mixture distribution HMM of the present invention; -
FIG. 5 is a functional block diagram showing the detailed arrangement of a likelihood calculator according to the first and third embodiments of the present invention; -
FIG. 6 is a flowchart showing a sequence of calculating an output probability according to the first embodiment of the present invention; -
FIG. 7 is a functional block diagram showing the detailed arrangement of a likelihood calculator according to the second and fourth embodiments of the present invention; -
FIG. 8 is a flowchart showing a sequence of calculating an output probability according to the second embodiment of the present invention; -
FIG. 9 is a graph for explaining a technique for calculating the output probability of a mixture distribution HMM according to the third embodiment of the present invention; -
FIG. 10 is a flowchart showing a sequence for calculating an output probability according to the third embodiment of the present invention; -
FIG. 11 is a flowchart showing a sequence of calculating an output probability according to the fourth embodiment of the present invention; -
FIG. 12 is a flowchart showing another sequence of calculating an output probability according to the fourth embodiment of the present invention; -
FIG. 13 is a table showing the comparison results of calculation counts of logarithmic output probabilities B′(s,m,O(t)) of all distributions m of states s in the conventional method and the method of the present invention; -
FIG. 14 is a table showing the experimental results of recognition rates and processing times in speech recognition to which the present invention is applied; and -
FIG. 15 is a block diagram showing the schematic arrangement of a computer system which implements the speech recognition apparatus inFIG. 1 . - Preferred embodiments of the present invention will be described in detail in accordance with the accompanying drawings. The present invention is not limited by the disclosure of the embodiments and all combinations of the features described in the embodiments are not always indispensable to solving means of the present invention.
- When an observation signal changes moderately as a function of time, a distribution serving as a maximum output probability for a signal O(t) observed at given time t can be a maximum output probability at a high possibility even in an observation signal O(t+1) observed at the next
time t+ 1. That is, when the change of the observation signal is small, the distribution serving as the maximum output probability does not change.FIG. 4 shows a simple example. When an approximation operation by equation (5) is applied toFIG. 4 , an output probability b(O(t)) of the mixture distribution for an observation signal O(t) can be approximated by an output probability value b′(1,O(t)) of distribution 1 (301) at which the O(t) output probability is high. When an observation signal O(t+1) at the next time t+1 has rarely changed with respect to O(t), as shown inFIG. 4 , the output probability b(O(t+1)) of the mixture distribution for O(t+1) can also be approximated by the output probability value b′(1,O(t+1)) ofdistribution 1. - The present invention uses a high possibility that a distribution for maximizing the output probability of a mixture distribution (called maximum distribution hereinafter) does not change when the change of an observation signal is small. For example, when calculating the output probability of each state of the mixture distribution HMM, a distribution serving as a maximum output probability is stored for each state. When the change of an observation signal is determined to be small, the output probability of the stored distribution is given as the output probability. With this arrangement, the calculations for the output probabilities of other distributions in calculating a target output probability of a mixture distribution can be omitted, thereby reducing the calculation amount required for output probability.
- In this embodiment, assume that the change of an observation signal as a function of time is small within a short period of time, and that the same distribution becomes a maximum output probability for the adjacent times. A method of calculating a distribution which maximizes an output probability, and calculating, for a predetermined period of time, only the output probability of this distribution will be described below.
- Although this embodiment exemplifies a case in which the present invention is applied to a speech recognition apparatus, the present invention is, of course, applicable to a pattern recognition apparatus (e.g., an image recognition apparatus) which requires the output probability calculation of a mixture distribution HMM.
- This embodiment also exemplifies the logarithmic value calculation of an output probability, but is also applicable to a calculation except for the logarithmic value.
-
FIG. 1 is a functional block diagram of a speech recognition apparatus according to this embodiment. Avoice activity detector 101 detects a speech portion from an input voice signal. Anacoustic processor 102 calculates a K-dimensional feature vector O(t)={o(t,1), . . . , o(t,k), . . . , o(t,K)} (1≦t≦T) such as an LPC (Linear Predictive Coding) cepstrum or melcepstrum coefficient from the voice signal of the speech portion detected by thevoice activity detector 101. Alikelihood calculator 103 refers to the feature vector O(t) and an acoustic model (HMM) 105 as the observation signal and calculates a logarithmic output probability B(s,O(t)) (1≦s≦S) (where s is the state index) of a state s of the mixture distribution HMM, which is required in decoding process executed by adecoder 104. Thedecoder 104 forms an HMM state sequence required for speech recognition in accordance with theacoustic model 105 and alanguage model 106 which records an acceptable grammar and a recognition dictionary listing recognition target words. Thedecoder 104 then refers to the HMM state transition probability and the logarithmic output probability of each state calculated by thelikelihood calculator 103 and calculates a cumulative value of the output probabilities for each HMM state sequence using, e.g., a Viterbi algorithm. Thedecoder 104 determines the HMM state sequence with the maximum cumulative value as the recognition result. - A case will be explained in which an output probability calculating technique of a mixture distribution HMM according to the present invention is applied to the speech recognition apparatus with the above arrangement.
-
FIG. 5 is the detailed functional block diagram of thelikelihood calculator 103 of this embodiment. As shown inFIG. 5 , thecalculator 103 includes an output probability calculator A (503) and an output probability calculator B (504) which have different output probability calculating methods. The output probability calculator A calculates logarithmic output probabilities of all distributions of a mixture probability and defines the maximum value as the logarithmic output probability of the state. That is, the calculator A performs the calculation by equation (6). Information (e.g., an index) which specifies the maximum distribution is then stored in amaximum distribution storage 505. Time at which this calculation was performed is stored in a maximum distributioncalculation time storage 502. The other output probability calculator B calculates the logarithmic output probability of the distribution stored in themaximum distribution storage 505 and defines the storage value as the logarithmic output probability. - A calculating
method switching unit 501 performs condition determination for switching between the output probability calculating methods. The output probability calculator A is selected when an output probability is calculated for the first time upon activation of the speech recognition apparatus or when a predetermined period of time has elapsed from the time stored in the maximum distributioncalculation time storage 502. The output probability calculator B is selected when a predetermined period time has elapsed upon the latest calculation of the maximum distribution. - The sequence of calculating a logarithmic output probability B(s,O(t)) of a state s for a signal vector O(t) observed at time t will be described with reference to the flowchart in
FIG. 6 . - When a logarithmic output probability in a state s is calculated for the first time upon activation of the speech recognition apparatus (YES in step S101), the logarithmic output probabilities B′(s,m,O(t)) of all distributions m (1≦m≦M(s) where M(s) is the number of mixtures of the states s) of the states s are calculated. The maximum value of the logarithmic output probabilities is given as the logarithmic output probability B(s,O(t)) of the state s (step S103). At this time, an index m serving as information which specifies the distribution representing the maximum logarithmic output probability is given as m_max(s). This value is stored in the
maximum distribution storage 505, and time t′(s) at which the maximum distribution of the state s was calculated is stored in the maximum distribution calculation time storage 502 (step S104). - When the logarithmic output probability of the state s is not calculated for the first time (NO in step S101), the next processing is performed. When a predetermined period of time (Th1(s)) from the time t′(s) as the current time t at which the maximum distribution m_max(s) of the state s is calculated has not elapsed (NO in step S102), it is assumed that the maximum distribution of the state s becomes m_max(s). The logarithmic output probability B′(s,m_max(s),O(t)) of the distribution m_max(s) is given as the logarithmic output probability B(s,O(t)) of the state s (step S105).
- In step S102, when the current time has elapsed from t′(s) by a predetermined period of time (Th1(s)), the maximum distribution may greatly change from the time when the observation signal calculates the maximum distribution. A distribution in which the logarithmic output probability is maximum may be changed. For this reason, the logarithmic output probabilities of all distributions and the maximum distribution must be recalculated to update t′(s) and m_max(s) (step S103).
- With the above processing, the condition determinations in steps S101 and S102 are executed by the calculating
method switching unit 501. The calculation of the maximum value of the logarithmic output probability in step S103 and the updating of the maximum distribution calculation time in step S104 are executed by the output probability calculator A (503). The calculation of the logarithmic output probability of the distribution stored in step S105 is executed by the output probability calculator B (504). The distribution m_max(s) obtained in step S103 is stored in themaximum distribution storage 505 as a distribution which gives the maximum output probability of the state s. The time t′(s) at which the maximum distribution of the state s updated in step S104 is calculated is stored in the maximum distributioncalculation time storage 502. - The calculations of B′(s,m,O(t)) in steps S103 and S105 are identical because the state s and the time t are added to equation (3). Equation (3) is rewritten by adding these suffixes:
where - O(t)={o(t,1), . . . o(t,k), . . . o(t,K)}: the observation signal (K-dimensional vector) at time t
- w(s,m): the weight for the distribution m of the state s
- σ2(s,m,k): the k-dimensional variance of the distribution m of the state s
- μ(s,m,k): the k-dimensional average of the distribution m of the state s
- When the distribution m_max(s) serving as the maximum output probability for the mixture distribution of a given state s by calculating the output probabilities described above is once calculated, the calculations of B′(s,m,O(t)) except for m_max(s) can be omitted for the period of Th1(s)−1. For example, the calculations of B′(s,m,O(t)) can be omitted (M−1) times during the (N−1) frames when the number of mixtures M(s) of the state s is given as M and Th1(s)=N frames given when the unit of Th1(s) is defined as a frame. Therefore, the (M−1)×(N−1) calculations of B′(s,m,O(t)) can be omitted as a whole. The comparison results of the B′(s,m,O(t)) calculation counts between the conventional method and the method of the present invention are shown in
FIG. 13 . - For the reference, the results of speech recognition experiments conducted by the present inventors to check the effects of the present invention will be described below.
- 540 utterances from 14 men and females were examined for the recognition rates upon speech recognition using the mixture distribution HMM using 800 states and for the speech recognition processing times when the present invention was applied and not applied. The number of recognition target words is 100. To compare the differences in effects by the different number of mixtures, two types of HMMs having 2 mixtures and 8 mixtures were used. Th1(s) in this embodiment was constantly 2 regardless of the HMM states. The experimental results are shown in
FIG. 14 . - The table in
FIG. 14 shows the number of mixtures, techniques (conventional method/method of the present invention), recognition rates, and processing times from the left column. Numerical values in the parentheses represent the differences in recognition rates between the conventional method and the method of the present invention. The processing time of the present invention is normalized by the processing time of the conventional method. - The experimental results indicate that the processing time of the present invention is made shorter than that of the conventional method while the recognition rate is kept unchanged. The experimental results also indicate that the processing time can further be reduced when the number of mixtures increases.
- According to the present invention, when a distribution (maximum distribution) in which an output probability is maximum is to be obtained, its distribution is stored. When the change of an observation signal in calculating subsequent output probabilities is small, the output probability of the stored maximum distribution is used as the output probability to omit output probability calculations of other distributions, thereby reducing the amount of calculation. In the second embodiment, distances between observation signals observed at different times are calculated. When a distance is less than a threshold value, the change of the corresponding observation signal is determined to be small. That is, when the distance between the current observation signal and the observation signal at time when the maximum distribution is obtained is less than the threshold value, the output probability of the stored maximum distribution is given as the output probability of the mixed distribution.
- A
likelihood calculator 103 of the second embodiment is shown inFIG. 7 . This arrangement is obtained by adding an observationsignal distance calculator 506 to the arrangement of the first embodiment shown inFIG. 1 .FIG. 8 is a flowchart showing a sequence for calculating an output probability of the second embodiment. As shown in this flowchart, the condition determination for switching between output probability calculating methods is different from that of the first embodiment. More specifically, step S102 inFIG. 6 is replaced with step S106. - The detailed sequence for calculating the output probability according to the second embodiment will be described with reference to
FIGS. 7 and 8 for only processing (step S106) different from that of the first embodiment. - The observation
signal distance calculator 506 added to the arrangement of the first embodiment calculates a distance D(O(t),O(t′)) between different observation signals O(t) and O(t′) by: - In the flowchart of
FIG. 8 , when a logarithmic output probability of a state S is not calculated for the first time upon activation of the speech recognition apparatus (NO in step S101), the observationsignal distance calculator 506 calculates a distance D(O(t),O(t′(s))) between a current observation signal O(t) and an observation signal O(t′(s)) at time t′(s) when m_max(s) was calculated in accordance with equation (8). If D(O(t),O(t′(s))) is less than a threshold value (Th2(s)) (No in step S106), the flow advances to step S105. In step S105, assuming that the change of the observation signal is small and the maximum distribution of the state s does not change, a logarithmic output probability B′(s,m_max(s),O(t)) of a distribution m_max(s) is given as a logarithmic output probability B(s,O(t)) of the state s. - If D(O(t),O(t′(s))) is equal to or larger than the threshold value (Th2(s)) in step S106 (YES in step S106), the flow advances to step S103. In step S103, a distribution in which the logarithmic output probability is maximum may be changed due to a large change of the observation signal. The logarithmic output probabilities of all the distributions and the maximum distribution are calculated again to update t′(s) and m_max(s).
- In the above description, the distance D(O(t),O(t′)) between the two observation signals is calculated by the observation
signal distance calculator 506 in accordance with the Euclidean distance represented by equation (8). However, the present invention is not limited to this. The distance may be calculated using another distance measure such as a street distance or Mahalonobis distance. - In this embodiment, a maximum distribution output probability value calculated by an output probability calculator B (504) in step S105 is used as a reference for switching between output probability calculating methods.
- In a mixture distribution, when the output probability of a given distribution is equal to or larger than a threshold value, it is determined that no distribution whose output probability is larger than that of the given distribution is present. A simple example will be explained with reference to
FIG. 9 . - Referring to
FIG. 9 , in asegment 305 when the output probability of distribution 1 (302) is equal to or larger than x, the output probability ofdistribution 1 is always larger than the output probability of distribution 2 (303). This embodiment uses this fact to switch between the output probability calculating methods. More specifically, when calculating a logarithmic output probability of a given state, the output probability of the stored maximum distribution is calculated first. If the calculated output probability is equal to or larger than the threshold value, this output probability is given as that of the mixture distribution. However, if the calculated output probability is less than the threshold value, the logarithmic output probabilities of all the distributions, and the maximum value and a distribution corresponding to the maximum value are calculated. - A
likelihood calculator 103 of this embodiment is identical to the arrangement (FIG. 5 ) of the first embodiment. A sequence for calculating output probabilities is given in the flowchart inFIG. 10 . Referring toFIG. 10 , the condition determination for switching between the output probability calculating methods according to the third embodiment is different from those of the first and second embodiments. More specifically, the condition determination in step S107 is performed in place of step S102 of the first embodiment and step S106 of the second embodiment. In the third embodiment, the output probability of the stored maximum distribution is used for the condition determination in step S107. Note that step S105 for calculating the output probability of the maximum distribution is executed before step S107. - With reference to
FIGS. 5 and 10 , the detailed sequence for calculating the output probability according to the third embodiment will be described for only differences from the first and second embodiments. - When the logarithmic output probability of the state s is not calculated for the first time upon activation of the speech recognition apparatus (NO in step S101), a logarithmic output probability B′(s,m_max(s),O(t)) of a stored maximum distribution m_max(s) is given as a logarithmic output probability B(s,O(t)) of a state s (step S105).
- In step S107, B(s,O(t)) obtained in step S105 is compared with the threshold value Th3(s). If B(s,O(t)) exceeds the threshold value, B(s,O(t)) obtained in step S105 is given as the logarithmic output probability of the state s. However, if B(s,O(t)) is less than the threshold value Th3(s), the logarithmic output probabilities of all the distributions and the maximum distribution are calculated to update the maximum distribution m_max(s) and the time t′(s) when the logarithmic output probability B(s,O(t)) and maximum distribution were calculated (step S103).
- In this embodiment, the threshold value Th3(s) may be a fixed value determined in advance, or a difference or ratio from a past logarithmic output probability. In this case, Th3(s) is defined by the following equation to allow various settings of the threshold value:
Th3(s)=α·B(s,O(t′))+β(0<t′<t) (9) - In equation (9), if α=1.0, then the difference β from the logarithmic output probability at time t′ can serve as the threshold value. In this case, in step S107, when the difference between B(s,O(t)) obtained in step S105 and the logarithmic output probability B(s,O(t′)) at the time t′ is equal to or less than β (B(s,O(t))−B(s,O(t′))≦β), processing in step S103 is performed.
- If β=0.0, then a ratio α to the logarithmic output probability at the time t′ serves as the threshold value. In this case, the ratio of B(s,O(t)) obtained in step S105 to the logarithmic output probability B(s,O(t′)) at the time t′ is equal to or less than a (B(s,O(t))/B(s,O(t′))≦α), processing in step S103 is performed.
- The target time t′ used for logarithmic output probability comparison may be t′(s) at which the maximum distribution was obtained or simply time t−1 immediately preceding the current time.
- The condition determinations (steps S102, S106, and S107) to determine whether the maximum distributions are calculated, which are used in the first to third embodiments can be combined. The fourth embodiment will exemplify a combination of the first and second embodiments.
- The detailed arrangement of a
likelihood calculator 103 of the fourth embodiment is the same as the functional block diagram of the second embodiment shown inFIG. 7 .FIG. 11 is a flowchart showing a sequence for calculating an output probability according to the fourth embodiment. In the fourth embodiment, processing in step S105, i.e., the step of determining whether an output probability calculator B (504) performs a calculation is performed by two determination methods, i.e., step S102 of the first embodiment and step S106 of the second embodiment. With this arrangement, the error of the output probability calculation can be reduced when m_max(s) is wrong in step S105, that is, the distribution which maximizes the output probability has changed. Degradation of recognition accuracy can be expected to be less than in the first and second embodiments which perform step S105 under the single determination condition. To the contrary, the calculation amount reduction effect of the fourth embodiment is less than those of the first and second embodiments. When the recognition accuracy greatly degrades in the first and second embodiments, the fourth embodiment is performed. - In the fourth embodiment, the determination in step S106 is performed after step S102. The execution order may be reversed. That is, the determination in step S102 is performed after step S106.
- Similarly, other combinations or a combination of all embodiments can be practiced. As an example,
FIG. 12 is a flowchart of a sequence for calculating an output probability when all the first to third embodiments are combined. In this case, the arrangement of thelikelihood calculator 103 is the same as in the second embodiment shown inFIG. 7 . - In the first to fourth embodiments, the threshold (Th1(s), Th2(s) or Th3(s)) used in the determination of step S102, S106, or S107 is set for each sate. However, the present invention is not limited to this. A single threshold value may be used for all the states or for each distribution of the states. Alternatively, a threshold value may be set for each phoneme to which each HMM state belongs or a phoneme class such as a vowel or consonant.
- The functional arrangement of the speech recognition apparatus shown in
FIG. 1 can be implemented by dedicated hardware logic, but can also be implemented by a general-purpose computer system. - The schematic arrangement of a computer system which implements the speech recognition apparatus in
FIG. 1 is shown inFIG. 15 . The illustrated computer system includes the following components, that is, aCPU 1 which controls the overall system, aROM 2 storing a boot program and permanent data, and aRAM 3 which functions as a main memory. - A
HDD 4 is hard disk device serving as a storage means. TheHDD 4 stores anOS 10, aspeech recognition program 11, and anacoustic model 105 and language model shown inFIG. 1 . Thespeech recognition program 11 includes program modules which implement the functions of thevoice activity detector 101,acoustic processor 102,likelihood calculator 103, anddecoder 104. TheHDD 4 also serves as the maximum distributioncalculation time storage 502 andmaximum distribution storage 505 shown inFIG. 5 or 7. - A
VRAM 5 is a memory in which image data to be displayed is to be expanded (rasterized). When the image data and the like are expanded in theVRAM 5, the image data is displayed on aCRT 6 serving as one of the screen display devices. Akeyboard 7 and amouse 8 serve as input devices and are connected respectively, to akeyboard controller 7 a andmouse controller 8 b which transmit interrupt signals to theCPU 1. - With the above arrangement, the
speech recognition program 11 is activated in accordance with a specific instruction event from, e.g., thekeyboard 8 ormouse 8. In this case, thespeech recognition program 11 is loaded into theRAM 3 and executed by theCPU 11. The computer system thus functions as the speech recognition apparatus. - Note that the present invention can be applied to an apparatus comprising a single device or to system constituted by a plurality of devices.
- Furthermore, the invention can be implemented by supplying a software program, which implements the functions of the foregoing embodiments, directly or indirectly to a system or apparatus, reading the supplied program code with a computer of the system or apparatus, and then executing the program code. In this case, so long as the system or apparatus has the functions of the program, the mode of implementation need not rely upon a program.
- Accordingly, since the functions of the present invention are implemented by computer, the program code installed in the computer also implements the present invention. In other words, the claims of the present invention also cover a computer program for the purpose of implementing the functions of the present invention.
- In this case, so long as the system or apparatus has the functions of the program, the program may be executed in any form, such as an object code, a program executed by an interpreter, or scrip data supplied to an operating system.
- Example of storage media that can be used for supplying the program are a floppy disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a CD-R, a CD-RW, a magnetic tape, a non-volatile type memory card, a ROM, and a DVD (DVD-ROM and a DVD-R).
- As for the method of supplying the program, a client computer can be connected to a website on the Internet using a browser of the client computer, and the computer program of the present invention or an automatically-installable compressed file of the program can be downloaded to a recording medium such as a hard disk. Further, the program of the present invention can be supplied by dividing the program code constituting the program into a plurality of files and downloading the files from different websites. In other words, a WWW (World Wide Web) server that downloads, to multiple users, the program files that implement the functions of the present invention by computer is also covered by the claims of the present invention.
- It is also possible to encrypt and store the program of the present invention on a storage medium such as a CD-ROM, distribute the storage medium to users, allow users who meet certain requirements to download decryption key information from a website via the Internet, and allow these users to decrypt the encrypted program by using the key information, whereby the program is installed in the user computer.
- Besides the cases where the aforementioned functions according to the embodiments are implemented by executing the read program by computer, an operating system or the like running on the computer may perform all or a part of the actual processing so that the functions of the foregoing embodiments can be implemented by this processing.
- Furthermore, after the program read from the storage medium is written to a function expansion board inserted into the computer or to a memory provided in a function expansion unit connected to the computer, a CPU or the like mounted on the function expansion board or function expansion unit performs all or a part of the actual processing so that the functions of the foregoing embodiments can be implemented by this processing.
- As many apparently widely different embodiments of the present invention can be made without departing from the spirit and scope thereof, it is to be understood that the invention is not limited to the specific embodiments thereof except as defined in the appended claims.
- This application claims the benefit of Japanese Patent Application No. 2005-113954 filed on Apr. 11, 2005, which is hereby incorporated by reference herein in its entirety.
Claims (11)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005113954A JP4298672B2 (en) | 2005-04-11 | 2005-04-11 | Method and apparatus for calculating output probability of state of mixed distribution HMM |
JP2005-113954 | 2005-04-11 |
Publications (2)
Publication Number | Publication Date |
---|---|
US20060229871A1 true US20060229871A1 (en) | 2006-10-12 |
US7813925B2 US7813925B2 (en) | 2010-10-12 |
Family
ID=37084159
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/398,620 Expired - Fee Related US7813925B2 (en) | 2005-04-11 | 2006-04-06 | State output probability calculating method and apparatus for mixture distribution HMM |
Country Status (2)
Country | Link |
---|---|
US (1) | US7813925B2 (en) |
JP (1) | JP4298672B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090089236A1 (en) * | 2007-09-27 | 2009-04-02 | Siemens Aktiengesellschaft | Method and System for Identifying Information Related to a Good |
CN109036471A (en) * | 2018-08-20 | 2018-12-18 | 百度在线网络技术(北京)有限公司 | Sound end detecting method and equipment |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4732030B2 (en) * | 2005-06-30 | 2011-07-27 | キヤノン株式会社 | Information processing apparatus and control method thereof |
JP5489085B2 (en) | 2009-05-15 | 2014-05-14 | 日本電気株式会社 | Failure cause estimation system, failure cause estimation method, and failure cause estimation program |
JP6139430B2 (en) * | 2014-02-13 | 2017-05-31 | 日本電信電話株式会社 | Signal processing apparatus, method and program |
JP6139429B2 (en) * | 2014-02-13 | 2017-05-31 | 日本電信電話株式会社 | Signal processing apparatus, method and program |
Citations (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4214125A (en) * | 1977-01-21 | 1980-07-22 | Forrest S. Mozer | Method and apparatus for speech synthesizing |
US4624008A (en) * | 1983-03-09 | 1986-11-18 | International Telephone And Telegraph Corporation | Apparatus for automatic speech recognition |
US4977598A (en) * | 1989-04-13 | 1990-12-11 | Texas Instruments Incorporated | Efficient pruning algorithm for hidden markov model speech recognition |
US5018201A (en) * | 1987-12-04 | 1991-05-21 | International Business Machines Corporation | Speech recognition dividing words into two portions for preliminary selection |
US5047952A (en) * | 1988-10-14 | 1991-09-10 | The Board Of Trustee Of The Leland Stanford Junior University | Communication system for deaf, deaf-blind, or non-vocal individuals using instrumented glove |
US5353377A (en) * | 1991-10-01 | 1994-10-04 | International Business Machines Corporation | Speech recognition system having an interface to a host computer bus for direct access to the host memory |
US5579435A (en) * | 1993-11-02 | 1996-11-26 | Telefonaktiebolaget Lm Ericsson | Discriminating between stationary and non-stationary signals |
US5602959A (en) * | 1994-12-05 | 1997-02-11 | Motorola, Inc. | Method and apparatus for characterization and reconstruction of speech excitation waveforms |
US5621827A (en) * | 1993-06-29 | 1997-04-15 | Canon Kabushiki Kaisha | Image processing method and apparatus for obtaining object data to reconstruct the original image |
US5640490A (en) * | 1994-11-14 | 1997-06-17 | Fonix Corporation | User independent, real-time speech recognition system and method |
US5677988A (en) * | 1992-03-21 | 1997-10-14 | Atr Interpreting Telephony Research Laboratories | Method of generating a subword model for speech recognition |
US5774847A (en) * | 1995-04-28 | 1998-06-30 | Northern Telecom Limited | Methods and apparatus for distinguishing stationary signals from non-stationary signals |
US5787396A (en) * | 1994-10-07 | 1998-07-28 | Canon Kabushiki Kaisha | Speech recognition method |
US5794198A (en) * | 1994-10-28 | 1998-08-11 | Nippon Telegraph And Telephone Corporation | Pattern recognition method |
US5828998A (en) * | 1995-09-26 | 1998-10-27 | Sony Corporation | Identification-function calculator, identification-function calculating method, identification unit, identification method, and speech recognition system |
US5933806A (en) * | 1995-08-28 | 1999-08-03 | U.S. Philips Corporation | Method and system for pattern recognition based on dynamically constructing a subset of reference vectors |
US5950159A (en) * | 1996-04-01 | 1999-09-07 | Hewlett-Packard Company | Word spotting using both filler and phone recognition |
US5995928A (en) * | 1996-10-02 | 1999-11-30 | Speechworks International, Inc. | Method and apparatus for continuous spelling speech recognition with early identification |
US6009390A (en) * | 1997-09-11 | 1999-12-28 | Lucent Technologies Inc. | Technique for selective use of Gaussian kernels and mixture component weights of tied-mixture hidden Markov models for speech recognition |
US6029130A (en) * | 1996-08-20 | 2000-02-22 | Ricoh Company, Ltd. | Integrated endpoint detection for improved speech recognition method and system |
US6064958A (en) * | 1996-09-20 | 2000-05-16 | Nippon Telegraph And Telephone Corporation | Pattern recognition scheme using probabilistic models based on mixtures distribution of discrete distribution |
US6216107B1 (en) * | 1998-10-16 | 2001-04-10 | Ericsson Inc. | High-performance half-rate encoding apparatus and method for a TDM system |
US20010012994A1 (en) * | 1995-11-01 | 2001-08-09 | Yasuhiro Komori | Speech recognition method, and apparatus and computer controlled apparatus therefor |
US6292777B1 (en) * | 1998-02-06 | 2001-09-18 | Sony Corporation | Phase quantization method and apparatus |
US20030040919A1 (en) * | 2001-07-24 | 2003-02-27 | Seiko Epson Corporation | Data calculation processing method and recording medium having data calculation processing program recorded thereon |
US6594393B1 (en) * | 2000-05-12 | 2003-07-15 | Thomas P. Minka | Dynamic programming operation with skip mode for text line image decoding |
US20030158729A1 (en) * | 2002-02-15 | 2003-08-21 | Radiodetection Limited | Methods and systems for generating-phase derivative sound |
US20040015344A1 (en) * | 2001-07-27 | 2004-01-22 | Hideki Shimomura | Program, speech interaction apparatus, and method |
US6687665B1 (en) * | 1999-10-29 | 2004-02-03 | Matsushita Electric Industrial Co., Ltd. | Device for normalizing voice pitch for voice recognition |
US6697782B1 (en) * | 1999-01-18 | 2004-02-24 | Nokia Mobile Phones, Ltd. | Method in the recognition of speech and a wireless communication device to be controlled by speech |
US20040039572A1 (en) * | 2002-03-27 | 2004-02-26 | Nokia Corporation | Pattern recognition |
US6721711B1 (en) * | 1999-10-18 | 2004-04-13 | Roland Corporation | Audio waveform reproduction apparatus |
US6789061B1 (en) * | 1999-08-25 | 2004-09-07 | International Business Machines Corporation | Method and system for generating squeezed acoustic models for specialized speech recognizer |
US6813606B2 (en) * | 2000-05-24 | 2004-11-02 | Canon Kabushiki Kaisha | Client-server speech processing system, apparatus, method, and storage medium |
US6895380B2 (en) * | 2000-03-02 | 2005-05-17 | Electro Standards Laboratories | Voice actuation with contextual learning for intelligent machine control |
US20050192803A1 (en) * | 2000-09-20 | 2005-09-01 | Seiko Epson Corporation | Method for calculating HMM output probability and speech recognition apparatus |
US7167545B2 (en) * | 2000-12-06 | 2007-01-23 | Varetis Solutions Gmbh | Method and device for automatically issuing information using a search engine |
US7356466B2 (en) * | 2002-06-28 | 2008-04-08 | Samsung Electronics Co., Ltd. | Method and apparatus for performing observation probability calculations |
US7460995B2 (en) * | 2003-01-29 | 2008-12-02 | Harman Becker Automotive Systems Gmbh | System for speech recognition |
US7480617B2 (en) * | 2004-09-21 | 2009-01-20 | International Business Machines Corporation | Method for likelihood computation in multi-stream HMM based speech recognition |
US7487083B1 (en) * | 2000-07-13 | 2009-02-03 | Alcatel-Lucent Usa Inc. | Method and apparatus for discriminating speech from voice-band data in a communication network |
US7499858B2 (en) * | 2006-08-18 | 2009-03-03 | Talkhouse Llc | Methods of information retrieval |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6034328B2 (en) | 1977-11-10 | 1985-08-08 | 日立電線株式会社 | Overhead ground line that can reduce induced current |
JP2983364B2 (en) | 1992-01-23 | 1999-11-29 | 沖電気工業株式会社 | A method for calculating the similarity between a hidden Markov model and a speech signal |
JP3251480B2 (en) | 1995-10-27 | 2002-01-28 | 沖電気工業株式会社 | Voice recognition method |
-
2005
- 2005-04-11 JP JP2005113954A patent/JP4298672B2/en not_active Expired - Fee Related
-
2006
- 2006-04-06 US US11/398,620 patent/US7813925B2/en not_active Expired - Fee Related
Patent Citations (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4214125A (en) * | 1977-01-21 | 1980-07-22 | Forrest S. Mozer | Method and apparatus for speech synthesizing |
US4624008A (en) * | 1983-03-09 | 1986-11-18 | International Telephone And Telegraph Corporation | Apparatus for automatic speech recognition |
US5018201A (en) * | 1987-12-04 | 1991-05-21 | International Business Machines Corporation | Speech recognition dividing words into two portions for preliminary selection |
US5047952A (en) * | 1988-10-14 | 1991-09-10 | The Board Of Trustee Of The Leland Stanford Junior University | Communication system for deaf, deaf-blind, or non-vocal individuals using instrumented glove |
US4977598A (en) * | 1989-04-13 | 1990-12-11 | Texas Instruments Incorporated | Efficient pruning algorithm for hidden markov model speech recognition |
US5353377A (en) * | 1991-10-01 | 1994-10-04 | International Business Machines Corporation | Speech recognition system having an interface to a host computer bus for direct access to the host memory |
US5677988A (en) * | 1992-03-21 | 1997-10-14 | Atr Interpreting Telephony Research Laboratories | Method of generating a subword model for speech recognition |
US5621827A (en) * | 1993-06-29 | 1997-04-15 | Canon Kabushiki Kaisha | Image processing method and apparatus for obtaining object data to reconstruct the original image |
US5579435A (en) * | 1993-11-02 | 1996-11-26 | Telefonaktiebolaget Lm Ericsson | Discriminating between stationary and non-stationary signals |
US5787396A (en) * | 1994-10-07 | 1998-07-28 | Canon Kabushiki Kaisha | Speech recognition method |
US5794198A (en) * | 1994-10-28 | 1998-08-11 | Nippon Telegraph And Telephone Corporation | Pattern recognition method |
US5640490A (en) * | 1994-11-14 | 1997-06-17 | Fonix Corporation | User independent, real-time speech recognition system and method |
US5602959A (en) * | 1994-12-05 | 1997-02-11 | Motorola, Inc. | Method and apparatus for characterization and reconstruction of speech excitation waveforms |
US5774847A (en) * | 1995-04-28 | 1998-06-30 | Northern Telecom Limited | Methods and apparatus for distinguishing stationary signals from non-stationary signals |
US5933806A (en) * | 1995-08-28 | 1999-08-03 | U.S. Philips Corporation | Method and system for pattern recognition based on dynamically constructing a subset of reference vectors |
US5828998A (en) * | 1995-09-26 | 1998-10-27 | Sony Corporation | Identification-function calculator, identification-function calculating method, identification unit, identification method, and speech recognition system |
US20010012994A1 (en) * | 1995-11-01 | 2001-08-09 | Yasuhiro Komori | Speech recognition method, and apparatus and computer controlled apparatus therefor |
US5950159A (en) * | 1996-04-01 | 1999-09-07 | Hewlett-Packard Company | Word spotting using both filler and phone recognition |
US6029130A (en) * | 1996-08-20 | 2000-02-22 | Ricoh Company, Ltd. | Integrated endpoint detection for improved speech recognition method and system |
US6064958A (en) * | 1996-09-20 | 2000-05-16 | Nippon Telegraph And Telephone Corporation | Pattern recognition scheme using probabilistic models based on mixtures distribution of discrete distribution |
US5995928A (en) * | 1996-10-02 | 1999-11-30 | Speechworks International, Inc. | Method and apparatus for continuous spelling speech recognition with early identification |
US6009390A (en) * | 1997-09-11 | 1999-12-28 | Lucent Technologies Inc. | Technique for selective use of Gaussian kernels and mixture component weights of tied-mixture hidden Markov models for speech recognition |
US6292777B1 (en) * | 1998-02-06 | 2001-09-18 | Sony Corporation | Phase quantization method and apparatus |
US6216107B1 (en) * | 1998-10-16 | 2001-04-10 | Ericsson Inc. | High-performance half-rate encoding apparatus and method for a TDM system |
US20010029444A1 (en) * | 1998-10-16 | 2001-10-11 | Nils Rydbeck | High-performance half-rate encoding apparatus and method for a TDM system |
US6697782B1 (en) * | 1999-01-18 | 2004-02-24 | Nokia Mobile Phones, Ltd. | Method in the recognition of speech and a wireless communication device to be controlled by speech |
US6789061B1 (en) * | 1999-08-25 | 2004-09-07 | International Business Machines Corporation | Method and system for generating squeezed acoustic models for specialized speech recognizer |
US6721711B1 (en) * | 1999-10-18 | 2004-04-13 | Roland Corporation | Audio waveform reproduction apparatus |
US6687665B1 (en) * | 1999-10-29 | 2004-02-03 | Matsushita Electric Industrial Co., Ltd. | Device for normalizing voice pitch for voice recognition |
US6895380B2 (en) * | 2000-03-02 | 2005-05-17 | Electro Standards Laboratories | Voice actuation with contextual learning for intelligent machine control |
US6594393B1 (en) * | 2000-05-12 | 2003-07-15 | Thomas P. Minka | Dynamic programming operation with skip mode for text line image decoding |
US7058580B2 (en) * | 2000-05-24 | 2006-06-06 | Canon Kabushiki Kaisha | Client-server speech processing system, apparatus, method, and storage medium |
US6813606B2 (en) * | 2000-05-24 | 2004-11-02 | Canon Kabushiki Kaisha | Client-server speech processing system, apparatus, method, and storage medium |
US7487083B1 (en) * | 2000-07-13 | 2009-02-03 | Alcatel-Lucent Usa Inc. | Method and apparatus for discriminating speech from voice-band data in a communication network |
US20050192803A1 (en) * | 2000-09-20 | 2005-09-01 | Seiko Epson Corporation | Method for calculating HMM output probability and speech recognition apparatus |
US7167545B2 (en) * | 2000-12-06 | 2007-01-23 | Varetis Solutions Gmbh | Method and device for automatically issuing information using a search engine |
US20030040919A1 (en) * | 2001-07-24 | 2003-02-27 | Seiko Epson Corporation | Data calculation processing method and recording medium having data calculation processing program recorded thereon |
US20040015344A1 (en) * | 2001-07-27 | 2004-01-22 | Hideki Shimomura | Program, speech interaction apparatus, and method |
US7349850B2 (en) * | 2001-07-27 | 2008-03-25 | Sony Corporation | Program, speech interaction apparatus, and method |
US20030158729A1 (en) * | 2002-02-15 | 2003-08-21 | Radiodetection Limited | Methods and systems for generating-phase derivative sound |
US7184951B2 (en) * | 2002-02-15 | 2007-02-27 | Radiodetection Limted | Methods and systems for generating phase-derivative sound |
US20040039572A1 (en) * | 2002-03-27 | 2004-02-26 | Nokia Corporation | Pattern recognition |
US7269556B2 (en) * | 2002-03-27 | 2007-09-11 | Nokia Corporation | Pattern recognition |
US7356466B2 (en) * | 2002-06-28 | 2008-04-08 | Samsung Electronics Co., Ltd. | Method and apparatus for performing observation probability calculations |
US7460995B2 (en) * | 2003-01-29 | 2008-12-02 | Harman Becker Automotive Systems Gmbh | System for speech recognition |
US7480617B2 (en) * | 2004-09-21 | 2009-01-20 | International Business Machines Corporation | Method for likelihood computation in multi-stream HMM based speech recognition |
US7499858B2 (en) * | 2006-08-18 | 2009-03-03 | Talkhouse Llc | Methods of information retrieval |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090089236A1 (en) * | 2007-09-27 | 2009-04-02 | Siemens Aktiengesellschaft | Method and System for Identifying Information Related to a Good |
EP2198423A1 (en) * | 2007-09-27 | 2010-06-23 | Siemens Aktiengesellschaft | Method and system for identifying information related to a good |
US8160986B2 (en) * | 2007-09-27 | 2012-04-17 | Siemens Aktiengesellschaft | Method and system for identifying information related to a good utilizing conditional probabilities of correct recognition |
CN109036471A (en) * | 2018-08-20 | 2018-12-18 | 百度在线网络技术(北京)有限公司 | Sound end detecting method and equipment |
Also Published As
Publication number | Publication date |
---|---|
JP2006293033A (en) | 2006-10-26 |
JP4298672B2 (en) | 2009-07-22 |
US7813925B2 (en) | 2010-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11776531B2 (en) | Encoder-decoder models for sequence to sequence mapping | |
US7689419B2 (en) | Updating hidden conditional random field model parameters after processing individual training samples | |
US7756707B2 (en) | Signal processing apparatus and method | |
US20080077404A1 (en) | Speech recognition device, speech recognition method, and computer program product | |
US7124080B2 (en) | Method and apparatus for adapting a class entity dictionary used with language models | |
US9043209B2 (en) | Language model creation device | |
EP1355296B1 (en) | Keyword detection in a speech signal | |
US8301449B2 (en) | Minimum classification error training with growth transformation optimization | |
US20030200090A1 (en) | Speech recognition apparatus, speech recognition method, and computer-readable recording medium in which speech recognition program is recorded | |
US6801892B2 (en) | Method and system for the reduction of processing time in a speech recognition system using the hidden markov model | |
US20010053974A1 (en) | Speech recognition apparatus, speech recognition method, and recording medium | |
US7813925B2 (en) | State output probability calculating method and apparatus for mixture distribution HMM | |
US20120245919A1 (en) | Probabilistic Representation of Acoustic Segments | |
US7072835B2 (en) | Method and apparatus for speech recognition | |
JP6031316B2 (en) | Speech recognition apparatus, error correction model learning method, and program | |
US20060100862A1 (en) | Acoustic models with structured hidden dynamics with integration over many possible hidden trajectories | |
US20050027530A1 (en) | Audio-visual speaker identification using coupled hidden markov models | |
Du et al. | Minimum divergence based discriminative training | |
WO2012076895A1 (en) | Pattern recognition | |
Liu et al. | Automatic model complexity control using marginalized discriminative growth functions | |
JP4801107B2 (en) | Voice recognition apparatus, method, program, and recording medium thereof | |
JP4801108B2 (en) | Voice recognition apparatus, method, program, and recording medium thereof | |
Deshmukh et al. | An Efficient Public Domain LVCSR Decoder | |
Fu et al. | Automatic speech recognition based on weighted minimum classification error (W-MCE) training method | |
JP4528076B2 (en) | Speech recognition apparatus and speech recognition program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: CANON KABUSHIKI KAISHA, JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:YAMAMOTO, HIROKI;YAMADA, MASAYUKI;REEL/FRAME:017755/0161 Effective date: 20060403 |
|
FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.) |
|
LAPS | Lapse for failure to pay maintenance fees |
Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
FP | Lapsed due to failure to pay maintenance fee |
Effective date: 20181012 |