WO2006050238A1 - Codec-dependent unit selection for mobile devices - Google Patents
Codec-dependent unit selection for mobile devices Download PDFInfo
- Publication number
- WO2006050238A1 WO2006050238A1 PCT/US2005/039207 US2005039207W WO2006050238A1 WO 2006050238 A1 WO2006050238 A1 WO 2006050238A1 US 2005039207 W US2005039207 W US 2005039207W WO 2006050238 A1 WO2006050238 A1 WO 2006050238A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- speech
- units
- speech units
- codec
- test set
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/06—Elementary speech units used in speech synthesisers; Concatenation rules
Definitions
- This invention relates to speech synthesis, embedded software, and mobile devices.
- Speech synthesizers are used to transform text into speech. Modern speech synthesis systems are designed using "unit selection", where short snippets of speech are selected from a database of utterances of a speaker or speakers. The snippets may then be reassembled using an algorithm to approximately recreate the sound of any particular word or utterance in the language.
- Classical unit selection depends on two cost functions, one, called the target cost, for the differences between features associated with a sound in a word and the relevant features of the synthesized sound in that word, and a second cost called the continuity cost, associated with the weighted sum of the differences of features at the junctures of the selected units in synthesized utterances. Units are selected so that the synthesizer database contains units that minimize these two costs, measured over a training set, and given a dictionary size, synthesis rules, and weights for the two cost functions.
- the described embodiment has one or more of the following advantages.
- the described methods take into account the effect of distortion of synthesized units introduced by compression of the units by a vocoder.
- the described approach chooses a small subset of units for a small footprint synthesizer, basing the selection not only on the target cost and continuity cost from the training set, but also on an analysis of the fidelity of the acoustic signal reproduced by the codec.
- the invention features a method of extracting a subset of speech units from a larger set of speech units for use by a speech synthesizer in synthesizing speech when the speech units are stored in a compressed encoded representation that was generated by a codec.
- the method involves: selecting members of the subset of speech units based on an overall cost associated with using the speech synthesizer to synthesize a test set of speech, wherein the overall cost includes an error introduced by using the codec to decode the stored representations of the speech units; and storing the selected subset of speech units on a speech-enabled device.
- the overall cost associated with using the speech synthesizer to synthesize the test set of speech from a population of speech units that excludes that member is computed.
- Speech units are selected based on the overall costs computed for the plurality of members.
- the error introduced by the codec includes at least one of an error associated with decoding individual stored representations of the speech units and an error associated with a continuity between successive decoded stored representations of the speech units.
- the overall cost includes a weighted sum of a target cost, a continuity cost, and an error introduced by using the codec to decode the stored representations of the speech units.
- Selecting the weights involves optimizing a quality of the synthesized test set of speech by minimizing the overall cost as defined by the selected weights. Determining the quality of the synthesized set involves at least one of an empirical comparison of the synthesized speech with the original test set by a human listener and an objective comparison.
- Some systems pre-assign speech units to clusters based on linguistic features of the speech unit. In such systems, a method of selecting the subset of units involves selecting at least one unit from each cluster. Selecting the units from within a cluster is based at least in part on a measure of how well the unit represents the cluster acoustically. Determining the size of the extracted subset of speech units depends on a storage constraint on the device on which the speech synthesizer resides.
- Fig. 1 is a flow diagram showing an algorithm for selecting a subset of units from a set of units, taking into account the effect of the vocoder.
- Fig. 2 shows a high-level block diagram of a mobile phone incorporating a speech synthesizer.
- Target cost corresponds to the mismatch between the snippet sounds and the sounds of the target word fragments that the snippet is attempting to match.
- the target cost C 1 for using speech unit ui to synthesize a target speech fragment ti can be defined as the weighted sum of differences of relevant features:
- the relevant features include phonetic, metrical, and prosodic context.
- the units correspond to any speech fragment that can be concatenated to synthesize speech.
- units are half -phones or a multiple of half-phones.
- speech synthesizers use speech snippets that are compressed using a lossy compression scheme that reduces the fidelity of snippet synthesis.
- the particular coding scheme for the stored speech can affect the intelligibility of the resultant synthesized speech, as the codings are non-linear and affect different speakers in different ways.
- the described embodiment enhances the selection of compressed snippets for a small footprint synthesis system by including the effect of the compression on the synthesized speech in sub-selecting the units from a large vocabulary unit-selection speech synthesizer. Compression affects both target and continuity costs.
- the encoder cost described below refers to encoder impact on the target cost. Also described below is a further enhancement in which trie encoder impact on continuity cost is considered.
- Standard methods of optimizing the functionality within a limited footprint involve compression of the speech snippets using a resident codec, such as the Enhanced Variable Rate Codec (EVRC) as specified by the TIA/EIA/IS-127 Interim Standard of January 1997, which is incorporated herein in its entirety.
- a resident codec such as the Enhanced Variable Rate Codec (EVRC) as specified by the TIA/EIA/IS-127 Interim Standard of January 1997, which is incorporated herein in its entirety.
- EVRC Enhanced Variable Rate Codec
- Speech synthesizers typically work with a set of a few tens or hundreds of thousands of speech units.
- the storage constraints of mobile digital devices often require that this set be reduced by a factor of ten or more, to only a few thousand units. This radical pruning of units makes it critical that the remaining units optimally represent the speech to be synthesized in the actual operating environment in which codec-induced distortion affects the synthesized speech.
- the encoder cost takes account of the codec-induced distortions. A method of determining the encoder cost is described below.
- Minimizing the overall cost in order to select the optimal subset of units represents a compromise between the three component costs.
- the system trades off local phonetic accuracy (low target cost), smoothness (low continuity cost), and good representation by the vocoder (low encoder cost).
- Each component cost is typically formulated separately and may itself be a weighted sum of costs.
- the target cost can be expressed in terms of a weighted sum of costs introduced by relevant features of speech, such as phonetic, metrical, and prosodic context.
- the encoder cost may be approximated to the encoder's internal measurement of coding error, which it determines as follows. For each frame, the encoder takes measurements of the speech signal in several dimensions in acoustic space, models these with a set of parameters for the encoder's speech model, and then stores a quantized representation of these parameters. The parameters are chosen by using an analysis-by-synthesis procedure in which the speech synthesized using the parameters is compared to the natural speech and an error is computed. The model parameters are adjusted until this error is reduced to an acceptable level. Thus an explicit error measure of the difference between the codec's model prediction and the natural speech is available in the form of the codec internal error measure.
- the system computes the model parameters directly and quantizes them in order to represent them efficiently in the bitstream.
- the system typically quantizes the set of parameters by comparing the parameters to predetermined sets of parameter values, each of which is represented by a unique codeword.
- the system picks the predetermined set of parameters closest to the computed model parameters and determines an error between the computed parameters and the selected predetermined (i.e., quantized) set of parameters. This error is a measure of the quantization error, and can also be used to estimate the encoder cost.
- the system uses empirical or objective approaches to determine the weights w t , w c , and w e .
- the empirical approach uses judgments by human subjects about the quality of the speech. For example, one or more skilled listeners, such as the system developers themselves, adjust weights manually to determine what setting sounds best. In a more controlled subjective evaluation, a set of listeners are given speech stimuli and asked to make a scaled quality judgment. This approach might not be practical for searching a large space of potential weights, but can be used when choosing amongst a small set of candidate configurations for a system.
- the optimal set of weights is that which causes the system to synthesize the "best" sounding speech when it minimizes overall cost as defined by the optimally weighted sum of the three component costs.
- the objective approach uses a perceptually motivated measurement of speech quality that compares the synthesized speech with the natural speech.
- a system calculates the Mel-scaled cepstral coefficient (MFCC) for every frame of the natural and synthesized utterances so that the boundaries align, and determines the root mean square difference between the MFCC vectors.
- MFCC Mel-scaled cepstral coefficient
- the selection of snippets is responsive to the codec's impact on different kinds of speech. For example, if a particular codec represents a certain kind of speech poorly, the optimized system allocates more units to cover this kind of speech so as to compensate for the codec's shortcomings. Conversely, other types of speech that are well represented by the codec will be allocated fewer units. [0025]
- the unit selection process can be further enhanced by including in the overall cost a continuity cost component that also takes into account the performance of the codec:
- AU codecs of interest use the inherent correlation between consecutive frames of speech to reduce the amount of information that needs to be represented in the encoded bitstream. If the codec's measurement of correlation between frames is high at the first frame of a specific unit, u n , then the overall system will be sensitive to any change between the acoustic details of the original context (the preceding unit u n- i) and any other candidate u m . The measured correlation in the original context and the difference in acoustic features between the original context and the new candidate context provides an estimate of the contiguity cost between any arbitrary pair of units in the inventory.
- the optimal subset of speech units is selected from the population of speech units as illustrated in Fig. 1.
- the system obtains the full set of speech units from a large footprint synthesizer (102) and determines the overall cost of synthesizing a set of test phrases (104). In general the test phrases will be different from the training set and natural speech will not be available for the test phrases.
- the optimization process uses test phrases that correspond as closely as possible to the body of speech that the speech synthesizer is expected to be called upon to synthesize.
- the system determines what trial subsets to eliminate (106) in the selection process, as described below.
- the trial subsets can be individual speech units, but the number of iterations in the process can be reduced if more than one unit is eliminated in each trial subset. According to one heuristic, such acceleration of the optimization process is especially effective when the elements of the trial subset include syllable or word- length sequences of units that appear contiguously in the training set.
- the unit selection process proceeds by removing the first trial subset
- a speech unit is pre-classified and placed into a cluster with other units that have similar linguistic features.
- Linguistic features are features that are derived from the text, such as the phoneme sequence, lexical stress, syllable structure, proximity to the start/end of the current phrase, the likelihood of significant pitch movement in the syllable, and utterance type (such as a question or a statement).
- Clusters are linked by decision trees that determine cluster sequence probabilities. For example, a single cluster might be used for the first half of all primary stressed "ee" sounds when followed by a nasal, preceded by a "t” and not in the last word of a phrase.
- a synthesizer determines the subsequent cluster using the decision tree. The synthesizer searches for the best unit only within that subsequent cluster. Since only a small fraction of the available units lie within a given cluster, the search space is radically pruned.
- an effective unit selection approach is to use clusters as the "first cut" for selecting units for the small footprint synthesizer by selecting at least one representative unit from each cluster.
- the system evaluates the cluster units acoustically using, for example, their MFCC, and discards the acoustic outliers. Trie remaining units are then evaluated against the applicable codec and their encoder cost is determined. Units within each cluster are then selected based on an overall utility parameter that is a combination of their encoder cost and of how well they represent the cluster acoustically.
- a minimum of one unit from each cluster is selected, but more can be selected until the footprint constraints are reached.
- the number of units selected from a given cluster depends on the frequency that the cluster is selected over a representative set of test phrases.
- the speech-enabled device is a cellular phone 200, such as is illustrated by the high-level functional block diagram of Fig. 2.
- the phone 200 is a Microsoft PocketPC-powered phone which includes at its core a baseband DSP 202 (digital signal processor) for handling the cellular communication functions (including for example voiceband and channel coding functions) and an applications processor 204 (e.g., Intel StrongArm SA-1110) on which the PocketPC operating system runs.
- the phone supports various applications, such as GSM voice calls, SMS (Short Messaging Service) text messaging, wireless email, and desktop- like web browsing along with more traditional PDA features.
- the transmit and. receive functions are implemented by an RF synthesizer 206 and an RF radio transceiver 208 followed by a power amplifier module 210 that handles the final-stage RF transmit duties through an antenna 212.
- An interface ASIC (application-specific integrated circuit) 214 and an audio Codec 216 provide interfaces to a speaker, a microphone, and other input/output devices provided in the phone such as a numeric or alphanumeric keypad (not shown) for entering commands and information.
- DSP 202 uses a flash memory 218 for code store.
- a Li-Ion (lithium-ion) battery 220 powers the phone and a power management module 222 coupled to DSP 202 manages power consumption within the phone.
- Volatile and non-volatile memory for applications processor 204 is provided in the form of SDRAM 224 and flash memory 226, respectively. This arrangement of memory is used to hold the code for the operating system, the code for customizable features such as the phone directory, and the code for any applications software that might be included in the phone, including the compressed speech units and speech synthesizer described above.
- the visual display device for the plione includes an LCD driver chip
- a clock module 232 that provides the clock signals for the other devices within the phone and provides an indicator of real time.
- the speech enabled device would not have to be a cellular phone at all, but would possess the functionality of synthesizing speech from an internally stored coded set of speech units, decoding the speech units, and synthesizing speech from the units.
- a laptop computer or PDA having a speaker, and appropriate software to generate speech from speech units, or any other device with similar functionality, could also be implemented.
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephonic Communication Services (AREA)
Abstract
Description
Claims
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| GB0709643A GB2437189B (en) | 2004-10-28 | 2005-10-28 | Codec-dependent unit selection for mobile devices |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US62283804P | 2004-10-28 | 2004-10-28 | |
| US60/622,838 | 2004-10-28 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2006050238A1 true WO2006050238A1 (en) | 2006-05-11 |
Family
ID=36061566
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/US2005/039207 Ceased WO2006050238A1 (en) | 2004-10-28 | 2005-10-28 | Codec-dependent unit selection for mobile devices |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US20060161433A1 (en) |
| GB (1) | GB2437189B (en) |
| WO (1) | WO2006050238A1 (en) |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2782147B2 (en) * | 1993-03-10 | 1998-07-30 | 日本電信電話株式会社 | Waveform editing type speech synthesizer |
| JP3349905B2 (en) * | 1996-12-10 | 2002-11-25 | 松下電器産業株式会社 | Voice synthesis method and apparatus |
| US6266638B1 (en) * | 1999-03-30 | 2001-07-24 | At&T Corp | Voice quality compensation system for speech synthesis based on unit-selection speech database |
| US6684187B1 (en) * | 2000-06-30 | 2004-01-27 | At&T Corp. | Method and system for preselection of suitable units for concatenative speech |
| US7010488B2 (en) * | 2002-05-09 | 2006-03-07 | Oregon Health & Science University | System and method for compressing concatenative acoustic inventories for speech synthesis |
| US6988069B2 (en) * | 2003-01-31 | 2006-01-17 | Speechworks International, Inc. | Reduced unit database generation based on cost information |
-
2005
- 2005-10-28 WO PCT/US2005/039207 patent/WO2006050238A1/en not_active Ceased
- 2005-10-28 US US11/262,482 patent/US20060161433A1/en not_active Abandoned
- 2005-10-28 GB GB0709643A patent/GB2437189B/en not_active Expired - Fee Related
Non-Patent Citations (3)
| Title |
|---|
| BLACK A W: "Perfect synthesis for all of the people all of the time", SPEECH SYNTHESIS, 2002. PROCEEDINGS OF 2002 IEEE WORKSHOP ON 11-13 SEPT. 2002, PISCATAWAY, NJ, USA,IEEE, 11 September 2002 (2002-09-11), pages 167 - 170, XP010653637, ISBN: 0-7803-7395-2 * |
| DONOVAN R E, ITTYCHERIAH A, FRANZ M, RAMABHADRAN B, EIDE E ET AL.: "Current status of the IBM Trainable Speech Synthesis System", PROCEEDINGS 4TH ESCA TUTORIAL AND RESEARCH WORKSHOP ON SPEECH SYNTHESIS, 2001, Atholl Palace Hotel Scotland (GB), pages 1 - 4, XP002374397, Retrieved from the Internet <URL:http://crow.ee.washington.edu/people/bulyko/papers/donovan-esca01a.pdf> [retrieved on 20060320] * |
| KUMAR R, KISHORE S P: "Automatic Pruning of Unit Selection speech Databases for Synthesis without Loss of Naturalness", INTERSPEECH 2004 ICSLP, 4 October 2004 (2004-10-04) - 8 October 2004 (2004-10-08), Jeju Island (Korea), pages 1 - 4, XP002374396, Retrieved from the Internet <URL:http://speech.iiit.net/~rohit/work/UnitPruning-CR.pdf> [retrieved on 20060320] * |
Also Published As
| Publication number | Publication date |
|---|---|
| GB2437189B (en) | 2009-10-28 |
| GB0709643D0 (en) | 2007-06-27 |
| GB2437189A (en) | 2007-10-17 |
| US20060161433A1 (en) | 2006-07-20 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CA2130218C (en) | Data compression for speech recognition | |
| US7319960B2 (en) | Speech recognition method and system | |
| EP1595245B1 (en) | Method of producing alternate utterance hypotheses using auxiliary information on close competitors | |
| EP1557821B1 (en) | Segmental tonal modeling for tonal languages | |
| US20020178004A1 (en) | Method and apparatus for voice recognition | |
| KR100923922B1 (en) | Method and system for pitch contour quantization in audio coding | |
| US6988069B2 (en) | Reduced unit database generation based on cost information | |
| US9202470B2 (en) | Speech recognition using speech characteristic probabilities | |
| RU2393549C2 (en) | Method and device for voice recognition | |
| US20060229877A1 (en) | Memory usage in a text-to-speech system | |
| CN117059076A (en) | Dialect voice recognition method, device, equipment and storage medium | |
| US20020198706A1 (en) | Implementing a high accuracy continuous speech recognizer on a fixed-point processor | |
| US20020065649A1 (en) | Mel-frequency linear prediction speech recognition apparatus and method | |
| CN114974249B (en) | Speech recognition method, device and storage medium | |
| EP1136983A1 (en) | Client-server distributed speech recognition | |
| CN121687024A (en) | Electric self-service terminal voice intention recognition system based on background noise optimization | |
| US20060161433A1 (en) | Codec-dependent unit selection for mobile devices | |
| WO2007129802A1 (en) | Method for selecting training data based on non-uniform sampling for speech recognition vector quantization | |
| CN1259648C (en) | Phonetic recognition system | |
| WO2007067837A2 (en) | Voice quality control for high quality speech reconstruction | |
| KR100701253B1 (en) | Voice Encoding Method and Apparatus for Server-based Speech Recognition in Mobile Communication Environments | |
| KR100794140B1 (en) | Apparatus and method for extracting speech feature vectors robust to noise by sharing preprocessing of speech coders in distributed speech recognition terminals | |
| KR100670643B1 (en) | Apparatus and method for generating speech database of text-to-speech system | |
| O’Shaughnessy | “Speech Technology | |
| JP3700310B2 (en) | Vector quantization apparatus and vector quantization method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| AK | Designated states |
Kind code of ref document: A1 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KM KN KP KR KZ LC LK LR LS LT LU LV LY MA MD MG MK MN MW MX MZ NA NG NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW |
|
| AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU LV MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG |
|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| ENP | Entry into the national phase |
Ref document number: 0709643 Country of ref document: GB Kind code of ref document: A Free format text: PCT FILING DATE = 20051028 |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 05824899 Country of ref document: EP Kind code of ref document: A1 |

