心肺復蘇模型

新聞分類

通用模型、全新框架,WavLM語音預訓練模型全解

通用模型、全新框架,WavLM語音預訓練模型全解

發(fā)布日期:2023-01-03 作者:康為 點擊:

編者按:深度神經(jīng)網(wǎng)絡模型近年來雖然在各項語音任務上都有所進展,但卻仍依賴于大量的標注數(shù)據(jù)。而自監(jiān)督訓練方法的出現(xiàn)和發(fā)展則在一定意義上緩解了該問題。近日,微軟亞洲研究院與微軟 Azure 語音組的研究員們在判別式自監(jiān)督預訓練方法的基礎上,沿用研究院自然語言計算組在自然語言預訓練的 Transformer 模型架構,提出了全新的 Denoising Masked Speech Modeling 框架。通過94,000小時的英語語音進行預訓練,通用語音預訓練模型 WavLM 在 SUPERB 所有13項語音任務測評中超過先前所有模型,排名第一,并在其它4個不同的語音經(jīng)典測評數(shù)據(jù)集上都取得了很好效果。


近兩年來,預訓練模型在自然語言處理和計算機視覺領域引起了學術界和工業(yè)界的廣泛關注。利用大規(guī)模無監(jiān)督數(shù)據(jù)進行訓練的預訓練模型有著非常好的泛化性,只需在小規(guī)模標注數(shù)據(jù)上進行微調,就可以在相應任務上有所提高。雖然之前預訓練模型在語音處理領域已經(jīng)取得了一些進展,但其只在語音識別任務上進行了驗證。


為此,微軟亞洲研究院與微軟 Azure 語音組的研究員們提出了通用語音預訓練模型 WavLM。通過 Denoising Masked Speech Modeling 框架,研究員們將 WavLM 適配到了17個任務上,并且都取得了非常好的效果,這使得語音預訓練模型的有效性從語音識別任務延伸到了非內容識別的語音任務?;谠?4,000小時無監(jiān)督的英文數(shù)據(jù)上進行訓練,WavLM 還在多個語音相關的數(shù)據(jù)集上都取得了 SOTA 的成績。目前,該模型已經(jīng)開源,并集成到了 Hugging Face 的 Transformer 框架中方便使用者調用。


論文鏈接:


https://arxiv.org/pdf/2110.13900.pdf


開源鏈接:


https://aka.ms/wavlm


Hugging Face集成鏈接:


https://huggingface.co/microsoft/wavlm-large




圖片


從自監(jiān)督預訓練方法看語音任務


生成式&判別式自監(jiān)督預訓練方法


在過去的幾年中,深度神經(jīng)網(wǎng)絡模型雖然在語音的多種任務上都取得了突破性進展,但卻依舊受制于模型訓練時所需的大量標注數(shù)據(jù)。自監(jiān)督預訓練方法的出現(xiàn)在一定程度上緩解了這一問題。該方法先使用大規(guī)模無監(jiān)督數(shù)據(jù)進行預訓練,隨后將訓練好的模型在小規(guī)模標注數(shù)據(jù)上進行微調。已有研究表明,使用自監(jiān)督預訓練可以提升多種語音任務的性能。


根據(jù)預訓練目標的不同,自監(jiān)督預訓練方法可分為生成式和判別式。生成式包括通過連續(xù)或離散的隱變量還原原始的語音特征,比如自編碼器可以預測未來時刻或被掩碼遮蓋的語音特征。而判別式則通過對比學習或者預測離散化索引(id)的方式對模型進行預訓練,例如 wav2vec2.0 和 HuBERT。將 wav2vec2.0 和 HuBERT 兩種方法在6萬小時的數(shù)據(jù)上進行預訓練后,可以發(fā)現(xiàn)其在語音識別數(shù)據(jù)集 Librispeech 上取得了 SOTA 的性能。這兩種方法均使用了聲波作為模型輸入,并通過 CNN 模塊進行降采樣,降采樣后的特征被隨機遮蓋(mask)并輸入進 Transformer 編碼器。wav2vec2 使用了對比學習進行模型訓練,通過引入一個向量量化器(vector quantizer)對未遮蓋的 CNN 輸出進行離散化,并在被遮蓋位置的 Transformer 的輸出表示上計算 InfoNCE 損失,其中正樣本來自該位置離散化后的向量,負樣本來自于該語音序列中其他位置的離散化向量。而 HuBERT 則借鑒了 BERT 當中的 mask language model 的損失函數(shù),并使用 Transformer 預測被遮蓋位置的離散 id 來訓練模型。HuBERT 使用了迭代的方式生成訓練目標,即每一幀的離散 id。微軟亞洲研究院的研究員們首先對語音的 MFCC 特征進行了 k-means 聚類來生成學習第一代 HuBERT 模型的離散 id,隨后對已訓練好的上一代模型的輸出表示進行聚類并生成新的id來進行下一輪次的學習。


