關鍵詞:

語音合成 Knowledge-awareNeural TTS KAN-TTS 在線中文實時語音合成

近幾年,End2end技術發展迅速,在各個領域都有廣泛的研究。在語音合成領域,研究人員也提出了基於End2end技術的語音合成系統[1][2]。在End2end語音合成系統中,只需要文本和對應的wav數據,任何人都可以利用強大的深度學習技術得到還不錯的合成語音。

相對而言,從1960年左右起步的基於計算機的語音合成技術,在過去60年左右的時間在系統各個模塊都積累了深厚的domain knowledge,包括語音信號處理、文本分析以及模型層面等。這些domain knowledge是基於對人的發聲機理、聽覺感知機理以及語言學等方面進行深入研究得到的積累,這些domain knowledge的共同作用構建了傳統語音合成系統[3][4][5]。

[AI]阿里語音AI : KAN-TTS語音合成技術


上圖對比了傳統語音合成系統以及End2end語音合成系統的框圖。在傳統語音合成系統中,輸入文本經過了多個模塊,根據多個domainknowledge,形成了Rich context linguistic information,後端模型根據前面的結果,結合acoustic feature進行建模及預測,最終的結果再經過Vocoder得到合成語音。而End2end系統中,輸入文本只經過了Text Normalize模塊形成完全是漢字的序列,直接輸入到後端模型中進行建模和預測。在傳統語音合成系統中的大多數domain knowledge被End2end系統忽略了。

基於研究人員的美好願望,End2end的語音合成技術對這些積累的domain knowledge只利用了非常少的一部分,期望完全摒棄domain knowledge,通過強大的模型技術和海量數據得到足夠好的語音合成系統。但是,從實際效果來看,End2end系統產生的合成語音包含一系列問題,困擾了最新的語音合成技術的產品化。

KAN-TTS的前世:傳統語音合成技術和End2end技術哪家強

近年來,End2end技術[1][2](即端到端技術)在語音合成領域發展迅速,該技術摒棄了傳統語音合成技術的前端-後端多模型多模塊框架,採用了統一的模型由文本級別的輸入直接預測輸出的語音。只要結合海量數據,研究人員都可以利用該技術”傻瓜化”的構建End2end語音合成系統,並生成不錯的合成效果。

另一方面,傳統語音合成系統從基於HMM的參數/拼接系統[3][4]發展到後來的基於深度神經網絡的語音合成系統[5],至今在語音合成主流產品中依然佔據絕對主導地位。雖然該技術機械感比較明顯,音質較差,但相對於End2end系統而言,其合成語音的穩定性較高,尤其是多音字發音消歧和控制停頓方面,都有比較明顯的優勢。

KAN-TTS的今生:Hybrid系統橫空出世

不同的系統採用了不同的domain knowledge,因此最終產生了不同的音質、自然度效果,以及不同的穩定性表現。從最終效果來看,我們一方面希望獲得End2end系統中明顯更好的音質和自然度,另一方面也希望獲得傳統語音合成系統中的穩定性。

因此,結合了傳統語音合成系統和End2end語音合成系統,我們構建了一個hybrid系統,即Knowledge-aware Neural TTS (KAN-TTS)技術。該技術充分結合了domain knowledge和End2end語音合成技術,在傳統語音合成系統的基礎上,基於End2end語音合成技術對各種domain knowledge進行充分利用,從而構建了高表現力高穩定性的在線中文實時語音合成系統。

和傳統語音合成系統以及End2end系統對比,主要包括這幾個方面的不同:

1.Linguisticdomain knowledge方面:在KAN-TTS中,我們利用了海量文本相關數據構建了高穩定性的domain knowledge分析模塊。例如在多音字消歧模塊中,我們利用了包含多音字的上百萬文本/發音數據訓練得到多音字消歧模型,從而獲得更準確的發音。如果像End2end系統那樣完全基於語音數據進行訓練,光是包含多音字的數據就需要上千小時,這對於常規數據在幾小時到幾十小時的語音合成領域而言,是不可接受的。

2.Acousticmodel方面:在KAN-TTS中,考慮到深度學習技術的快速進展以及End2end模型的合成效果,我們也採用了seq2seq模型作爲聲學模型,同時結合海量數據,進一步提高了整體模型的效果和穩定性。

3.Acousticfeature和Vocoder層面:在KAN-TTS系統中,我們採用了和End2end系統類似的FFT spectrum作爲聲學特徵,信息上損失更小,同時採用更強大的聲碼器恢復波形,因此在音質方面具有明顯優勢。

[AI]阿里語音AI : KAN-TTS語音合成技術


上圖中顯示了KAN-TTS的基本框圖。在KAN-TTS中,經過一系列實驗對比,我們最終採用瞭如上圖所示的domain knowledge作爲後端模型的輸入。

KAN-TTS:更多的domain knowledge

除了深度融合傳統語音合成系統以及End2end系統,構建KAN-TTS系統。我們還融合了其他多個方面的domain knowledge,這其中最重要的是基於中文的linguistic knowledge、基於海量語音數據的聲學空間構建以及針對特定發音人、特定風格的遷移學習技術。

1.基於海量數據的模型構建:爲了儘可能的利用更廣泛的數據,我們利用了上百個人的幾百小時數據構建了基於海量數據的多發音人語音合成系統。相對而言,在傳統語音合成系統中,單發音人數據量往往在幾個小時到幾十小時不等。利用海量發音人的數據構建的語音合成系統,可以提供更穩定的合成效果,爲最終構建高穩定性語音合成產品打下了基礎。

[AI]阿里語音AI : KAN-TTS語音合成技術


