重磅 | 蘋果發佈最新論文: 揭祕Siri新聲音背後的技術

翻譯 | AI科技大本營(rgznai100)前端

2011 年 10 月,在 iPhone 4S 的發佈會,Siri 做爲首款語音助手,驚豔亮相,然而 6 年事後,Siri 卻依舊不溫不火,爲此,蘋果在最新的 iOS 11 中爲 Siri 增長了更多的新功能,並且 Siri 合成的聲音也更加天然流暢。算法

近日,蘋果在自家的「Apple Machine Learning Journal」的博客上發表了三篇論文,詳細解釋了 Siri 聲音背後有關深度學習的技術細節。其中,《Deep Learning for Siri's Voice:On-device Deep Mixture Density Networks for Hybrid Unit Selection Synthesis 》可讀性爲最強,價值含量也比較高,AI科技大本營在第一時間對該論文進行編譯,但願對你有用。

簡介

從輔助技術到遊戲娛樂,語音合成的應用很是普遍。最近,將語音識別和語音合成相結合,已經成爲包括 Siri 在內的虛擬我的助理的重要組成部分。

關於語音合成,目前業界裏用的比較多的基本上是這兩種技術:單元挑選(unit selection)和參數合成(parametric synthesis)。

在給定足夠多的高品質語音數據的前提下,單元挑選合成(Unit selection synthesis)可以產生最高質量的聲音,所以這種方法是目前商業產品中使用最普遍的語音合成技術。

而另外一方面,參數合成能夠合成明白易懂並且很是流利的語音,可是這種方法有個缺陷,那就是聲音的總體質量較低。

所以,當語料庫較小或者內存空間不夠時,咱們一般會使用參數合成。現代單元挑選系統結合了以上兩種方法的一些優勢,所以被稱爲混合系統。這種混合單元挑選方法和經典單元挑選技術相似,可是前者使用了參數的方法來預測應該選擇那些單元。

最近,深度學習在語音方面取得了突破,大大超過了包括隱馬爾可夫模型(HMM)在內的傳統技術。參數綜合從深度學習技術中獲益良多。此外,深度學習的出現,也使得一種全新的語音合成方法——直接波形建模(例如使用 WaveNet)——成爲可能,這種方法有同時提供高質量的單元挑選合成的高質量以及參數合成的靈活性的潛力。然而,這種方法須要極高的計算成本,所以還不能應用到生產系統中去。

爲了讓 Siri 在全平臺上都能具有高質量的合成聲音,蘋果公司正在設備端上推動深度學習在混合單元挑選系統中的應用。

語音合成的原理

爲我的助理搭建一個高質量的 TTS(文本轉語音)系統並非一件容易的事。首先,咱們須要找一個專門的聲優,他的聲音不只聽起來要清晰明白,並且還要讓人愉悅,而且符合 Siri 的個性。爲了覆蓋各類人類聲音,咱們首先要在專業的工做室裏錄製 10~20 個小時的語音內容。從音頻書籍到導航指令,從有趣的答案到詼諧的笑話,錄音腳本的內容幾乎無所不包。一般,這種天然語音不能按照錄制的方式使用,由於它不可能覆蓋到全部可能的問題。所以,單元挑選TTS 是基於將錄音切割成基本單元,好比半音素(half-phones),而後將這些基本單元從新組合以建立全新的語音。在實際操做過程當中,選擇合適的語音片斷並將它們組合起來並不容易,由於每一個音素(phone)的聲學特性取決於相鄰的音素和語音的韻律,這一般使得語音單元彼此不兼容。圖1展現瞭如何使用由半音素組成的語音數據庫來合成語音。
圖1:使用半音素的單元選擇語音合成圖示。 合成語音「單位選擇合成」及其使用半音素的語音轉錄過程如圖上半部分所示,相應的合成波形及其頻譜如圖下半部分所示,由線分隔的語音段是數據庫中的連續語音段,這些語段可能包含一個或多個半音素。

單位選擇 TTS 的基本問題是找到知足輸入文本和預測目標韻律的單元序列(例如半音素),前提是這些單元能夠鏈接在一塊兒,而且不存在可聽見的刺音。
數據庫