即便 wav2vec2.0 和 HuBERT 取得了非常好的進展,但它們的性能只在語音識別任務上進行了驗證,并且只能夠處理單一說話人的任務,而在說話人分離等多說話人的任務上表現(xiàn)欠佳。此外,由于這兩個模型使用了有聲電子書 LibriLight 數(shù)據(jù)集作為預訓練集,所以使得模型在域外下游任務上的表現(xiàn)并不理想。


全新的 Denoising Masked Speech Modeling 框架


沿用微軟亞洲研究院自然語言計算組在自然語言預訓練的 Transformer 模型架構,研究院的研究員們提出了Denoising Masked Speech Modeling 的預訓練方案。如下圖所示,WavLM 模型包含了一個卷積編碼器(CNN Encoder)和一個 Transformer 編碼器。其中,卷積編碼器共有7層,每層包含一個時域卷積層、一個層規(guī)范化層和一個 GELU 激活函數(shù)層。在 Transformer 編碼器中,研究員們使用了門控相對位置編碼(gated relative position bias),從而將相對位置引入到了注意力網(wǎng)絡的計算中,以便更好地對局部信息進行建模。在訓練中,WavLM 會隨機地對輸入 wav 進行變換,例如:將兩個 wav 進行混合,或者加入背景噪音。之后,再隨機遮蓋約50%的音頻信號,并在輸出端預測被遮蓋位置所對應的標簽。WavLM 沿用了 HuBERT 所提出的思想,通過 Kmeans 方法將連續(xù)信號轉換成離散標簽,并將離散標簽當作目標進行建模。形式化來講,給定輸入語音 X ,首先抽取其標簽 Y,之后對 X 進行加噪和掩碼,生成 X ? ,而 Transformer 模型需要通過輸入 X ? 來預測被掩碼位置的標簽 Y。




圖片


圖1:WavLM 模型網(wǎng)絡結構


大規(guī)模訓練數(shù)據(jù)


WavLM 使用了94,000小時英語語音進行了預訓練,這是目前開源英文模型使用的最大規(guī)模訓練數(shù)據(jù)。來自于不同領域的大規(guī)模無監(jiān)督語音數(shù)據(jù)有助于 WavLM 提高模型的魯棒性。以往的研究大多只使用 LibriSpeech 或 LibriLight 數(shù)據(jù)集進行預訓練,由于輸入數(shù)據(jù)都是從有聲讀物中提取的,所以限制了預訓練模型的泛化能力。而且電子書中的語音環(huán)境與真實場景中的有所不同,真實場景往往伴隨著更多的噪音。


因此,研究員們使用了額外兩個數(shù)據(jù)集擴展訓練數(shù)據(jù):


(1) 10,000小時的 GigaSpeech 數(shù)據(jù),收集自電子書、播客和 YouTube,其內容涵蓋藝術、科學、體育等多種主題。


(2) VoxPopuli 數(shù)據(jù)。這是一個大規(guī)模的多語言未標記音頻數(shù)據(jù)集,由23種語言,超過40萬小時的音頻組成,收集自2009-2020年歐洲議會(EP)錄音。研究員們只使用了 VoxPopuli 中24,000小時的英語數(shù)據(jù)進行預訓練。


再加上 LibriLight 的電子書數(shù)據(jù),研究員們總共收集了94,000小時的數(shù)據(jù)(包括 LibriLight、VoxPopuli 和 GigaSpeech)。微軟亞洲研究院的研究員們相信,豐富的數(shù)據(jù)集可以提高模型的魯棒性,因為其包含不同的音頻背景、更多的揚聲器和不同的內容。研究員們將數(shù)據(jù)集稱為 Mix 94k hr 以簡化描述。




圖片


任務測評與實驗結果


SUPERB(13項語音任務測評)


Speech processing Universal PERformance Benchmark (SUPERB)是由臺灣大學、麻省理工大學,卡耐基梅隆大學和 Meta 公司聯(lián)合提出的評測數(shù)據(jù)集,其中包含了13項語音理解任務,用于評測預訓練模型的性能好壞。13項任務包括了:Speaker Identification(說話人識別)、Automatic Speaker Verification(說話人驗證)、Speaker Diarization(說話人日志)、Phoneme Recognition(音素識別)、Automatic Speech Recognition(語音識別)、Keyword Spotting(關鍵詞檢測)、Query by Example Spoken Term Detection(QbE)、Intent Classification(意圖分類)、Slot Filling(對話理解槽填充)、Emotion Recognition(情緒識別)、Speech Separation(語音分離)、Speech Enhancement(語音增強)和 Speech Translation(語音翻譯)。


在微調模型的過程中,不允許更新預訓練模型的參數(shù),以此來衡量預訓練模型是否可以在預訓練中學習到對應信息。測評結果顯示,WavLM 超越了之前的預訓練模型,并且用更少參數(shù)的 base 模型超越了之前最好的 HuBERT large 模型。




圖片


圖2:WavLM 在 SUPERB Leaderboard 上的表現(xiàn)


說話人驗證(Speaker Verification)


