1. Field of the Invention
The present invention relates generally to speech recognition and, more particularly, to systems and methods for providing online fast speaker adaptation in a speech recognition system.
2. Description of Related Art
Speaker information can be used in a speaker-independent speech recognition system to adapt the speech recognition process and, thereby, improve the accuracy of the speech recognition results. The goal of speaker adaptation is not to permanently change the models used by the speech recognition system, but to temporarily adapt the model so that it better represents the words of the speaker whose speech the speech recognition system is trying to recognize.
Speaker clustering logic 120 groups speech segments together by speaker. In other words, speaker clustering logic 120 determines which speech segments were produced from the same speaker and groups these segments into clusters. Transformation estimator 130 estimates a transformation matrix for each cluster that, when applied to the audio, moves the audio data closer to the model. To do this, transformation estimator 130 typically collects data, estimates the transformation matrix from the data, and applies the transformation matrix to the models.
Transformation estimator 130 estimates the transformation matrix by accumulating statistics using forward and backward alignment, which is a probabilistic technique for estimating a transformation based on marginal contributions of certain probabilities. Typically, transformation estimator 130 uses straight cepstrals, a first order difference (i.e., a first derivative that indicates the differences between adjacent cepstrals), and a second order difference (i.e., a second derivative that indicates how fast the cepstrals are changing). Transformation estimator 130 uses fourteen features from each group to build a 42×42 transformation matrix that is applied to the audio data.
Decoder 140 then decodes the speech segments with adaptation using the transformation matrices. Because decoder 140 adapts based on the speaker, decoder 140 produces transcriptions of the speech segments that are better than the transcriptions produced by decoder 110.
The conventional system has several drawbacks. For example, the conventional system requires two passes of the decoder (decoder 110 and decoder 140). In other words, each speech segment is decoded twice. Further, the speaker clustering performed by speaker clustering logic 120 is a non-causal function because all of the speech segments must be available before the clustering can be accomplished. These factors result in delays that make a real-time operation impractical.
As a result, there exists a need for systems and methods that improve the performance of speaker adaptation in a speech recognition system.
Systems and methods consistent with the present invention provide adaptation based on speaker turns in a streamlined and efficient manner that may be used in a real-time environment. Within each speaker turn, the speech may be segmented into small chunks. During decoding of the first chunk, no adaptation may be performed. Adaptation may then be performed on the second and subsequent chunks within the same speaker turn using a transformation matrix that is estimated from the transcriptions resulting from previous chunks.
In one aspect consistent with the principles of the invention, a system performs speaker adaptation when performing speech recognition. The system receives an audio segment and identifies the audio segment as a first audio segment or a subsequent audio segment associated with a speaker turn. The system then decodes the audio segment to generate a transcription associated with the first audio segment when the audio segment is the first audio segment and estimates a transformation matrix based on the transcription associated with the first audio segment. The system decodes the audio segment using the transformation matrix to generate a transcription associated with the subsequent audio segment when the audio segment is the subsequent audio segment.
In another aspect consistent with the principles of the invention, a decoder within a speech recognition system is provided. The decoder includes a forward decoding stage, a backward decoding stage, and a rescoring stage. The forward decoding stage, the backward decoding stage, and/or the rescoring stage is/are configured to receive an audio segment, identify the audio segment as a first audio segment or a subsequent audio segment associated with a speaker turn, decode the audio segment to generate a transcription associated with the first audio segment when the audio segment is the first audio segment, estimate a transformation matrix based on the transcription associated with the first audio segment, and decode the audio segment using the transformation matrix to generate a transcription associated with the subsequent audio segment when the audio segment is the subsequent audio segment.
In yet another aspect consistent with the principles of the invention, a speech recognition system is provided. The speech recognition system includes speaker change detection logic and a decoder. The speaker change detection logic receives audio segments and identifies boundaries between speakers associated with the audio segments as speaker turns. The decoder receives, from the speaker change detection logic, one of the audio segments as a received audio segment associated with one of the speaker turns, and identifies the received audio segment as a first audio segment or a subsequent audio segment associated with the speaker turn. The decoder decodes the received audio segment to generate a transcription associated with the first audio segment when the received audio segment is the first audio segment and constructs a transformation matrix based on the transcription associated with the first audio segment. The decoder decodes the received audio segment using the transformation matrix to generate a transcription associated with the subsequent audio segment when the received audio segment is the subsequent audio segment.
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate the invention and, together with the description, explain the invention. In the drawings,
The following detailed description of the invention refers to the accompanying drawings. The same reference numbers in different drawings may identify the same or similar elements. Also, the following detailed description does not limit the invention. Instead, the scope of the invention is defined by the appended claims and equivalents.
Systems and methods consistent with the present invention provide online speaker adaptation based on speaker turns. Within each speaker turn, the speech may be divided into small segments. During decoding, speaker adaptation may be performed on second and subsequent segments within the same speaker turn using a transformation matrix that is estimated from the transcriptions generated from previous segments.
Phone class decoder 210 may also classify the audio stream into a number of broad classes, such as vowels, fricatives, narrowband, wideband, coughing, gender, and silence. Phone class decoder 210 may generate an output signal that indicates the classification for a particular portion of the audio stream. The output signal may be a continuous signal or a signal that classifies the audio stream in predetermined length segments (e.g., 30 second chunks).
One implementation of phone class decoder 210 is described in copending U.S. patent application, Ser. No. 10/685585, entitled “Systems and Methods for Classifying Audio into Broad Phoneme Classes,” filed on Oct. 16, 2003. Another implementation of phone class decoder 210 is described in D. Liu et al., “Fast Speaker Change Detection for Broadcast News Transcription and Indexing,” Proceedings of Eurospeech 99, September 1999, pp. 1031-1034. The preceding two documents are incorporated herein by reference.
Speaker change detection logic 220 may locate the boundaries between speakers (i.e., speaker turns) in the input audio stream. Speaker change detection logic 220 may also divide the audio stream into approximately four second segments within the speaker turns. To identify the speaker turns, speaker change detection logic 220 may implement techniques similar to those described in J. Makhoul et al., “Speech and Language Technologies for Audio Indexing and Retrieval,” Proceedings of the IEEE, Vol. 88, No. 8, August 2000, pp. 1338-1353, which is incorporated herein by reference. Speaker change detection logic 220 may output audio data as approximately four second segments with indications of changes in speaker turns.
Decoder 230 may perform speaker adaptation to generate transcription results based on the audio segments and the speaker turns.
Forward decoding stage 310 may include a very robust HMM and perform a very fast rough match. Forward decoding stage 310 may attempt to narrow the search space for a correct answer, but does not try to find the correct answer. Instead, forward decoding stage 310 simply makes sure not to lose the correct answer. Backward decoding stage 320 may include a more complex HMM and perform a slower, more accurate match. Backward decoding stage 320 starts with a smaller search space (i.e., the search space narrowed by forward decoding stage 310) and narrows the search space even further.
Rescoring stage 330 may include an even more complex HMM and perform a slower accurate match. Rescoring stage 330 starts with a much smaller search space (i.e., the search space narrowed by forward decoding stage 310 and backward decoding stage 320) and selects the best answer (i.e., the correct word). Each of these stages progressively narrows the search space to find the correct word.
Speaker adaptation may apply to any or all of these stages.
Processing may begin when forward decoding stage 310 receives an audio segment (e.g., an utterance) from speaker change detection logic 220. Forward decoding stage 310 may determine whether this audio segment is a first audio segment of a speaker turn (act 410). First audio segments may be identified by speaker change indications provided by speaker change detection logic 220. If the audio segment is a first audio segment, then forward decoding stage 310 may decode the audio segment using one or more speaker-independent HMMs to obtain transcription results (act 420).
Forward decoding stage 310 may then reset the transformation matrix for the current speaker to a predetermined state (act 430). The transformation matrix may be reset because information regarding a different speaker is typically not useful when trying to decode speech from the current speaker.
Forward decoding stage 310 may then estimate the transformation matrix based on transcription results and, possibly, other features associated with the first audio segment (act 440). Unlike conventional approaches that use fourteen features associated with each of the straight cepstrals, the first order difference, and the second order difference to build a 42×42 matrix, first decoding stage 310 may use only the fourteen features associated with the straight cepstrals to build a 14×14 matrix according to an implementation consistent with the principles of the invention. In this way, forward decoding stage 310 need only estimate a 14×14 matrix instead of a 42×42 matrix. To construct the 42×42 matrix, forward decoding stage 310 may replicate the 14×14 matrix three times.
Returning to
When the audio segment received by forward decoding stage 310 is not the first audio segment in a speaker turn, then forward decoding stage 310 may decode the audio segment using the transformation matrix to obtain transcription results (act 460). Forward decoding stage 310 may then use the transcription results to reestimate the transformation matrix (act 440). The transformation matrix is a cumulative matrix that is incrementally improved with every audio segment in a speaker turn. The matrix may be reestimated with each new segment from the same speaker. This serves to incrementally improve the transformation matrix and, thus, the transcription results.
Returning to
Backward decoding stage 320 may receive the audio segments from forward decoding stage 310. When an audio segment corresponds to a first audio segment in a speaker turn, backward decoding stage 320 may reset its transformation matrix. Backward decoding stage 320 may then process the audio segments in a manner similar to that described above and output them to rescoring stage 330 in approximately four second utterances. Rescoring stage 330 may receive the audio segments from backward decoding stage 320. When an audio segment corresponds to a first audio segment in a speaker turn, rescoring stage 330 may reset its transformation matrix. Rescoring stage 330 may then process the audio segments in a manner similar to that described above and output transcription results.
In an alternate implementation consistent with the principles of the invention, backward decoding stage 320 and/or rescoring stage 330 may perform speaker-turn-based adaptation instead of the incremental adaptation described above. According to speaker-turn-based adaptation, backward decoding stage 320 and/or rescoring stage 330 may wait for the entire speaker turn to complete in the previous stage before decoding the audio segments of the speaker turn. In this way, the transcription results generated by the previous stage(s) may be used to construct the transformation matrix. The transformation matrix may then be used to decode the audio segments, including the first audio segment, in the speaker turn.
In yet another implementation consistent with the principles of the invention, backward decoding stage 320 and/or rescoring stage 330 may use information from the previous stage(s) when performing adaptation. For example, when backward decoding stage 320 processes a second audio segment in a speaker turn, backward decoding stage 320 may use information (e.g., transcription results) generated by forward decoding stage 310 when processing the first and second audio segments and information (e.g., transcription results) generated by backward decoding stage 320 when processing the first audio segment to construct the transformation matrix.
Systems and methods consistent with the present invention provide online speaker adaptation based on speaker turns. Within each speaker turn, the speech may be segmented into small chunks. Speaker adaptation may be performed on second and subsequent chunks within the same speaker turn using a transformation matrix that is estimated from the transcriptions resulting from previous chunks.
The following benefits may be obtained by an online speaker adaptation process according to an implementation consistent with the principles of the invention. For example, the speaker adaptation process involves only a single pass of the decoder (see
The foregoing description of preferred embodiments of the present invention provides illustration and description, but is not intended to be exhaustive or to limit the invention to the precise form disclosed. Modifications and variations are possible in light of the above teachings or may be acquired from practice of the invention. For example, while a series of acts has been described with regard to
Further, certain portions of the invention have been described as “logic” that performs one or more functions. This logic may include hardware, such as an application specific integrated circuit or a field programmable gate array, software, or a combination of hardware and software.
No element, act, or instruction used in the description of the present application should be construed as critical or essential to the invention unless explicitly described as such. Also, as used herein, the article “a” is intended to include one or more items. Where only one item is intended, the term “one” or similar language is used. The scope of the invention is defined by the claims and their equivalents.
This application claims priority under 35 U.S.C. § 119 based on U.S. Provisional Application No. 60/419,214, filed Oct. 17, 2002, the disclosure of which is incorporated herein by reference. This application is related to the concurrently-filed U.S. application Ser. No. 10/685,575, titled “Systems and Methods for Classifying Audio into Broad Phoneme Classes,” which is incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
4879648 | Cochran et al. | Nov 1989 | A |
4908866 | Goldwasser et al. | Mar 1990 | A |
5317732 | Gerlach, Jr. et al. | May 1994 | A |
5404295 | Katz et al. | Apr 1995 | A |
5418716 | Suematsu | May 1995 | A |
5544257 | Bellegarda et al. | Aug 1996 | A |
5559875 | Bieselin et al. | Sep 1996 | A |
5572728 | Tada et al. | Nov 1996 | A |
5684924 | Stanley et al. | Nov 1997 | A |
5715367 | Gillick et al. | Feb 1998 | A |
5752021 | Nakatsuyama et al. | May 1998 | A |
5757960 | Murdock et al. | May 1998 | A |
5768607 | Drews et al. | Jun 1998 | A |
5777614 | Ando et al. | Jul 1998 | A |
5787198 | Agazzi et al. | Jul 1998 | A |
5835667 | Wactlar et al. | Nov 1998 | A |
5862259 | Bokser et al. | Jan 1999 | A |
5875108 | Hoffberg et al. | Feb 1999 | A |
5960447 | Holt et al. | Sep 1999 | A |
5963940 | Liddy et al. | Oct 1999 | A |
5970473 | Gerszberg et al. | Oct 1999 | A |
6006221 | Liddy et al. | Dec 1999 | A |
6024571 | Renegar | Feb 2000 | A |
6029124 | Gillick et al. | Feb 2000 | A |
6029195 | Herz | Feb 2000 | A |
6052657 | Yamron et al. | Apr 2000 | A |
6064963 | Gainsboro | May 2000 | A |
6067514 | Chen | May 2000 | A |
6067517 | Bahl et al. | May 2000 | A |
6088669 | Mayes | Jul 2000 | A |
6112172 | True et al. | Aug 2000 | A |
6151598 | Shaw et al. | Nov 2000 | A |
6161087 | Wightman et al. | Dec 2000 | A |
6169789 | Rao et al. | Jan 2001 | B1 |
6185531 | Schwartz et al. | Feb 2001 | B1 |
6219640 | Basu et al. | Apr 2001 | B1 |
6317716 | Braida et al. | Nov 2001 | B1 |
6332139 | Kaneko et al. | Dec 2001 | B1 |
6332147 | Moran et al. | Dec 2001 | B1 |
6360237 | Schulz et al. | Mar 2002 | B1 |
6373985 | Hu et al. | Apr 2002 | B1 |
6381640 | Powers et al. | Apr 2002 | B1 |
6434520 | Kanevsky et al. | Aug 2002 | B1 |
6437818 | Lauwers et al. | Aug 2002 | B1 |
6480826 | Petrushin | Nov 2002 | B2 |
6602300 | Ushioda et al. | Aug 2003 | B2 |
6604110 | Savage et al. | Aug 2003 | B1 |
6647383 | August et al. | Nov 2003 | B1 |
6654735 | Eichstaedt et al. | Nov 2003 | B1 |
6708148 | Gschwendtner et al. | Mar 2004 | B2 |
6714911 | Waryas et al. | Mar 2004 | B2 |
6718303 | Tang et al. | Apr 2004 | B2 |
6778958 | Nishimura et al. | Aug 2004 | B1 |
6792409 | Wutte | Sep 2004 | B2 |
6847961 | Lapstun et al. | Jan 2005 | B2 |
6922691 | Flank | Jul 2005 | B2 |
6931376 | Lipe et al. | Aug 2005 | B2 |
6961954 | Maybury et al. | Nov 2005 | B1 |
6973428 | Boguraev et al. | Dec 2005 | B2 |
6978277 | Reed et al. | Dec 2005 | B2 |
6999918 | Ma et al. | Feb 2006 | B2 |
7131117 | Mills et al. | Oct 2006 | B2 |
7146317 | Bartosik | Dec 2006 | B2 |
20010026377 | Ikegami | Oct 2001 | A1 |
20010051984 | Fukasawa | Dec 2001 | A1 |
20020010575 | Haase et al. | Jan 2002 | A1 |
20020010916 | Thong et al. | Jan 2002 | A1 |
20020059204 | Harris | May 2002 | A1 |
20020184373 | Maes | Dec 2002 | A1 |
20030051214 | Graham et al. | Mar 2003 | A1 |
20030093580 | McGee et al. | May 2003 | A1 |
20030167163 | Glover et al. | Sep 2003 | A1 |
20040024739 | Copperman et al. | Feb 2004 | A1 |
20040073444 | Peh et al. | Apr 2004 | A1 |
20050060162 | Mohit et al. | Mar 2005 | A1 |
20060129541 | Morgan et al. | Jun 2006 | A1 |
Number | Date | Country |
---|---|---|
0664636 | Jul 1995 | EP |
0935378 | Aug 1999 | EP |
0715298 | Jun 2000 | EP |
1079313 | Feb 2001 | EP |
1103952 | May 2001 | EP |
1176493 | Jan 2002 | EP |
1 422 692 | May 2004 | EP |
361285570 | Dec 1986 | JP |
WO-9917235 | Apr 1999 | WO |
WO-0059223 | Oct 2000 | WO |
WO-0229612 | Apr 2002 | WO |
WO-0229614 | Apr 2002 | WO |
Number | Date | Country | |
---|---|---|---|
20040172250 A1 | Sep 2004 | US |
Number | Date | Country | |
---|---|---|---|
60419214 | Oct 2002 | US |