語音合成(TTS)技術在有道詞典筆中的應用實踐

語言: CN / TW / HK

youdao

背景介紹

ydtech

自 2017 年 10 月推出有道翻譯蛋開始,網易有道已先後推出了二十餘款智能學習硬件產品,包括有道翻譯王、有道口袋打印機、有道超級詞典、有道詞典筆、有道聽力寶等。

其中,有道詞典筆開創了智能詞典筆品類,連續兩年獲天貓、京東銷量第一,並廣受用户好評。


在近期有道詞典筆的全新軟件升級中(關聯閲讀:全新軟件升級!真的很有料),有兩個重要的優化,分別是:

  • 發音接近真人,告別機械式

  • 發音準確度提升,正確朗讀多音詞

>>>應用效果:

首先,我們進一步升級了發音系統,使中英發音儘可能接近真人。

為了給用户帶來更好的體驗,有道 AI 團隊選取了多種真人發音素材,從來自公司內部、真實用户和 native speakers 等人羣中選取足夠大的樣本發放調查問卷,從發音準確度、音色喜愛度等方面進行打分,並和專業的發音進行比較,最終選取了目前版本中的音色。

一個彩蛋

在我們選取的發音中,不乏一些明星語音,小夥伴們可以猜猜她是誰?

(答案在文末揭曉)


在語言學習場景中,機械式的發音不僅讓人覺得枯燥乏味,而且會影響口語學習的效果。 最自然、最理想的交互 莫過於通過人的聲音進行交流。如何讓智能學習硬件的發音接近真人,是一個重要的課題。
>>中文:

>>英文:

同時,通過有道 AI 團隊對語言模型的不斷訓練,有道詞典筆的發音準確度再一次得到突破,在掃描句子的過程中,有道詞典筆可以快速預判語義,輕鬆讀對一些英語學習者和 AI 都非常容易讀錯的單詞,比如「多音詞」

以包含“read過去式”的句子為例,我們來聽聽有道詞典筆的發音和傳統機械式發音:

She picked up the letter and read it. 

她拿起信讀了起來。

在本句中,動詞 read 是過去式,應讀作 /red/

這些能力的背後,是有道 TTS 語音合成技術的加持。本文將會詳細介紹有道 TTS 技術的相關思考和實踐。

youdao

有道TTS語音合成技術

ydtech

有道 TTS 語音合成技術建模流程包括文本分析模塊、聲學模型模塊和聲碼器模塊。


2.1

基於開源BERT多任務的統一TTS文本分析前端

文本分析前端的主要作用是將語句轉換為語言學特徵,主要是音素序列韻律特徵, 其中音素序列決定 TTS 是否正確讀對了文本;韻律特徵決定 TTS 的停頓位置、自然度等,這也是有道 TTS 技術能夠實現接近真人發音和正確朗讀多音詞的關鍵所在。

傳統的文本分析模塊會單獨建模每個任務,並且串行處理效率較低,這種做法在嵌入式場景中難以實現性能和質量的平衡,多個任務分離也會提高系統的維護成本。

相比於傳統方案,有道 AI 團隊基於 BERT 預訓練模型進行了多任務建模,將多個任務進行統一建模,大大提高了效率。

這些優化能夠支持 TTS 前端的文本正則化、多音字判別、韻律預測等任務,使有道系統能夠在設備端合成低發音錯誤、韻律自然感情豐富的高質量語音。

有道詞典筆場景 TTS 前端也面臨一些挑戰:

  1. 滿足接近100%發音準確率要求;在中文、英文裏,大量的多音字、多音詞是影響發音準確率的關鍵所在,而且對於有道詞典筆教育場景,古詩詞、文言文正確讀法也需要全量覆蓋.

  2. 韻律特徵建模,滿足TTS合成停頓自然、語義清晰需求。

  3. 詞典筆設備資源有限,在滿足上述兩點質量的同時,還需要達到性能需求。


基於這些問題,我們主要做了以下幾個方面的工作,分別是資源收集、模型實驗、系統集成:

資源收集:在資源收集階段,藉助有道獨有教研資源,蒐集整理多音字表, 結合詞性、詞義等細化多音字模型標籤,使得建模更高效;在中文古詩詞、文言文發音上,通過 ssml 技術將詞典筆海量權威發音詞典資源應用到 TTS 發音中;

