Sign In to Follow Application
View All Documents & Correspondence

"Method Of Speech Recognition Using Variational Inference With Switching State Space Models"

Abstract: A method is developed which includes 1)defining a switching state space model for a contnuous valued hidden production-related parameter and the observed speech acoustics, and 2) approximating a posterior probability that provides the likelihood of a sequence of the hidden production-related parameters and a sequence of speech units based on a sequence of observed input values. In approximating the posterior probability, the boundaries of the speech units are embodiment, a mixture of Gaussian approximation is used. In another embodiment, an HMM posterior approximation is used.

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
26 March 2004
Publication Number
22/2006
Publication Type
INA
Invention Field
PHYSICS
Status
Email
Parent Application

Applicants

MICROSOFT CORPORATION
One Microsoft Way, Redmond, Washington 98052

Inventors

1. HAGAI ATTIAS
500 Wall St, Apt. 901, Seattle, Washington-98121
2. LEO JINGYU LEE
310-106 Seagram Dr., Waterloo, Ontario, N2L 3B8
3. LI DENG
22310 NE 30th Street, Sammamish, Washington 98074

Specification

METHOD OF SPEECH RECOGNITION USING
VARIATIONAL INFERENCE WITH SWITCHING
STATE SPACE MODELS
BACKGROUND OF THE INVENTION
The present invention relates to pattern recognition. In particular, the present invention iciaLcS to speecu rscoyniLion.
A pattern recognition system, such as a speech recognition system, takes an input signal and attempts to decode the signal to find a pattern represented by the signal. For example, in a speech recognition system, a speech signal (often referred to as a test signal) is received by the recognition system and is decoded to identify a string of words represented by the speech signal.
Many speech recognition systems utilize Hidden Markov Models in which phonetic units, which are also referred to as acoustic units or speech units, are represented by a single tier of connected states. Using a training signal, probability distributions for occupying the states and for transitioning between states are determined for each of the phonetic units. To decode a speech signal, the signal is divided into frames and each frame is transformed into a feature vector. The feature vectors are then compared to the distributions for the states to identify a most likely sequence of HMM states that can be represented by the frames. The phonetic unit that corresponds to that sequence is then selected.

Although HMM-based recognition systems perform well in many relatively simple speech recognition tasks, they do not model some important dynamic aspects of speech directly (and are known to perform poorly for difficult tasks such as conversational speech) . As a result, they are not able to accommodate dynamic articulation differences between the speech signals used for training and the speech signal being decoded.
For example, in casual speaking settings, speakers tend to hypo-articulate, or under articulate their speech. This means that the recursively defined trajectory of the user's speech articulation may not reach its intended target before it is redirected to a next target. Because the training signals are typically formed using a "reading" style of speech in which the speaker provides more fully articulated speech material than in hypo-articulated speech, the hypo-articulated speech does not match the trained HMM states. As a result, the recognizer provides less than ideal recognition results for casual speech.
A similar problem occurs with hyper-articulated speech. In hyper-articulated speech, the speaker exerts an extra effort to make the different sounds of their speech distinguishable. This extra effort can include changing the sounds of certain phonetic units so that they are more distinguishable from similar sounding phonetic units, holding the sounds of certain phonetic units longer, or

transitioning between sounds more abruptly so that each sound is perceived as being distinct from its neighbors. Each of these mechanisms makes it more difficult to recognize the speech using an HMM system because each technique results in a set of feature vectors for the speech signal that often do not match well to the feature vectors present in the training data.
Even if the feature vectors corresponding to the hyper- or hypo-articulated speech match those in the training data (which may be very expensive to obtain), the conventional HMM technique will still perform poorly because of the increased phonetic confusability for the HMM system that does not take into account the underlying causes of the changes in the feature vector trajectories induced by hyper- or hypo-articulation. This problem is addressed specifically by the current invention.
HMM systems also have trouble dealing with changes in the rate at which people speak. Thus, if someone speaks slower or faster than the training signal, the HMM system will tend to make more errors decoding the speech signal.
Alternatives to HMM systems have been proposed. In particular, it has been proposed that the statistically defined trajectory or behavior of a production-related parameter of the speech signal should be modeled directly. Since the production-related values cannot be measured directly, these models are known as Hidden Dynamic Models (HDM).