傳統上,這個過程由兩個明顯的階段組成:前端和後端(見圖2),儘管在現代系統中,前端和後端之間的邊界有時多是模糊的。 前端的目的是根據原始文本輸入提供語音轉錄和韻律信息,這包括標準化原始文本,因爲原始文本可能包括數字、縮寫等,咱們需將它們表示爲標準的文字,併爲每一個單詞分配音標,以及從文本中解析語法、音節、單詞、重讀和與語句劃分有關的信息。請注意,前端具備高度的語言依賴性。
圖2. 從文本到語音的合成過程

藉助由文本分析模塊生成的符號語言表徵,韻律生成模塊能夠預測聲學特徵值,例如語調和持續時間,這些值用於選擇適當的單單元.單元選擇的任務十分複雜,現代語音合成系統採用機器學習方法來學習文本與語音之間的對應關係,而後根據不可見文本的特徵值預測語音特徵的值。

所以,咱們必須使用大量文本和語音數據來訓練階段該模型的合成系統。韻律模型的輸入是數字語言特徵,如轉換爲方便的數值形式的音素同一性、音素上下文、音節,單詞和短語級位置特徵。模型的輸出由語音的數字聲學特徵組成,如頻譜、基頻和音素持續時間。

在合成階段,訓練後的統計模型將輸入的文本特徵映射到語音特徵中,而後用這些語音特徵指導單元選擇後端過程,在此過程當中適當的語調和持續時間相當重要。

與前端相反,後端大可能是語言無關的。它由單元選擇和波形拼接組成。

當系統通過訓練後,錄製的語音數據經過錄制語音和錄音腳本之間的強制對準(使用語音識別聲學模型)被分割成單獨的語音段。後端

分段語音用於生成單元數據庫,而後咱們再使用重要信用進一步擴大單位數據庫,如每一個單元的語境和聲學特徵。咱們將這些數據稱爲單位索引。利用構建的單元數據庫和指導選擇過程的預測韻律特徵,系統會在語音單元空間中執行維特比搜索(Viterbi search),以找出合成單位的最佳路徑(見圖3)。網絡

圖3:利用維特比搜索找出格子中單元的最佳合成路徑的圖示。圖3頂部是須要進行合成的目標半音素,下面每一個框對應一個單獨的單元。鏈接所選單元的線表示維特比搜索找到的最佳路徑。

該選擇基於兩個標準:

  1. 單元必須遵守目標韻律;架構

  2. 單元應該儘量拼接起來,而且確保單元邊界處無聽得見的刺聲。這兩個標準分別被稱爲目標損失(target costs)和拼接損失(concatenation costs)。目標損失是預測目標聲音特徵與從每一個單元中提取出來的聲音特徵(儲存在單元索引中)之間的差別。而拼接損失則是結果單元(consequent units,見圖4)之間的差別。總損失的計算公式以下所示:
    機器學習


其中「un」是第 n 個單元,N 是單元的數量,「wt」和「wc」分別表明目標損失權重和拼接損失權重。在肯定了最佳單元序列以後,系統會對單獨單元波形進行拼接以生成連續地合成語音。
ide


圖4. 基於目標損失和拼接損失的單元選擇方法

Siri 新聲音背後的技術

因爲 HMM 直接對聲音參數的分佈進行建模,所以它常被用做爲目標預測任務中的統計模型,例如用 Kullback-Leibler 發散來計算目標損失很容易。可是在參數語音合成上,基於深度學習的方法一般要比 HMM 更好,同時咱們也但願能夠將深度學習的優點轉移到混合單元挑選合成中。

Siri 的 TTS 系統的目標是訓練出一個基於深度學習的一體化模型,該模型能夠自動準確預測數據庫中單元的目標損失和拼接損失。咱們沒有采用 HMM ,而是使用深度的混合密度網絡(mixture density network,MDN )來預測特徵值的分佈。MDN 是卷積深度神經網絡(DNN)和高斯混合模型(Gaussian mixture models,GMM)的組合。

