Source: http://www.google.com/patents/US5129002?dq=6233389
Timestamp: 2014-07-10 10:14:52
Document Index: 174650023

Matched Legal Cases: ['art 106', 'art 702', 'art 704', 'art 705', 'arts 706', 'art 702', 'arts 706', 'art 702', 'art 702', 'art 710', 'art 710', 'art 704', 'art 705', 'arts 706', 'art 708', 'art 709', 'art 905', 'art 904', 'art 908', 'art 908', 'art 907', 'art 910']

Patent US5129002 - Pattern recognition apparatus - Google PatentsSearch Images Maps Play YouTube News Gmail Drive More »Sign in<nobr>Advanced Patent Search</nobr>PatentsA pattern recognition apparatus using the hidden Markov model technique in which parameters for defining a mean vector representing the probability density function in each one of plural states for composing the hidden Markov model vary with time. Accordingly, the recognition precision may be enhanced...http://www.google.com/patents/US5129002?utm_source=gb-gplus-sharePatent US5129002 - Pattern recognition apparatusAdvanced Patent SearchPublication numberUS5129002 APublication typeGrantApplication numberUS 07/787,747Publication dateJul 7, 1992Filing dateNov 5, 1991Priority dateDec 16, 1987Fee statusPaidPublication number07787747, 787747, US 5129002 A, US 5129002A, US-A-5129002, US5129002 A, US5129002AInventorsEiichi TsubokaOriginal AssigneeMatsushita Electric Industrial Co., Ltd.Export CitationBiBTeX, EndNote, RefManPatent Citations (6), Referenced by (27), Classifications (7), Legal Events (3) External Links: USPTO, USPTO Assignment, EspacenetPattern recognition apparatusUS 5129002 AAbstract A pattern recognition apparatus using the hidden Markov model technique in which parameters for defining a mean vector representing the probability density function in each one of plural states for composing the hidden Markov model vary with time. Accordingly, the recognition precision may be enhanced when this apparatus is used in, for example, voice recognition.
We claim: 1. A pattern recognition signal analysis apparatus for generating and storing an improved Hidden Markox Model (HMM), comprising:feature extraction means for converting an input signal into a sequence of feature vectors, one for each state; HMM creating means for making an HMM from said sequence of extracted feature vectors by calculating parameters for each said feature vector on the basis of previously-defined parameters to provide a mean vector representing the probability density function of each feature vector for each state, each said means vector varying with time within each state; and means employing said HMM for recognizing an unknown pattern. 2. The pattern recognition apparatus of claim 1, wherein said parameters for defining each said mean vector for a state (i) comprise:a neutral point vector μi, a direction vector ui, transition probability γi, and a covariance matrix Σi. 3. The pattern recognition apparatus of claim 2 further comprising:means employing the created HMM for recognizing an unknown input signal. 4. The pattern recognition apparatus of claim 2 wherein said HMM creating means calculates said parameters from a training pattern set made of a plurality oflike training patterns.
5. The pattern recognition apparatus of claim 4 wherein said measn for recognizing an unknown input signal comprises:means for converting said unknown input signal into an observed sequence of feature vectors, one for each state; and means for calculating an observed mean vector representing the probability density function for each said feature vector for each state, each said observed mean vector varying with time within each state. 6. The pattern recognition apparatus of claim 5 wherein said means for recognizing further comprises:means for calculating the likelihood in terms of a probability density function that said observed mean vector was generated by said HMM creating means. 7. A voice recognition apparatus using a plurality of Hidden Markov Models (HMM), each having a plurality of states, comprising:feature extraction means for converting an input signal into a sequence of feature vectors; HMM creating means for making a plurality of HMMs from the sequence of feature vectors, said HMM creating means utilizing at least one parameter for defining a mean vector in termsofa probability density function of the feature vector in each state, said mean vector varying with time in each state; means for storing said plurality of HMMs; and means connected to said storing means for receiving a series of unknown utterances and for employing the HMMs stored by said means for storing to determine the utterance most likely to correspond to said unknown utterance. 8. A method of speech pattern recognition employing a Hidden Markox Model (HMM), said model comprising a plurality of states, the steps comprising:uttering a test word W for R times where R is an integer; converting each utterance of the word W into a sequence of feature vectors; storing each sequence of feature vectors in a memory; determining the elements of a Markov model parameter set λi utilizing said feature vector sequences, said step of determining including the determination of a neutral pint vector anda direction vector, the point vector and direction vector being related to a mean vector of a probability density function, said mean vector varying linearly with time for each state of said model; storing said Markov model parameter set; and employing the stored Markov model parameter set in selecting a speech pattern most likely to correspond to an unknown speech pattern. 9. A pattern recognition apparatus using a plurality of Hidden Markov Models (HMM) each having a plurality of states, comprising:feature extraction means for converting an input signal into a sequence of feature vectors; and HMM creating means for making an HMM from the sequence of feature vectors utilizing at least one parameter for defining a probability density function of the feature vector in each state, the probability density function comprising a mean vector varying with time in each state; and means employing said HMM for recognizing an unknown pattern. 10. The apparatus of claim 9 wherein said mean vector varies linearly with respect to time in each state.
11. The apparatus of claim 10 wherein said probability density function further includes a term comprising a covariance matrix which is constant in time in each state.
12. The apparatus of claim 10 wherein said mean vector comprises a neutral point vector and a direction vector.
13. The apparatus of claim 9 wherein, in the course of making an HMM, said HMM creating means estimates a mean vector, said mean vector varying with time in each state.
14. The apparatus of claim 13 wherein, in the course of making an HMM, said HMM creating means further estimates a covariance matrix which is constant in each state.
15. The apparatus of claim 14 wherein said HMM creating means estimates said mean vector by deriving an estimate of a neutral point vector and a direction vector.
16. In a method of deriving a Hidden Markov Models (HMM) for speech pattern recognition, said model comprising a plurality of states, the steps comprising:uttering a word W for R times where R is an integer; converting each utterance of the word W into a sequence of feature vectors; storing each sequence of feature vectors in a memory; and calculating a Markov model parameter set λi utilizing said feature vector sequences, said step of calculating including the determination of a neutral point vector and a direction vector, the neutral point vector and direction vector being related to a mean vector of a probability density function, said mean vector varying linearly with time for each state of said model. Description
This is a continuation of application Ser. No. 540,356, filed on Jun. 19, 1990, for a Pattern Recognition Apparatus, abandoned, which is a continuation in part of Ser. No. 285,193 filed Dec. 15, 1998, abandoned.
BACKGROUND OF THE INVENTION 1. Field of the Invention apparatus using the Hidden Markov Model (HMM) in pattern recognition of voice or the like, and more particularly relates to an apparatus which is capable of fabricating HMM high in precision of recognition.
FIG. 1 is a block diagram of a conventional voice recognition apparatus employing HMM. In the diagram, numeral 101 denotes a voice analyzing part, in which an input voice signal is converted into a feature vector for a specified time interval (called a frame), for example, every 10 msec, by a well-known method such as, filter bank, Fourier transform and LPC analysis. Therefore, the input voice signal is converted into a sequence X=x1, x2, . . . , xT of feature vectors, in which T is the number of frames. Numeral 102 is called a code book, which holds a labeled representative vector. Numeral 103 is a vector quantizing part, which replaces the individual vectors in the vector sequence X with the label of the closest representative vector. Numeral 104 is an HMM fabricating part, in which an HMM corresponding to each word in the recognition vocabulary is created from training data. That is, in order to make an HMM corresponding to word n, the structure of the HMM (the number of states or the transition rule permitted between states) is first properly determined, and from the label sequence obtained by multiple utterances of the word n in the above method, the probability of the label occurring along with the transition of the state or the state transition probability in the previous model is estimated so that the probability of the occurrence of the label sequence may be estimated. Numeral 105 is an HMM memory unit, which stores the thus obtained HMM in each word. Numeral 106 denotes a probability calculating part, which calculates the probability generated by the label sequence from the respective models stored in the HMM memory unit 105, with respect to the label sequence of the unknown input voice to be recognized. Numeral 107 is a comparator, which judges the word corresponding to the model giving the maximum value of the likelihood corresponding to the respective models obtained in the likelihood calculating part 106, as the result of recognition.
The recognition by HMM is effected in the following manner. Supposing the label sequence obtained with respect to an unknown input to be o=o1, o2, . . . , oT, and an arbitrary state sequence of a length T generated by model λw to be S=s1, s2, . . . , sT, the probability that the label sequence o was generated from λw is given as follows: ##EQU1## In the case of equation (2), using the logarithm, it is often rewritten as ##EQU2## where P(x,y|λw) is a simultaneous probability of x, y in model λw.
Therefore, for example, by using equation (1), supposing ##EQU3## w is the result of recognition. The same holds true when equations (2) and (3) are employed.
P(o,S|λ) is, in the case of equation (1), obtained as follows.
With respect to the state qi (i=1�I) of HMMλ, when the occurrence probability bi (o) of label o and the transition probability aij from state qi to state qj are given in every state qi, the probability of occurrence of label sequence O=o1 o2, . . . oT from HMMλ with respect to the state sequence S=s1, s2, . . . ,sT+1 is defined as follows: ##EQU4## where as is the initial probability of state s1, and sT+1 =qr is the final state, where any label is not generated at all.
In this example, the input feature vector x is converted into a label, but it is also possible to use the feature vector x directly instead of the occurrence probability of the label in each state, and give the probability density function of the feature vector x. At this time, instead of the occurrence probability bi (o) in the state qi of the label o in equation (5), the probability density bi (x) of the feature vector x is used. Therefore, the equations (1), (2), and (3) are rewritten as follows: ##EQU5## and equation (2') may be rewritten as follows by using the logarithm as in the case gf equation (2). ##EQU6##
The typical HMM used in voice recognition hitherto is as shown in FIG. 2. In the diagram, qi denotes an i-th state, aij is the transition probability of changing from state qi to state qj, and bi (x) is the probability or probability density observed in the state qi of the label or feature vector x. Hereinafter, x is a vector having a continuous value.
At this time, the state qi of HMM is considered to correspond to the partial segment i of the voice corresponding to its HMM. Therefore, the probability density bi (x) of observation of x in state qi is the probability density at which the x occurs in the segment i, and the transition probability aii is understood as the probability of xt+1 to be contained in segment i again at time t+1 when xt at time t is contained in segment i. From such point of view, the following two points may be indicated as the problems in the conventional HMM.
(1) Since the parameter for defining the function bi (x) is constant with respect to the state qi, each segment may be regarded to be constant in the probability distribution in its interval. Therefore, depending on the phoneme, although the feature of the time-wise change (dynamic feature) of the feature vector is important, the feature cannot be expressed adequately in the conventional model.
(2) The length τ of the segment is considered to conform to a certain probability distribution, but in the conventional model, since the transition probabilities aii, aij are constant regardless of the length of the sequence of state qi, the length of the segment i follows the exponential distribution substantially and the distribution profile does not always express the reality correctly.
Concerning these two problems, as for point (2), it is already known to use the Poisson's distribution or Γ-distribution as to the probability density function di (τ) relating to the length I of the sequence of the state qi.
SUMMARY OF THE INVENTION It is hence a primary object of this invention to solve the problem of (1) by composing the HMM allowing the parameter for characterizing the probability density function bi (x) for giving the occurrence probability of the feature vector in the state qi to vary linearly in time within the same segment (state).
More specifically, this invention presents an apparatus for fabricating an HMM composed in the limiting conditions in which the parameters for characterizing the probability density function bi (x) for deriving the occurrence probability density of the feature vector in state qi, for example, the mean, varies linearly in time in the same segment (state), and also presents a likelihood calculating apparatus for efficiently calculating the conformity of an arbitrary vector sequence and this HMM.
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram of a conventional voice recognition apparatus using HMM;
FIG. 2 is a conceptual drawing showing the concept of a typical conventional HMM; 15 FIG. 3 is a conceptual drawing showing the concept of an HMM according to this invention;
FIG. 4 is a conceptual drawing of an HMM expressing FIG. 3 in a simple Markov model equivalent thereto;
FIG. 5 is a trellis diagram corresponding to the HMM in FIG. 4;
FIG. 6 is a drawing to explain the principle of this invention;
FIG. 7 is a block diagram showing an embodiment of the HMM fabricating apparatus of the invention;
FIG. 8 is a drawing to explain the principle of the method for efficiently calculating the degree of matching of the input pattern with respect to the HMM of the invention; and
FIG. 9 shows an embodiment of the apparatus for calculating the degree of matching of the input pattern with respect to the HMM of this invention based on the principle explained in FIG. 8.
DESCRIPTION OF THE PREFERRED EMBODIMENT Referring now to the drawings, this invention is described below. In the explanation to follow, the states qi, qj, and so forth are expressed merely as i, j, and so forth for the sake of simplicity as far as no misunderstanding is anticipated.
FIG. 3 shows a proposed conceptual scheme of HMM wherein aij (τ) is a transition probability defining the probability of transition of state i which is repeated for τ times to a state of j, and bi (I, k, x) is a probability density of generating a feature vector x which is defined to the k-th state k (≦τ) of state i which is repeated for τ times.
In FIG. 3 if aij (τ) is substituted by; ##EQU7## FIG. 4 can be derived. The meaning of this formula is that 1-aii (τ) is a transition probability of state i to change into a state other than the state i, and aij can be understood as a probability of state i to change it into a state j (≠i) among these.
In this case, when τ1 ≠τ2, bi (τ1, k, x)≠bi (τ2, k, x) is established. Whereas the k-th state when the state i is repeated for τ1 times is different from the k-th state when the state i is repeated for τ2 times, unless otherwise specified, the following equations are established if the continuation length of state i is τ and the k-th state of its continuation is simply expressed by qik.
ai .sbsb.ki.sbsb.k+1 =aii (&#964;), bi.sbsb.k (x)=bi (&#964;, k, x)
FIG. 5 is a trellis diagram of the HMM corresponding to FIG. 4. That is, a horizontal line denotes TIME and a vertical line denotes STATE and FIG. 5 is one of examples of lattice graphs showing possible state sequences. However, for simplifying the expression, qik represents the k-th state of state i when it lasts for τ. In the present case, it should be noted that the state is made common as the k-th condition for the cases where τ=1, 2, 3. Each state sequence is shown by a vented line which is formed by connecting points showing states of each time. Hereinafter, this vented line is called a path.
Now, for the sake of convenience of the discussions to follow, the symbols to be used below are now defined. Also, states qi, qj etc. are simply indicated as i, j, for the sake of convenience of the discussion, to the extent that there does not occur misunderstandings, and, as to the word "state", words "main state" or "sub state" is used.
i={i1, i2, . . .}: i-th state (k=1, . . ., I),
ik : sub state to be reached after continuation of k in main state
ai.sbsb.ki.sbsb.k+1 : transition probability from state ik to ik+1 (=γi),
A=[aij ]: transition matrix,
aij : transition probability from main state i to main state j,
bi k (xt) probability density in which feature vector xt is generated in substate ik.
xt : feature vector observed at time point t,
X=x, x, . . . xT : feature vector sequence observed at time-point 1, . . ., T, S=s1, s2, . . .,
sT : state sequence corresponding to time points 1, . . ., T
&#955;i=({aij }I.sbsb.j=l, &#956;i,ui,&#931;i,&#947;i)
γ: parameter set in main state i
λ={λi}1.sbsb.i=1 : set of all parameters (model having λ as a parameter is called "model λ")
μi : mean vector of feature vector observed in main state i,
ui : direction vector of the above line to give the mean vector of bi.sbsb.k (x),
Σi : variance co-variance matrix of feature vector observed in main state i,
Prob (X|λ): probability density of occurrence of feature vector sequence X from model λ or likelihood of model X for feature vector sequence X.
st : state at time point t,
qΓ: final state (=sT+1). πi =aSOsO : probability that main state i occurs at t=1.
Next is explained the method of estimating the parameter of the model of this invention from the sample vector sequence actually observed.
The occurrence probability density P(X|λ) of the output vector sequence X with respect to a certain HMMλ is given as follows: ##EQU8##
where a new function Q(&#955;, &#955;') is defined. ##EQU9## At this time, the following theorem is established.
[Theorem 1] If Q(λ, λ')≧Q(λ, λ), P(X|λ')≧P(X|λ). Here, the equal sign is established only when λ=λ'.
[Theorem 2] In case of ##EQU10## if λi belongs to and log Pi(X,S|λi) is in the upward direction with regard to λi, when Qi (λ,λi) is fixed to λ, and treated as a function of λi, a single global maximum is produced with in the upward direction. If a point at which the maximum value is given is λi, P(X|λ) P(X|λ) as to λ=(λi) and the equal size is established when λ=λ.
By use of this theorem, estimation of parameter can be carried out. That is, if λi belongs to set, and log Pi (X,S|λi) is in the upward direction with regard to λi, λ is focused to value which is needed, by giving an appropriate initial value to λi and calculating λi '=λi which satisfy ∂Qi (λ,λi ')∂λi '=∂Q(λ,80')∂λi '=0.
According to this principle, the principle of the model making method of this invention is explained below.
Equation (6) may be rewritten as ##EQU11##
Equation (7) is described in details below while referring to the drawings.
FIG. 6 is a lattice graph showing an example of state sequence S, plotting the time on the abscissa and the state on the ordinate. In this diagram, the state sequence S is expressed by a polygonal line 1 linking the points representing the state at each time by a line segment (hereinafter this polygonal line is called a path).
Meanwhile, ti (S) is the start time (frame number) of the sequence of the state i on the path S, and τi (S) is the length (number of frames) of the sequence of said i. That is, in path S, the state i begins with ti (S) frame, and ends with the ti (S)+τi (S)-1 frame.
The first to fifth terms in the braces at the right side of equation (7) are related with the state transition probability, and the sixth to eighth terms are related with the probability of occurrence of observation vector.
First of all, the meanings of the terms related to the state transition probability are as follows.
The first term is the occurrence probability of the state sequences S1, . . . , St (s) along the path S;
The second term is the probability of occurrence of the state sequences Sti (s), . . . , Spt.sbsb.i (s)+τi(s)-1 along the path S:
The third term is the probability of slipping out of the state i after the state i continues τi (s) times;
The fourth term is the probability of changing from state st.sbsb.i (s)+τi (s)-1 to state st.sbsb.i (s)+τ, that is, the probability aij of changing from state i to state j by assumption; and
The fifth term is the logarithm of the occurrence probability density of state sequences st.sbsb.i (s)+τi (s), . . . , ST +1 along the path S.
The terms relating to the occurrence probability density of the observation vector are as follows. The sixth and eighth terms are probability densities of occurrence of observation vector sequences x1, . . . xt.sbsb.i (s)-1; xt.sbsb.i (s)+τi (s), . . . , xT in the state sequence s1, . . . , st (s)-1; st (s)+τi (s), . . ., sT along the path S; and
The seventh term is the logarithm of the probability density of occurrence of observation vector sequences xt.sbsb. (s), . . ., xt.sbsb.i (s)+τi (s)-1 in the state sequences st.sbsb.i (s)=i1, . . ., st.sbsb.i (s)+τi (s)-1=i.sub.τ along the path S.
Considering in such divided portions, it may be easily understood that the following equation is established. ##EQU12##
Here, in equation (8), sum of the first and second terms in the right-hand side { } of the second equation part is logarithm of probability with length of state 1 series being τ. Therefore, the probability is defined as di (τ), the last equation part of equation (8) is obtained.
In equation (8), P(X,st-τ =i1,st =j1 |τ) is the simultaneous probability density of X in model τ, st-τ =i1 and st =j1, and when shown in a drawing, it is the total sum of probability density of paths which pass through the slanted line portions in FIG. 7. By use of this, calculation of the total sum regarding path S in equation (8) is carried out as follows. That is, first, the total sum of probability density of paths passing through said slanted line portion as to all combinations of t, τ, j, (i.e., P(X,st-τ=i1,st =j.sub. |τ)) is calculated. Then, the total sum of the thus obtained calculation results is carried out in a whole range.
Change from the first equation to the second equation in equations (6), (7) is based upon this thought.
P(X,st-τ =i1,st =j1 |τ) is calculated as follows. That is, supposing that: ##EQU13## Accordingly, equation (9) can be calculated by giving an appropriate initial value to parameter λ with α1 (1)=1 and calculating αt (j) along equation (10) as to t=1�T+1, j=1�I I and by calculating equation (11) as to t=T+1�1, i=I�1 with BT+1 (f)=1. Then, by use of equation (8), λi can be estimated. Hence, each parameter may be estimated as follows.
Estimation of aij According to Lagrange's method, that is, using equation (8) ##EQU14## and now considering , summing up for j on both sides of equation (12) yields Putting it into equation (12), we obtain ##EQU15## This indicates ratio of simultaneous probability density of states; and j to probability of state i, and corresponds to the definition of aij.
Estimation of transition probability ai.sbsb.k-1i.sbsb.k In the HMM as shown in FIG. 3, other parameters vary depending on k, but the transition probability ai.sbsb.k-1i.sbsb.k in state i is constant regardless of k as in the traditional model; in which case, the transition probability γi is determined as follows.
In this case, the following equation is obtained by putting di (τ)'=γi '.sup.τ-1 (1-γi '), τi '=γi ' into equation (8). ##EQU16##
The equation (14) can be interpreted as follows by intuition.
An initial value τex of length of "inherent" series of state i based upon transition probability Yi between substates at state i is: ##EQU17## Therefore, equation (14) is a transition probability calculated at state i only, i.e., the ratio of expected value regarding paths of a denominator and a numerator of equation (15).
Estimation of orobabilitv densitv function bi.sbsb.k (x) of feature vector x Conventionally, as mentioned above, the parameter for defining the probability distribution of the feature vector x in state i is to assume the stationary property that it is constant within the state i regardless of the time, and it is considered irrational to express the transient portion of the voice.
Accordingly, to improve this point, it is attempted to express the parameter for defining the probability distribution in a simple time function.
Supposing the distribution of thefeature vector to be normal distribution, within state i, it is regarded that the mean ξi varies linearly with respet to the time, while the covariance matrix Σi is constant time-wise in state i.
At this time, the probability density with respect to the feature vector ##EQU18## where τ denotes the number of frames in the voice segment i corresponding to the state i, t-1 is the final frame, k is the frame number sequentially counting from the starting frame of segment i as 1, μi is the neutral point vector in the segment i of straight line ξi (t,k), and ui is the direction vector of ξi (k)
Then, μi, ui, Σi are estimated as follows. ##EQU19##
The numerator of equation (16) is an expected value regarding the path of the total sum in the feature vector sequence in period i and the deonminator thereof is an expected value regarding the pathfo length of period i series. This is understandable even by intuition. ##EQU20##
Equation (17) can be interpreted as follows.
Supposing that feature vector sequence contained in period i is xt-τ, . . . , xt-1 and minimum square line is ##EQU21## ui . is obtained as a solutioon of ##EQU22## therefore, ui is an expected value regarding paths of a denominator and a numerator of ui..
(Estimation of Σi) At m, n=1 to d, it is supposed that Σi =Ξσimn ] Σi -1 =[σi mn ], and remainder factors of σimn, σi mn are respectively supposed as Simn, Si mn. At this time, it is known that ##EQU23## Here, xt-τ-1+k,m, ξi,m (τ,k) etc. mean mth components of vectors xt-τ-1+k, ξi (k). Expressing in matrix yields ##EQU24##
This equation also corresponds very well to the definition of variance and covariance by intuition.
The actual calculating procedure for estimation of parameters is as follows.
When making a model λw corresponding to a word w, it is supposed that the pattern corresponding to the word w, i.e., wr -xr 1, . . . , sr Tr (r=1�R; xr t is a feature vector of t-th in pattern r and Tr is the number of frame of pattern r) is given as a training pattern.
(2) A proper initial value is given to all parameters of λ1 ={aij, γi, μi, ui, Σi }(i, j=1�I).
(3) For r=1�R, t=2�Tr, α=1�t-1 and i=1�I, αt (r, i) is calculated as λ={λ1 } according to equation (10), where αt (r, i) is the αt (i) for the pattern wr and the Tr is the total number of frames of that pattern.
(4) For r=1�R, t=2�Tr, τ=1�t-1 and i, j=1�I, βt (r, i) and P(wr, s.sub.α-τ =i1, st =j1 |λ) are calculated as λ={λ1 } according to equations (11) and (12) respectively, where βt (r, i) are the βt (i) for the pattern wr.
(5) For r=1�R, i, j=1�I, for pattern wr, aij, num (r), γi,num (r), μi,num (r), ui,num (r) and Σi,num (r), which are numerators of equations (13),(14),(16),(17),(18), and aij,denom (r), γi,denom (r), μi,denom (r), ui,denom (r) and Σi,denom (r), which are the denominators, are calculated.
(6) aij, γi, μi, ui and Σi which are the re-estimated values of aij, γi, μi, ui and Σi are calculated as follows. ##EQU25## (7) For i, j=1�I, substitution of aij =aij, γi =γi, μi =μi, ui =ui, and Σi =Σi are executed to obtain renewal parameter set λ={λi }.
(8) For r=1�R, t=2�Tr, and i=1�I, αt (r, i) is calculated for the parameter set obtained by step (7) according to equation (10) and ##EQU26## (9) If |L1 -L2 |/L1 >ε, then L2 =L1 and go to step (4); and if not, go to the end.
In step (9), ε denotes a properly small positive number to determine the width of convergence. When this value is small, the precision of estimation of parameter is improved, but the convergence time is longer, but when it is large, the convergence is fast but the precision is poor. Therefore a proper value should be determined depending on the application.
FIG. 7 shows an embodiment of the HMM fabricating apparatus according to this invention. In this embodiment, aij =1 (for j=i+1), aij =0 (for j≠i+1) are explained by referring to the drawing. Numeral 701 is a feature extraction portion, in which the input voice signal is converted into a sequence of feature vectors by a well-known method such as filter bank and LPC analysis. Numeral 702 is a word pattern memory part, in which a plurality of training words for making model λ are stored in a form of feature vector sequences. Numeral 703 is a buffer memory, in which the word patterns stored in the word pattern memory part 702 are taken out one by one and stored temporarily. Numerals 704 and 705 are to calculate the denominator and numerator of the equations (13), (14), (16), (17), (18') etc. for estimating the parameters in state i. Numeral 706 is a first cumulative sum calculating part for calculating the cumulative sum of the values calculated in the denominator calculating part 704. Numeral 707 is a second cumulative sum calculating part for calculating the cumulative sum of the values calculated in the numerator calculating part 705. Numeral 708 is a parameter calculating part, in which the estimated value of each parameter is determined by obtaining the ratio of the numerator and denominator of the parameters calculated in the first and second cumulative sum calculating parts 706, 707. Numeral 709 is a parameter memory part for storing the above estimated parameters. Numeral 710 is a control part, in which training word patterns stored in the word pattern memory part 702 are read out sequentially one by one, and a reading command of training word pattern for transferring to the buffer memory 702, and the candidate region for state i with respect to the word pattern stored in the buffer memory 703 are set, and the parameter calculation command and state number for calculating the parameters from the outputs of the cumulative sum calculating parts 706, 707 are set.
For example, the model λw for word w is created in the following steps.
Uttering the word w for R times, R pieces of patterns converted into the feature vector sequence in the feature extraction portion 701 are stored in the word pattern memory part 702. From the word pattern memory part 702, the r-th (r=1 to R) word pattern wr is read out by the reading command of learning word from the control part 710, and is stored in the buffer memory 703. In consequence, t, τ in calculation of equations (13), (14), (16), (17), (18'), etc. are supplied into the buffer memory 703 as the segment setting signals from the control part 710, and in the corresponding segment of the word pattern wr stored in the buffer memory 703, the denominator and numerator in the equations (13), (14), (16), (17), (18') are calculated by the denominator calculating part 704 and numerator calculating part 705. At this time, the parameters contained in the these denominators and numerators are provided with proper values λi ={μi, ui, γi, Σi) as initial values in state 1. The cumulative sum calculating parts 706, 707 calculate the cumulative sum of the denominators and numerators with respect to the training word pattern Wr (r=1 to R). The parameter calculating part 708 obtains the ratio from the cumulative sums of the denominators and numerators in state i of the thus obtained training word patterns wr in r=1 to R, and calculates a new estimated value of the parameter in state i. The parameter memory part 709 stores the estimated value wi of the parameter in state i corresponding to the word w obtained in this way.
Calculating as shown above with respect to i=1 to I, and repeating similar calculations using λw i as a new λw i, λw i converges to a specific value, which is the parameter to be determined.
Thus, in this invention, since it is designed so that the mean of the probability density for generating the feature vector in the state within the same state may vary linearly, if the same state continues, the defect in the conventional HMM in which the parameter for giving the occurrence probability density of the feature vector in the state is unchanged may be eliminated, and it is possible to make a more realistic model.
Below is described the apparatus for recognizing the actual input voice by using such model.
When determining a strict solution as shown in equation (1') relating to the prior art, equation (19) should be calculated, but the method being matched by the above model is explained below. This method is, of course, usable in determining the strict solution, but the method of obtaining an approximate solution corresponding to equation (2') is stated below.
Supposing φ(i, t) to be the maximum cumulative likelihood until time point t, state i, by using the above ct, t(i), a recurrence formula with respect to equation (2') is established as follows: ##EQU27## Therefore, when φ(i, t) is sequentially determined with respect to i=1 to I-1, t=1 to T+1, φ(i, t) becomes the maximum likelihood of model λ with respect to the input pattern X.
At this time, when the recurrence formula (19) is directly calculated, Ct�τ (i) is calculated for all possible combinations of τ=1 to t-1, i=1 to I in every frame t (=1 to T+1), and the amount of computation is enormous. A second feature of the invention is that the object of reducing the amount of calculation is achieved by cleverly using the past calculated values. Here, for the convenience of the discussion below, the following quantity is defined. ##EQU28##
At this time, the following facts are known. If τ=1, 2, the relations
B(i,t,1)=bi1 (xt-1)                                   (22)
B(i,t,2)=bi1 (xt-2)bi2 (xt-1)                    (23)
are established, and if τ≧3, the relation
B(i,t,&#964;)=bi1 (xt-r)B(i,t,-1,&#964;-2)bir(xt-1)(24)
is established, and supposing ##EQU29## , it follows that
h(i,&#964;)=h(i,&#964;-1)air-1 ir                  (26)
A(i,&#964;)=h(i,&#964;) (1-air ir-1)               (27)
Therefore, from the recurrence formulae in equations (22), (23), (24), B(i, t, τ) is obtained, and from the recurrence formula (26), putting h(i, τ) into equation (27), A(i, τ) is obtained, and from the obtained A(i, τ), B(i, t, τ), the recurrence formula (19) can be calculated.
Here, the equation (24) may be explained as follows (FIG. 8).
That is, the straight line L giving the mean vector of the probability density function of the feature vector in the i-th segment (state i) is given as the mean μi, direction vector ui, and when the B(i, t, τ) causing the input feature vector sequence {xt-τ-1+k}.sup.τk=1 to correspond to the segment is known, in order to obtain B(i, t+1, τ+2) by causing {x(t+1)-(τ+2)-1+k}.sup.τ+2k=1 to correspond to said segment i, the straight line L' corresponding to the above straight line L is a line extending the line L by one frame to both sides, or 2 frames in total, and the relation of
B(i,t+1,&#964;+2)-bi1 (x(t+1)-(&#964;+2)) B(i,t,&#964;)bi.sub.&#964;+2 (x(t+1)-1)                                                (28)
is established, so that the formula (24) is established. Therefore, it is not necessary to calculate B(i, t, τ) directly by using the equation (21), and it can be calculated as a sequel to B(i, t-1, τ-2) on the basis of equation (24), and the amount of calculation may be greatly saved.
FIG. 9 shows an embodiment of the apparatus based on the above principle.
Numeral 901 is a feature extraction portion, in which an input voice signal is converted into a sequence of feature vectors x1, x2, . . . , xT. Numeral 902 is a buffer memory for temporarily storing the sequence of feature vectors x1, x2, . . . , xT. Numeral 903 is a feature vector occurrence probability density calculation part, in which the probability density bi.sbsb.1 (xt-τ), bi.sbsb.τ (xt-1) of the feature vector xt-τ and feature vector xt-1 are calculated. Numeral 904 is a parameter memory part, in which the parameter of probability density function necessary for calculation of probability density is stored, that is, μi, ui, γi, Σi at i=1 to I are stored. Numeral 905 is a cumulative feature vector occurrence probability density calculation part, in which B(i, t, τ) is calculated according to equations (22), (23), (24). Numeral 906 is a cumulative feature vector occurrence probability density memory part, in which the result of calculation in the cumulative feature vector occurrence probability density calculation part is sequentially stored, and the content of the memory is read out to calculate the equations (22), (23), (24) in the cumulative feature vector occurrence probability density calculation part 905. Numeral 907 is a state persistence time probability density calculation part, in which the probability A(i, τ) to set the length of the sequence of state i to be t, from the parameter for defining the probability density of the length of the sequence of the state i stored in the parameter memory part 904. Numeral 908 is a recurrence formula calculating part, in which the equation (19) is calculated with respect to i=1 to I, t=1 to T, finally determining φ(I,T+1). Numeral 909 is an intermediate cumulative probability density memory part, in which the intermediate cumulative probability density φ(i, t) calculated in the recurrence formula calculation part 908 according to the formula (19) is stored sequentially, and the stored intermediate cumulative probability density is used in the subsequent recurrence calculation in the recurrence formula calculating part 908. Numeral 910 is a segment setting signal generating part, in which the frame number t, state number i, and length τ of the sequence of state qi are set sequentially, and these values are supplied in individual blocks, and the processing stated above is effected on the values of i, t, τ.
Thus obtained φ(I, T+1) gives the likelihood generated by the feature vector sequence x1, x2, . . . , xT from the model λ.
Using this apparatus, the word voiced is recognized as follows.
The word to be recognized is supposed now to be w=1 to W, and it is assumed that a model λw is prepared for word w. At this time, when φ(I, T+1) obtained exactly same as in the previous processing is written as φw (I,T+1) to the model λw, the result of recognition is ##EQU30##
By the logarithm of the both sides of the recurrence formula in equation (19), the equations (19), (22)�(27) may be transformed into equations (19'), (22') �(27'), changing multiplications into additions.
However, in equations (19'), (22')�(27'), the following conditions are required.
&#934;(i,t)=log&#934;(i,r)
&#920;(i,&#964;)=log&#964;(i,&#964;)
&#915;(i,t,r)=logB(i,t,&#964;)
&#916;(i,r)=log d(i,&#964;)
Hence, ##EQU31## When &#964;=1, 2, it follows that
&#915;(i,t,1)=log bi1 (xt-1)                    (22')
When τ≧3, we obtain
(i,t,&#964;)=log bi1 (xt-&#964;)+&#915;(i,t-1,&#964;-2)+log bi.sub.&#964; (xt-1)                                                    (24')
Besides, since ##EQU32##
In this embodiment, in FIG. 9, the calculation on each block corresponding to the equation (19), (22)�(27) is changed to the equations (19'), (22')�(27'), and the organization itself is exactly the same.
Incidentally, the state persistence time probability density calculation part 907 is to calculate the probability A(i, τ) or θ(i, τ) of the length τ of the sequence of the state from the parameters of function in each state, and it may be replaced by a constitution in which the value of A(i,τ) or 0(i, τ) corresponding to the values of i, τ is stored in the table, and the value of A(i, τ) or 0(i, τ) corresponding to i, τ being set in the segment setting signal generation part 910 is searched.
Thus, according to this invention, in each state of the conventional HMM, it is possible to make an HMM in which the mean vector of the probability density function to give the occurrence probability of the feature vector in the same state may vary linearly depending on the length of the sequence of the state, and the precision of recognition can be enhanced. Besides, when this model is used, by making use of the nature of its features, it is possible to keep the quantity of calculation in recognition nearly at the same level as in the conventional HMM. In other words, without practically increasing the quantity of calculation, a high rate of recognition can be realized.
In this embodiment it is explained that the transition probability in same state is constant regardless of the number of staying times, but it is also possible, as a matter of course, to apply A(i, τ) in Γ-distribution or Poisson's distribution. In this case, the parameter of the assumed distribution is estimated from the training parameter, and it is obtained similarly in the method described in this invention. Since calculation of ##EQU33## in equations (9) through (11) is ct,τ (i), which is calculated by use of equations (22) through (27), calculation to obtain the above P(X, st-τ =i1, st =j1 |λ) can be made considerably easier by use of this method.
Patent CitationsCited PatentFiling datePublication dateApplicantTitleUS4780906 *Feb 17, 1984Oct 25, 1988Texas Instruments IncorporatedSpeaker-independent word recognition method and system based upon zero-crossing rate and energy measurement of analog speech signalUS4783802 *Sep 12, 1985Nov 8, 1988Kabushiki Kaisha ToshibaLearning system of dictionary for speech recognitionUS4783804 *Mar 21, 1985Nov 8, 1988American Telephone And Telegraph Company, At&T Bell LaboratoriesHidden Markov model speech recognition arrangementUS4783806 *Jan 22, 1987Nov 8, 1988Nippondenso Co., Ltd.Speech recognition apparatusUS4783809 *Nov 7, 1984Nov 8, 1988American Telephone And Telegraph Company, At&T Bell LaboratoriesAutomatic speech recognizer for real time operationUS4790017 *Dec 22, 1986Dec 6, 1988American Telephone And Telegraph Company, At&T Bell LaboratoriesSpeech processing feature generation arrangement* Cited by examinerReferenced byCiting PatentFiling datePublication dateApplicantTitleUS5388183 *Sep 30, 1991Feb 7, 1995Kurzwell Applied Intelligence, Inc.Speech recognition providing multiple outputsUS5444817 *Oct 2, 1992Aug 22, 1995Matsushita Electric Industrial Co., Ltd.Speech recognizing apparatus using the predicted duration of syllablesUS5452397 *Dec 11, 1992Sep 19, 1995Texas Instruments IncorporatedMethod and system for preventing entry of confusingly similar phases in a voice recognition system vocabulary listUS5473731 *Jul 20, 1993Dec 5, 1995Intel CorporationLattice based dynamic programming classification systemUS5553284 *Jun 6, 1995Sep 3, 1996Panasonic Technologies, Inc.Method for indexing and searching handwritten documents in a databaseUS5608840 *Jun 7, 1995Mar 4, 1997Matsushita Electric Industrial Co., Ltd.Method and apparatus for pattern recognition employing the hidden markov modelUS5608841 *Jun 3, 1993Mar 4, 1997Matsushita Electric Industrial Co., Ltd.Computer implemented signal processing apparatusUS5638489 *Jun 7, 1995Jun 10, 1997Matsushita Electric Industrial Co., Ltd.Computer implemented hidden markov model creating apparatusUS5649023 *Mar 27, 1995Jul 15, 1997Panasonic Technologies, Inc.Method and apparatus for indexing a plurality of handwritten objectsUS5710916 *Jun 16, 1995Jan 20, 1998Panasonic Technologies, Inc.Method and apparatus for similarity matching of handwritten data objectsUS5793891 *Jul 3, 1995Aug 11, 1998Nippon Telegraph And Telephone CorporationAdaptive training method for pattern recognitionUS5903865 *Aug 29, 1996May 11, 1999Pioneer Electronic CorporationMethod of preparing speech model and speech recognition apparatus using this methodUS5956676 *Aug 27, 1996Sep 21, 1999Nec CorporationPattern adapting apparatus using minimum description length criterion in pattern recognition processing and speech recognition systemUS6061652 *Jun 9, 1995May 9, 2000Matsushita Electric Industrial Co., Ltd.Speech recognition apparatusUS6434522 *May 28, 1997Aug 13, 2002Matsushita Electric Ind Co LtdCombined quantized and continuous feature vector HMM approach to speech recognitionUS6594392 *May 17, 1999Jul 15, 2003Intel CorporationPattern recognition based on piecewise linear probability density functionUS6691110Mar 22, 2001Feb 10, 2004International Business Machines CorporationSystem and method for discovering patterns with noiseUS6922668 *Feb 25, 2000Jul 26, 2005British Telecommunications Public Limited CompanySpeaker recognitionUS7003460May 3, 1999Feb 21, 2006Siemens AktiengesellschaftMethod and apparatus for an adaptive speech recognition system utilizing HMM modelsUS7778831Feb 21, 2006Aug 17, 2010Sony Computer Entertainment Inc.Voice recognition with dynamic filter bank adjustment based on speaker categorization determined from runtime pitchUS7877256 *Feb 17, 2006Jan 25, 2011Microsoft CorporationTime synchronous decoding for long-span hidden trajectory modelUS7970613Nov 12, 2005Jun 28, 2011Sony Computer Entertainment Inc.Method and system for Gaussian probability data bit reduction and computationUS8010358Feb 21, 2006Aug 30, 2011Sony Computer Entertainment Inc.Voice recognition with parallel gender and age normalizationUS8050922Jul 21, 2010Nov 1, 2011Sony Computer Entertainment Inc.Voice recognition with dynamic filter bank adjustment based on speaker categorizationUS8442829Feb 2, 2010May 14, 2013Sony Computer Entertainment Inc.Automatic computation streaming partition for voice recognition on multiple processors with limited memoryUS8442833Feb 2, 2010May 14, 2013Sony Computer Entertainment Inc.Speech processing with source location estimation using signals from two or more microphonesWO2002077910A1 *Mar 22, 2002Oct 3, 2002IbmSystem and method for discovering patterns with noise* Cited by examinerClassifications U.S. Classification704/246, 704/256, 704/E15.029, 704/236International ClassificationG10L15/14Cooperative ClassificationG10L15/144European ClassificationG10L15/14M1Legal EventsDateCodeEventDescriptionDec 9, 2003FPAYFee paymentYear of fee payment: 12Dec 29, 1999FPAYFee paymentYear of fee payment: 8Dec 26, 1995FPAYFee paymentYear of fee payment: 4RotateOriginal ImageGoogle Home - Sitemap - USPTO Bulk Downloads - Privacy Policy - Terms of Service - About Google Patents - Send FeedbackData provided by IFI CLAIMS Patent Services©2012 Google