應對個(gè)性化定制語(yǔ)音合成挑戰,微軟推出AdaSpeech系列研究
編者按:提到語(yǔ)音個(gè)性化定制,你或許并不陌生。生活中利用明星的聲音進(jìn)行文字播報、語(yǔ)音導航等,都是來(lái)自這項重要的文本到語(yǔ)音合成服務(wù)。雖其應用廣泛,但是現階段仍面臨著(zhù)很多挑戰,例如不同的聲學(xué)條件對定制效果的影響,需要大量目標說(shuō)話(huà)人的數據及適配參數等等。為此,微軟亞洲研究院機器學(xué)習組與微軟 Azure 語(yǔ)音團隊共同合作,推出了 AdaSpeech 1/2/3 系列工作,相關(guān)研究論文已分別收錄于 ICLR 2021 / ICASSP 2021 / INTERSPEECH 2021 三個(gè)頂級學(xué)術(shù)會(huì )議。
語(yǔ)音個(gè)性化定制(custom voice)是一項非常重要的文本到語(yǔ)音合成(text to speech, TTS)服務(wù)。其通過(guò)使用較少的目標說(shuō)話(huà)人的語(yǔ)音數據,來(lái)微調(適配)一個(gè)源 TTS 模型,以合成目標說(shuō)話(huà)人的聲音。但當前語(yǔ)音個(gè)性化定制仍面臨一系列挑戰:1)為了支持不同類(lèi)型的說(shuō)話(huà)人,源 TTS 模型需要支持不同類(lèi)型的聲學(xué)條件,比如不同的口音、說(shuō)話(huà)風(fēng)格、錄音環(huán)境等,這可能與訓練源TTS模型使用的聲音數據的聲學(xué)條件并不相同;2)為了支持大量的說(shuō)話(huà)人,需要減少聲音定制過(guò)程中使用的目標說(shuō)話(huà)人的數據以及適配參數,以實(shí)現高效的聲音定制化。
面對以上挑戰,微軟亞洲研究院機器學(xué)習組和微軟 Azure 語(yǔ)音團隊合作推出了 AdaSpeech 1/2/3 系列工作,旨在實(shí)現更有泛化性且更高效的語(yǔ)音個(gè)性化定制:
1) AdaSpeech 1 (Adaptive Text to Speech for Custom Voice) 主要提升源 TTS 模型的魯棒泛化性,以更好地支持不同類(lèi)型的說(shuō)話(huà)人;同時(shí)降低模型的適配參數量,以更好地支持更多數量的說(shuō)話(huà)人。
2)AdaSpeech 2 (Adaptive Text to Speech with Untranscribed Data) 支持目標說(shuō)話(huà)人僅使用無(wú)文本標注的語(yǔ)音數據進(jìn)行聲音的定制,實(shí)現了和有文本標注的語(yǔ)音數據相當的適配語(yǔ)音質(zhì)量。
3)AdaSpeech 3 (Adaptive Text to Speech for Spontaneous Style) 主要針對自發(fā)風(fēng)格的語(yǔ)音(spontaneous-style speech)設計了高效的定制化方法,以實(shí)現此類(lèi)語(yǔ)音風(fēng)格的定制。
AdaSpeech 1/2/3 系列相關(guān)研究論文已分別收錄于 ICLR 2021 / ICASSP 2021 / INTERSPEECH2021 三個(gè)頂級學(xué)術(shù)會(huì )議。同時(shí),該系列研究工作也被應用于微軟 Azure TTS 語(yǔ)音合成技術(shù),以構建更好的語(yǔ)音定制化服務(wù)。
詳情可查看:
https://speech.microsoft.com/customvoice
AdaSpeech 1
個(gè)性化語(yǔ)音合成
AdaSpeech: Adaptive Text to Speech for Custom Voice, ICLR 2021
鏈接:https://arxiv.org/pdf/2103.00993.pdf
為了支持不同類(lèi)型的目標說(shuō)話(huà)人和不同的聲學(xué)條件,以及降低適配過(guò)程中的模型參數量,微軟亞洲研究院和微軟 Azure 語(yǔ)音團隊的研究員們提出了一個(gè)可適配的 TTS 系統—— AdaSpeech,來(lái)實(shí)現高質(zhì)量和高效率的聲音個(gè)性化定制。AdaSpeech 以 FastSpeech2 為基本的模型框架,如圖1所示。其含有兩個(gè)重要的模塊:
1)不同粒度的聲學(xué)條件建模(acoustic condition modeling),用以支持含有不同類(lèi)型聲學(xué)條件的語(yǔ)音數據;
2)將自適應層歸一化(conditional layer normalization)應用于模型****,微調模型時(shí),只調整自適應層歸一化的參數以降低適配參數及保證高的定制音質(zhì)。
圖1:AdaSpeech 1 模型架構
聲學(xué)條件建模(acoustic condition modeling)的結構如圖2所示。研究員們將聲學(xué)條件建模分為三個(gè)粒度:說(shuō)話(huà)人級別(speaker level)、句子級別(utterance level)和音素級別(phoneme level),如圖2(a) 所示。在說(shuō)話(huà)人級別,可以采用常見(jiàn)的說(shuō)話(huà)人嵌入向量來(lái)刻畫(huà)說(shuō)話(huà)人的特征。在句子級別,可以使用一個(gè)聲學(xué)編碼器來(lái)從參考語(yǔ)音中抽取句子級特征,如圖2(b)所示,在訓練過(guò)程中使用目標語(yǔ)音作為參考語(yǔ)音,而在測試中,則隨機選用該說(shuō)話(huà)人的其它語(yǔ)音來(lái)作為參考語(yǔ)音。在音素級別,可以使用另一個(gè)聲學(xué)編碼器從目標語(yǔ)音中抽取音素級別的特征,如圖2(c)所示,同時(shí),還可以通過(guò)訓練另一個(gè)音素級別的聲學(xué)預測器,來(lái)預測這些特征,以便在測試時(shí)使用,如圖2(d)所示。
圖2:Acoustic Condition Modeling 的結構示意
自適應層歸一化(conditional layer normalization)的結構如圖3所示。在語(yǔ)音****的每一層中,自適應層歸一化通過(guò)兩個(gè)線(xiàn)性層,從說(shuō)話(huà)人嵌入表征里預測出層歸一化的 scale 和 bias 參數,以更加自適應地調節模型的隱層表征。而在適配過(guò)程中,則只需要調整自適應層歸一化的相關(guān)參數,就可以極大降低調整參數量,并且同時(shí)保證了定制音質(zhì)。
圖3:Conditional Layer Normalization 的結構示意
研究員們在 LibriTTS 數據集上訓練了源 TTS 模型,然后在 VCTK 和 LJSpeech 上進(jìn)行了語(yǔ)音定制。對于每個(gè)定制的說(shuō)話(huà)人,只使用了20條語(yǔ)音進(jìn)行模型適配。結果如表1所示,可以看出:1)和基線(xiàn) (spk emb) 相比,AdaSpeech 在極低的適配參數下(4.9K),取得了極大的定制音質(zhì)提升;2)和基線(xiàn) (decoder) 相比,AdaSpeech 在相同或略微好的定制音質(zhì)下,能極大降低所需參數量(4.9K vs 14.1M),很好地滿(mǎn)足了語(yǔ)音個(gè)性化定制場(chǎng)景的需求。
表1:AdaSpeech 的語(yǔ)音定制結果,MOS 和 SMOS 分別用來(lái)評估生成語(yǔ)音的自然度和相似度
分值范圍為0-5分,分值越高表示越好
AdaSpeech 2
無(wú)標注語(yǔ)音數據的個(gè)性化語(yǔ)音合成
AdaSpeech 2: Adaptive Text to Speech with Untranscribed Data, ICASSP2021
鏈接:https://arxiv.org/pdf/2104.09715.pdf
常見(jiàn)的語(yǔ)音定制化方法通常使用語(yǔ)音數據及其對應的文本數據(transcription)來(lái)微調一個(gè)源 TTS 模型,以合成目標說(shuō)話(huà)人的聲音。然而,在許多應用場(chǎng)景中,通常只能獲取到?jīng)]有轉錄文本(無(wú)標注)的語(yǔ)音數據(untranscribed speech)。使用語(yǔ)音識別系統(ASR)來(lái)獲得對應文本是一種較為直接的方法,但其需要引入冗余的語(yǔ)音識別系統,同時(shí)會(huì )帶來(lái)文本識別誤差,從而造成語(yǔ)音適配效果的下降。另有一些研究嘗試直接使用無(wú)標注語(yǔ)音數據來(lái)微調模型,但這類(lèi)方法大多需要源 TTS 模型和用于微調的模塊聯(lián)合訓練,限制了方法的可擴展性。
因此,微軟亞洲研究院和微軟 Azure 語(yǔ)音團隊的研究員們提出了 AdaSpeech 2,這是一種可直接利用無(wú)標注語(yǔ)音數據進(jìn)行 TTS 模型微調的方法。如圖4所示,該方法在 AdaSpeech 的基礎上引入了一個(gè)梅爾譜編碼器(mel-spectrogram encoder),并且使用 L2 損失來(lái)約束音素編碼器(phoneme encoder)和梅爾譜編碼器的輸出空間,從而直接利用語(yǔ)音數據來(lái)對訓練好的源 TTS 模型中的相關(guān)參數進(jìn)行微調,以進(jìn)行語(yǔ)音合成的定制化。該方法有兩點(diǎn)優(yōu)勢:
1)可插拔性,該方法關(guān)鍵在于引入額外的編碼器,因此可以方便地在其它編碼器-****結構的 TTS 模型中進(jìn)行推廣,而不依賴(lài)新模塊與源模型的聯(lián)合訓練;
2)有效性,在使用相同數據量的條件下,該方法與需要對應文本的微調方法相比,達到了相同水平的語(yǔ)音合成效果。
圖4:AdaSpeech 2 模型架構
Adaspeech 2 方法包含四個(gè)步驟,如圖5所示:1)源模型的訓練(source model training):使用大量數據訓練一個(gè)僅包含音素編碼器和梅爾譜****的語(yǔ)音合成系統。2)梅爾譜編碼器的引入與對齊(mel-spectrogram encoder aligning):引入并激活梅爾譜編碼器,固定源 TTS 模型中的音素編碼器和梅爾譜****參數進(jìn)行訓練。在該步中,一個(gè)用以約束音素編碼器和梅爾譜編碼器輸出空間的 L2 損失被引入到模型中,并且只更新梅爾譜編碼器的參數。之后研究員們繼續使用大量的多人文本-語(yǔ)音數據進(jìn)行該步的訓練。3)基于無(wú)標注文本數據的個(gè)性化適配。獲得了目標人的無(wú)文本語(yǔ)音數據后,研究員們激活了梅爾譜編碼器和梅爾譜****,并將目標數據同時(shí)作為輸入和目標輸出進(jìn)行訓練(類(lèi)似一個(gè)語(yǔ)音重建過(guò)程)。在該步中,研究員們參照 AdaSpeech 的做法,微調了梅爾譜****中的少量參數。4)定制化語(yǔ)音合成。
圖5:AdaSpeech 2 訓練、適配及運作流程
研究員們在 LibriTTS 數據集上訓練了源 TTS 模型,然后在 VCTK 和 LJSpeech 上進(jìn)行了語(yǔ)音定制。對于每個(gè)定制的說(shuō)話(huà)人,研究員們使用了50條語(yǔ)音進(jìn)行模型適配。結果如表2所示,可以看出:1)該方法實(shí)現了可與目標的真實(shí)語(yǔ)音和兩種上限算法(AdaSpeech,PPG-based)匹敵的聲音合成質(zhì)量;2)在聲音相似度上,該方法略遜于上限算法 AdaSpeech,但仍?xún)?yōu)于流行的基于 joint-training 的方法。并且,該方法繼承了 AdaSpeech 的各種優(yōu)點(diǎn),極大拓寬了語(yǔ)音個(gè)性化定制的應用場(chǎng)景。
表2:AdaSpeech 2的語(yǔ)音定制結果,MOS 和 SMOS 分別用來(lái)評估生成語(yǔ)音的自然度和相似度
分值范圍為0-5分,分值越高表示越好
AdaSpeech 3
自發(fā)風(fēng)格個(gè)性化語(yǔ)音合成
AdaSpeech 3: Adaptive Text to Speech for Spontaneous Style, INTERSPEECH 2021
鏈接:https://arxiv.org/pdf/2107.02530.pdf
現有的語(yǔ)音合成系統在合成朗讀風(fēng)格(reading-style)的語(yǔ)音時(shí)表現良好,但在合成自發(fā)風(fēng)格(spontaneous-style,例如演講或談話(huà)時(shí)人的自然講話(huà)風(fēng)格)的語(yǔ)音時(shí)卻遇到了挑戰。其主要原因有:1)自發(fā)風(fēng)格的語(yǔ)音數據集較為稀少,不足以訓練一個(gè)源 TTS 系統;2)建模自發(fā)風(fēng)格語(yǔ)音中的關(guān)鍵性因素:有聲停頓(filled pauses,例如 um/uh 等語(yǔ)氣助詞)以及語(yǔ)調變化(diverse rhythms)較為困難。為此,研究員們又提出了針對自發(fā)風(fēng)格語(yǔ)音的定制化語(yǔ)音合成系統 —— AdaSpeech 3。
AdaSpeech 3 有以下三個(gè)創(chuàng )新點(diǎn):1)為了使合成的語(yǔ)音具有自發(fā)風(fēng)格的特點(diǎn),研究員們引入了有聲停頓預測器(FP predictor)來(lái)為合成的語(yǔ)句插入有聲停頓。2)為了使合成的語(yǔ)音在語(yǔ)速和語(yǔ)調上更加多變,研究員們引入了基于混合專(zhuān)家系統(mixture of experts, MoE)的語(yǔ)速預測器來(lái)控制語(yǔ)速。該語(yǔ)速預測器包含三個(gè)語(yǔ)速檔次,并分別控制語(yǔ)音以不同的速率生成,如圖6所示。3)為了使合成的語(yǔ)音更貼近目標音色,AdaSpeech 3 需要微調模型中的少量參數。另外,研究員們針對訓練數據不足的問(wèn)題,還開(kāi)發(fā)了一套數據挖掘的工作流程,并通過(guò)該流程,從互聯(lián)網(wǎng)上挖掘出自發(fā)風(fēng)格的語(yǔ)音數據集。該數據集的相關(guān)統計見(jiàn)表3所示。有聲停頓預測器和語(yǔ)速預測器具體的訓練流程可參考 AdaSpeech 3 論文。
圖6:AdaSpeech 3 模型架構
表3:通過(guò)數據挖掘得到的自發(fā)風(fēng)格(spontaneous style)語(yǔ)音數據集
在實(shí)驗方面,研究員們在 LibriTTS 數據集上訓練了源 TTS 模型,并利用挖掘出的風(fēng)格和自發(fā)的語(yǔ)音數據集,來(lái)訓練額外的有聲停頓預測器和語(yǔ)速預測器,從而使得生成的語(yǔ)音具有更高的隨意性,更貼近日常對話(huà)。從合成語(yǔ)音的音質(zhì)結果來(lái)看,該方法相對于 AdaSpeech 在語(yǔ)音自然度、停頓合適度和語(yǔ)速等主觀(guān) MOS 指標上均有提升,如表4。研究員們還進(jìn)行了消融實(shí)驗驗證了各個(gè)設計模塊的有效性。在對不同目標人說(shuō)話(huà)聲音的模仿上,AdaSpeech 3 在相似度指標 SMOS 上亦有提升。綜上所述,AdaSpeech 3 提升了語(yǔ)音合成系統在模仿自然人語(yǔ)音的效果,也提升了合成語(yǔ)音的真實(shí)感。
表4:AdaSpeech 3 的語(yǔ)音生成結果。結果用專(zhuān)注于整體自然度(Naturalness),停頓自然度(Pause)以及語(yǔ)速(Speaking Rate)的 MOS 值表示。MOS 分值范圍為0-5分,分值越高表示越好。
AdaSpeech 系列相關(guān)研究論文已分別收錄于 ICLR 2021 / ICASSP 2021 / INTERSPEECH 2021 三個(gè)頂級學(xué)術(shù)會(huì )議。同時(shí),該系列研究工作也被應用于微軟 Azure TTS 語(yǔ)音合成技術(shù),以構建更好的語(yǔ)音定制化服務(wù)。微軟亞洲研究院機器學(xué)習組一直致力于語(yǔ)音方面的相關(guān)研究,包括語(yǔ)音合成、語(yǔ)音識別、歌聲合成及音樂(lè )生成等。
了解更多關(guān)研究工作可訪(fǎng)問(wèn):
https://speechresearch.github.io/
試用微軟Azure語(yǔ)音合成服務(wù)請訪(fǎng)問(wèn):
https://azure.microsoft.com/en-us/services/cognitive-services/text-to-speech/
相關(guān)鏈接:
https://www.microsoft.com/en-us/research/people/xuta/
https://www.microsoft.com/en-us/research/project/text-to-speech/
https://speech.microsoft.com/customvoice
https://azure.microsoft.com/en-us/services/cognitive-services/text-to-speech/
*博客內容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀(guān)點(diǎn),如有侵權請聯(lián)系工作人員刪除。
光耦相關(guān)文章:光耦原理
萬(wàn)用表相關(guān)文章:萬(wàn)用表怎么用
cdma相關(guān)文章:cdma原理
斷路器相關(guān)文章:斷路器原理
高壓真空斷路器相關(guān)文章:高壓真空斷路器原理 漏電斷路器相關(guān)文章:漏電斷路器原理