卷積 DNN 是一種人工神經網絡,它的輸入層和輸出層之間有不少隱藏的神經元層。DNN 能夠對輸入特徵和輸出特徵之間的複雜非線性關係進行建模。使用反向傳播法調整網絡的權重,是訓練 DNN 的經常使用方法。與 DNN 相反,在給定一系列高斯分佈的輸入數據下,GMM 對輸出數據的機率分佈進行建模,而 GMM 的訓練一般採用最大指望算法(Expectation maximization,EM)。

MDN 則使用 DNN 對輸入數據和輸出數據之間的複雜關係進行建模,可是將機率分佈做爲輸出(見圖5),它很好地結合了 DNN 和 GMM 各自的優勢。

圖5:用於建模指導單元選擇合成的語音特徵均值和誤差的深度混合密度網絡

在 Siri 的開發中,咱們使用了一種基於 MDN 的一體化目標和拼接模型,這個模型能夠預測語音特徵(波譜、音調和時長)以及單元間的拼接損失,爲單元搜索提供指導。因爲 MDN 的輸出形式爲高斯機率分佈,咱們能夠將機率做爲目標損失和拼接損失的損失函數:


在這個損失函數中, xi 是第 i 個目標特徵,μi 是預測的均值,σi2 是預測的誤差。在實際成本計算中,使用負對數似然值(negative log-likelihood),以及消除常量項更易於計算,而後咱們就得出如下這個簡化後的成本函數:
函數


其中wi爲特徵權重。
學習

當咱們考慮語音的天然度時,這種方法的優點會愈發明顯。有時語音特徵(如共振峯)至關穩定,其演變也很緩慢,例如元音就是這樣。

而有些時候語音的變化很是快,例若有聲語音和無聲語音之間的轉變。考慮到這種變化性,模型須要可以根據前面提到的變化性對其參數做出調整,深度 MDN 的作法是在模型中嵌入方差。

因爲預測的參數是依賴於上下文的,咱們能夠將它們視爲損失的自動上下文權重。這對改進語音合成質量很重要,由於咱們但願能針對當前的上下文計算其目標損失和拼接損失。總損失爲目標損失和拼接損失的加權和:


在上面這個公式中,wt 和 wc 分別爲目標損失和拼接損失的權重。在最終的公式中,目標損失的做用是確保在合成語音中正確複製韻律(語調和時長),拼接損失的做用是確保韻律的流暢和拼接的平滑。

在使用深度 MDN 根據總成本對單元進行評分後,咱們經過傳統的維特比(Viterbi)搜索尋找單元的最佳路徑。而後,咱們使用波形類似重疊相加算法(waveform similarity overlap-add,WSOLA)找出最佳拼接時刻,以今生成平滑且連續合成語音。

結論

咱們爲 Siri 的新聲音搭建了一整套基於深度 MDN 系統的 TTS 混合單元挑選系統。用於訓練的語音數據包括在 48KHz 的頻率下采樣的很多於 15 小時錄音。

咱們採起了強制對齊的方式將這些語音數據分割成了一系列的半音素(half-phones),即自動語音識別,它將輸入的語音序列與從語音信號中提取出的聲學特徵進行對準。這個分割的過程根據語音數據的數量產生了1~2百萬的半音素單元。

爲了引導這個單元選擇的過程,咱們採用了深度 MDN 架構來訓練統一的目標和級聯模型。其中,深度 MDN 的輸入主要由一系列具有額外的連續性特徵的二進制數值構成。

這些特徵表明了一系列在語句中多元音素(quinphones)信息(2個前向、當前以及2個後續音素),音節、單詞、短語和句級的信息,以及額外的重讀和強調特徵。而輸出向量則主要由如下幾種聲學特徵組成:美爾倒譜系數(MFCCs),美爾差分倒譜系數(delta-MFCCs),基頻(fundamental frequency - f0)和差分基頻(delta-f0)(包含每一個單元的開始和結束的值),以及每一個單元的持續時間。

因爲咱們採起了 MDN 做爲咱們的聲學模型,所以輸出上還包含了做爲自動上下文相關權重的每一個特徵的方差值。

