語音克隆達到人類水平,微軟全新VALL-E 2模型讓DeepFake堪比配音員 精華
最近,微軟發布了零樣本的文本到語音(TTS)模型VALLE-2,首次實現了與人類同等的水平,可以說是TTS領域里程碑式的進展。
論文地址:https://arxiv.org/pdf/2406.05370
隨著近年來深度學習的快速進步,用錄音室環境下的干凈單人語音訓練模型,已經可以達到人類同等水平的質量,但零樣本TTS依舊是一個有挑戰性的問題。
「零樣本」意味著推理過程中,模型只能參照一段簡短的陌生語音樣本,用相同的聲音說出文本內容,就像一個能即時模仿的口技大師。
聽到這里,不知道你會不會突然警覺——有這種能力的模型就是Deepfake的最佳工具!
令人欣慰的是,MSRA考慮到了這一點,他們目前只將VALL-E系列作為研究項目,并沒有納入產品或擴大使用范圍的計劃。
雖然VALL-E 2有很強的零樣本學習能力可以像配音員一樣模仿聲音,但相似度和自然度取決于語音prompt的長度和質量、背景噪音等因素。
在項目頁面和論文中,作者都進行了道德聲明:如果要將VALL-E推廣到真實世界的應用中,至少需要一個強大的合成語音檢測模型,并設計一套授權機制,確保模型在合成語音前已經得到了聲音所有者的批準。
對于微軟這種只發論文不發產品的做法,有些網友表示非常失望。
畢竟最近各種翻車的產品讓我們深深明白,只看demo完全不可靠,沒法自己試用=沒有。
但Reddit上有人揣測:微軟只是不想當「第一個吃螃蟹的人」,不發模型是擔心可能的帶來的批評和負面輿論。
一旦有了能將VALL-E轉化為產品的方法,或者市場上殺出其他競品,難道還擔心微軟有錢不賺嗎?
的確如網友所說,從項目頁面目前放出的demo來看,很難判斷VALL-E的真實水平。
項目頁面:https://www.microsoft.com/en-us/research/project/vall-e-x/vall-e-2/
共5條文本都是不超過10個單詞的英文短句,語音prompt的人聲音色都非常相近,英語口音也不夠多樣化。
雖然demo不多,但能隱隱感受到,模型對英美口音的模仿非常爐火純青,但如果prompt略帶印度或者蘇格蘭口音,就很難達到以假亂真的程度。
方法
模型前身VALL-E發布于2023年初,已經是TTS在零樣本方面的重大突破。VALL-E能夠用3秒的錄音合成個性化語音,同時保留說話者的聲音、情緒和聲學環境。
然而VALL-E存在兩方面的關鍵限制:
1)穩定性:推理過程中使用的隨機采樣(random sampling)可能會導致輸出不穩定,而top-p值較小的核采樣可能會導致無限循環問題。雖然可以通過多次采樣和后續排序來緩解,但會增加計算成本。
2)效率:VALL-E的自回歸架構綁定了與現成的音頻編解碼器模型相同的高幀率,且無法調整,導致推理速度較慢。
雖然已經有多項研究用于改進VALL-E的這些問題,但往往會使模型的整體架構復雜化,而且增加了擴展數據規模的負擔。
基于這些之前的工作,VALL-E 2包含兩方面的關鍵創新:重復感知采樣(repetition aware sampling)和分組代碼建模(grouped code modeling)。
重復感知采樣是對VALL-E中隨機采樣的改進,能夠自適應地采用隨機采樣或者核采樣(nucleus sampling),選擇的依據是曾經的token重復,因此有效緩解了VALL-E的無限循環問題,大大增強解碼穩定性。
重復感知采樣的算法描述
分組代碼建模則是將編解碼器代碼劃分為多個組,自回歸時每組在單個幀上建模。不僅減少了序列長度、加速推理,還通過緩解長上下文建模問題來提高性能。
值得注意的是,VALL-E 2僅需要簡單的語音-轉錄文本數據進行訓練,不需要額外的復雜數據,大大簡化了數據的收集、處理流程,并提高了潛在的可擴展性。
具體來說,對于數據集中每條語音-文本數據,分別用音頻編解碼器編碼器(audio codec encoder)和文本分詞器將其表示為編解碼器代碼??=[??0,??1,…,??(???1)]和文本序列??=[??0,??1,…,??(???1)],用于自回歸(AR)和非自回歸(NAR)模型的訓練。
AR和NAR模型都采用Transformer架構,后續的評估實驗設計了4種變體進行對比。它們共享相同的NAR模型,但AR模型的組大小分別為1、2、4、8。
推理過程也同樣是AR和NAR模型的結合。以文本序列??和代碼提示??<??′,0為條件生成目標代碼??≥??′,0的第一代碼序列,再用自回歸的方式生成每組的目標代碼。
給定??≥??′,0序列后,就可以使用文本條件??和聲學條件??<??′推斷NAR模型,以生成剩余的目標代碼序列??≥??′,≥1。
模型訓練使用了Libriheavy語料庫中的數據,包含7000個人朗讀英語有聲書的5萬小時語音。文本和語音的分詞分別使用BPE和開源的預訓練模型EnCodec。
此外,也利用了開源的預訓練模型Vocos作為語音生成的音頻解碼器。
評估
為了驗證模型的語音合成效果是否能達到人類同等水平,評估采用了SMOS和CMOS兩個主觀指標,并使用真實的人類語音作為ground truth。
SMOS(Similarity Mean Opinion Score)用于評估語音與原始提示的相似度,評分范圍為1~5,增量為0.5分。
CMOS(Comparative Mean Opinion Score)用于評估合成語音與給定參考語音的比較自然程度,標度范圍為-3~3,增量為1。
根據表2結果,VALL-E 2的主觀評分不僅超過了第一代的VALL-E,甚至比人類真實語音有更完美的表現。
此外,論文也使用了SIM、WER和DNSMOS等客觀指標來評估合成語音的相似度、魯棒性和整體感知質量。
在這3個客觀指標上,無論VALL-E 2的組大小如何設置,相比VALL-E都有全方位的提升,WER和DNSMOS分數也優于真實人類語音,但SIM分數還存在一定差距。
此外,從表3結果也能發現,VALL-E 2的AR模型組大小為2時,可以取得最優效果。
在VCTK數據集上的測評也可以得到相似的結論。當prompt長度增加時,分組代碼建模方法可以減少序列長度,緩解Transformer架構中不正確注意力機制導致的生成錯誤,從而在WER分數上得到提升。
作者簡介
本文第一作者陳三元是哈爾濱工業大學和微軟亞洲研究院的聯合培養博士,他從2020年開始擔任MSRA自然語言計算組的實習研究員,研究興趣主要是用于語音和音頻處理的預訓練語言模型。