Hidden Dynamic Models are one example of a class of models known as switching state space models, which model the value of a parameter for a current frame based on the value of the parameter in one or more previous frames and one or more constants selected for the frame.
One problem with HDMs is that it is difficult to train them because common training algorithms, such as the Expectation-Maximization algorithm, become intractable for HDMs. This is due largely to the fact that in order to obtain the posterior probability for a sequence of hidden parameters given a sequence of input values, the probability for the combination of a hidden parameter and a possible speech unit must be summed over all possible sequences of speech units. This leads to a computation that increases exponentially with each additional frame of input values.
To overcome this problem, some systems of the prior art have assumed a fixed sequence of speech units during training. The boundaries between the speech units that define this sequence are set using HMM training before training the HDM. This is not theoretically optimal because the boundary parameters of the speech units are being fixed based on a different criteria than the other parameters in the hidden dynamic model.
Thus, a training system is needed that allows the boundaries to be trained with the other

parameters of a hidden dynamic model while overcoming the intractability associated with such training.
SUMMARY OF THE INVENTION
A method includes defining a switching state space model of a hidden production-related parameter and approximating a posterior probability that provides the likelihood of a sequence of the hidden production-related parameters and a sequence of speech units based on a sequence of input values. In approximating the posterior probability, the boundaries of the speech units are not fixed. Under one embodiment, a mixture of Gaussian approximation is used. In another embodiment, an HMM posterior approximation is used.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a block diagram of one computing environment in which the present invention may be practiced.
FIG. 2 is a block diagram of an alternative computing environment in which the present invention may be practiced.
FIG. 3 is a block diagram of a speech recognition system under one embodiment of the present invention.
DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS
FIG. 1 illustrates an example of a suitable computing system environment 10 0 on which the invention may be implemented. The computing system environment 100 is only one example of a suitable

computing environment and is not intended to suggest any limitation as to the scope of use or functionality of the invention. Neither should the computing environment 10 0 be interpreted as having any dependency or requirement relating to any one or combination of components illustrated in the exemplary operating environment 100.
The invention is operational with numerous other general purpose or special purpose computing system environments or configurations. Examples of well-known computing systems, environments, and/or configurations that may be suitable for use with the invention include, but are not limited to, personal computers, server computers, hand-held or laptop devices, multiprocessor systems, microprocessor-based systems, set top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, telephony systems, distributed computing environments that include any of the above systems or devices, and the like.
The invention may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. The invention is designed to be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a

communications network. In a distributed computing environment, program modules are located in both local and remote computer storage media including memory storage devices.
With reference to FIG. 1, an exemplary-system for implementing the invention includes a general-purpose computing device in the form of a computer 110. Components of computer 110 may include, but are not limited to, a processing unit 120, a system memory 130, and a system bus 121 that couples various system components including the system memory to the processing unit 120. The system bus 121 may be any of several types of bus structures including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures. By way of example, and not limitation, such architectures include Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA) bus, Video Electronics Standards Association (VESA) local bus, and Peripheral Component Interconnect (PCI) bus also known as Mezzanine bus.
Computer 110 typically includes a variety of computer readable media. Computer readable media can be any available media that can be accessed by computer 110 and includes both volatile and nonvolatile media, removable and non-removable media. By way of example, and not limitation, computer readable media may comprise computer storage media and communication media. Computer storage media

includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by computer 110. Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. The term "modulated data signal" means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media. Combinations of any of the above should also be included within the scope of computer readable media.
The system memory 13 0 includes computer storage media in the form of volatile and/or nonvolatile memory such as read only memory (ROM) 131

