KR100620898B1 - Method of speaking rate conversion of text-to-speech system - Google Patents
Method of speaking rate conversion of text-to-speech system Download PDFInfo
- Publication number
- KR100620898B1 KR100620898B1 KR1020050064097A KR20050064097A KR100620898B1 KR 100620898 B1 KR100620898 B1 KR 100620898B1 KR 1020050064097 A KR1020050064097 A KR 1020050064097A KR 20050064097 A KR20050064097 A KR 20050064097A KR 100620898 B1 KR100620898 B1 KR 100620898B1
- Authority
- KR
- South Korea
- Prior art keywords
- speech
- duration
- synthesis
- rate
- synthesis unit
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 79
- 238000006243 chemical reaction Methods 0.000 title claims abstract description 30
- 230000015572 biosynthetic process Effects 0.000 claims abstract description 82
- 238000003786 synthesis reaction Methods 0.000 claims abstract description 82
- 238000012549 training Methods 0.000 claims abstract description 29
- 238000009826 distribution Methods 0.000 claims abstract description 22
- 206010071299 Slow speech Diseases 0.000 claims abstract description 4
- 230000004044 response Effects 0.000 claims abstract description 3
- 230000008569 process Effects 0.000 claims description 36
- 230000001419 dependent effect Effects 0.000 claims description 18
- 238000010304 firing Methods 0.000 claims description 16
- 239000002131 composite material Substances 0.000 claims description 9
- 238000012545 processing Methods 0.000 abstract description 4
- 230000008901 benefit Effects 0.000 abstract description 2
- 241000283690 Bos taurus Species 0.000 abstract 1
- 239000000284 extract Substances 0.000 abstract 1
- 230000008859 change Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 3
- 150000001875 compounds Chemical group 0.000 description 3
- 239000006185 dispersion Substances 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000001149 cognitive effect Effects 0.000 description 2
- 238000013329 compounding Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000005315 distribution function Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 235000021109 kimchi Nutrition 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/02—Methods for producing synthetic speech; Speech synthesisers
- G10L13/033—Voice editing, e.g. manipulating the voice of the synthesiser
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)
- Electrically Operated Instructional Devices (AREA)
Abstract
본 발명은 음성합성시스템(Text-to-Speech system)의 발화속도 변환방법에 관한 것으로, 합성DB에서 발성목록을 추출하여 빠른 발화, 정상 발화 및 느린 발화로 이루어진 각 발화스타일별로 발성시켜 합성단위별 지속시간 확률분포를 구축시키는 단계와, 요청된 합성에 대응하여 비터비 탐색을 통해 최적의 합성단위 후보열을 검색하고, 합성단위의 지속시간 타켓 파라미터를 생성하는 단계와, 상기 최적의 합성단위 후보열의 지속시간 파라미터를 통해 최적 합성단위 후보열을 다시 구하여 합성음을 생성하는 단계로 진행함으로써, 상기한 새로운 지속시간을 이용하여 2-패스 검색하여 합성음을 생성하므로 기존의 SOLA방식처럼 합성음에 대해 신호처리를 하지 않아도 된다는 장점이 있을 뿐만 아니라, 상기 새로운 지속시간을 구하는 계산식 자체에 발화속도에 민감한 문맥과 발화속도에 둔감한 문맥에 대한 고려가 포함되어 있어, 이러한 문맥의 식별을 위해 별도의 훈련이나 예측모델을 생성할 필요가 없다는 장점이 있다. The present invention relates to a method of converting a speech rate of a text-to-speech system, and extracts a speech list from a synthesis DB to generate speech for each speech style consisting of fast speech, normal speech, and slow speech for each synthesis unit. Constructing a duration probability distribution, searching for an optimal synthesis unit candidate sequence through Viterbi search in response to the requested synthesis, generating a duration target parameter of the synthesis unit, and performing the optimal synthesis unit candidate By proceeding to the step of generating the synthesized sound by obtaining the optimum sequence unit candidate string again through the duration parameter of the column, signal processing is performed for the synthesized sound as in the conventional SOLA method because the synthesized sound is generated by 2-pass searching using the new duration. Not only does it have the advantage of not needing, but also the rate of ignition in the equation itself to obtain the new duration. It includes the consideration of the bovine context sensitive context and utterance speed, it is advantageous for the identification of such a context there is no need to create a separate training or prediction models.
음성합성시스템(Text-to-Speech system), 발화속도변환(Speaking Rate conversion), SOLA, 끊어읽기(Break indexing) Text-to-Speech System, Speaking Rate Conversion, SOLA, Break Indexing
Description
도 1은 일반적인 합성기의 합성음 생성 절차를 설명하는 순서도, 1 is a flowchart illustrating a synthesized sound generating procedure of a general synthesizer;
도 2는 발화속도별 합성단위 지속시간 학습용 DB 구축과정을 설명하는 도면, 2 is a diagram illustrating a process of constructing a DB for learning duration of a synthesis unit for each speech rate;
도 3은 합성단위별 발화속도에 종속적인 지속시간 모델 훈련과정을 설명하는 도면, 3 is a view illustrating a duration model training process dependent on the firing rate for each synthesis unit;
도 4는 발화속도 변화에 종속적인 지속시간 특성을 가진 합성단위의 지속시간 분포 예를 보여주는 도면, 4 is a diagram illustrating an example of a distribution of durations of a synthetic unit having a duration characteristic dependent on a change in ignition rate;
도 5는 발화속도 변화에 독립적인 지속시간 특성을 가지는 합성단위의 지속시간 분포 예를 보여주는 도면, 5 is a view showing an example of the distribution of the duration of the synthetic unit having a duration characteristic independent of the change in the ignition rate,
도 6은 발화속도 변환 과정을 나타낸 도면, 6 is a view showing a conversion rate conversion process,
도 7은 1-패스 최적경로로부터 합성단위의 타겟 지속시간을 추출하는 과정을 설명하는 도면, 7 is a diagram illustrating a process of extracting a target duration of a synthesis unit from a one-pass optimal path;
도 8은 1-패스 결과와 합성단위의 발화속도 종속 지속시간 모델을 이용하여 수정된 합성단위 지속시간을 구하는 과정을 설명하는 도면, 8 is a view illustrating a process of obtaining a modified synthesis unit duration using a 1-pass result and a firing rate dependent duration model of the synthesis unit;
도 9는 수정된 합성단위 지속시간을 타겟정보로 이용한 최적합성단위 후보 검색 및 그 결과를 보여주는 도면이다. FIG. 9 is a diagram illustrating a search for an optimal synthesis unit candidate using the modified synthesis unit duration as target information and a result thereof.
<도면의 주요부분에 대한 부호의 설명><Description of the symbols for the main parts of the drawings>
10 : 전처리기 20 : 언어처리기 10: preprocessor 20: language processor
30 : 운율처리기 40 : 후보검색기 30: rhyme processor 40: candidate searcher
41 : 합성단위DB 50 : 합성음생성기 41: synthesis unit DB 50: synthesis sound generator
본 발명은 음성합성시스템(Text-to-Speech system)의 발화속도 변환방법에 관한 것으로서, 보다 상세하게는 발화속도별 지속시간모델과 2-단계 UNIT SELECTION 과정을 이용한 음성합성시스템의 발화속도 변환방법에 관한 것이다. The present invention relates to a method of converting a speech rate of a text-to-speech system, and more particularly, to a method of converting a speech rate of a speech synthesis system using a duration model for each speech rate and a two-step unit selection process. It is about.
종래의 음성합성시스템들의 발화속도 변환방법에는 프레임단위의 OLA(OverLap & Add)기법(특히, SOLA(Synchronous OverLap & Add) 방식)에 의해 프레임단위 중첩방식을 이용한 발화속도 변환을 수행하거나 또는 부분적으로는 발화속도별 끊어읽기를 달리함으로써 발화속도 변환 변동의 효과를 주는 방식들이 있다. 여기서, 상기 SOLA(Synchronous OverLap & Add)방식은 음성을 20∼30msec의 프레임단위로 분해하고 분해할때 프레임간 분석주기(frame rate)를 조절(느리게 음성을 조절할 경우, 프레임주기를 크게 하고, 음성을 빠르게 조절할때는 프레임주기를 작게 함)하여 분해된 프레임을 overlap & add하여 발화속도 조절된 음성을 다시 생성하게 되는데, overlap & add하는 구간은 이전 프레임과 현재 프레임간의 Correlation이 최대가 되는 delay sample위치를 구하여 그 지점에서 overlap & add를 적용, 속도를 조절하는 방식이다. The speech rate conversion method of the conventional speech synthesis systems includes a speech rate conversion using a frame-by-frame overlapping method, or partly, by a frame-based OLA (OverLap & Add) technique (particularly, a Synchronous OverLap & Add) method. There are ways to give effect of change of ignition rate conversion by different cutting rate by ignition rate. Here, the SOLA (Synchronous OverLap & Add) method adjusts the frame rate between frames when the voice is decomposed and decomposed into frame units of 20 to 30 msec (when the voice is controlled slowly, the frame period is increased and the voice is increased. When adjusting the speed quickly, reduce the frame period) and overlap & add the decomposed frame to regenerate the speech rate controlled voice. In the overlap & add section, the delay sample position is the maximum correlation between the previous frame and the current frame. To find and apply overlap & add at that point to adjust speed.
그러나, 발화속도 변환을 위한 그 첫 번째로, OLA 기법을 이용한 방식은 발화속도 변환을 위한 상위지식을 이용하지 않고 합성음 전구간에 걸쳐서 일률적인 발화속도 변환을 수행하는 것이어서 다음과 같은 문제점을 가진다. However, the first method for converting the speech rate, using the OLA technique is to perform uniform speech rate conversion over the entire sound synthesis without using the upper level knowledge for the speech rate conversion.
음성을 구성하는 음소의 내재적 길이는 그 문제에 따라 발화속도에 종속적인 문맥과 발화속도에 독립적인 문맥이 존재한다. 기존의 OLA기법은 이러한 상위지식을 이용하지 않고 합성음 전구간에 대한 프레임단위의 발화속도 변환을 수행하므로 발화속도 변환에 독립적인 문맥의 지속시간까지 변경시키게 되어, 발화속도 변환된 합성음을 사용자가 청취하여 그 내용을 인지하고자 할 때 많은 인지노력이 요구된다. The intrinsic length of the phonemes constituting the voice has a context-dependent context and a context-dependent context. Existing OLA technique does not use this higher level knowledge, but converts the speech rate of frame unit for all the synthesized sounds, and changes the duration of context independent of speech rate conversion. A lot of cognitive effort is required when trying to recognize the content.
예를 들어, 한국어의 파열음의 경우, 파열음의 폐쇄구간(Closure)의 길이가 길면 파열음으로 듣고 이 구간의 길이가 짧으면 경음화된 파열음으로 들리게 된다는 것은 많은 음성학적 실험 논문에서 익히 밝혀진 사실이다. (즉, 정상적인 ‘김치’가 ‘낌치’로 들릴 수 있게 된다). 또 다른 예로는 마찰음 ‘ㅅ’의 경우 마찰성분의 길이가 길면 ‘ㅅ’으로 들리게 되고 마찰성분의 길이가 짧으면 ‘ㅆ’으로 들리게 된다. For example, in the case of Korean ruptured sounds, it is well known in many phonetic experiment papers that the length of the closure of the rupture sound is heard as a rupture sound when the length of the rupture sound is long. (In other words, a normal 'kimchi' can be heard as 'simply'). In another example, the friction sound 'ㅅ' is heard as 'ㅅ' when the length of the friction component is long, and as 'ㅅ' when the length of the friction component is short.
그러므로, 이러한 상위정보를 이용하지 않는 프레임단위의 OLA기법의 적용은 길이가 60ms인 ‘ㅅ’ 의 마찰성분의 길이를 40ms로 변경시킬 가능성이 있으며, 이로 인해 사용자는 인지에 더 많은 노력을 해야 한다(즉 인지의 노력이라 함은, 발화속도 변환된 합성음에 문맥상의 다른 음소가 끼어들게 되어, 문장 전체로 볼때는 그 내용을 이해할 수 있으나, 끼어든 다른 음소효과에 의해 주의가 자꾸 다른 쪽으로 발산하여, 문서전체의 내용을 들었을 때 그 기억정도 등이 낮아지는 현상이다). Therefore, the application of the frame-based OLA technique that does not use such higher level information may change the length of the friction component of 'ㅅ' having a length of 60 ms to 40 ms, which requires the user to make more efforts to recognize. (In other words, cognitive effort means that different phonemes in context are intercepted in speech-converted synthesized sounds, and the contents can be understood in the whole sentence, but attention is diverted by other phoneme effects. In other words, when the contents of the entire document are heard, the degree of memory decreases.
발화속도 변환을 위한 두번째 방법은 발화속도 변환에 따라 사람들의 끊어읽기(즉, 함께 발화하는 어절의 그룹)가 변화된다는 사실에 착안하여 발화속도에 따라 다른 끊어읽기를 수행함으로써(즉, 빠른 발화에서는 큰 그룹의 단어그룹을 형성하여 끊어읽어 주기 등) 발화속도 변환 효과를 주는 예이다. The second method for converting the speech rate is based on the fact that people's readings (that is, groups of words that speak together) change according to the speech rate conversion, so that different readings are made according to the speech rate (that is, in fast speech This is an example of changing the speech rate by forming a large group of words and cutting them off.
그러나, 이 방법은 단순히 끊어읽기만 다르게 해줌으로써 자칫 문장이 지루하게 자주 끊어읽어주거나 너무 길게 끊어주는 효과를 가질 수 있으며, 좀 더 기술적으로는 발화속도 변환에 따른 음소의 길이가 변화하지 못하므로 발화속도 변환률의 적용에 한계가 있다. However, this method can have the effect that the sentence is tediously frequently cut off or cut off too long by simply making different readings, and more technically, the phoneme length does not change according to the conversion of the speech rate. There is a limit to the application of the conversion rate.
따라서, 본 발명은 상술한 종래의 문제점을 극복하기 위한 것으로서, 본 발명의 목적은 OLA 기법의 문제점인 신호처리 상위레벨의 발화속도 변환 정보를 활용하지 못한다는 단점을 보완할 수 있도록 발화속도 변환에 종속적인 음소문맥과 발 화속도변환에 독립적인 음소문맥을 훈련데이터로부터 자동으로 학습할 수 있도록 하여 합성시 발화속도 변환에 독립적인 부분은 자동적으로 발화속도 변화가 적게 반영되어 다른 음으로 들리게 되는 현상을 줄일 수 있는 음성합성시스템의 발화속도 변환방법을 제공하는데 있다. Accordingly, an object of the present invention is to overcome the above-described problems, and an object of the present invention is to improve the speech rate conversion so as to compensate for the disadvantage of not using the speech rate conversion information of a higher level of signal processing, which is a problem of the OLA technique. Phenomenon that is independent of speech rate conversion during synthesis, is automatically reflected to other sounds because the phoneme context independent of dependent phoneme context and speech rate conversion can be automatically learned from training data. The present invention provides a method of converting a speech rate of a speech synthesis system that can reduce the noise.
본 발명의 다른 목적은 끊어읽기 규칙을 변형한 발화속도 변환기술의 단점인 음소의 길이단위로 발화속도를 변환시킬 수 없어 결국 제한된 끊어읽기 레벨만의 발화속도 변환 밖에 가능하지 못하다는 단점을 해결하여 서브워드 단위로 발화속도에 종속적인 지속시간 길이 조절이 가능하도록 훈련데이터로부터 학습할 수 있는 모델을 생성하여 합성에 이용하는 음성합성시스템의 발화속도 변환방법을 제공하는데 있다. Another object of the present invention is to solve the disadvantage that can not only convert the speech rate by the length of the phoneme, which is a disadvantage of the speech rate conversion technology modified by the cut-off rule, so that only the limited speech level can be converted. The present invention provides a method of converting a speech rate of a speech synthesis system using a synthesis by generating a model that can be learned from training data so that a duration length dependent on a speech rate can be controlled in subword units.
이하, 본 발명의 발화속도별 지속시간모델과 2-단계 UNIT SELECTION 과정을 이용한 음성합성시스템의 발화속도 변환방법에 대하여 첨부된 도면을 참조하여 상세히 설명하기로 한다. Hereinafter, a method for converting a speech rate of a speech synthesis system using a duration model for each speech rate and a 2-step unit selection process will be described in detail with reference to the accompanying drawings.
도 1은 일반적인 합성기의 합성음 생성 절차를 설명하는 순서도이다. 도 1에 도시된 바와 같이, 전처리기(10), 언어처리기(20), 운율처리기(30), 후보검색기(40), 합성단위DB(50), 합성음생성기(60)로 이루어진 음성합성시스템을 이용하여 순차적으로 입력문장을 처리함으로써 합성음을 생성하게 된다. 여기서, 상기한 바와 같이 기존에는 생성된 합성음에 대해 프레임 단위로 OLA기법을 적용하여 발화속 도를 변환하게 된다. 1 is a flowchart illustrating a synthesis sound generation procedure of a general synthesizer. As shown in FIG. 1, a speech synthesis system including a preprocessor 10, a
그러나, 본 발명에서는 도 2 및 도 3으로 대표되는 발화속도에 종속적인 합성단위의 지속시간에 모델을 구축하는 과정을 거쳐 도 4와 같은 발화속도변화에 따라 지속시간의 특성이 변화하는 발화속도변화에 종속적인 합성단위의 지속시간에 대한 연속확률분포와 도 5과 같은 발화속도변화에 따라 지속시간의 특성이 변화하지 않는 발화속도변화에 독립적인 합성단위의 지속시간에 대한 연속확률분포를 구한다. 이렇게 구해진 정보를 연속확률 분포의 중심값의 이동 범위가 x이하인 합성단위는 발화속도에 독립적인 합성단위로 가정할 수 있으며, x 이상인 합성단위는 발화속도에 종속적인 합성단위로 가정할 수 있다. 여기서, 상기 x는 중심값 이동의 정도를 나타내는 값이며, 임의로 설정될 수 있고, 그 임계치를 도입하여 발화속도의 종속적인 합성단위 여부를 판단할 수 있다. 이 정보를 활용하면 합성단위중 발화속도에 종속적인 단위에 대해서만 발화속도 변환이 가능하다. 여기서, 발화속도에 따른 합성단위들의 지속시간 연속확률분포를 구해 놓는 과정을 훈련과정이라 정의한다. However, in the present invention, through the process of building a model in the duration of the synthesis unit dependent on the ignition rate represented by Fig. 2 and 3, the change in the ignition rate according to the ignition rate change as shown in Fig. 4 Continuous probability distribution for the duration of the synthetic unit independent of the change in the ignition rate does not change according to the change in the ignition rate as shown in FIG. The information thus obtained can be assumed to be a synthesis unit independent of the ignition rate of a synthesis unit whose movement range of the central value of the continuous probability distribution is less than x, and a synthesis unit independent of ignition rate. Here, x is a value indicating the degree of movement of the center value, and may be arbitrarily set, and the threshold value may be introduced to determine whether or not the synthesis unit is dependent on the firing rate. Using this information, it is possible to convert the firing rate only for the units that are dependent on the firing rate of the synthetic units. Here, the process of obtaining the continuous probability distribution of the durations of the synthetic units according to the firing rate is defined as the training process.
도 6은 발화속도 변환 과정을 나타낸 도면이다. 6 is a diagram illustrating a process of converting an ignition rate.
도 6을 참조하면, 상기한 도 2에 도시된 바와 같이 합성DB에서 합성단위별 지속시간 훈련모델을 생성하기 위한 최적의 훈련목록을 추출하다(S1). 추출된 훈련목록을 정상 발화, 빠른 발화와 느린 발화로 녹음을 수행한다(S2). 이후, 도 3에 도시된 바와 같이 정상적으로 발화된 훈련DB, 빠르게 발화된 훈련DB, 느리게 발화된 훈련DB 각각으로부터 발화속도종속 합성단위별 지속시간의 연속확률분포를 구한 다(S3). Referring to FIG. 6, as shown in FIG. 2, an optimal training list for generating a duration training model for each synthesis unit is extracted from the synthesis DB (S1). The extracted training list is recorded as normal speech, fast speech and slow speech (S2). Subsequently, as shown in FIG. 3, a continuous probability distribution of durations of firing rate dependent synthesis units is obtained from each of the normal fired training DB, the fast fired training DB, and the slow fired training DB (S3).
이어서, 사용자에 의한 합성요청이 있을 경우에, 사용자 요청에 대응하여 비터비 탐색을 통해(S4) 최적의 합성단위 지속시간을 산출한다(S5). 이 과정을 본 발명에서는 제 1 단위 선택 과정이라고 정의한다. 이는 도 7에 1-패스 최적경로로부터 합성단위의 타겟 지속시간을 추출하는 과정이 잘 나타나 있다. Subsequently, when there is a synthesis request by the user, an optimum synthesis unit duration is calculated through the Viterbi search (S4) in response to the user request (S5). This process is defined as a first unit selection process in the present invention. This is illustrated in Figure 7 the process of extracting the target duration of the synthesis unit from the one-pass optimal path.
다음으로, 선택된 느린 발화나 빠른 발화에서의 합성단위들의 지속시간 모델에 대해, 타켓지속시간과 정상발화에서의 합성단위 후보의 지속시간 연속확률분포를 이용하여 최종적으로 발화속도에 영향을 받은 최종적인 합성단위의 새로운 타겟 지속시간 파라미터를 산출한다(S6). 상기 새로운 합성단위 지속시간을 구하는 과정은 도 8에 자세히 도시되어 있다. Next, for the model of the duration of the composite units in the selected slow or fast utterance, the final duration affected by the rate of utterance is finally obtained using the target duration and the continuous probability distribution of the candidates of the composite unit in the normal utterance. A new target duration parameter of the synthesis unit is calculated (S6). The procedure for obtaining the new synthesis unit duration is shown in detail in FIG. 8.
이어서, 상기 산출된 새로운 타겟 지속시간 파라미터를 비터비 탐색을 통하여(S7) 지속시간에 종속적인 최적 합성단위 후보열을 다시 구하고, 다시 구해진 지속시간에 종속적인 최적 합성단위 후보열을 이용하여 합성음을 생성하게 된다(S8). 수정된 합성단위 지속시간을 타겟정보로 이용한 최적합성단위 후보 검색 및 그 결과는 도 9에 잘 도시되어 있다. Subsequently, the calculated new target duration parameter is again obtained through the Viterbi search (S7) to obtain the optimal synthesis unit candidate sequence dependent on the duration, and the synthesized sound is generated using the optimal synthesis unit candidate sequence dependent on the obtained duration. It is generated (S8). The optimal synthesis unit candidate search using the modified synthesis unit duration as target information and the results are well illustrated in FIG. 9.
이하, 구체적인 수학식을 이용하여 본 발명의 발화속도 변환 과정에 대해 설명한다. Hereinafter, the ignition rate conversion process of the present invention will be described using specific equations.
[수학식 1]의 T는 합성기에서 사용하는 합성단위를 의미한다. 실제 구현 측면에서는 T는 반음소, 또는 음소, 또는 문맥종속음소(바이폰, 트라이폰 등)과 같은 것을 의미한다. 그리고, 통상적으로 합성기는 1보다 큰 N개의 합성단위를 정의하여 사용한다. 만일, 한국어의 경우에는 음소단위를 합성단위로 사용하는 경우에는 자음과 모음의 수가 N이 된다. T in [Equation 1] means a synthesis unit used in the synthesizer. In practical implementations, T means something like a semitone, or a phoneme, or a context-dependent phone (such as biphone, triphone, etc.). In general, the synthesizer defines and uses N synthetic units larger than one. In the case of Korean, if the phoneme unit is used as a synthesis unit, the number of consonants and vowels is N.
여기서, S는 합성기에서 사용하는 합성DB를 의미한다. 일반적으로 대용량 코퍼스 기반 음성합성시스템의 경우에는 M개의 문장 또는 단어, 또는 구로 구성된 합성DB를 합성기에 맞게 가공하여 합성보이스를 제작하고, 이를 이용하여 합성기를 구현한다. 통상적으로 대용량 코퍼스의 경우에는 수백에서 수천문장을 사용하여 합성기를 개발하고 있으므로, M은 수백에서 수천으로 가정할 수 있다. Here, S means a synthesis DB used in the synthesizer. In general, in the case of a large-scale corpus-based speech synthesis system, a synthesized DB composed of M sentences, words, or phrases is processed to produce a synthesized voice, and a synthesizer is implemented using the synthesized voice. In general, for large-capacity corpus, a synthesizer is developed using hundreds to thousands of sentences, so M can be assumed to be hundreds to thousands.
본 발명에서는 발화속도별 지속시간에 대한 합성단위별 지속시간의 연속확률밀도를 구하기 위해, 실제 동일한 내용에 대한 빠른 발화와 느린 발화가 필요하므로 합성DB의 M개의 문장 전체를 모두 빠른 발화와 느린 발화로 녹음하는 것은 부적합하다. 그러므로, 지속시간 모델링에는 충분하나 M보다는 훨씬 작은 k개의 문장을 추출하여야 한다. 이러한 k개의 문장을 추출하는 방법은 다양하게 정의할 수 있다. 본 발명에서는 k개의 문장을 추출하는 방법에 대해 별도로 정의하지 않는다. In the present invention, in order to obtain the continuous probability density of the duration of each synthesis unit with respect to the duration of the speech rate, fast speech and slow speech are required for the same contents, so that all the M sentences of the synthetic DB are fast and slow. Recording with is inappropriate. Therefore, we need to extract k sentences that are sufficient for duration modeling but much smaller than M. There are various ways to extract these k sentences. In the present invention, a method of extracting k sentences is not separately defined.
이렇게 구축된 발성목록을 라 하고, 다음과 같이 정의할 수 있다. This list of voices It can be defined as follows.
[수학식 3]에서 추출된 발성목록 를 빠른 발화와 느린 발화로 발성시켜 각각을 훈련DB로 생성한다. 이렇게 생성된 에 대한 느린 발화의 훈련데이터를 라 정의하고 빠른 발화의 훈련데이터를 라 정의하기로 한다. Voice List extracted from
이렇게 하면 훈련셋 을 다음과 같이 정의할 수 있다. This will give you a training set Can be defined as:
여기서 은 별도로 녹음하는 것이 아니라 원본 합성DB에서 추출된 것을 의미하며, 원본 합성DB는 정상적인 발화(보통의 발화속도)속도로 녹음된 것임을 가정한다. here Means that it is extracted from the original synthesis DB, not recorded separately. It is assumed that the original synthesis DB was recorded at a normal utterance (normal ignition rate) speed.
[수학식 4]에서 정의된 훈련셋 을 이용하여 각각의 발화속도에 대한 합성단위들의 지속시간에 대한 연속확률분포를 정의한다. 여기서는 연속확률분포는 가우시안(Gaussian) 분포를 가정한다. Training set defined in [Equation 4] We define the continuous probability distribution of the durations of the composite units for each firing rate using. The continuous probability distribution assumes a Gaussian distribution.
예를 들어, 어떤 합성단위 가 있다면, 훈련DB구축을 위해 동일한 훈련셋을 이용하여 구축하였으므로 각 발화속도별 훈련셋 에 동일한 수 만큼 출현한다. 여기서, 각 셋에 들어있는 의 수를 L개라 가정하고, 각 훈련셋에 들어있는 의 지속시간 분포를 가우시안으로 모델링하기 위해서는 각 훈련셋에서의 에 대한 평균과 분산을 추정하면 된다. 여기에 ML기법을 적용하면 각 발성스타일에서의 에 지속시간 분포에 평균과 분산의 추정은, 주어진 훈련셋 각각에서의 샘플평균과 샘플분산으로 대치할 수 있다. For example, some synthetic unit If there is, training set for each ignition rate because it was constructed using the same training set for training DB construction. Appears at the same number as. Where each of the three Assume the number of L's To model Gaussian's duration distribution as Gaussian, Estimate the mean and variance for. If you apply ML technique to each Estimation of mean and variance in the distribution of durations in the given training set It can be replaced by the sample mean and sample variance in each.
그러므로 기본적인 통계적 계산과정을 거치게 되면 발화속도별로 구축된 훈련DB에서의 합성단위 에 대한 가우시안연속확률분포에 관한 샘플평균과 샘플분산을 계산하여 얻을 수 있으며, 발화속도별 합성단위의 연속확률분포는 다음과 같이 표현할 수 있다. Therefore, after the basic statistical calculation process, the synthesis unit in the training DB constructed for each ignition rate The sample mean and sample variance of the Gaussian continuous probability distribution for can be obtained by calculating, and the continuous probability distribution of the synthesis unit for each ignition rate can be expressed as
위 과정을 거쳐 최종적으로 합성단위에 대한 를 구하게 되면 에 대한 발화속도의 변화에 따른 지속시간의 모델링 과정이 끝나게 된다. 이 과정을 L개의 합성단위에 대해 수행하여 훈련과정을 마치게 된다. After the above process finally For compound units If you find The process of modeling the duration according to the change of the firing rate for is finished. This process is completed for L synthesis units to complete the training process.
다음은 이렇게 구축된 발화속도별 지속시간에 대한 합성단위별 확률분포를 이용해 어떻게 발화속도 변환을 수행하는지를 기술한다. The following describes how to perform the firing rate conversion using the probability distribution for each unit of composition for the duration of each firing rate.
어떤 시스템에 합성되어지도록 요청되어진 합성문장(또는 음절, 음소, 단어, 구, 어절, 문단, 문서 등, 어떤 단위든)을 라 하자. 그러면 는 다음과 같이 합성단위의 연속으로 정의할 수 있다. Synthesis sentences (or any unit, such as syllables, phonemes, words, phrases, words, paragraphs, documents, etc.) that are requested to be synthesized in a system Let's do it. then Can be defined as a sequence of synthetic units as follows:
즉, 입력문장 는 n개의 합성단위열의 연결로 표현할 수 있다. That is, the input sentence Can be expressed as a concatenation of n compound units.
n개의 합성단위열을 생성하고 이를 이용하여 타겟비용함수와 합성단위후보간 연결비용을 고려한 비터비 탐색을 수행하고, 이 과정을 거쳐 n개의 합성단위열에 최종적으로 에 대한 최적의 합성단위 를 구하는 과정은 대용량 코퍼스 기반 방식에서는 통상적인 방법이므로 상술하지 않는다. 이 과정을 제 1 단위 선택 (unit selection) 과정이라 정의한다. 상기 제 1 단위 선택 과정을 거쳐 최종적으로 선택된 n개의 최적합성단위 후보열을 라고 할 때, 다음과 같이 정의할 수 있다. We generate n composite unit sequences and use them to perform Viterbi search in consideration of the link cost between the target cost function and the composite unit candidates. Optimal Synthetic Unit for Since the process of obtaining is a conventional method in a large-scale corpus-based method, it is not described in detail. This process is defined as a first unit selection process. The n best synthesis unit candidate sequences finally selected through the first unit selection process are selected. In this case, it can be defined as follows.
이렇게 하여 구해진 각각의 최적합성단위후보 는 합성DB에서 선택하여온 것으로 그 지속시간은 미리 알 수 있다. 그러므로, 내의 각각의 최적합성단위후보 들의 지속시간을 라 정의할 수 있다. 이 과정을 도식화 한 것이 도 7이다. Each candidate compound unit candidate obtained in this way Is selected from the synthesis DB, and its duration can be known in advance. therefore, Candidates for each optimal synthesis unit in Their duration Can be defined. Fig. 7 illustrates this process.
본 발명의 다음 단계는, 사용자가 요구하는 발화속도변환율을 이라고 할 때, 이면 발화속도를 빠르게 변환하는 것으로, 미리 훈련된 분포정보를 이용해 값을 값으로 변환하는 과정이다. The next step of the present invention, the conversion rate conversion rate required by the user When we say, Is to quickly change the rate of fire, Using distribution information Value This is the process of converting it to a value.
이 과정을 수식으로 표현하면 다음과 같다. This process is expressed as an expression as follows.
여기서, t는 를 의미한다. 이 과정을 거쳐 모든 에 대한 를 구하게 되면 발화속도 변환을 위한 계산과정이 완료된다. Where t is Means. After this process all For When is calculated, the calculation process for converting the firing rate is completed.
다음에, 제 2 단위 선택 과정은 다시 통상적인 합성기의 비터비 탐색을 이용한 최적합성단위 후보의 탐색과정이다. 그러나, 제 1 단위 선택 과정과 다른 점은 [수학식 8]에 의해 구한 정보를 의 에 대한 지속시간 파라미터로 활용하여 단위 선택 과정을 거친다는 점이다. Next, the second unit selection process is again a process of searching for the best synthesis unit candidate using the Viterbi search of the conventional synthesizer. However, the difference from the first unit selection process is obtained by Equation (8). Information of It is a unit selection process using as a duration parameter for.
상술한 바와 같이, 본 발명에 의한 음성합성시스템의 발화속도 변환방법은, 발화속도별로 녹음된 소량의 훈련DB를 이용하여 합성단위의 지속시간에 대한 연속확률분포함수를 구하여 이를 정상발화와 비교하여 중심값의 이동과 분산폭을 고찰하면 어떤 문맥의 합성단위가 어떤 발화속도에 어느정도 민감하게 변화하는지를 살펴볼 수 있다. As described above, in the speech rate conversion method of the speech synthesis system according to the present invention, using a small amount of training DB recorded for each speech rate, a continuous probability distribution function for the duration of the synthesis unit is obtained and compared with the normal speech. Considering the shift and variance of the central values, we can see how sensitive the synthesis unit of a context changes to what firing rate.
즉, 어떤 합성단위의 지속시간 분포에 있어서, 도 4와 같이 발화속도별 중심 값간의 거리와 분산도의 크기가 상이하게 되면 이 합성단위는 발화속도에 종속적으로 지속시간이 변화하는 문맥의 합성단위이고, 도 5와 같이 발화속도별 중심값간의 차이와 분산도의 차이가 적으면 이 합성단위는 발화속도에 덜 민감한 문맥에서 상용되는 합성단위임을 판단할 수 있다. 또는 임계치를 도입하여 중심값의 이동이 x이상이거나 또는 분산도의 크기 변화가 y이상이면 이는 발화속도에 종속적인 문맥이라 정의하여, 이 문맥의 합성단위에 대해서만 기존의 SOLA 방식을 이용한 지속시간 변경도 가능하고, 만일 중심값의 이동이 x이하이거나 또는 분산도의 크기 변화가 y이하이면 이는 발화속도에 영향을 받지 않는 문맥의 합성단위로 판단하고 이 부분에는 SOLA방식을 적용하지 않게 함으로써 기존의 SOLA방식의 문제점인 발화속도에 종속적인 문맥과 독립적인 문맥을 고려하여 발화속도 변환을 수행할 수 없다라는 문제점을 해결할 수 있게 된다. That is, in the duration distribution of a compounding unit, as shown in FIG. 4, when the distance between the center values for each firing rate and the magnitude of the dispersion degree are different, the compounding unit of the context in which the duration varies depending on the firing rate. 5, if the difference between the center value for each ignition rate and the difference in dispersion degree is small, it can be determined that this synthesis unit is a synthetic unit commonly used in a context that is less sensitive to the ignition rate. Alternatively, if the movement of the center value is greater than x or the variation of the variance is greater than y by introducing a threshold, it is defined as a context dependent on the ignition rate, and the duration change using the existing SOLA method only for the synthesis unit of this context is defined. If the movement of the center value is less than x, or if the change in the degree of dispersion is less than y, it is judged as a composite unit of the context that is not affected by the ignition rate and the existing SOLA method is not applied to this part. It is possible to solve the problem that the conversion of the speech rate cannot be performed in consideration of the context independent of the speech rate, which is a problem of the SOLA method.
또한 본 방법은 합성기의 단위 선택 과정에서 수정된 새로운 지속시간 타켓인 를 이용하여 2-패스 검색하여 합성음을 생성하므로 기존의 SOLA방식처럼 합성음에 대해 신호처리를 하지 않아도 된다는 장점이 있으며, 이는 발화속도 변환의 실시간성을 높일 수 있다. The method also provides a new duration target modified during the unit selection process of the synthesizer. Since two-pass search is used to generate synthesized sound, there is an advantage that signal processing is not required for synthesized sound as in the conventional SOLA method.
2-패스 검색(제 2 단위 선택과정)을 수행하므로, 동일한 검색공간을 두번 검색을 하게되니까 더 많은 시간이 소요되는 것이 아닌가 라는 문제점을 제기할 수 있으나, 이 부분은 1-패스 검색시 최적의 각 합성단위 후보의 N-best만을 탐색공간으로 설정하면 탐색공간을 줄일 수 있어 실시간성을 저해하지 않게 할 수 있다. Since it performs a two-pass search (second unit selection process), it may raise the problem that it takes more time to search the same search space twice, but this part is optimal for one-pass search. If only N-best of each synthesis unit candidate is set as the search space, the search space can be reduced, so as not to impair the real-time.
또한, 본 발명의 가장 큰 특징은 를 구하는 계산식 자체에 발화속도에 민감한 문맥과 발화속도에 둔감한 문맥에 대한 고려가 포함되어 있어, 이러한 문맥의 식별을 위해 별도의 훈련이나 예측모델을 생성할 필요가 없다는 점이다. In addition, the biggest feature of the present invention The calculation itself requires the consideration of contexts sensitive to speech rate and context insensitive to speech rate, so there is no need to create a separate training or prediction model to identify these contexts.
Claims (6)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/290,908 US20060136215A1 (en) | 2004-12-21 | 2005-11-30 | Method of speaking rate conversion in text-to-speech system |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20040109897 | 2004-12-21 | ||
KR1020040109897 | 2004-12-21 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20060071291A KR20060071291A (en) | 2006-06-26 |
KR100620898B1 true KR100620898B1 (en) | 2006-09-07 |
Family
ID=37164821
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020050064097A KR100620898B1 (en) | 2004-12-21 | 2005-07-15 | Method of speaking rate conversion of text-to-speech system |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100620898B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11580955B1 (en) * | 2021-03-31 | 2023-02-14 | Amazon Technologies, Inc. | Synthetic speech processing |
-
2005
- 2005-07-15 KR KR1020050064097A patent/KR100620898B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR20060071291A (en) | 2006-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100590553B1 (en) | Method and apparatus for generating dialog prosody structure and speech synthesis method and system employing the same | |
US7096183B2 (en) | Customizing the speaking style of a speech synthesizer based on semantic analysis | |
Hansen et al. | Feature analysis and neural network-based classification of speech under stress | |
Yoshimura et al. | Duration modeling for HMM-based speech synthesis. | |
US7240005B2 (en) | Method of controlling high-speed reading in a text-to-speech conversion system | |
KR20190085883A (en) | Method and apparatus for voice translation using a multilingual text-to-speech synthesis model | |
US11763797B2 (en) | Text-to-speech (TTS) processing | |
US9147392B2 (en) | Speech synthesis device and speech synthesis method | |
Chittaragi et al. | Acoustic-phonetic feature based Kannada dialect identification from vowel sounds | |
US11915683B2 (en) | Voice adaptation using synthetic speech processing | |
JP6013104B2 (en) | Speech synthesis method, apparatus, and program | |
Stöber et al. | Speech synthesis using multilevel selection and concatenation of units from large speech corpora | |
CN1787072B (en) | Method for synthesizing pronunciation based on rhythm model and parameter selecting voice | |
Ong et al. | Malay language speech recogniser with hybrid hidden markov model and artificial neural network (HMM/ANN) | |
Krug et al. | Articulatory synthesis for data augmentation in phoneme recognition | |
KR100620898B1 (en) | Method of speaking rate conversion of text-to-speech system | |
Cahyaningtyas et al. | Synthesized speech quality of Indonesian natural text-to-speech by using HTS and CLUSTERGEN | |
US20060136215A1 (en) | Method of speaking rate conversion in text-to-speech system | |
Takaki et al. | Overview of NIT HMM-based speech synthesis system for Blizzard Challenge 2012 | |
Saeed et al. | A novel multi-speakers Urdu singing voices synthesizer using Wasserstein Generative Adversarial Network | |
Scharenborg | Using durational cues in a computational model of spoken-word recognition | |
Houidhek et al. | Evaluation of speech unit modelling for HMM-based speech synthesis for Arabic | |
Kerle et al. | Speaker Interpolation based Data Augmentation for Automatic Speech Recognition | |
Salvi | Developing acoustic models for automatic speech recognition | |
KR20100072962A (en) | Apparatus and method for speech synthesis using a plurality of break index |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20120730 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20130729 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20140728 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20150728 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20160726 Year of fee payment: 11 |
|
LAPS | Lapse due to unpaid annual fee |