通用模型、全新框架,WavLM語(yǔ)音預(yù)訓(xùn)練模型全解
編者按:深度神經(jīng)網(wǎng)絡(luò)模型近年來(lái)雖然在各項(xiàng)語(yǔ)音任務(wù)上都有所進(jìn)展,但卻仍依賴(lài)于大量的標(biāo)注數(shù)據(jù)。而自監(jiān)督訓(xùn)練方法的出現(xiàn)和發(fā)展則在一定意義上緩解了該問(wèn)題。近日,微軟亞洲研究院與微軟 Azure 語(yǔ)音組的研究員們?cè)谂袆e式自監(jiān)督預(yù)訓(xùn)練方法的基礎(chǔ)上,沿用研究院自然語(yǔ)言計(jì)算組在自然語(yǔ)言預(yù)訓(xùn)練的 Transformer 模型架構(gòu),提出了全新的 Denoising Masked Speech Modeling 框架。通過(guò)94,000小時(shí)的英語(yǔ)語(yǔ)音進(jìn)行預(yù)訓(xùn)練,通用語(yǔ)音預(yù)訓(xùn)練模型 WavLM 在 SUPERB 所有13項(xiàng)語(yǔ)音任務(wù)測(cè)評(píng)中超過(guò)先前所有模型,排名第一,并在其它4個(gè)不同的語(yǔ)音經(jīng)典測(cè)評(píng)數(shù)據(jù)集上都取得了很好效果。
近兩年來(lái),預(yù)訓(xùn)練模型在自然語(yǔ)言處理和計(jì)算機(jī)視覺(jué)領(lǐng)域引起了學(xué)術(shù)界和工業(yè)界的廣泛關(guān)注。利用大規(guī)模無(wú)監(jiān)督數(shù)據(jù)進(jìn)行訓(xùn)練的預(yù)訓(xùn)練模型有著非常好的泛化性,只需在小規(guī)模標(biāo)注數(shù)據(jù)上進(jìn)行微調(diào),就可以在相應(yīng)任務(wù)上有所提高。雖然之前預(yù)訓(xùn)練模型在語(yǔ)音處理領(lǐng)域已經(jīng)取得了一些進(jìn)展,但其只在語(yǔ)音識(shí)別任務(wù)上進(jìn)行了驗(yàn)證。
為此,微軟亞洲研究院與微軟 Azure 語(yǔ)音組的研究員們提出了通用語(yǔ)音預(yù)訓(xùn)練模型 WavLM。通過(guò) Denoising Masked Speech Modeling 框架,研究員們將 WavLM 適配到了17個(gè)任務(wù)上,并且都取得了非常好的效果,這使得語(yǔ)音預(yù)訓(xùn)練模型的有效性從語(yǔ)音識(shí)別任務(wù)延伸到了非內(nèi)容識(shí)別的語(yǔ)音任務(wù)?;谠?4,000小時(shí)無(wú)監(jiān)督的英文數(shù)據(jù)上進(jìn)行訓(xùn)練,WavLM 還在多個(gè)語(yǔ)音相關(guān)的數(shù)據(jù)集上都取得了 SOTA 的成績(jī)。目前,該模型已經(jīng)開(kāi)源,并集成到了 Hugging Face 的 Transformer 框架中方便使用者調(diào)用。
論文鏈接:
https://arxiv.org/pdf/2110.13900.pdf
開(kāi)源鏈接:
https://aka.ms/wavlm
Hugging Face集成鏈接:
https://huggingface.co/microsoft/wavlm-large
圖片
從自監(jiān)督預(yù)訓(xùn)練方法看語(yǔ)音任務(wù)
生成式&判別式自監(jiān)督預(yù)訓(xùn)練方法
在過(guò)去的幾年中,深度神經(jīng)網(wǎng)絡(luò)模型雖然在語(yǔ)音的多種任務(wù)上都取得了突破性進(jìn)展,但卻依舊受制于模型訓(xùn)練時(shí)所需的大量標(biāo)注數(shù)據(jù)。自監(jiān)督預(yù)訓(xùn)練方法的出現(xiàn)在一定程度上緩解了這一問(wèn)題。該方法先使用大規(guī)模無(wú)監(jiān)督數(shù)據(jù)進(jìn)行預(yù)訓(xùn)練,隨后將訓(xùn)練好的模型在小規(guī)模標(biāo)注數(shù)據(jù)上進(jìn)行微調(diào)。已有研究表明,使用自監(jiān)督預(yù)訓(xùn)練可以提升多種語(yǔ)音任務(wù)的性能。
根據(jù)預(yù)訓(xùn)練目標(biāo)的不同,自監(jiān)督預(yù)訓(xùn)練方法可分為生成式和判別式。生成式包括通過(guò)連續(xù)或離散的隱變量還原原始的語(yǔ)音特征,比如自編碼器可以預(yù)測(cè)未來(lái)時(shí)刻或被掩碼遮蓋的語(yǔ)音特征。而判別式則通過(guò)對(duì)比學(xué)習(xí)或者預(yù)測(cè)離散化索引(id)的方式對(duì)模型進(jìn)行預(yù)訓(xùn)練,例如 wav2vec2.0 和 HuBERT。將 wav2vec2.0 和 HuBERT 兩種方法在6萬(wàn)小時(shí)的數(shù)據(jù)上進(jìn)行預(yù)訓(xùn)練后,可以發(fā)現(xiàn)其在語(yǔ)音識(shí)別數(shù)據(jù)集 Librispeech 上取得了 SOTA 的性能。這兩種方法均使用了聲波作為模型輸入,并通過(guò) CNN 模塊進(jìn)行降采樣,降采樣后的特征被隨機(jī)遮蓋(mask)并輸入進(jìn) Transformer 編碼器。wav2vec2 使用了對(duì)比學(xué)習(xí)進(jìn)行模型訓(xùn)練,通過(guò)引入一個(gè)向量量化器(vector quantizer)對(duì)未遮蓋的 CNN 輸出進(jìn)行離散化,并在被遮蓋位置的 Transformer 的輸出表示上計(jì)算 InfoNCE 損失,其中正樣本來(lái)自該位置離散化后的向量,負(fù)樣本來(lái)自于該語(yǔ)音序列中其他位置的離散化向量。而 HuBERT 則借鑒了 BERT 當(dāng)中的 mask language model 的損失函數(shù),并使用 Transformer 預(yù)測(cè)被遮蓋位置的離散 id 來(lái)訓(xùn)練模型。HuBERT 使用了迭代的方式生成訓(xùn)練目標(biāo),即每一幀的離散 id。微軟亞洲研究院的研究員們首先對(duì)語(yǔ)音的 MFCC 特征進(jìn)行了 k-means 聚類(lèi)來(lái)生成學(xué)習(xí)第一代 HuBERT 模型的離散 id,隨后對(duì)已訓(xùn)練好的上一代模型的輸出表示進(jìn)行聚類(lèi)并生成新的id來(lái)進(jìn)行下一輪次的學(xué)習(xí)。
即便 wav2vec2.0 和 HuBERT 取得了非常好的進(jìn)展,但它們的性能只在語(yǔ)音識(shí)別任務(wù)上進(jìn)行了驗(yàn)證,并且只能夠處理單一說(shuō)話(huà)人的任務(wù),而在說(shuō)話(huà)人分離等多說(shuō)話(huà)人的任務(wù)上表現(xiàn)欠佳。此外,由于這兩個(gè)模型使用了有聲電子書(shū) LibriLight 數(shù)據(jù)集作為預(yù)訓(xùn)練集,所以使得模型在域外下游任務(wù)上的表現(xiàn)并不理想。
全新的 Denoising Masked Speech Modeling 框架
沿用微軟亞洲研究院自然語(yǔ)言計(jì)算組在自然語(yǔ)言預(yù)訓(xùn)練的 Transformer 模型架構(gòu),研究院的研究員們提出了Denoising Masked Speech Modeling 的預(yù)訓(xùn)練方案。如下圖所示,WavLM 模型包含了一個(gè)卷積編碼器(CNN Encoder)和一個(gè) Transformer 編碼器。其中,卷積編碼器共有7層,每層包含一個(gè)時(shí)域卷積層、一個(gè)層規(guī)范化層和一個(gè) GELU 激活函數(shù)層。在 Transformer 編碼器中,研究員們使用了門(mén)控相對(duì)位置編碼(gated relative position bias),從而將相對(duì)位置引入到了注意力網(wǎng)絡(luò)的計(jì)算中,以便更好地對(duì)局部信息進(jìn)行建模。在訓(xùn)練中,WavLM 會(huì)隨機(jī)地對(duì)輸入 wav 進(jìn)行變換,例如:將兩個(gè) wav 進(jìn)行混合,或者加入背景噪音。之后,再隨機(jī)遮蓋約50%的音頻信號(hào),并在輸出端預(yù)測(cè)被遮蓋位置所對(duì)應(yīng)的標(biāo)簽。WavLM 沿用了 HuBERT 所提出的思想,通過(guò) Kmeans 方法將連續(xù)信號(hào)轉(zhuǎn)換成離散標(biāo)簽,并將離散標(biāo)簽當(dāng)作目標(biāo)進(jìn)行建模。形式化來(lái)講,給定輸入語(yǔ)音 X ,首先抽取其標(biāo)簽 Y,之后對(duì) X 進(jìn)行加噪和掩碼,生成 X ? ,而 Transformer 模型需要通過(guò)輸入 X ? 來(lái)預(yù)測(cè)被掩碼位置的標(biāo)簽 Y。
圖片
圖1:WavLM 模型網(wǎng)絡(luò)結(jié)構(gòu)
大規(guī)模訓(xùn)練數(shù)據(jù)
WavLM 使用了94,000小時(shí)英語(yǔ)語(yǔ)音進(jìn)行了預(yù)訓(xùn)練,這是目前開(kāi)源英文模型使用的最大規(guī)模訓(xùn)練數(shù)據(jù)。來(lái)自于不同領(lǐng)域的大規(guī)模無(wú)監(jiān)督語(yǔ)音數(shù)據(jù)有助于 WavLM 提高模型的魯棒性。以往的研究大多只使用 LibriSpeech 或 LibriLight 數(shù)據(jù)集進(jìn)行預(yù)訓(xùn)練,由于輸入數(shù)據(jù)都是從有聲讀物中提取的,所以限制了預(yù)訓(xùn)練模型的泛化能力。而且電子書(shū)中的語(yǔ)音環(huán)境與真實(shí)場(chǎng)景中的有所不同,真實(shí)場(chǎng)景往往伴隨著更多的噪音。
因此,研究員們使用了額外兩個(gè)數(shù)據(jù)集擴(kuò)展訓(xùn)練數(shù)據(jù):
(1) 10,000小時(shí)的 GigaSpeech 數(shù)據(jù),收集自電子書(shū)、播客和 YouTube,其內(nèi)容涵蓋藝術(shù)、科學(xué)、體育等多種主題。
(2) VoxPopuli 數(shù)據(jù)。這是一個(gè)大規(guī)模的多語(yǔ)言未標(biāo)記音頻數(shù)據(jù)集,由23種語(yǔ)言,超過(guò)40萬(wàn)小時(shí)的音頻組成,收集自2009-2020年歐洲議會(huì)(EP)錄音。研究員們只使用了 VoxPopuli 中24,000小時(shí)的英語(yǔ)數(shù)據(jù)進(jìn)行預(yù)訓(xùn)練。
再加上 LibriLight 的電子書(shū)數(shù)據(jù),研究員們總共收集了94,000小時(shí)的數(shù)據(jù)(包括 LibriLight、VoxPopuli 和 GigaSpeech)。微軟亞洲研究院的研究員們相信,豐富的數(shù)據(jù)集可以提高模型的魯棒性,因?yàn)槠浒煌囊纛l背景、更多的揚(yáng)聲器和不同的內(nèi)容。研究員們將數(shù)據(jù)集稱(chēng)為 Mix 94k hr 以簡(jiǎn)化描述。
圖片
任務(wù)測(cè)評(píng)與實(shí)驗(yàn)結(jié)果
SUPERB(13項(xiàng)語(yǔ)音任務(wù)測(cè)評(píng))
Speech processing Universal PERformance Benchmark (SUPERB)是由臺(tái)灣大學(xué)、麻省理工大學(xué),卡耐基梅隆大學(xué)和 Meta 公司聯(lián)合提出的評(píng)測(cè)數(shù)據(jù)集,其中包含了13項(xiàng)語(yǔ)音理解任務(wù),用于評(píng)測(cè)預(yù)訓(xùn)練模型的性能好壞。13項(xiàng)任務(wù)包括了:Speaker Identification(說(shuō)話(huà)人識(shí)別)、Automatic Speaker Verification(說(shuō)話(huà)人驗(yàn)證)、Speaker Diarization(說(shuō)話(huà)人日志)、Phoneme Recognition(音素識(shí)別)、Automatic Speech Recognition(語(yǔ)音識(shí)別)、Keyword Spotting(關(guān)鍵詞檢測(cè))、Query by Example Spoken Term Detection(QbE)、Intent Classification(意圖分類(lèi))、Slot Filling(對(duì)話(huà)理解槽填充)、Emotion Recognition(情緒識(shí)別)、Speech Separation(語(yǔ)音分離)、Speech Enhancement(語(yǔ)音增強(qiáng))和 Speech Translation(語(yǔ)音翻譯)。
在微調(diào)模型的過(guò)程中,不允許更新預(yù)訓(xùn)練模型的參數(shù),以此來(lái)衡量預(yù)訓(xùn)練模型是否可以在預(yù)訓(xùn)練中學(xué)習(xí)到對(duì)應(yīng)信息。測(cè)評(píng)結(jié)果顯示,WavLM 超越了之前的預(yù)訓(xùn)練模型,并且用更少參數(shù)的 base 模型超越了之前最好的 HuBERT large 模型。
圖片
圖2:WavLM 在 SUPERB Leaderboard 上的表現(xiàn)
說(shuō)話(huà)人驗(yàn)證(Speaker Verification)
Speaker Verification 任務(wù)主要是驗(yàn)證兩段聲音是否為同一人所說(shuō),在語(yǔ)音領(lǐng)域有著重要的應(yīng)用。研究員們使用 VoxCeleb 2 作為訓(xùn)練集,并在 VoxCeleb 1 上進(jìn)行測(cè)試,測(cè)試集分為三個(gè) :Vox1-O、Vox1-E 和 Vox1-H。在該任務(wù)中,研究員們選用了經(jīng)典的 ECAPA-TDNN 作為下游模型,證明了預(yù)訓(xùn)練模型可以極大程度地降低說(shuō)話(huà)人驗(yàn)證任務(wù)的錯(cuò)誤率。
圖片
表1:WavLM 在說(shuō)話(huà)人驗(yàn)證任務(wù) Vox1-O, Vox1-E 和 Vox1-H 上的表現(xiàn)
可以看到,在使用預(yù)訓(xùn)練模型之后,ECAPA-TDNN 模型的等錯(cuò)誤率(Equal Error Rate)相對(duì)下降了超過(guò)50%,極大提升了模型的準(zhǔn)確率;并且,在這個(gè)任務(wù)中 WavLM 依舊比 HuBERT 模型有著更好的效果。
由于在 Speaker Verification 任務(wù)上極好的表現(xiàn),Hugging Face 使用 WavLM 作為種子進(jìn)行 finetuning,制作了一個(gè)在線(xiàn) Demo,檢測(cè)兩段語(yǔ)音是否來(lái)自同一說(shuō)話(huà)人。
Demo 鏈接:
https://huggingface.co/spaces/microsoft/wavlm-speaker-verification
圖片
圖3:Demo 截圖
說(shuō)話(huà)人日志(Speaker Diarization)
說(shuō)話(huà)人日志(Speaker Diarization)任務(wù)也被稱(chēng)為聲紋分割聚類(lèi)、說(shuō)話(huà)人分割聚類(lèi),解決的主要問(wèn)題是“什么時(shí)候,誰(shuí)在說(shuō)什么話(huà)”。即給定一個(gè)包含多人交替說(shuō)話(huà)的語(yǔ)音,該任務(wù)需要判斷每個(gè)時(shí)間點(diǎn)分別是誰(shuí)在說(shuō)話(huà)。比如,對(duì)于一段客戶(hù)與客服的通話(huà)記錄,該任務(wù)需要知道哪些時(shí)間段的聲音是客戶(hù)說(shuō)的,哪些時(shí)間段的聲音是客服說(shuō)的。
圖片
表2:WavLM 在說(shuō)話(huà)人日志任務(wù) CALLHOME 數(shù)據(jù)集上的性能
研究員們使用 CALLHOME 數(shù)據(jù)集對(duì)模型進(jìn)行了測(cè)評(píng),并選取了 EEND-vector clustering 作為 Diarization 的整體 pipeline,其分為說(shuō)話(huà)人向量抽取以及聚類(lèi)模塊。從實(shí)驗(yàn)結(jié)果可以看出,WavLM 模型可以極大地降低說(shuō)話(huà)人日志的錯(cuò)誤率(Diarization error rate)。
語(yǔ)音分離(Speech Separation)
語(yǔ)音分離(Speech Separation)任務(wù)的目標(biāo)是將一段含有多人的語(yǔ)音進(jìn)行分離,保證輸出每一個(gè)源只包含一段來(lái)自一個(gè)人的語(yǔ)音。研究員們利用 LibriCSS 數(shù)據(jù)集對(duì)語(yǔ)音分離任務(wù)進(jìn)行了評(píng)測(cè),該數(shù)據(jù)集會(huì)使用 ASR 模型測(cè)試語(yǔ)音分離模型分離出音頻的詞錯(cuò)率(WER)。研究員們選取了 Conformer 模型當(dāng)作 Downstream 模型,實(shí)驗(yàn)結(jié)果如下圖所示:
圖片
表3:WavLM 在語(yǔ)音分離任務(wù) LibriCSS 數(shù)據(jù)集上的性能
可以看到,WavLM 可以極大地提高分離模型輸出的音頻質(zhì)量,在40% overlap 以及0 overlap 時(shí)候,都超過(guò)了基線(xiàn)的性能。
語(yǔ)音識(shí)別(Speech Recognition)
語(yǔ)音識(shí)別 (Speech Recognition)任務(wù)的目標(biāo)是將一段語(yǔ)音轉(zhuǎn)化為文字。在該任務(wù)中,研究員們使用了 Librispeech 數(shù)據(jù)集來(lái)驗(yàn)證 WavLM 的預(yù)訓(xùn)練效果,該數(shù)據(jù)集共包含960小時(shí)的有聲電子書(shū)錄音。研究員們考慮了四個(gè)大小不同的有監(jiān)督子集進(jìn)行微調(diào):train-1h, train-10h, train-clean-100h 和全部960h Librispeech,并在標(biāo)準(zhǔn)測(cè)試集 test-clean 和 test-other 上進(jìn)行比較。下表展示了在1h、10h和100h上的結(jié)果,可以看到在沒(méi)有語(yǔ)言模型的情況下,WavLM 明顯超越了 wav2vec2.0 的結(jié)果。在加上不同語(yǔ)言模型聯(lián)合解碼的情況下,WavLM 的結(jié)果與 wav2vec2.0 和 HuBERT 的結(jié)果相當(dāng),甚至更好。
圖片
表4:WavLM 在語(yǔ)音識(shí)別任務(wù) Librispeech 數(shù)據(jù)集1h、10h和100h上的結(jié)果
下表展示了在整個(gè)960h Librispeech 數(shù)據(jù)集上進(jìn)行微調(diào)的結(jié)果。結(jié)果顯示,WavLM 超過(guò)了所有有監(jiān)督訓(xùn)練模型,并且取得了和 wav2vec2.0 與 HuBERT 相當(dāng)?shù)慕Y(jié)果。該實(shí)驗(yàn)結(jié)果表明,雖然 WavLM 在預(yù)訓(xùn)練時(shí)引入了帶有人工噪聲和多說(shuō)話(huà)人的輸入,提升了其在多說(shuō)話(huà)人任務(wù)上的性能,但并沒(méi)有損害該模型在單說(shuō)話(huà)人語(yǔ)音識(shí)別任務(wù)上的性能,反而在多個(gè)微調(diào)子集場(chǎng)景下超過(guò)基線(xiàn),展示了 WavLM 預(yù)訓(xùn)練的有效性。
圖片
表5:WavLM 在語(yǔ)音識(shí)別任務(wù) Librispeech 數(shù)據(jù)集960h上的結(jié)果
未來(lái),微軟亞洲研究院的研究員們會(huì)繼續(xù)探索如何訓(xùn)練更大規(guī)模的模型以達(dá)到更好的性能,并探究模型的壓縮方法,使得模型可以在低資源設(shè)備上快速推斷。此外,研究員們還會(huì)就如何將大規(guī)模無(wú)監(jiān)督語(yǔ)音數(shù)據(jù)和文本數(shù)據(jù)進(jìn)行聯(lián)合訓(xùn)練等問(wèn)題進(jìn)行更多的探討和研究。