Speaker Verification 任務主要是驗證兩段聲音是否為同一人所說,在語音領域有著重要的應用。研究員們使用 VoxCeleb 2 作為訓練集,并在 VoxCeleb 1 上進行測試,測試集分為三個 :Vox1-O、Vox1-E 和 Vox1-H。在該任務中,研究員們選用了經(jīng)典的 ECAPA-TDNN 作為下游模型,證明了預訓練模型可以極大程度地降低說話人驗證任務的錯誤率。




圖片


表1:WavLM 在說話人驗證任務 Vox1-O, Vox1-E 和 Vox1-H 上的表現(xiàn)


可以看到,在使用預訓練模型之后,ECAPA-TDNN 模型的等錯誤率(Equal Error Rate)相對下降了超過50%,極大提升了模型的準確率;并且,在這個任務中 WavLM 依舊比 HuBERT 模型有著更好的效果。


由于在 Speaker Verification 任務上極好的表現(xiàn),Hugging Face 使用 WavLM 作為種子進行 finetuning,制作了一個在線 Demo,檢測兩段語音是否來自同一說話人。


Demo 鏈接:


https://huggingface.co/spaces/microsoft/wavlm-speaker-verification




圖片


圖3:Demo 截圖


說話人日志(Speaker Diarization)


說話人日志(Speaker Diarization)任務也被稱為聲紋分割聚類、說話人分割聚類,解決的主要問題是“什么時候,誰在說什么話”。即給定一個包含多人交替說話的語音,該任務需要判斷每個時間點分別是誰在說話。比如,對于一段客戶與客服的通話記錄,該任務需要知道哪些時間段的聲音是客戶說的,哪些時間段的聲音是客服說的。




圖片


表2:WavLM 在說話人日志任務 CALLHOME 數(shù)據(jù)集上的性能


研究員們使用 CALLHOME 數(shù)據(jù)集對模型進行了測評,并選取了 EEND-vector clustering 作為 Diarization 的整體 pipeline,其分為說話人向量抽取以及聚類模塊。從實驗結果可以看出,WavLM 模型可以極大地降低說話人日志的錯誤率(Diarization error rate)。


語音分離(Speech Separation)


語音分離(Speech Separation)任務的目標是將一段含有多人的語音進行分離,保證輸出每一個源只包含一段來自一個人的語音。研究員們利用 LibriCSS 數(shù)據(jù)集對語音分離任務進行了評測,該數(shù)據(jù)集會使用 ASR 模型測試語音分離模型分離出音頻的詞錯率(WER)。研究員們選取了 Conformer 模型當作 Downstream 模型,實驗結果如下圖所示:




圖片


表3:WavLM 在語音分離任務 LibriCSS 數(shù)據(jù)集上的性能


可以看到,WavLM 可以極大地提高分離模型輸出的音頻質量,在40% overlap 以及0 overlap 時候,都超過了基線的性能。


語音識別(Speech Recognition)


語音識別 (Speech Recognition)任務的目標是將一段語音轉化為文字。在該任務中,研究員們使用了 Librispeech 數(shù)據(jù)集來驗證 WavLM 的預訓練效果,該數(shù)據(jù)集共包含960小時的有聲電子書錄音。研究員們考慮了四個大小不同的有監(jiān)督子集進行微調:train-1h, train-10h, train-clean-100h 和全部960h Librispeech,并在標準測試集 test-clean 和 test-other 上進行比較。下表展示了在1h、10h和100h上的結果,可以看到在沒有語言模型的情況下,WavLM 明顯超越了 wav2vec2.0 的結果。在加上不同語言模型聯(lián)合解碼的情況下,WavLM 的結果與 wav2vec2.0 和 HuBERT 的結果相當,甚至更好。




圖片


表4:WavLM 在語音識別任務 Librispeech 數(shù)據(jù)集1h、10h和100h上的結果


下表展示了在整個960h Librispeech 數(shù)據(jù)集上進行微調的結果。結果顯示,WavLM 超過了所有有監(jiān)督訓練模型,并且取得了和 wav2vec2.0 與 HuBERT 相當?shù)慕Y果。該實驗結果表明,雖然 WavLM 在預訓練時引入了帶有人工噪聲和多說話人的輸入,提升了其在多說話人任務上的性能,但并沒有損害該模型在單說話人語音識別任務上的性能,反而在多個微調子集場景下超過基線,展示了 WavLM 預訓練的有效性。




圖片


表5:WavLM 在語音識別任務 Librispeech 數(shù)據(jù)集960h上的結果


未來,微軟亞洲研究院的研究員們會繼續(xù)探索如何訓練更大規(guī)模的模型以達到更好的性能,并探究模型的壓縮方法,使得模型可以在低資源設備上快速推斷。此外,研究員們還會就如何將大規(guī)模無監(jiān)督語音數(shù)據(jù)和文本數(shù)據(jù)進行聯(lián)合訓練等問題進行更多的探討和研究。


本文網(wǎng)址:http://55swg.cn/news/2028.html

相關標簽:模型

最近瀏覽:

在線客服
分享