另外,因爲語音區域的基頻處理高度依賴語句的總體性,所以爲了讓合成的語音中可以具有天然而又活潑的語調,咱們採用了一種更爲複雜的深層 MDN 對 f0 特徵進行建模。

這個用於訓練的深度 MDN 網絡架構包含了 3 個由 512 個 ReLU 單元組成的隱藏層,用於處理其非線性特徵。此外,輸入和輸出的特徵都在訓練前進行了均值化和方差歸一化處理。最終的單元挑選聲音(unit selection voice)由包含特徵和每一個單元的語音數據的單元數據庫、以及訓練好的深度 MDN 模型組成。

新的 TTS 系統的聲音質量要優於過去的 Siri 系統。在一次主觀性的 AB 測試中,被測者們明顯更加傾向於基於深度 MDN 所產生的聲音。咱們將結果展現在圖6 中。更好的聲音質量可歸功於 TTS 系統的多重改進,例如,基於深度 MDN 的後端系統可以挑選出更好的選擇和級聯單元,更高的採樣率(22kHz vs 48kHz),還有更好的音頻壓縮。


圖6:AB 主觀性測試的結果,相對於老聲音,新聲音在評比中更勝一籌。

因爲 TTS 系統須要在移動設備上運行,咱們採用了快速預選、單元修剪及並行計算技術來提高其運行速度、內存佔用及空間佔用等一系列運行表現。

新的聲音

在 iOS 11 中, 爲了提高 Siri 聲音的天然度及表達能力,咱們選擇了一位新的女性聲優來到達這個目的。在選出最好的候選人以前,咱們評估了上百位的候選人,而後錄製了超過 20 小時的聲音,並使用新的基於深度學習的 TTS 技術建立了新的 TTS 語音。結果代表,這種新的帶有美式英語風味的 Siri 聲音比任什麼時候候都要好。表1 包含了與傳統的 iOS 9 提供的語音相比,iOS 11 和 iOS 10 中 Siri 聲音的幾個例子。

更多新版 Siri 處理文本到語音發聲的更多細節,能夠參閱咱們發表的論文「Siri On-Device Deep Learning-Guided Unit Selection Text-to-Speech System」。




參考文獻

[1] A. J. Hunt, A. W. Black. Unit selection in a concatenative speech synthesis system using a large speech database, ICASSP, 1996.

[2] H. Zen, K. Tokuda, A. W. Black. Statistical parametric speech synthesis Speech Communication, Vol. 51, no. 11, pp. 1039-1064, 2009.

[3] S. King, Measuring a decade of progress in Text-to-Speech, Loquens, vol. 1, no. 1, 2006.

[4] A. van den Oord, S. Dieleman, H. Zen, K. Simonyan, O. Vinyals, A. Graves, N. Kalchbrenner, A. W. Senior, K. Kavukcuoglu. Wavenet: A generative model for raw audio, arXiv preprint arXiv:1609.03499, 2016.

[5] Y. Qian, F. K. Soong, Z. J. Yan. A Unified Trajectory Tiling Approach to High Quality Speech Rendering, IEEE Transactions on Audio, Speech, and Language Processingv, Vol. 21, no. 2, pp. 280-290, Feb. 2013.

[6] X. Gonzalvo, S. Tazari, C. Chan, M. Becker, A. Gutkin, H. Silen, Recent Advances in Google Real-time HMM-driven Unit Selection Synthesizer, Interspeech, 2016.

[7] C. Bishop. Mixture density networks, Tech. Rep. NCRG/94/004, Neural Computing Research Group. Aston University, 1994.

[8] H. Zen, A. Senior. Deep mixture density networks for acoustic modeling in statistical parametric speech synthesis, ICASSP, 2014.

[9] T. Capes, P. Coles, A. Conkie, L. Golipour, A. Hadjitarkhani, Q. Hu, N. Huddleston, M. Hunt, J. Li, M. Neeracher, K. Prahallad, T. Raitio, R. Rasipuram, G. Townsend, B. Williamson, D. Winarsky, Z. Wu, H. Zhang. Siri On-Device Deep Learning-Guided Unit Selection Text-to-Speech System, Interspeech, 2017.

相關文章
相關標籤/搜索