專利名稱:確定一系列聲音模塊以合成調(diào)性語言的語言信號的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種用于確定一系列聲音模塊以根據(jù)預(yù)定系列的語言模塊來合成調(diào)性語言的語言信號的方法。
背景技術(shù):
由計(jì)算機(jī)執(zhí)行的、用于合成調(diào)性語言-譬如漢語、尤其是官方話或泰語-的自動(dòng)方法通常是使用一些分別描述一個(gè)音節(jié)的聲音模塊,因?yàn)檎{(diào)性語言一般具有較少的音節(jié)。這些聲音模塊被鏈接成一個(gè)語言信號,其中需要考慮取決于音調(diào)的音節(jié)含義。
由于這種已知方法具有一組聲音模塊,且該聲音模塊組必須包括不同變體和上下文(Kontext)中的所有音節(jié),所以在計(jì)算機(jī)內(nèi)自動(dòng)地執(zhí)行時(shí)需要較大的計(jì)算能力。在應(yīng)用于移動(dòng)電話的情況下,經(jīng)常不具備這種計(jì)算能力。
在具有較大計(jì)算能力的應(yīng)用情況下,盡管有足夠的計(jì)算能力可供使用,但所述已知的用于合成調(diào)性語言的方法還是有缺點(diǎn)的,即通過預(yù)定的音節(jié)組不能正確地合成那些包含有并非存儲(chǔ)在該音節(jié)組中的音節(jié)的特殊詞語。
這些已知的方法在實(shí)踐中被證明是可靠的。但它們并不非常靈活,因?yàn)樗鼈兘?jīng)常不能適用于具有小計(jì)算能力的應(yīng)用,而且它們并沒有盡量利用由高計(jì)算能力提供的可能性。
在論文“Konkatenative Sprachsynthese mit grossenDatenbanken(利用大數(shù)據(jù)庫的鏈接語言合成)”,MartinHolzapfel,TU Dresden,2000中講述過一種用于合成語言的方法,它涉及歐洲語言的合成。在該方法中,以聲音模塊的形式把各個(gè)聲音寄存在其特有的左/右上下文中。按照“The HTK book,version 2.2(HTK書,版本2.2)”Steve Young,Dan Kershaw,Julian Odell,DaveOllason,Valtcho Valtchev以及Phil Woodland,Entropic Ltd.,劍橋1999,這些聲音模塊被稱作三單音(Triphone)。從該意義上講,三單音是單個(gè)音素的聲音模塊,但考慮了前面和后面的音素的上下文。
根據(jù)該已知的方法,在數(shù)據(jù)庫內(nèi)給每個(gè)通常由一個(gè)字母組成的語言模塊存儲(chǔ)一組聲音模塊(三單音)。借助適用函數(shù)求出相應(yīng)語言模塊的聲音模塊的適用距離,其中,所述的適用函數(shù)定量地描述了相應(yīng)聲音模塊對表示所述語言模塊或一系列語言模塊的適用性。在此,所述的適用距離可以按照如下準(zhǔn)則求出-聲音模塊的代表性;-對聲音時(shí)延的干擾;-對聲音能量的干擾;-對基頻的干擾;在測定聲音模塊的代表性時(shí),可以確定聲音模塊組的典型的譜矩心,并把一個(gè)與相應(yīng)聲音模塊離所述矩心的譜間隔間接地成比例的值確定為適用距離。
在鏈接聲音模塊時(shí)可能干擾所述的基頻,由此也影響到所述的聲音時(shí)延和聲音能量。利用相應(yīng)的適用函數(shù)求出所述因干擾而產(chǎn)生的、偏離所述音段(Lautabschnitt)的原始狀態(tài)的程度。
在DE 197 36 465.9中曾公開過一種用于求取表示語言模塊的聲音模塊(代表)的方法。其中把適用函數(shù)稱為屬性函數(shù),而把適用距離稱為選擇標(biāo)準(zhǔn)。另外,該方法與在上面的論文中所講述的方法是一致的。
發(fā)明內(nèi)容
本發(fā)明所基于的任務(wù)在于創(chuàng)造一種用于確定一系列聲音模塊以根據(jù)預(yù)定系列的語言模塊來合成調(diào)性語言的語言信號的方法。
該任務(wù)由具有權(quán)利要求1的特征的方法來解決。優(yōu)選改進(jìn)方案由從屬權(quán)利要求給出。
根據(jù)本發(fā)明的方法來確定一系列聲音模塊,以根據(jù)預(yù)定系列的語言模塊來合成調(diào)性語言的語言信號,其中,-根據(jù)預(yù)定系列的語言模塊分別選擇出一個(gè)具有音段的組,這個(gè)組包含有可分配給所述語言模塊的音段,-通過如下方式為每個(gè)語言模塊分別從相應(yīng)的聲音模塊組中選擇出一個(gè)聲音模塊,即針對一組內(nèi)的聲音模塊分別借助至少一個(gè)適用函數(shù)確定出至預(yù)定語言模塊的適用距離,并把預(yù)定系列的聲音模塊的各個(gè)適用距離用邏輯相互連接成一個(gè)全局適用距離,其中,所述的全局適用距離定量地描述了相應(yīng)聲音模塊系列的用于表示相應(yīng)語言模塊系列的適用性,而且把具有最佳適用距離的所述聲音模塊系列分配給所述預(yù)定的語言模塊系列,其中,所述的聲音模塊包括有分別只描述一個(gè)具有相應(yīng)上下文的音素的三單音,而且由一個(gè)或多個(gè)三單音組成所述調(diào)性語言的音節(jié)。
因此,利用本發(fā)明創(chuàng)造了如下一種方法,它可以用三單音來組成調(diào)性語言的音節(jié)。在此放棄了為合成調(diào)性語言而在常規(guī)方法中所采用的原理-即只由描述完整音節(jié)的聲音模塊來組成所述的語言信號-,而是還用三單音來組成音節(jié)。由此可以非常靈活地通過聲音模塊來合成音節(jié)。
根據(jù)一種優(yōu)選的實(shí)施方案,采用一個(gè)描述兩個(gè)相鄰聲音模塊的可鏈接性的函數(shù)作為適用函數(shù),其中所述適用函數(shù)的值在音節(jié)邊界處被加權(quán)時(shí)要小于音節(jié)內(nèi)部的區(qū)域。由此可以實(shí)現(xiàn)在所述的音節(jié)邊界處對三單音的可鏈接性進(jìn)行較小的加權(quán),從而三單音可以在音節(jié)邊界處以較小的可鏈接性被相互鏈接。
根據(jù)另一種優(yōu)選實(shí)施例,采用一個(gè)對從一個(gè)聲音模塊過渡到相鄰聲音模塊處的音調(diào)的一致性進(jìn)行描述的函數(shù)來作為適用函數(shù)。由此實(shí)現(xiàn)了音調(diào)的匹配。
下面借助附圖來示例地講述本發(fā)明。圖中圖1示出了一種用于確定一系列聲音模塊以合成語言信號的方法,圖2簡要地示出了局部適用函數(shù)和聲音模塊、語言模塊之間的關(guān)系,圖3-6分別示出了坐標(biāo)系中的局部適用函數(shù),圖7示出了兩個(gè)相鄰的音段的音調(diào)曲線,以及圖8簡要地示出了用于合成語言的裝置結(jié)構(gòu)。
具體實(shí)施例方式
需要合成的文本通常都是以電子可讀的文件形式出現(xiàn)的。該文件包含有諸如滿語等調(diào)性語言的文字。在第一步驟S1(圖1)中把這些文字轉(zhuǎn)換成被分配給它們的音標(biāo),其中音標(biāo)的每個(gè)字符都表示一個(gè)音素或其類似物。
在步驟S2中給每個(gè)音素分配一組聲音模塊。該聲音模塊是預(yù)先在訓(xùn)練階段通過對語言樣品進(jìn)行分段來產(chǎn)生的,并被存儲(chǔ)下來。分段這種語言樣品譬如可以借助“Fast-Viterbi-Alignment(快速維特比對準(zhǔn))”來實(shí)現(xiàn)。為每個(gè)三單音產(chǎn)生多個(gè)合適的聲音模塊,而這些聲音模塊被分別綜合成一組。這些組隨后被分配給相應(yīng)的三單音。
由此在步驟S2中求出一系列合適的聲音模塊組,并將其分配給相應(yīng)的具有左右上下文的音素。這種具有左右上下文的音素被稱為三單音,并表示了需合成的文本的語言模塊。
在步驟S3中計(jì)算局部適用函數(shù),由該適用函數(shù)分別得出適用距離。所述的適用距離定量地描述了相應(yīng)聲音模塊對于表示接下來的語言模塊或語言模塊系列的適用性。在圖2中簡要地示出了三個(gè)需要實(shí)現(xiàn)的語言模塊SB1、SB2、SB3和三個(gè)可能的聲音模塊LB1、LB2、LB3。聲音模塊LB1是被分配給語言模塊SB1的組中的成員。相應(yīng)地也適用于所述的對SB2、LB2和SB3、LB3。
表示某個(gè)語言模塊的聲音模塊的適用性可能取決于不同的準(zhǔn)則。這些準(zhǔn)則基本上可以劃分為兩類。第一類準(zhǔn)則確定了某個(gè)聲音模塊LB1能表示某個(gè)語言模塊SB1的適用性。由于語言模塊系列必須分別被轉(zhuǎn)換成相應(yīng)的聲音模塊系列,而且并不是任意的聲音模塊都可以相互鏈接-因?yàn)閺囊粋€(gè)聲音模塊至另一聲音模塊的相應(yīng)過渡處可能會(huì)產(chǎn)生不理想的假象-,所以第二類準(zhǔn)則描述了各個(gè)聲音模塊的可鏈接的適用性。從該意義上講,可以區(qū)分為一種位于各個(gè)聲音模塊與語言模塊之間的模塊目標(biāo)距離以及一種位于各個(gè)聲音模塊之間的可鏈接距離。
下面來詳細(xì)講述所述的局部適用函數(shù)。
在步驟S4中把一系列聲音模塊的適用距離用邏輯連接成一個(gè)全局適用距離。
在本發(fā)明的實(shí)施例中,所有適用函數(shù)的數(shù)值范圍包括值0~1,其中1對應(yīng)于最佳的適用,而0對應(yīng)于最差的適用。因此所述的局部適用函數(shù)可以根據(jù)如下公式用乘法互相進(jìn)行邏輯連接 根據(jù)該公式把每個(gè)模塊的各個(gè)適用函數(shù)(準(zhǔn)則)的所有局部適用距離E局部相乘,同時(shí)又把利用每個(gè)模塊所得出的乘積相乘以得出全局的適用距離E全局。因此,該全局適用距離E全局描述了一個(gè)聲音模塊系列表示某個(gè)語言模塊系列的適用性。所述全局適用函數(shù)的數(shù)值范圍也為0~1,其中0對應(yīng)于最差適用,1對應(yīng)于最佳適用。
在步驟S5中選出所述可以最合適地表示某個(gè)預(yù)定語言模塊系列的聲音模塊系列。在該實(shí)施例中,它是全局適用距離E全局具有最大值的那個(gè)聲音模塊系列。
如果求出了最合適地表示所述預(yù)定語言模塊系列的聲音模塊系列,則可以通過相繼地輸出該聲音模塊來產(chǎn)生語言,其中所述的聲音模塊顯然可能以已知的方式被干擾和改變。
下面來詳細(xì)講述一些局部的適用函數(shù),它們可以單獨(dú)或組合地使用。圖3示出了一種局部適用函數(shù)Es的曲線,由它得出圖2的模塊目標(biāo)距離,并由此描述了相應(yīng)聲音模塊對預(yù)定語言模塊的代表性。因此它也是聲音模塊適合作為代表的一個(gè)量度,也就是說需選出的聲音模塊是一個(gè)典型的表達(dá)特征的聲音模塊,并且適合作為相應(yīng)語言模塊的代表。
所采取的適用函數(shù)Es線性地位于具有“最壞”(Es=1-SG)適用距離的音段和具有“最好”(Es=1)適用距離的音段之間。
圖4以適用函數(shù)的形式示出了如下一個(gè)量度,它描述了因適應(yīng)某個(gè)基頻而對相應(yīng)音段的長度干擾。因此它也是音段的原始時(shí)延相對于該音段的合成時(shí)延的量度。最多分別偏移一個(gè)下限閾值lUG和一個(gè)上限閾值lOG都被認(rèn)為是沒有問題的。當(dāng)超過該閾值、也即小于下限閾值lUG或大于上限閾值lOG時(shí),所述的局部適用函數(shù)El_syn會(huì)呈指數(shù)下降。
該適用函數(shù)El_syn利用如下公式來描述
通過把平均長度l標(biāo)準(zhǔn)化為1,所述的偏差便變成了相對的。所述的局部適用函數(shù)El_syn也被標(biāo)準(zhǔn)化為1,并得出一個(gè)模塊目標(biāo)距離。
圖5示出了一個(gè)局部適用函數(shù),它描述了所述聲音模塊的音調(diào)與目標(biāo)基頻的偏差。在此,所述的音調(diào)相對于所述模塊在非干擾狀態(tài)時(shí)所分配的音調(diào)的偏差應(yīng)盡可能地低。該局部適用函數(shù)Ef_syn具有如下形式 在此所述的頻率f也被標(biāo)準(zhǔn)化為平均頻率f。所述的適用函數(shù)Ef_syn被標(biāo)準(zhǔn)化為1。頻率的上限參數(shù)由fOG給出,而頻率的下限參數(shù)由fUG給出。
利用圖6所示的局部適用函數(shù)來描述因音段對基頻的適應(yīng)而產(chǎn)生的、音段的能量同平均值的偏差。該局部適用函數(shù)用以下公式來描述 在此,E為能量E的平均值(期望值),EUG為能量的下限閾值,EOG為能量的上限閾值,以及σE為能量的方差。適用函數(shù)EE_al被標(biāo)準(zhǔn)化為1。
為替代所述的能量,也可以使用音段的長度l作為準(zhǔn)則。象圖5那樣產(chǎn)生一個(gè)局部適用函數(shù)El_al,以用于求取音段因適應(yīng)基頻而發(fā)生的長度變化的偏差。同樣預(yù)定一個(gè)上限閾值lOG、一個(gè)下限閾值lUG和長度的方差σl,以便能利用下式來描述所述的適用函數(shù)El_al。 上述的局部適用函數(shù)總是能得出一個(gè)模塊目標(biāo)距離。為了評價(jià)所述的音段,可以單獨(dú)或組合地考慮該適用函數(shù)。
利用上述的局部適用函數(shù)Ef_syn來評價(jià)所述聲音模塊的基頻f相對于目標(biāo)基頻f的偏差。為了合成調(diào)性語言,優(yōu)選地采用一個(gè)從此變換出的局部適用函數(shù),利用它來評價(jià)兩個(gè)相繼的音段在其連接處的頻差。在圖7中簡要地示出了兩個(gè)相繼的音段LBa和LBb的頻率曲線。在時(shí)間點(diǎn)t0結(jié)束音段LBa和開始音段LBb。在該時(shí)間點(diǎn)處存在一個(gè)頻差Δf,因?yàn)樗龅囊舳蜭Ba以頻率fa在時(shí)間點(diǎn)t0處結(jié)束,而音段LBb則以頻率fb在該時(shí)間點(diǎn)處開始。在調(diào)性語言中給所述的音調(diào)分配一個(gè)含義內(nèi)容。但所述各個(gè)音段的音調(diào)或頻率對于理解合成的語言是最為重要的。此外,在從一個(gè)音段過渡到另一音段的過程中,較大的頻差便會(huì)產(chǎn)生假象。因此,評價(jià)兩個(gè)相繼的音段之間的頻差是有意義的,其中小的頻差將表現(xiàn)出較好的適用性。這類局部適用函數(shù)譬如可以用公式表達(dá)如下 在此也規(guī)定了頻率的上限參數(shù)f’OG和頻率的下限參數(shù)f’UG由于利用該局部適用函數(shù)可以求出兩個(gè)相繼的聲音模塊之間的適用距離,所以該適用距離描述了圖2意義上的可鏈接距離。
現(xiàn)有技術(shù)公開了其它的局部適用函數(shù),以描述相繼的音段之間的可鏈接性(參見論文“利用大數(shù)據(jù)庫的級聯(lián)語言合成”,MartinHolzapfel,TU Dresden,2000)。該局部適用函數(shù)可以結(jié)合上述適用函數(shù)Ev一起使用,或也可以單獨(dú)地用于本發(fā)明的方法。
但在本發(fā)明的范圍內(nèi)如下做法是有利的,即根據(jù)鏈接邊界位于哪個(gè)范圍來加權(quán)所述描述鏈接適用性的適用函數(shù)Ev。因此,一個(gè)音節(jié)的兩個(gè)音段之間的鏈接適用性要比音節(jié)邊界或字邊界、句子邊界處的鏈接適用性更為重要。由于在本實(shí)施例中所述局部適用函數(shù)的數(shù)值范圍位于0~1之間,所以可以通過把一個(gè)加權(quán)因子作為未被加權(quán)的適用函數(shù)Ev的乘方來獲得被加權(quán)的適用函數(shù)EgvEgv=(Ev)gn(7)在此,gn為加權(quán)因子。加權(quán)因子選得越大,位于兩個(gè)相繼的音段之間的鏈接適用性就越重要。合適的加權(quán)因子值譬如在句子邊界處為g1=0、在字邊界處為g2=[2,5]、在音節(jié)邊界處為g3=[5,100]、以及在音節(jié)內(nèi)為g4>>1000。由此用加權(quán)因子gn給鏈接函數(shù)值Ev進(jìn)行乘方,使得在較大的加權(quán)因子情況下,較小的Ev值可以得出近似于0的加權(quán)適用距離。在上述給定的加權(quán)因子值的情況下,只有未加權(quán)的、僅稍微小于1的適用距離才被評價(jià)為合適于選擇相應(yīng)的音段。
通過采用這種加權(quán),只鏈接一個(gè)音節(jié)內(nèi)“匹配”得非常好的音段。由此用各個(gè)音段或三單音來產(chǎn)生一些音節(jié)。相反,在音節(jié)邊界處可以通過較小的加權(quán)而使所述未加權(quán)的鏈接適用性保持相應(yīng)地小。在字邊界處再次稍微逐級減小所述的加權(quán)。在句子邊界處使用所述的加權(quán)因子g1=0的作用在于,在句子邊界處不需要鏈接適用性,也就是說在句子邊界處可以跟隨兩個(gè)音段,其鏈接適用距離等于0。
圖8簡略地示出了用于執(zhí)行本發(fā)明方法的計(jì)算機(jī)結(jié)構(gòu)。所述的計(jì)算機(jī)具有一個(gè)數(shù)據(jù)總線B,在該數(shù)據(jù)總線上鏈接了一個(gè)CPU和一個(gè)數(shù)據(jù)存儲(chǔ)器SP。另外,所述的總線B還與輸入/輸出單元I/O相連,在該輸入/輸出單元上連接了揚(yáng)聲器L、屏幕B和鍵盤T。在所述的數(shù)據(jù)存儲(chǔ)器SP內(nèi)存放有用于執(zhí)行本發(fā)明方法的程序。另外向所述的數(shù)據(jù)存儲(chǔ)器輸入一個(gè)文本文件,它包含有需要轉(zhuǎn)換成聲音模塊的語言模塊。然后利用CPU執(zhí)行本發(fā)明的方法,其中,所述的語言模塊被轉(zhuǎn)換成聲音模塊,并經(jīng)輸入/輸出單元在揚(yáng)聲器L上輸出。此處顯然可以根據(jù)普通的處理方法來改進(jìn)和改變所述被鏈接的聲音模塊。
如下方面對本發(fā)明是主要的,即把描述三單音的聲音模塊組合成所述的調(diào)性語言,以便獲得最大的靈活性。在本發(fā)明的范圍內(nèi),顯然也可以用聲音模塊來描述調(diào)性語言的全部音節(jié)。重要的是也要有描述三單音的聲音模塊,并能對其進(jìn)行相應(yīng)的鏈接。通過分析從一個(gè)音段至另一音段處的頻差,可以優(yōu)選地對調(diào)性語言的特有特征作出特殊考慮。
通過本發(fā)明對描述鏈接性能的適用函數(shù)進(jìn)行加權(quán),便相應(yīng)地在合成時(shí)考慮了所述調(diào)性語言的結(jié)構(gòu)。
權(quán)利要求
1.用于確定一系列聲音模塊以根據(jù)預(yù)定系列的語言模塊來合成調(diào)性語言的語言信號的方法,其中,-根據(jù)預(yù)定系列的語言模塊分別選擇出一個(gè)具有音段的組,這個(gè)組包含有可分配給所述語言模塊的音段,-通過如下方式為每個(gè)語言模塊分別從相應(yīng)的聲音模塊組中選擇出一個(gè)聲音模塊,即針對一組內(nèi)的聲音模塊分別借助至少一個(gè)適用函數(shù)確定出至預(yù)定語言模塊的適用距離,并把預(yù)定系列的聲音模塊的各個(gè)適用距離用邏輯相互連接成一個(gè)全局適用距離,其中,所述的全局適用距離定量地描述了相應(yīng)聲音模塊系列的用于表示相應(yīng)語言模塊系列的適用性,而且把具有最佳適用距離的所述聲音模塊系列分配給所述預(yù)定的語言模塊系列,其特征在于所述的聲音模塊是分別只包含一個(gè)具有相應(yīng)上下文的音素的三單音,其中由一個(gè)或多個(gè)三單音組成所述調(diào)性語言的音節(jié)。
2.如權(quán)利要求1所述的方法,其特征在于借助每個(gè)聲音模塊的多個(gè)適用函數(shù)分別計(jì)算出一個(gè)局部適用距離,所述預(yù)定系列的聲音模塊的各個(gè)局部適用距離被相乘為所述的全局適用距離。
3.如權(quán)利要求1或2所述的方法,其特征在于采用一個(gè)描述兩個(gè)相鄰聲音模塊的可鏈接性的函數(shù)作為適用函數(shù),其中所述適用函數(shù)的值在音節(jié)邊界處被加權(quán)時(shí)不同于音節(jié)內(nèi)部。
4.如權(quán)利要求3所述的方法,其特征在于所述描述可鏈接性的適用函數(shù)還在字和句子邊界處被加權(quán)。
5.如權(quán)利要求3或4所述的方法,其特征在于通過用一個(gè)加權(quán)因子(g)對相應(yīng)的適用函數(shù)進(jìn)行乘方來實(shí)現(xiàn)所述的加權(quán)。
6.如權(quán)利要求5所述的方法,其特征在于在音節(jié)內(nèi)部的加權(quán)因子(g4)大于1000,而在音節(jié)邊界處的加權(quán)因子(g3)位于5~100之間。
7.如權(quán)利要求6所述的方法,其特征在于在字邊界處的加權(quán)因子(g2)為2~5,而在句子邊界處的加權(quán)因子(g1)等于0。
8.如權(quán)利要求1~7之一所述的方法,其特征在于采用一個(gè)描述兩個(gè)相鄰聲音模塊的音調(diào)的一致性的函數(shù)來作為適用函數(shù)。
9.如權(quán)利要求1~8之一所述的方法,其特征在于通過相乘來對預(yù)定系列的各個(gè)適用距離進(jìn)行相互邏輯連接,其中所述的適用距離位于數(shù)值范圍0~1,并且1對應(yīng)于最佳的適用,而0對應(yīng)于最差的適用。
全文摘要
本發(fā)明涉及一種用于確定一系列聲音模塊以根據(jù)預(yù)定系列的語言模塊來合成調(diào)性語言的語言信號的方法。本發(fā)明與已知方法的不同之處在于,所述的聲音模塊表現(xiàn)為一些分別包含一個(gè)具有相應(yīng)上下文的音素的三單音,其中由一個(gè)或多個(gè)三單音組成所述調(diào)性語言的音節(jié)。由此在合成調(diào)性語言時(shí)實(shí)現(xiàn)了高度的靈活性。
文檔編號G10L13/06GK1383130SQ02118428
公開日2002年12月4日 申請日期2002年4月25日 優(yōu)先權(quán)日2001年4月26日
發(fā)明者M·霍爾扎普菲爾, B·陶 申請人:西門子公司