模型實驗:在模型實驗階段,前端包含有多音字、韻律預測、分詞、詞性預測等這些任務, 通過構建bert多任務模型,聯合預測多音字、韻律、分詞、詞性任務,多個任務之互相促進不僅了提升多音字模型和韻律模型的準確率,同時也節省了參數量;最後通過蒸餾技術,小參數量多任務模型在保證質量的同時,也達到嵌入式性能要求;

系統集成:在系統集成階段,工程化團隊通過自研bert pipeline技術,更進一步優化了內存和推理時間;

通過這些方面的工作,最終推出了基於預訓練模型的多任務架構 TTS 中英混前端,保證了 TTS 合成的發音正確性和韻律停頓。


2.2

非自迴歸的 VAE 聲學模型

聲學模型的主要作用是將語言學特徵轉換為對應的聲學特徵。常見的神經網絡聲學模型大致可以分成兩大類:

一是自迴歸聲學模型:比如 Tacotron、Tacotron2,優點是高自然度,缺點是性能較差;基於 attention 的自迴歸聲學模型難以建模長語音,更容易出現丟字、重複的現象。

二是非自迴歸聲學模型:比如Fastspeech、Fastspeech2,優點是並行生成聲學特徵,性能好,對長句建模足夠魯棒;缺點是韻律建模略差於自迴歸聲學模型。

綜合質量和性能,有道 AI 團隊最終選擇了基於 VAE 的非自迴歸聲學模型。原因在於它有以下優勢:

  • 在魯棒性方面:好於 Tacotron2;

  • 在性能方面:和 Fastspeech 一樣快,快於 Tacotron2;

  • 在質量方面:接近 Tacotron2,相比 Fastspeech 更易於訓練。

同時,我們針對 一部分算子的計算耗時佔總時長比例較大的問題進行了工程上的優化,進一步改善了系統整體的實時率。

另外,還對模型進行了量化,降低了模型的內存。


2.3

基於 GAN 的聲碼器

聲碼器的作用是將聲學模型輸出的聲學特徵轉換成語音時域信號。它直接影響着合成語音的音質,因此 對於用户體驗來説至關重要。

在有道智能硬件產品實際落地開發中,聲碼器技術的研發面臨着幾大難點問題:

一是音質問題。聲碼器模型的建模能力不足,會直接導致合成語音產生底噪或者電音。但如果僅僅只是單純地加大模型的參數,則會影響系統的推理速度。

二是性能問題。聲碼器的計算量在語音合成的整個框架中佔比較大。要在嵌入式場景中合成高質量的語音,需要一個足夠大、建模能力足夠強的聲碼器模型。

但由於設備芯片的算力弱、內存小,大的聲碼器會導致體驗延時明顯上升。從用户的角度出發,延時過長,用户等待時間過久,自然不會有好的體驗效果。

為了解決以上難題,通過大量實驗和綜合比對,最終有道 AI 團隊選擇了基於 GAN 方案的聲碼器。

任何學術上的方案要實現成工業界的產品,都需要進行大量的實驗和打磨。

首先是針對不同場景使用不同的模型配置,有道 AI 團隊對 GAN 聲碼器中的生成器模塊進行了參數的細緻調整,讓它能夠成功應用在嵌入式場景下,不同於傳統參數聲碼器的機械感與模糊感,基於 GAN 的神經網絡聲碼器可以合成高自然度、高清晰度的音頻,縮短了離線 TTS 和在線 TTS 質量上的差距。

此外,我們還在模型的量化、壓縮方面做了大量的工作,大大提升了語音合成的速度,明顯降低了系統的資源佔用。

youdao

總結

ydtech

在智能硬件產品人機交互中,語音合成技術扮演着非常重要的角色,但在落地中面臨着很多挑戰,其核心是硬件計算資源與合成語音質量之間的矛盾。

如何更快地、更穩定地在有限資源下提供高質量的語音合成技術是有道 AI 團隊的目標和關注的重點。

目前,有道 TTS 語音合成技術已應用在許多內部和外部的在線場景和嵌入式場景,並表現出了相對傳統方案更加穩定、更加魯棒的合成效果。


- END -

彩蛋答案




本文分享自微信公眾號 - 有道技術團隊(youdaotech)。
如有侵權,請聯繫 [email protected] 刪除。
本文參與“OSC源創計劃”,歡迎正在閲讀的你也加入,一起分享。