and random access memory (RAM) 132 . A basic input/output system 133 (BIOS), containing the basic routines that help to transfer information between elements within computer 110, such as during startup, is typically stored in ROM 131. RAM 132 typically contains data and/or program modules that are immediately accessible to and/or presently being operated on by processing unit 120. By way of example, and not limitation, FIG. 1 illustrates operating system 134, application programs 135, other program modules 13 6, and program data 13 7.
The computer 110 may also include other removable/non-removable volatile/nonvolatile computer storage media. By way of example only, FIG. 1 illustrates a hard disk drive 141 that reads from or writes to non-removable, nonvolatile magnetic media, a magnetic disk drive 151 that reads from or writes to a removable, nonvolatile magnetic disk 152, and an optical disk drive 155 that reads from or writes to a removable, nonvolatile optical disk 156 such as a CD ROM or other optical media. Other removable/nonremovable, volatile/nonvolatile computer storage media that can be used in the exemplary operating environment include, but are not limited to, magnetic tape cassettes, flash memory cards, digital versatile disks, digital video tape, solid state RAM, solid state ROM, and the like. The hard disk drive 141 is typically connected to the system bus 121 through a non-removable memory interface such as interface 14 0, and magnetic disk drive 151 and optical disk drive

155 are typically connected to the system bus 121 by a removable memory interface, such as interface 150.
The drives and their associated computer storage media discussed above and illustrated in FIG. 1, provide storage of computer readable instructions, data structures, program modules and other data for the computer 110. In FIG. 1, for example, hard disk drive 141 is illustrated as storing operating system 144, application programs 145, other program modules 146, and program data 147. Note that these components can either be the same as or different from operating system 134, application programs 135, other program modules 13 6, and program data 13 7. Operating system 144, application programs 145, other program modules 146, and program data 147 are given different numbers here to illustrate that, at a minimum, they are different copies.
A user may enter commands and information into the computer 110 through input devices such as a keyboard 162, a microphone 163, and a pointing device 161, such as a mouse, trackball or touch pad. Other input devices (not shown) may include a joystick, game pad, satellite dish, scanner, or the like. These and other input devices are often connected to the processing unit 12 0 through a user input interface 160 that is coupled to the system bus, but may be connected by other interface and bus structures, such as a parallel port, game port or a universal serial bus (USB) . A monitor 191 or other type of display device is also connected to the

system bus 121 via an interface, such as a video interface 190. In addition to the monitor, computers may also include other peripheral output devices such as speakers 197 and printer 196, which may be connected through an output peripheral interface 195.
The computer 110 is operated in a networked environment using logical connections to one or more remote computers, such as a remote computer 180. The remote computer 18 0 may be a personal computer, a hand-held device, a server, a router, a network PC, a peer device or other common network node, and typically includes many or all of the elements described above relative to the computer 110. The logical connections depicted in FIG. 1 include a local area network (LAN) 171 and a wide area network (WAN) 173, but may also include other networks. Such networking environments are commonplace in offices, enterprise-wide computer networks, intranets and the Internet.
When used in a LAN networking environment, the computer 110 is connected to the LAN 171 through a network interface or adapter 170. When used in a WAN networking environment, the computer 110 typically includes a modem 172 or other means for establishing communications over the WAN 173, such as the Internet. The modem 172, which may be internal or external, may be connected to the system bus 121 via the user input interface 160, or other appropriate mechanism. In a networked environment, program modules depicted relative to the computer

110, or portions thereof, may be stored in the remote memory storage device. By way of example, and not limitation, FIG. 1 illustrates remote application programs 185 as residing on remote computer 180. It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between the computers may be used.
FIG. 2 is a block diagram of a mobile device 200, which is an exemplary computing environment. Mobile device 200 includes a microprocessor 202, memory 204, input/output (I/O) components 206, and a communication interface 208 for communicating with remote computers or other mobile devices. In one embodiment, the afore-mentioned components are coupled for communication with one another over a suitable bus 210.
Memory 204 is implemented as non-volatile electronic memory such as random access memory (RAM) with a battery back-up module (not shown) such that information stored in memory 2 04 is not lost when the general power to mobile device 200 is shut down. A portion of memory 204 is preferably allocated as addressable memory for program execution, while another portion of memory 204 is preferably used for storage, such as to simulate storage on a disk drive.
Memory 2 04 includes an operating system 212, application programs 214 as well as an object store 216. During operation, operating system 212 is preferably executed by processor 202 from memory 204.