2.針對特定數據的遷移方法:由於採用了大量不同發音人數據進行語音合成系統構建,雖然我們利用了多發音人的大量數據,得以產生高穩定性合成語音。但我們發對特定發音人或者特定風格而言,其效果距離真實錄音而言還是具有一定差距。因此,我們參考了其他領域對訓練數據比例的研究,在多發音人模型的基礎上進一步嘗試了針對特定發音人、特定風格數據的遷移學習。實驗表明,疊加遷移學習後,合成語音的效果可以進一步提高,逼近真實錄音的效果。

[AI]阿里語音AI : KAN-TTS語音合成技術


KAN-TTS:非異構計算的工程優化

隨着深度學習技術的進步,模型的建模能力越來越強大,隨之而來的計算量需求也越來越高。近年來,很多公司都採用異構計算進行模型的inference,例如採用高性能或者inference專用GPU,甚至採用FPGA/ASIC這樣的專用芯片技術,來加速inference部分的計算,服務實際需求。

我們仔細對比了不同的inference方案,考慮到我們最終的使用場景要求,對快速擴展的要求,甚至客戶不同機器的部署能力,我們最終選擇以非異構計算的形式進行inference計算,即不採用任何異構計算的模塊,包括GPU/FPGA/ASIC等。

根據KAN-TTS的特性,以及語音合成服務的需求,我們針對性的做了若干優化,包括模型層面的算法優化以及工程層面的框架和指令集優化。最終,經過我們的一系列優化,效果如下圖所示:

[AI]阿里語音AI : KAN-TTS語音合成技術


[AI]阿里語音AI : KAN-TTS語音合成技術


其中RTF是借鑑了語音識別中的指標,即Real Time Factor,度量合成1s的一句話所需要的計算時間。QPS爲實際同時能夠支撐的服務請求數。

KAN-TTS的幾大優勢

1.KAN-TTSVS. End2end系統

從我們實際實踐中發現,End2end系統最大的問題是丟字漏字和多音字發音錯誤兩類問題。由於End2end系統的輸入是中文漢字,而漢字的數量很多,在訓練數據中覆蓋較差,分佈也不均勻,因此導致了大量句子都出現了丟字漏字的情況;另外,由於前文中介紹的原因,由於語音數據量總是遠遠小於文本數據的,基於現在的語音數據,End2end系統中多音字覆蓋也較差,所以也會大量的出現多音字發音錯誤問題。

[AI]阿里語音AI : KAN-TTS語音合成技術


上圖顯示了End2end系統和KAN-TTS在丟字漏字和多音字發音錯誤這兩個問題上的對比,其中多音字發音錯誤以“爲”這個字的情況代表。

從上圖中可以看到,KAN-TTS在這兩個問題上都顯著超越了End2end系統。其原因主要爲KAN-TTS中結合了傳統語音合成系統,充分利用了多個方面的domain knowledge。因此在合成語音的穩定性上,可以獲得和傳統語音合成系統類似的結果。

2. KAN-TTS VS.傳統語音合成系統

[AI]阿里語音AI : KAN-TTS語音合成技術


上圖中顯示了針對其中一個發音人的數據,KAN-TTS技術在不同改進下的效果變化。其中MOS爲Mean Opinion Score的縮寫,是語音合成領域主觀測試打分標準,滿分爲5分,越大越好。爲了度量技術的實際作用,我們採用了MOS%的形式進行對比,即以Recording得分作爲分母,將不同系統的MOS得分除以Recording得分,從而得以度量不同系統主觀得分距離Recording的差距,越接近100%爲越好,而Recording的得分始終爲100%。

從上圖中我們可以看到,傳統拼接系統和傳統參數系統[5]分別可以獲得85%~90%的接近程度,這裏的差別與發音人風格、數據量都比較相關;當採用了KAN-TTS技術時,即便只是基於Single Speaker的數據,都可以獲得95%以上的接近程度;而採用了multi-speaker以及transfer learning技術之後,在自然度上可以獲得97%以上的接近程度。

3. 低成本精品定製(聲音克隆)

爲特定發音人或者特定風格定製TTS聲音是TTS領域不斷持續的實際業務需求。例如客戶會有爲自己的獨家IP定製特色風格聲音的TTS,以及期望獲得與競品不同的用戶體驗。在傳統TTS定製的時候,由於受限於技術框架,整個精品定製需要的數據量是2萬句話(20小時)左右。而按照TTS數據錄製的高標準要求,2萬句話往往對應着半年以上的錄音週期,也需要發音人連續不斷的進行高質量高可靠性的錄音工作,這就爲實際的定製項目帶來了一定的風險(發音人感冒發燒等狀況會直接影響嗓子的發揮)。

基於KAN-TTS,由於我們採用了新一代的語音合成技術,基於更強大的模型以及成百上千個發音人數據得到的模型,這使得我們可以利用更少量的數據構建效果更好的TTS聲音。

[AI]阿里語音AI : KAN-TTS語音合成技術


上圖顯示了基於KAN-TTS框架下,不同數據量所帶來的定製效果。可以看出,即便是在2小時(2000句)以下的數據量時,基於KAN-TTS定製也可以取得不錯的定製效果,和10小時時差距不大,明顯超過95%和真人錄音接近程度。

相對於傳統定製而言,基於KAN-TTS的定製可以將數據量縮小到之前的十分之一,同時,定製週期也會從之前的半年以上縮短到一個月左右,定製效果也會從傳統TTS效果顯著提升到高表現力的KAN-TTS效果。

結語

Knowledge-awareNeural TTS(KAN-TTS)技術是結合了我們最新的語音技術、海量的文本和聲學數據以及大規模計算能力,對語音合成技術進行的改進。

來源:阿里語音AI

相關文章