神經網絡與漢語TTS韻律模型
陶建華 蔡蓮紅 2001/06/01
韻律模型
每個人說話的語音中都有一個基本頻率,被稱做基頻,它體現了說話人聲音的高低。在漢語文語轉換系統(tǒng)(TTS)中,對基頻、語音單元的長度、說話停頓、能量等韻律信息進行預測的模塊一般稱做韻律模塊。
眾所周知,漢語是一個有調的語言,這是它與其他西方語系最大的不同之處。漢語的每一個字(兒化音除外),通常都被認為是一個有調的音節(jié)。每一個聲調都有一些固定的調型(基頻形狀),但我們通常所說的話往往是由多個字組成的連續(xù)語句,這些聲調的調型受相鄰其他字或詞的影響,常常會產生變換,甚至失去原有的調型,這就是漢語中常說的協(xié)同發(fā)音現象。這也就是為什么人說話時會有連續(xù)感,而不是一個字一個字地發(fā)音。同時,連續(xù)語句發(fā)音的中間還會有短暫的停頓,這些又體現了人說話的節(jié)奏感。漢語TTS韻律模型的主要任務就是根據文字中的信息,通過對基頻、音長、停頓等參數的預測,達到控制TTS系統(tǒng)發(fā)音方式的目的,使發(fā)音自然、好聽。
采用神經網絡模型的背景
隨著語音學和計算機技術的發(fā)展,TTS系統(tǒng)的研究目前已獲得了重大進展,并成功地應用在許多不同的場合。但是,以往語音合成的結果與人自然流暢的發(fā)音仍相去甚遠,其中的關鍵就在于語音韻律模型還不很完善。另外,人有思想、會思考,語音合成系統(tǒng)不僅應該發(fā)音清晰、自然,還應該能像人一樣具有自我學習的功能,具有個人特色,甚至具有模擬特定人發(fā)音的能力。
近幾年來,隨著計算機處理的進一步深入,從大量語料中提取連續(xù)語句的韻律特征已逐漸成為可能。鑒于神經網絡具有良好的自動學習和參數映射的特點,可以使系統(tǒng)具有不斷自我學習和輸出優(yōu)化功能,因此,將神經網絡用于語音合成系統(tǒng)的研究越來越受到重視。研究結果表明,對比傳統(tǒng)的規(guī)則語音合成方法,運用神經網絡技術合成的語音的自然度均得到了相當程度的提高。
清華大學計算機系在國內最早進行了神經網絡用于漢語TTS系統(tǒng)的研究,目前已經取得了非常成功的結果。所提出的帶特殊加權因子的神經網絡韻律模型,無論在提高TTS系統(tǒng)自然度方面,還是在執(zhí)行效率上,相比較其他已有的模型,均獲得了較大的提高。
清華大學計算機系對人機語音交互的研究始于1979年,并長期致力于語音合成的聲學模型、韻律模型、文本分析、韻律描述語言、語音數字編碼、多媒體等相關技術的研究和開發(fā)。下面介紹由清華大學計算機系人機交互與媒體集成研究所提出的漢語TTS系統(tǒng)神經網絡韻律模型。
神經網絡韻律模型的輸入和輸出
構筑神經網絡韻律模型必須首先解決模型的輸入和輸出問題。對TTS系統(tǒng)來說,系統(tǒng)的輸入就是從計算機屏幕或文件中得到的文字,輸出則是連續(xù)語音。因此,神經網絡韻律模型的輸入必須是與文字相關的信息,通常稱其為語境信息,而輸出則是與語音相關的韻律信息。
正如前面所述,當漢語中多個字組成詞或詞組而連續(xù)發(fā)音時,它們之間會相互影響,形成較獨立、完整的韻律塊,這些韻律塊的韻律特征對語音的自然度起著非常重要的作用,而不同的韻律塊組合在一起,往往可以形成不同的語調,使人的發(fā)音具有不同的語氣。根據這樣的思路,可以將漢語的文字信息沿著語句(sentence)→短語(phrase)→音節(jié)(syllable)的思路劃分,共分為五組:音節(jié)(字)信息、相鄰音節(jié)(字)信息、短語信息、語句信息及重音信息。有17個參數能對漢語韻律產生重要的影響,這些參數就是神經網絡韻律模型的輸入。當然,這些參數都能夠從文字中得到,但必須輔以另外的文本分析模塊。
神經網絡的輸出就是漢語韻律控制參數。在基頻方面,使用SPiS模型,如圖1所示。
圖1 漢語音節(jié)基頻規(guī)格化模型--SPiS
神經網絡的結構
神經網絡的拓撲結構如圖2所示,基本可以分為三層,即輸入層(語境標注矢量層)、輸出層(韻律控制矢量層)和中間隱層。
圖2 韻律神經網絡模擬
語音學的研究表明,漢語較其他語言更強調文字發(fā)音的輕重和語氣的走勢。前面所述的模型輸入參數(語境參數)被分為兩組,同時在其中一組上加入一個特殊的加權隱層,以突出改組的權重,該隱層的神經元函數為:y=x2。
測試結果證明,加權隱層的引入使網絡結構進一步體現了漢語獨特的韻律特點,使網絡的收斂速度在原有的基礎上提高了約18%,從而較大地改善了網絡的收斂性。同時,在模型的建立中,還利用概率分布的原理,采用輸出離散化并取其質心的方法,對神經網絡的輸出進行優(yōu)化,使網絡的輸出精度進一步提高了約7%,從而增強了網絡輸出值的穩(wěn)定性,最大限度地減少了因輸入和輸出參數的隨機特性而導致的輸出誤差。
結果分析
1.可訓練漢語TTS系統(tǒng)
圖3 可訓練漢語TTS系統(tǒng)結構
圖3給出了完整的可訓練漢語TTS系統(tǒng)結構。
系統(tǒng)的構成分為用戶編程接口和TTS內核兩大部分。其中,內核部分又可按照系統(tǒng)運作的不同過程分為多個子模塊,包含了訓練模塊、文本分析模塊、神經網絡韻律生成模塊、語音合成模塊以及與語料庫之間的通信協(xié)議等。同時,系統(tǒng)還考慮了不同類型用戶對TTS系統(tǒng)功能的需要,提供了豐富的編程接口。
系統(tǒng)使用了2270個句子分別對模型進行了訓練和測試。語句內容涵蓋了漢語中常見的句型、漢語中所有的讀音、文字上下文的特性、聲調、重音等信息。語音的采樣頻率為16kHz。其中,75%的語料用來進行訓練,而25%的語料則用來測試。
2.基頻控制參數(SPiS參數)的測試結果
圖4 陳述句基頻曲線的測試結果
韻律模型的基頻輸出基本反應了漢語語句的韻律特征。由圖4可以看出,其基頻參數的測試結果與真實的基頻參數比較接近,基頻變化過程基本保持了陳述語氣的下傾趨勢,同時它還反映出了發(fā)音過程的韻律塊特性。如圖中陳述句“他總標榜自己是一個老手”,受發(fā)音停頓的影響,“是”作為一個韻律短語的開頭,其基頻和音域變得相對較高。另外,神經網絡韻律模型還能很好地反映上聲變調的現象。如“老手”中的“老”字,受后音的影響,由上聲變?yōu)榱岁柶健?/font>
3.連續(xù)語句中音長參數的測試結果
圖5 陳述句音節(jié)音長參數的測試結果
神經網絡韻律模型同樣輸出了較好的音節(jié)音長參數,圖5很好地反映出了語句音長的變換趨勢。由于在自然語句中,音節(jié)音長參數對控制音節(jié)發(fā)音的節(jié)奏和輕重起著非常重要的作用。我們對所有測試結果進行的統(tǒng)計表明,81%的音節(jié)輸出誤差在0~50ms,約14%的音節(jié)輸出誤差在50~120ms,而只有約5%的音節(jié)輸出誤差會超過120ms。從音長改變的百分比上看:89.8%的音節(jié),其音長輸出誤差占目標音長的百分比在0~20%之間;另外,9%的音節(jié)輸出誤差百分比在20%~50%之間,而只有1.2%的音節(jié)輸出誤差百分比會超過50%。因此,該模型的音長參數輸出結果基本上滿足了較高質量韻律控制參數的要求。
將神經網絡模型與已有的TTS系統(tǒng)相結合,改變了傳統(tǒng)的TTS系統(tǒng)的構筑方式。新系統(tǒng)合成語音的自然度得到了提高,同時也使語音合成系統(tǒng)中的韻律模型具有更強的適應性和可訓練性。新系統(tǒng)經過學習和訓練,合成的語音能體現不同的韻律特征,增加了系統(tǒng)的靈活性和風格的多樣性。大量測試表明,漢語神經網絡韻律模型及其輸出參數的優(yōu)化方法,能適于漢語韻律特征的處理。目前,這一模型已集成在清華大學計算機系研制的語音合成系統(tǒng)中,輸出了較為滿意的合成語音,其輸出的語音自然度在相當程度上幾乎可以和自然語音相比,整體水平上達到了國際先進水平并獲得專家和用戶的一致好評。
《計算機世界》 2001/06/01
語音技術的拓展與展望 2001-06-01 |
語音門戶:讓網絡接入更便捷 2001-05-11 |
VoiceXML簡介 2001-04-19 |
語音網站不是信息臺 2001-02-16 |
網絡與電話技術的完美結合 -- VoiceXml 2001-02-07 |