Operating system 212, in one preferred embodiment, is a WINDOWS® CE brand operating system commercially available from Microsoft Corporation. Operating system 212 is preferably designed for mobile devices, and implements database features that can be utilized by applications 214 through a set of exposed application programming interfaces and methods. The objects in object store 216 are maintained by applications 214 and operating system 212, at least partially in response to calls to the exposed application programming interfaces and methods.
Communication interface 208 represents numerous devices and technologies that allow mobile device 200 to send and receive information. The devices include wired and wireless modems, satellite receivers and broadcast tuners to name a few. Mobile device 200 can also be directly connected to a computer to exchange data therewith. In such cases, communication interface 208 can be an infrared transceiver or a serial or parallel communication connection, all of which are capable of transmitting streaming information.
Input/output components 206 include a variety of input devices such as a touch-sensitive screen, buttons, rollers, and a microphone as well as a variety of output devices including an audio generator, a vibrating device, and a display. The devices listed above are by way of example and need not all be present on mobile device 200. In addition, other input/output devices may be attached

to or found with mobile device 200 within the scope of the present invention.
The present invention provides a generative model of speech. Under this model, speech is represented as the output of an attempt by the speaker to phonetically implement a linguistic definition of a sequence of speech units. During this attempt, the speaker produces a production-related value that follows a statistically defined trajectory (using the state-space formulation with recursive noise) toward a target associated with a current speech unit. Under embodiments of the present invention, this trajectory is modeled as a switching state-space model.
The model of the present invention is a special form of a Hidden Trajectory Model where the trajectory is defined recursively with noise added at each frame. This state-space model includes two layers, a dynamic or trajectory model component that describes hidden production-related parameters (such as vocal tract resonance frequencies) , and a mapping model component that translates the production-related parameters into observable acoustic features such as Mel-Frequency •Cepstral Coefficients. The state equation in the state-space model predicts a sequence of continuous state values (xlf..., xn,..., xN) for a production-related parameter. The mapping model or the observation equation predicts a sequence of acoustic observation vectors yn given the sequence of continuous hidden state values.

The recursively defined trajectory and mapping models can be succinctly represented by the two equations:
yn=C.sx,,+cs+v Eq.2
where n and s are frame number and speech unit index respectively, x is the hidden production-related parameter, y is the acoustic feature vector, As and Cs are speech-unit dependent system matrices, \is is a speech-unit dependent target, I is the identity matrix, c^. is a speech-unit dependent constant, and w and v are noise terms.
Under one embodiment, the models of equations 1 and 2 are expressed in terms of probability distributions as:
p(sn=s\sn_l=s') = xss, Eq.3
/?(xB|jB=55xB_1) = JV(xII|AIxB_1+a,,BJ) Eq.4
p(yn\sn = s,TLn) = N(yn\Csxn +cs,Vs) Eq. 5
where Bs and Ds are precision matrices (the inverse of a covariance matrix), which are based on a variance associated with noise terms w and v and aJ=(I-AJ)nJ.
In general, training the model parameters of equations 3-5 requires an iterative two-step process. The first step is known as inference,
during which a posterior distribution p(sl:N,xhN yhN) is calculated given an initial set of model parameters.

During the second step, known as learning or parameter estimation, the model parameters are updated. These steps are repeated until the model parameters converge or some maximum number of iterations is reached. When performing generalized Expectation Maximization training, the E-step is the inference step and the M-step is the learning step.
The inference step cannot be performed directly for the models of Equations 3-5 because the posterior calculation is intractable. One embodiment of the present invention overcomes this problem by-approximating the posterior distribution with a mixture of Gaussians model. Another embodiment of the invention overcomes this problem by approximating the posterior distribution using HMM posteriors. Using such approximations and a variational computation, it is possible to estimate the posterior probability. Each approximation is discussed separately below.
Mixture Of Guassians
Under the mixture of Gaussians embodiment of the present invention, the posterior probability
p(sl:N,x1N yLN) is approximated as g(s1;A,,x,.A, y1:N) , which is defined as:
W MS n ^V.N ) Eq - 6
where q() represents a probability. Note that in the approximation of equation 6, the probability of a production-related value at frame n is not dependent

on the value of the production-related parameters during other time frames and is only dependent on the value of the speech unit at frame n and not on the value of the speech unit for other frames. This greatly reduces the number of computations that must be made in order to calculate the approximation.
By minimizing a divergence between the approximation and the actual posterior distribution, the present inventors have found that the probability
(l(xn s n ' y \-.N ) follows a Gaussian distribution:
q(Xn\sn>y™) = N(*\psj,J,*) Ec3-7
where the mean psn and the covariance Tsn are given by:
r, „ = C]D.C, + B, + £ rwAT,ByA, Eq. 8
s'
Ts,nPs,n = A(AZ^,«-lA',«-l+a,) s'
+ Z7s;n+AlBs,(ps,n+] -as.) Eq. 9
+ clDs(yn-cs)
where ysn = q(sn - syVN) is the probability of a speech unit at frame n and is computed as:
log^,n = /,+/2+/3 Eq.10

where:
/i = \ \^^--\ogT-^-~2{cs-yn)TDsCspsn
[ In In
- (c. - ynYDs(c, - yn)+ < r,,n>ri + /\X« > -pLr,,n/\«
log^- < 5,,r,"i + p,nArn > +2aT,B,p,, - aTsBsas
In Eq.ll
h = iS^-, {- < ^5,^,,^ + p,^^^^ >
1 Eq.12
-2(flf,-pJ>B)r5^5.pJ.II_1+21og^,J
f B
fi = ^Y,ysnA^-^~-2{as,-p,n+lfBs,As,ps,n
y in
--2aTs,Bs,p,n+, -aT5,B,a,+2\ogns,s}
Eq.13
where <> denotes a scalar obtained by summing up the element-wise product of two equal-sized vectors or matrices, and s' is an index for speech units for the summations. In the practice of this invention, the summation terms indicated by s' variable (discrete state) in the above equation have been drastically reduced during the training phase since the training script, is available that strongly constrains the possible s sequence.

Under one embodiment, the inference step is performed by first determining ysn for each s,n combination using Equation 10 and previous values of psn and Tsn . Since the computation of ysn in Equation
10 is dependent on ysn, Equation 10 is evaluated iteratively until ysn converges. Equation 8 is then evaluated using the new value of ysn from equation 10 to produce an updated value of F5n. The updated value of Tsti is then used with ysn to determine psn in
Equation 9. Note that Equations 8 and 9 are coupled linear equations and can be solved efficiently by sparse matrix techniques. This process can be repeated iteratively to improve the accuracy of the values for ysn, Tsn , and psn .
After the inference step is complete, the values for ysn, Tsn , and psn are used in the learning step to set the values of model parameters 0 = ]AVS,ax.s,Bvs,Cvs,cvs,DIS| according to:
A = —— 5X,AAHfsnZ?v,-iA'n-i -Z^'.-.A,nZ^.»-iAVi
LJs,n y" A - ) "
f \f \^
Ljs, \- A « ) -
Eq. 14
as=——Z^«^,«~^Z^,«Z^>-i^>-i Ec3- 15

Zn^.» " |_ " Vs' J j \ " )
+ As Z ^.« Z r.-.B-iA-.»-I kr -aJ Z ^.."A,,
+ a^ Z^.JZ^>-i^,«-i A*\+a,aT,
Eq. 16
^— 2X»A, Z^^A,« -Z^fc+ PS*PL)
c, = Y— Hrs,nyn -csY Xl:K \yv.N J = IN Xn \Sn » ^l.V ] ' EH 5» K'-l ' ^' j " A 51K* ) EC3 " 2 °
As in the mixture of Gaussian model, the probability q(xn sn,yVN) in the HMM Posterior model is a Gaussian distribution with a mean psn and a convariance matrix Fsn . The mean psn and the covariance matrix Tsn axe calculated using equations 8 and 9 above with a new definition of ysn . In particular, ysn is determined using a backward-forward process that also defines a posterior transition probability r/s,sn = q{sn = s\sn_x = s',yVN) .
The backward-forward process begins by initializing a value zjA,+1=l for all s. During the backward pass, the following calculations are performed for n = N,...,2:
zs,n = ZexPV->k>+i
s Eq. 21
77 - —exnf^ \ Ec3- 22
7lss\n - eXP\/.K',n fs'.n+l
■" s,n
For n = \ :
', - Iexp(/,.,K2
r,, - iexp(/,,,)z,,2 ^q. 24

During the forward pass the following calculation is performed for n-2,...,N :
ys.n = Y/i**y**-\ Ec5- 25
A'
where:
/",.,, = -|log^ --2(C. - yr)~D.C.p..-{cs - v.YDr(c, - vr)
2[ 1n\ - - * • -
-log^i + {Tsnj;]n+psj,pln)-plJsn Psn+\og^-
2n In
-(A7sBsAs,T:\_, + A^A>-!)-2(as - A,JBAPS,^~(B,,T^ + P^pTJ + 2aTsBsPsn - a*B,a, + 2 log*,,}
Eq. 26
/..i = -\l°&—--2(c,-yijD1CJpJ,-{c,-yljD,(cs-y])
2 [ 2TT
r R
~ log ^- + < r,,, r;\ + Ps, p\, > - PTs,vs, A , + log—
In In
- + 2<*T,B.Po' Q +■ Vion cp^ o^^o^ PC? +~Vio d'ncip/^Vi
unit for frame n.
To avoid unnatural speech unit switching, this recognition system can be augmented with a transition matrix that adds a minimal duration constraint to the speech units. Thus, in the transition matrix, each transition between speech units has an associated probability, with the probability for remaining within a speech unit being higher than the probability of transitioning to another speech unit, at least for some minimum number of frames for each speech unit. In order to perform speech recognition using this transition matrix, a Viterbi decoder may be used that identifies the most likely path through the possible speech units given the transition probabilities and the ysn
probabilities.
For the HMM posterior approximation, speech recognition is performed by determining ysn, Vss\n , Tsn ,
and psn based on the observation feature vectors and
the trained model parameters 0 = \AVS,avs,Bvs,Cvs,cvs,Dvs \.
The speech unit probabilities for the first frame,
ysl , and the transition probabilities, T]ss,n, are then

used in Viterbi decoding to identify a most likely sequence of speech units s. In terms of equations, the Viterbi decoder finds a maximum path score VN according to:
Vx{s)=Y,t Eq. 35
77 \c'\— mcy 7/ IPVI I V~ 1C
'"v" ; ~ \<7 J - ^. - -As with the mixture of Gaussian approximation, a duration constraint can be added to the HMM posterior decoding by modifying the transition probabilities to increase the likelihood of remaining within a speech unit relative to the likelihood of transitioning to other speech units.
FIG. 3 provides a block diagram of a speech recognition system in which the present invention can be used. In FIG. 3, a speaker 300, either a trainer or a user, speaks into a microphone 304. Microphone 304 also receives additive noise from one or more noise sources 302. The audio signals detected by microphone 3 04 are converted into electrical signals that are provided to analog-to-digital converter 306.
A-to-D converter 306 converts the analog signal from microphone 304 into a series of digital values. In several embodiments, A-to-D converter 306 samples the analog signal at 16 kHz and 16 bits per sample, thereby creating 32 kilobytes of speech data per second. These digital values are provided to a frame constructor 3 07, which, in one embodiment, groups the values into 25 millisecond frames that start 10 milliseconds apart.

The frames of data created by frame constructor 307 are provided to feature extractor 308, which extracts a feature from each frame. Examples of feature extraction modules include modules for performing Linear Predictive Coding (LPC) , LPC derived cepstrum, Perceptive Linear Prediction (PLP), Auditory model feature extraction, and Mel-Frequency Cepstrum Coefficients (MFCC) feature extraction. Note that the invention is not limited to these feature extraction modules and that other modules may be used within the context of the present invention.
The series of feature vectors is provided to a trainer 324, which uses the feature vectors and a training text 326 to train a generative model 328 of the present invention, if the input signal is a training signal. For example, the EM training algorithm described above may be used to train the generative model parameters 0 = )Avs,al.s,Bl.s,Cvs,cl.s,Dl.sj.
As discussed above, in order to train generative model 328, trainer 324 trains an approximation model 327, such as the mixture of Gaussian approximation or the HMM posterior approximation discussed above.
As mentioned above, the EM training algorithm may be iterative. In such cases, trainer 324 accesses generative model 328 while training approximation model 327 and accesses approximation model 327 while training generative model 328.

Once generative model 328 has been trained, an input speech signal is converted into a stream of observation feature vectors. These feature vectors are provided to trainer 324, which sets the model parameters for approximation model 327 based on the observation vectors and the parameters of generative model 328. Decoder 312 then identifies a most likely sequence of words based on the stream of feature vectors, a lexicon 314, a language model 316, approximation model 327 and generative model 328. Under one embodiment, lexicon 314 defines a finite state network that is traversed by decoder 312 to identify a word from a sequence of feature vectors. Note that as discussed above, this network, referred to above as a transition matrix, may include duration constraints for the speech units that make up the words.
The most probable sequence of hypothesis words is provided to a confidence measure module 320. Confidence measure module 320 identifies which words are most likely to have been improperly identified by the speech recognizer, based in part on a secondary acoustic model(not shown). Confidence measure module 320 then provides the sequence of hypothesis words to an output module 322 along with identifiers indicating which words may have been improperly identified. Those skilled in the art will recognize that confidence measure module 320 is not necessary for the practice of the present invention.

Although the present invention has been described with reference to particular embodiments, workers skilled in the art will recognize that changes may be made in form and detail without departing from the spirit and scope of the invention.

Documents

Application Documents

# Name Date
1 603-del-2004-priority document.pdf 2011-08-21
1 603-DEL-2004_EXAMREPORT.pdf 2016-06-30
2 603-del-2004-form5.pdf 2011-08-21
2 603-del-2004-abstract.pdf 2011-08-21
3 603-del-2004-form3.pdf 2011-08-21
3 603-del-2004-assignments.pdf 2011-08-21
4 603-del-2004-claims.pdf 2011-08-21
4 603-del-2004-form26.pdf 2011-08-21
5 603-del-2004-form2.pdf 2011-08-21
5 603-del-2004-correspondence.pdf 2011-08-21
6 603-del-2004-form1.pdf 2011-08-21
6 603-del-2004-description.pdf 2011-08-21
7 603-del-2004-drawings.pdf 2011-08-21
8 603-del-2004-form1.pdf 2011-08-21
8 603-del-2004-description.pdf 2011-08-21
9 603-del-2004-form2.pdf 2011-08-21
9 603-del-2004-correspondence.pdf 2011-08-21
10 603-del-2004-claims.pdf 2011-08-21
10 603-del-2004-form26.pdf 2011-08-21
11 603-del-2004-assignments.pdf 2011-08-21
11 603-del-2004-form3.pdf 2011-08-21
12 603-del-2004-form5.pdf 2011-08-21
12 603-del-2004-abstract.pdf 2011-08-21
13 603-DEL-2004_EXAMREPORT.pdf 2016-06-30
13 603-del-2004-priority document.pdf 2011-08-21