張文林 劉雪鵬 牛 銅 楊緒魁 屈 丹
語(yǔ)音表示學(xué)習(xí)的目的是從語(yǔ)音信號(hào)中提取特征,并使用學(xué)習(xí)到的向量表示語(yǔ)音信號(hào).一個(gè)好的語(yǔ)音表示應(yīng)當(dāng)包含語(yǔ)音信號(hào)中各種不同層次的信息,如音素或類(lèi)音素、說(shuō)話(huà)人信息、詞語(yǔ)、語(yǔ)種等,以便于將語(yǔ)音表示用于后續(xù)的連續(xù)語(yǔ)音識(shí)別、說(shuō)話(huà)人識(shí)別、語(yǔ)種識(shí)別等下游任務(wù)中[1].從語(yǔ)音信號(hào)中提取語(yǔ)音表示,能有效降低下游任務(wù)的學(xué)習(xí)難度,減少其對(duì)標(biāo)注數(shù)據(jù)量的要求.
目前人類(lèi)使用的語(yǔ)言有近7 000種,很多語(yǔ)言的語(yǔ)音數(shù)據(jù)十分匱乏,缺少語(yǔ)言學(xué)專(zhuān)家知識(shí),甚至沒(méi)有文字系統(tǒng).對(duì)這些小語(yǔ)種語(yǔ)言構(gòu)建語(yǔ)音識(shí)別系統(tǒng),往往需要依賴(lài)代價(jià)極大的語(yǔ)音數(shù)據(jù)收集及人工標(biāo)注工作.為了解決這一問(wèn)題,學(xué)者們轉(zhuǎn)向使用“無(wú)監(jiān)督預(yù)訓(xùn)練+微調(diào)”的方法構(gòu)建小語(yǔ)種語(yǔ)音識(shí)別系統(tǒng).首先在大量無(wú)標(biāo)注的語(yǔ)音數(shù)據(jù)上學(xué)習(xí)一個(gè)好的語(yǔ)音表示模型,然后利用少量的標(biāo)注數(shù)據(jù)對(duì)下游任務(wù)進(jìn)行微調(diào),得到與大量標(biāo)注數(shù)據(jù)直接訓(xùn)練性能相當(dāng)?shù)南到y(tǒng),其中第一階段的預(yù)訓(xùn)練過(guò)程涉及無(wú)監(jiān)督的語(yǔ)音表示學(xué)習(xí)技術(shù).相比有監(jiān)督學(xué)習(xí)方法,無(wú)監(jiān)督的語(yǔ)音表示學(xué)習(xí)方法最大優(yōu)勢(shì)在于可利用大量的無(wú)標(biāo)注語(yǔ)音數(shù)據(jù),甚至是多語(yǔ)言數(shù)據(jù).在如今的大數(shù)據(jù)時(shí)代,獲取無(wú)標(biāo)注數(shù)據(jù)相對(duì)容易.
自監(jiān)督學(xué)習(xí)是無(wú)監(jiān)督學(xué)習(xí)的一個(gè)分支,基本思想是通過(guò)構(gòu)造輔助任務(wù),從無(wú)監(jiān)督數(shù)據(jù)自身構(gòu)造監(jiān)督信息進(jìn)行訓(xùn)練,從而學(xué)習(xí)對(duì)下游任務(wù)有價(jià)值的表示.近年來(lái),自監(jiān)督語(yǔ)音表示學(xué)習(xí)取得一定進(jìn)展,已成為智能語(yǔ)音處理領(lǐng)域熱門(mén)的研究方向之一,語(yǔ)音自監(jiān)督表示學(xué)習(xí)方法主要通過(guò)掩蔽語(yǔ)音幀重建或前后幀對(duì)比預(yù)測(cè)等預(yù)訓(xùn)練任務(wù)進(jìn)行學(xué)習(xí),模型提取的語(yǔ)音表示能在說(shuō)話(huà)人識(shí)別、音素分類(lèi)、自動(dòng)語(yǔ)音識(shí)別(Automatic Speech Recognition, ASR)、情感分類(lèi)等多種下游任務(wù)中,取得與有監(jiān)督方法相當(dāng)?shù)慕Y(jié)果.
目前,語(yǔ)音的自監(jiān)督表示學(xué)習(xí)方法主要有基于對(duì)比損失的表示學(xué)習(xí)方法和基于重建的表示學(xué)習(xí)方法兩類(lèi).
基于對(duì)比損失的表示學(xué)習(xí)方法是對(duì)比預(yù)測(cè)編碼(Contrastive Predictive Coding, CPC)[2].通過(guò)當(dāng)前幀預(yù)測(cè)鄰近的幾幀,同時(shí)對(duì)比來(lái)自其它序列的幀或來(lái)自更遙遠(yuǎn)時(shí)間的幀,使時(shí)間上距離相近的表示被拉得更近,時(shí)間上距離較遠(yuǎn)的表示被推得更遠(yuǎn).典型方法是wav2vec系列模型.Schneider等[3]首次提出wav2vec,將CPC損失直接用于語(yǔ)音表示學(xué)習(xí).wav2vec是無(wú)監(jiān)督預(yù)訓(xùn)練在具有完全卷積模型的語(yǔ)音識(shí)別中的首次應(yīng)用,并已在基于語(yǔ)音識(shí)別的下游任務(wù)中驗(yàn)證有效性.Baevski等[4]提出改進(jìn)方法——vq-wav2vec,結(jié)合wav2vec與BERT(Bidirectional En-coder Representations from Transformers)[5],并使用矢量量化對(duì)提取的表示進(jìn)行量化,可學(xué)習(xí)離散的語(yǔ)音表示.更進(jìn)一步地,Baevski等[6]提出wav2vec 2.0,基于vq-wav2vec的思路,結(jié)合掩碼語(yǔ)言模型(Masked Language Model)[5]訓(xùn)練具有上下文表示的離散語(yǔ)音單元.目前,wav2vec 2.0是低資源語(yǔ)音識(shí)別領(lǐng)域中使用最廣泛的語(yǔ)音預(yù)訓(xùn)練方法之一,具有良好的跨語(yǔ)言特性[7],并可與自訓(xùn)練等方法結(jié)合,實(shí)現(xiàn)基于少量標(biāo)注語(yǔ)料的半監(jiān)督語(yǔ)音識(shí)別[8].
基于重建的表示學(xué)習(xí)方法利用部分語(yǔ)音幀對(duì)其它語(yǔ)音幀進(jìn)行還原重建,根據(jù)最小化重建損失得到語(yǔ)音表示.這類(lèi)方法的典型方法有自回歸預(yù)測(cè)編碼(Autoregressive Predictive Coding, APC)[9-10]和BERT式掩蔽重構(gòu)[5]等.APC采用自回歸模型對(duì)聲音序列進(jìn)行編碼,根據(jù)當(dāng)前幀對(duì)未來(lái)幀進(jìn)行預(yù)測(cè)重建.BERT式掩蔽重構(gòu)基于掩蔽語(yǔ)言模型,根據(jù)未掩蔽語(yǔ)音幀的編碼重構(gòu)掩蔽的語(yǔ)音幀,學(xué)習(xí)得到較好的語(yǔ)音表示.
近年來(lái),借鑒自然語(yǔ)言處理領(lǐng)域中的BERT等預(yù)訓(xùn)練模型,在語(yǔ)音處理領(lǐng)域也涌現(xiàn)很多基于BERT式掩蔽重構(gòu)的語(yǔ)音表示學(xué)習(xí)方法.Liu等[11]提出Mockingjay,使用掩蔽聲學(xué)模型(Masked Acoustic Model, MAM)任務(wù)對(duì)模型進(jìn)行訓(xùn)練.Mockingjay中的掩蔽聲學(xué)模型僅對(duì)語(yǔ)音幀進(jìn)行時(shí)間維度上的掩蔽.Liu等[12]在文獻(xiàn)[11]的基礎(chǔ)上提出TERA (Trans-former Encoder Representations from Alteration),將語(yǔ)音幀的掩蔽擴(kuò)展到時(shí)間、通道和幅度三個(gè)維度,使學(xué)習(xí)的語(yǔ)音表示能包含更多的信息.Chi等[13]將ALBERT(A Lite BERT)[14]參數(shù)共享的思想引入語(yǔ)音表示網(wǎng)絡(luò)的構(gòu)建,提出AALBERT(Audio ALBERT),在保證模型性能的同時(shí)有效減少模型參數(shù).
本文主要討論基于無(wú)標(biāo)注數(shù)據(jù)的語(yǔ)音表示學(xué)習(xí)方法.事實(shí)上,在無(wú)監(jiān)督數(shù)據(jù)的利用方面,噪聲學(xué)生訓(xùn)練(Noisy Student Training)[15]是一種目前常用的方法,基本思想是迭代自訓(xùn)練,即首先使用少量有標(biāo)注數(shù)據(jù)訓(xùn)練得到初始教師模型,利用教師模型生成無(wú)標(biāo)注數(shù)據(jù)的偽標(biāo)注,然后利用偽標(biāo)注數(shù)據(jù)和標(biāo)注數(shù)據(jù)聯(lián)合訓(xùn)練學(xué)生模型.在訓(xùn)練學(xué)生模型過(guò)程中,為了提高表示的穩(wěn)健性,對(duì)輸入的語(yǔ)音數(shù)據(jù)進(jìn)行隨機(jī)擾動(dòng)[16-18].噪聲學(xué)生訓(xùn)練基本出發(fā)點(diǎn)是對(duì)于一個(gè)好的表示模型,擾動(dòng)后語(yǔ)音得到的表示應(yīng)與擾動(dòng)前語(yǔ)音得到的表示一致.Park等[19]將噪聲學(xué)生訓(xùn)練方法用于半監(jiān)督語(yǔ)音識(shí)別,取得不錯(cuò)效果.Xu等[8]證明基于教師-學(xué)生訓(xùn)練的自訓(xùn)練方法與基于wav2vec 2.0的自監(jiān)督預(yù)訓(xùn)練方法在下游語(yǔ)音識(shí)別任務(wù)上具有互補(bǔ)性,兩者結(jié)合可進(jìn)一步提高半監(jiān)督語(yǔ)音識(shí)別的效果.然而,原始的噪聲學(xué)生訓(xùn)練方法是一種半監(jiān)督學(xué)習(xí)方法,仍需少量的標(biāo)注語(yǔ)料以訓(xùn)練初始的教師模型,因此往往只用于下游任務(wù)的微調(diào)階段,在預(yù)訓(xùn)練階段仍需要借助自監(jiān)督方法學(xué)習(xí)語(yǔ)音表示.
現(xiàn)有的基于掩蔽重建的自監(jiān)督語(yǔ)音表示學(xué)習(xí)方法對(duì)語(yǔ)音幀添加掩蔽,最小化重建損失以訓(xùn)練模型.這些方法的共同缺點(diǎn)是未較好利用語(yǔ)音幀本身包含的音素類(lèi)別信息.音素(Phoneme)是根據(jù)語(yǔ)音的自然屬性劃分的最小語(yǔ)音單位,在對(duì)輸入語(yǔ)音進(jìn)行分幀處理的過(guò)程中,一幀通常為25 ms或10 ms,對(duì)于同個(gè)音素分割產(chǎn)生的語(yǔ)音幀,從發(fā)音的角度上看,應(yīng)屬于一類(lèi).這種隱藏的類(lèi)別信息并未直接利用在現(xiàn)有的無(wú)監(jiān)督預(yù)訓(xùn)練方法中.
因此,本文提出基于自監(jiān)督聚類(lèi)重訓(xùn)練的語(yǔ)音表示學(xué)習(xí)方法,在現(xiàn)有的基于掩蔽重建的自監(jiān)督方法的基礎(chǔ)上,構(gòu)造偽音素標(biāo)簽以引入音素類(lèi)別預(yù)測(cè)任務(wù),較好地利用語(yǔ)音數(shù)據(jù)中隱藏的音素類(lèi)別信息.具體思路是:基于當(dāng)前的預(yù)訓(xùn)練語(yǔ)音表示模型,通過(guò)無(wú)監(jiān)督聚類(lèi)的方法構(gòu)造語(yǔ)音表示單元的音素類(lèi)別標(biāo)簽,結(jié)合重建任務(wù)與音素類(lèi)別標(biāo)簽預(yù)測(cè)任務(wù),更新語(yǔ)音表示模型.在模型更新過(guò)程中,借鑒噪聲學(xué)生訓(xùn)練方法的思想,對(duì)輸入語(yǔ)音信號(hào)進(jìn)行隨機(jī)噪聲擾動(dòng),得到較穩(wěn)健的語(yǔ)音表示.基于多個(gè)數(shù)據(jù)集上的音素識(shí)別、說(shuō)話(huà)人識(shí)別等下游任務(wù)測(cè)試表明,本文方法達(dá)到與現(xiàn)有模型相當(dāng)甚至更優(yōu)的性能,同時(shí)模型訓(xùn)練和推理所需的計(jì)算資源和時(shí)間較少.
無(wú)監(jiān)督語(yǔ)音表示任務(wù)的關(guān)鍵在于如何有效利用無(wú)標(biāo)注語(yǔ)音數(shù)據(jù)得到包含其主要信息的高層表示.針對(duì)這一問(wèn)題,基于重建損失的語(yǔ)音表示學(xué)習(xí)方法認(rèn)為一個(gè)好的語(yǔ)音表示應(yīng)可較好重建原始的語(yǔ)音信號(hào).因此,利用自編碼器的思想,通過(guò)一個(gè)編碼器得到語(yǔ)音表示,通過(guò)一個(gè)解碼器根據(jù)語(yǔ)音表示重構(gòu)原始語(yǔ)音信號(hào),進(jìn)而通過(guò)最小化重構(gòu)信號(hào)和原始信號(hào)之間的誤差(稱(chēng)為重構(gòu)誤差)優(yōu)化語(yǔ)音表示模型.在重建任務(wù)訓(xùn)練過(guò)程中,現(xiàn)有方法未利用語(yǔ)音的音素類(lèi)別信息.
而在基于噪聲學(xué)生訓(xùn)練的半監(jiān)督語(yǔ)音識(shí)別中,使用另一種有效的無(wú)標(biāo)注數(shù)據(jù)利用方法,即將無(wú)標(biāo)注數(shù)據(jù)對(duì)應(yīng)的標(biāo)注視為隱藏變量,通過(guò)一個(gè)類(lèi)似于EM算法(Expectation-Maximization Algorithm)的迭代過(guò)程優(yōu)化聲學(xué)模型的參數(shù),具體做法如下.
1)使用標(biāo)注數(shù)據(jù)訓(xùn)練一個(gè)初始模型,作為教師模型.
2)通過(guò)教師模型對(duì)無(wú)標(biāo)注的數(shù)據(jù)進(jìn)行識(shí)別,將識(shí)別結(jié)果視為偽標(biāo)注(類(lèi)似于EM算法中的E步).
3)對(duì)于無(wú)標(biāo)注數(shù)據(jù),將偽標(biāo)注視為正確標(biāo)簽,結(jié)合標(biāo)注數(shù)據(jù),通過(guò)最小化標(biāo)簽預(yù)測(cè)任務(wù)的交叉熵?fù)p失函數(shù)更新模型參數(shù),得到學(xué)生模型(類(lèi)似于EM算法中的M步).
4)將新的學(xué)生模型作為教師模型,重復(fù)1)、2),得到不斷精確的偽標(biāo)注(類(lèi)別信息)和識(shí)別模型.
在上述過(guò)程中,基于一致性準(zhǔn)則,通過(guò)對(duì)輸入信號(hào)添加隨機(jī)噪聲擾動(dòng)以提高學(xué)生模型的魯棒性.
受到上述噪聲學(xué)生訓(xùn)練方法的啟發(fā),為了在無(wú)監(jiān)督表示學(xué)習(xí)過(guò)程中充分利用語(yǔ)音幀自身隱含的類(lèi)別信息,本文結(jié)合語(yǔ)音重建任務(wù)和偽標(biāo)簽預(yù)測(cè)任務(wù),提出聚類(lèi)-重訓(xùn)練框架.基本思想是:基于現(xiàn)有表示模型(教師模型),利用無(wú)監(jiān)督聚類(lèi)得到隱含的語(yǔ)音幀類(lèi)別信息,進(jìn)而基于該類(lèi)別信息構(gòu)造標(biāo)簽預(yù)測(cè)任務(wù),結(jié)合已有的基于重建損失的表示學(xué)習(xí)任務(wù),重訓(xùn)語(yǔ)音表示模型(學(xué)生模型).將上述過(guò)程不斷迭代以得到最優(yōu)表示模型.下面將利用EM算法框架從理論上證明方法的有效性.
令x為某一幀語(yǔ)音信號(hào),y為其音素類(lèi)別標(biāo)簽,對(duì)于無(wú)標(biāo)注語(yǔ)音數(shù)據(jù),x為觀(guān)測(cè)變量,y為隱藏變量,采用EM算法估計(jì)語(yǔ)音表示模型的參數(shù)θ.根據(jù)EM算法原理,在第k次迭代中E步在給定當(dāng)前模型的參數(shù)θ(k-1)的條件下,估計(jì)隱藏變量的最大后驗(yàn)概率,即計(jì)算
q(y|x;θ(k-1))=p(y|x;θ(k-1)).
在M步最大化觀(guān)測(cè)變量與隱藏變量聯(lián)合概率的對(duì)數(shù)期望值,即優(yōu)化目標(biāo)函數(shù)
最大化上述目標(biāo)函數(shù)相當(dāng)于最小化
L(θ)=-Q(θ,θ(k-1))=
(1)
其中后驗(yàn)概率p(y|x;θ)表示對(duì)應(yīng)音素分類(lèi)任務(wù)的輸出.將q(y|x;θ(k-1))視為類(lèi)別軟標(biāo)簽,式(1)右側(cè)第1項(xiàng)相當(dāng)于音素分類(lèi)預(yù)測(cè)問(wèn)題的交叉熵?fù)p失函數(shù).在本文的聚類(lèi)-重訓(xùn)練框架中,將當(dāng)前模型(參數(shù)為θ(k-1))視為教師模型,利用教師模型的輸出和聚類(lèi)算法得到概率分布q(y|x;θ(k-1))的近似值,即
其中,Enc(x)表示語(yǔ)音信號(hào)x對(duì)應(yīng)的編碼表示,Ci表示聚類(lèi)結(jié)果中的第i個(gè)類(lèi)別.上述近似值本質(zhì)上就是將聚類(lèi)結(jié)果作為硬標(biāo)簽的獨(dú)熱編碼.
利用自編碼器對(duì)語(yǔ)音信號(hào)的概率分布p(x;θ)進(jìn)行建模.令Enc為編碼器網(wǎng)絡(luò),Dec為解碼器網(wǎng)絡(luò),假設(shè)給定編碼表示Enc(x)的條件下,x服從均值為Dec(Enc(x))、方差為σ2I的高斯分布,則式(1)右側(cè)第2項(xiàng)可寫(xiě)為
(2)
其中,N表示高斯分布,α表示與方差σ2I相關(guān)的常數(shù).
式(2)對(duì)應(yīng)L2重構(gòu)損失函數(shù).將上述高斯分布替換為拉普拉斯分布,即得到L1重構(gòu)損失函數(shù).
綜上所述,最小化目標(biāo)函數(shù)式(1)的第1項(xiàng)對(duì)應(yīng)標(biāo)簽預(yù)測(cè)任務(wù)的交叉熵?fù)p失函數(shù),第2項(xiàng)對(duì)應(yīng)重構(gòu)任務(wù)的重構(gòu)損失函數(shù),結(jié)合二者求解學(xué)生模型的參數(shù)θ,本質(zhì)上是在給定當(dāng)前教師模型參數(shù)θ(k-1)的條件下執(zhí)行EM算法中的M步,對(duì)模型參數(shù)進(jìn)行更新,得到新的參數(shù)θ=θ(k).這也就從理論上證明本文方法的有效性.
上述聚類(lèi)-重訓(xùn)練框架的基本流程如圖1所示.
圖1 聚類(lèi)-重訓(xùn)練框架流程圖
對(duì)于無(wú)標(biāo)注數(shù)據(jù)集
Dpre={x1,x2,…,xn},
其中xi表示第i條語(yǔ)音數(shù)據(jù),由mi幀組成,將其第j幀記為xi,j,則
xi=[xi,1,xi,2,…,xi,mi].
首先訓(xùn)練得到預(yù)訓(xùn)練模型M0后,以預(yù)訓(xùn)練模型M0作為教師模型Mt,執(zhí)行如下步驟.
1)利用教師模型,提取數(shù)據(jù)Dpre中各語(yǔ)音幀對(duì)應(yīng)的語(yǔ)音表示,使用K-means算法對(duì)語(yǔ)音表示進(jìn)行聚類(lèi).
2)使用聚類(lèi)分配的類(lèi)別標(biāo)簽構(gòu)造偽標(biāo)簽集合
Y={y1,y2,…,yn},
其中yi表示第i條語(yǔ)音數(shù)據(jù)對(duì)應(yīng)的偽標(biāo)簽序列,將其中第j幀的偽標(biāo)簽記為yi,j,則
yi=[yi,1,yi,2,…,yi,mi].
3)使用無(wú)標(biāo)注數(shù)據(jù)和偽標(biāo)簽構(gòu)造新的數(shù)據(jù)集Dret,Dret中每條語(yǔ)音信號(hào)的標(biāo)簽由其語(yǔ)音幀對(duì)應(yīng)的偽標(biāo)簽序列組成,記為
Dret={(x1,y1),(x2,y2),…,(xn,yn)}.
4)在數(shù)據(jù)集Dret上,結(jié)合偽標(biāo)簽預(yù)測(cè)任務(wù)和已有自監(jiān)督學(xué)習(xí)中的重建任務(wù)(如CPC、APC等)重新訓(xùn)練學(xué)生模型Ms.
5)將學(xué)生模型Ms作為新的教師模型,重復(fù)1)~4)進(jìn)行迭代訓(xùn)練.
基于聚類(lèi)-重訓(xùn)練框架,本文針對(duì)TERA[13]進(jìn)行聚類(lèi)重訓(xùn)練,提出自監(jiān)督聚類(lèi)重訓(xùn)練的語(yǔ)音表示方法.使用TERA預(yù)訓(xùn)練方法得到初始的預(yù)訓(xùn)練模型.
TERA對(duì)于輸入的連續(xù)語(yǔ)音幀,在時(shí)間、通道和幅度三個(gè)維度上進(jìn)行掩蔽,通過(guò)最小化原始語(yǔ)音幀的重構(gòu)損失進(jìn)行模型訓(xùn)練.在時(shí)間維度上,隨機(jī)選定15%的語(yǔ)音幀進(jìn)行掩蔽,在被掩蔽的語(yǔ)音幀中,80%的語(yǔ)音幀全部置為0,10%的語(yǔ)音幀被替換為隨機(jī)幀,剩下10%的語(yǔ)音幀保持不變.在通道維度上,對(duì)于整個(gè)輸入語(yǔ)音序列,將選中的連續(xù)通道塊的值隨機(jī)替換為0.在幅度維度上,對(duì)選定的語(yǔ)音幀添加隨機(jī)采樣的高斯噪聲(Sampled Gaussian Noise).
得到初始的教師模型后,使用聚類(lèi)-重訓(xùn)練框架,迭代訓(xùn)練得到學(xué)生模型.在學(xué)生模型的訓(xùn)練過(guò)程中,對(duì)于語(yǔ)音幀類(lèi)別預(yù)測(cè)任務(wù)和語(yǔ)音重建任務(wù),均采用TERA中的三維度掩蔽策略對(duì)輸入的語(yǔ)音進(jìn)行隨機(jī)擾動(dòng),增強(qiáng)學(xué)生模型的魯棒性.
本文方法框圖如圖2所示,分為預(yù)訓(xùn)練、聚類(lèi)和重訓(xùn)練三階段.首先在預(yù)訓(xùn)練階段,對(duì)無(wú)標(biāo)注訓(xùn)練集Dpre中的語(yǔ)音數(shù)據(jù)進(jìn)行隨機(jī)掩蔽,并按照TERA預(yù)訓(xùn)練方法得到初始教師模型.在聚類(lèi)階段,使用教師模型對(duì)Dpre中的語(yǔ)音數(shù)據(jù)提取語(yǔ)音表示,利用K-means聚類(lèi)模塊對(duì)其進(jìn)行聚類(lèi)并分配偽標(biāo)簽.在重訓(xùn)練階段,利用無(wú)標(biāo)注數(shù)據(jù)集Dpre及其偽標(biāo)簽構(gòu)建新的偽標(biāo)注數(shù)據(jù)集Dret,在重訓(xùn)練部分訓(xùn)練得到學(xué)生模型.
圖2 本文方法框圖
在具體的重訓(xùn)練過(guò)程中,對(duì)語(yǔ)音幀使用與預(yù)訓(xùn)練部分相同的掩蔽策略,將學(xué)生模型提取的語(yǔ)音表示分別送入一個(gè)分類(lèi)器網(wǎng)絡(luò)和預(yù)測(cè)頭網(wǎng)絡(luò),分類(lèi)器網(wǎng)絡(luò)用于預(yù)測(cè)輸出語(yǔ)音幀的類(lèi)別標(biāo)簽,預(yù)測(cè)頭網(wǎng)絡(luò)用于重建被掩蔽的語(yǔ)音幀.通過(guò)最小化類(lèi)別預(yù)測(cè)損失與重建損失的加權(quán)和更新學(xué)生模型,并將其作為新的教師模型重復(fù)進(jìn)行聚類(lèi)和重訓(xùn)練過(guò)程.
將總的偽標(biāo)簽預(yù)測(cè)損失記為L(zhǎng)label,則
最終聚類(lèi)重訓(xùn)練的總損失函數(shù):
Lret=Lspec+λLlabel,
(3)
其中,λ為標(biāo)簽預(yù)測(cè)損失的權(quán)重因子,實(shí)驗(yàn)中設(shè)為0.1.
綜上所述,本文提出的自監(jiān)督聚類(lèi)重訓(xùn)練的語(yǔ)音表示學(xué)習(xí)方法具體步驟如下.
算法自監(jiān)督聚類(lèi)重訓(xùn)練的語(yǔ)音表示學(xué)習(xí)方法
step 1 使用無(wú)標(biāo)注數(shù)據(jù)集Dpre,基于TERA預(yù)訓(xùn)練方法對(duì)語(yǔ)音幀進(jìn)行掩蔽,并根據(jù)L1損失訓(xùn)練得到初始表示模型M0,令教師模型Mt=M0.
step 2 將數(shù)據(jù)集Dpre送入Mt,提取語(yǔ)音信號(hào)對(duì)應(yīng)的語(yǔ)音表示.
step 3 將語(yǔ)音表示作為K-means算法的輸入,利用聚類(lèi)得到偽標(biāo)簽集合Y.
step 4 使用Dpre和Y構(gòu)建新的訓(xùn)練數(shù)據(jù)集Dret.
step 5 使用數(shù)據(jù)集Dret,基于式(3)中的多任務(wù)損失函數(shù)Lret對(duì)學(xué)生模型Ms進(jìn)行多任務(wù)訓(xùn)練.
step 6 令教師模型Mt=Ms,返回step 2.
上述過(guò)程經(jīng)過(guò)若干次迭代后,將最終的學(xué)生模型作為語(yǔ)音表示模型.在工程實(shí)踐中,當(dāng)學(xué)生模型在下游任務(wù)上的表現(xiàn)隨迭代次數(shù)增加而保持不變或穩(wěn)定時(shí),可認(rèn)為模型已收斂.
本文實(shí)驗(yàn)主要使用公開(kāi)的LibriSpeech語(yǔ)料庫(kù)[20]和TIMIT語(yǔ)料庫(kù)[21].為了驗(yàn)證不同數(shù)據(jù)量下模型的性能,分別使用LibriSpeech的100 h子集(train-clean-100)和960 h子集(train-clean-100、train-clean-360、train-other-500)對(duì)模型進(jìn)行訓(xùn)練.實(shí)驗(yàn)使用mel譜作為預(yù)訓(xùn)練模型的輸入.
實(shí)驗(yàn)中采用TERA作為基礎(chǔ)的預(yù)訓(xùn)練模型和教師模型,預(yù)訓(xùn)練模型的結(jié)構(gòu)和參數(shù)與文獻(xiàn)[12]中TERA設(shè)置相同.對(duì)于本文方法訓(xùn)練的學(xué)生模型,結(jié)構(gòu)和參數(shù)與其對(duì)應(yīng)的教師模型保持一致.對(duì)于100 h訓(xùn)練數(shù)據(jù)條件,將初始模型的預(yù)訓(xùn)練和每次聚類(lèi)后重訓(xùn)練的訓(xùn)練步數(shù)均設(shè)置為2 000 000.對(duì)于960 h訓(xùn)練數(shù)據(jù)條件,預(yù)訓(xùn)練和重訓(xùn)練的訓(xùn)練步數(shù)均設(shè)置為10 000 000.模型使用4個(gè)2080Ti GPU訓(xùn)練,訓(xùn)練批次大小為8,相當(dāng)于約12 s的語(yǔ)音數(shù)據(jù).
在得到教師語(yǔ)音表示模型后,語(yǔ)音幀類(lèi)別的聚類(lèi)過(guò)程采用文獻(xiàn)[22]中的K-means++算法.該算法選擇有更高概率接近最終質(zhì)心的初始質(zhì)心,避免經(jīng)典的K-means算法中隨機(jī)初始化的缺陷,可快速收斂.實(shí)驗(yàn)中使用train-clean-100子集進(jìn)行訓(xùn)練,迭代次數(shù)為15次.
關(guān)于聚類(lèi)類(lèi)別數(shù)K的設(shè)置,本文參考LibriSpeech中的音素個(gè)數(shù)設(shè)置及ZEROSPEECH無(wú)監(jiān)督語(yǔ)音識(shí)別挑戰(zhàn)賽中聲學(xué)單元個(gè)數(shù)設(shè)置,進(jìn)行對(duì)比實(shí)驗(yàn).具體來(lái)說(shuō),根據(jù)文獻(xiàn)[2]的實(shí)驗(yàn)設(shè)置,在LibriSpeech數(shù)據(jù)集的train-clean-100子集上,經(jīng)過(guò)強(qiáng)制對(duì)齊后,可能的音素個(gè)數(shù)為41,其中包含靜音音素silence(SIL)和口語(yǔ)噪聲音素SPN,SPN包括噪聲和集外詞.實(shí)驗(yàn)中可將其作為先驗(yàn)知識(shí),并據(jù)此設(shè)置語(yǔ)音幀的類(lèi)別數(shù).根據(jù)ZEROSPEECH2021中無(wú)監(jiān)督聲學(xué)單元發(fā)現(xiàn)任務(wù)的基線(xiàn)系統(tǒng)設(shè)計(jì),當(dāng)K=50時(shí)系統(tǒng)取得最佳性能,因此本文也測(cè)試K=50的結(jié)果.
在聚類(lèi)重訓(xùn)練過(guò)程中,對(duì)學(xué)生模型進(jìn)行多次迭代訓(xùn)練,保留每次迭代訓(xùn)練后的模型,分別在下游任務(wù)中進(jìn)行實(shí)驗(yàn),以驗(yàn)證迭代訓(xùn)練的效果.
為了驗(yàn)證語(yǔ)音表示模型的效果,本文選擇音素分類(lèi)和說(shuō)話(huà)人分類(lèi)兩種下游任務(wù),分別測(cè)試初始表示模型和不同迭代次數(shù)后改進(jìn)的表示模型在下游任務(wù)中的識(shí)別準(zhǔn)確率.兩個(gè)下游任務(wù)的微調(diào)與測(cè)試均采用S3PRL工具箱進(jìn)行.
音素分類(lèi)任務(wù)的實(shí)驗(yàn)遵循文獻(xiàn)[12]的設(shè)置,并使用kaldi工具箱獲得音素的強(qiáng)制對(duì)齊.實(shí)驗(yàn)在LibriSpeech數(shù)據(jù)集的train-clean-100子集上進(jìn)行,并根據(jù)文獻(xiàn)[12]的實(shí)驗(yàn)設(shè)置,將其劃分為訓(xùn)練集和測(cè)試集.將表示模型得到的語(yǔ)音表示作為輸入,分別對(duì)比使用單個(gè)線(xiàn)性層的分類(lèi)器網(wǎng)絡(luò)和含一個(gè)非線(xiàn)性隱藏層的分類(lèi)器網(wǎng)絡(luò)的音素分類(lèi)性能.
說(shuō)話(huà)人識(shí)別任務(wù)的實(shí)驗(yàn)也在train-clean-100子集上進(jìn)行,同樣參照文獻(xiàn)[12]的實(shí)驗(yàn)設(shè)置,對(duì)數(shù)據(jù)集進(jìn)行劃分.使用語(yǔ)音表示作為輸入,訓(xùn)練單層線(xiàn)性網(wǎng)絡(luò)作為分類(lèi)器,分別測(cè)試模型在幀級(jí)別和句子級(jí)別的說(shuō)話(huà)人分類(lèi)準(zhǔn)確率.
在上述兩個(gè)下游任務(wù)的微調(diào)過(guò)程中,語(yǔ)音表示模型的參數(shù)均被凍結(jié),只訓(xùn)練音素分類(lèi)和說(shuō)話(huà)人分類(lèi)任務(wù)的分類(lèi)器網(wǎng)絡(luò)參數(shù).下游模型的訓(xùn)練步數(shù)均設(shè)置為5 000 000.
2.3.1 音素分類(lèi)任務(wù)
各模型在音素分類(lèi)任務(wù)上的實(shí)驗(yàn)結(jié)果如表1所示.表中TERA0表示采用原始TERA訓(xùn)練得到的初始表示模型,TERAi表示第i次聚類(lèi)重訓(xùn)練后得到的改進(jìn)的表示模型,TERAi- 41和TERAi- 50分別表示聚類(lèi)時(shí)的類(lèi)別數(shù)K=41,50時(shí)得到的模型,黑體數(shù)字表示最優(yōu)值.
由表1可看出,相比TERA訓(xùn)練得到的初始教師模型(TERA0),經(jīng)過(guò)聚類(lèi)重訓(xùn)練得到的學(xué)生模型使音素分類(lèi)的準(zhǔn)確率有明顯提升.在100 h訓(xùn)練條件下,經(jīng)過(guò)一次聚類(lèi)重訓(xùn)練得到的學(xué)生模型TERA1-41在兩種測(cè)試任務(wù)上的準(zhǔn)確率比TERA0分別提升5.4%和1.7%.隨著聚類(lèi)重訓(xùn)練迭代次數(shù)增加,所得學(xué)生模型的準(zhǔn)確率進(jìn)一步提高.在960 h訓(xùn)練條件下,學(xué)生模型的表現(xiàn)與100 h條件下的表現(xiàn)有相同趨勢(shì).
在960 h訓(xùn)練條件下,迭代3次后的結(jié)果不如迭代2次后的結(jié)果,出現(xiàn)這一現(xiàn)象的原因可能是在訓(xùn)練數(shù)據(jù)充足條件下,參數(shù)迭代2次已收斂,而第3次迭代后出現(xiàn)過(guò)擬合.由于本文的初始教師模型采用TERA訓(xùn)練的模型,可認(rèn)為在迭代之初模型就已有一個(gè)不錯(cuò)的初值,因此不需要迭代太多次即可接近收斂.
為了驗(yàn)證模型已達(dá)到收斂,本文進(jìn)一步增加聚類(lèi)重訓(xùn)練的迭代次數(shù),并對(duì)第4、5次迭代后得到的學(xué)生模型進(jìn)行測(cè)試.從實(shí)驗(yàn)結(jié)果可看到,模型在多個(gè)下游任務(wù)中的測(cè)試結(jié)果基本穩(wěn)定,可判斷模型已經(jīng)收斂.
由表1中結(jié)果可看出,K=41時(shí)學(xué)生模型的整體性能優(yōu)于K=50時(shí).出現(xiàn)這種結(jié)果的原因可能是train-clean-100子集上共有41個(gè)不同的音素,因此當(dāng)聚類(lèi)過(guò)程中K=41時(shí),模型能更好地適應(yīng)數(shù)據(jù)特點(diǎn).同時(shí)還注意到,在960 h訓(xùn)練數(shù)據(jù)條件下,由于數(shù)據(jù)量更大,潛在的類(lèi)別信息更豐富,因此K=50時(shí)模型的準(zhǔn)確率與K=41時(shí)的準(zhǔn)確率相差不大.
由表1還可發(fā)現(xiàn),當(dāng)分類(lèi)器為單層線(xiàn)性網(wǎng)絡(luò)時(shí),相比采用單層非線(xiàn)性網(wǎng)絡(luò)的分類(lèi)器,聚類(lèi)重訓(xùn)練后的模型性能提高更明顯,這一結(jié)果表明采用本文方法進(jìn)行聚類(lèi)重訓(xùn)練后,通過(guò)音素分類(lèi)任務(wù)的引入,有效利用隱藏的音素類(lèi)別信息,使得到的語(yǔ)音表示更適合于下游的音素分類(lèi)任務(wù).
表1 各模型在音素分類(lèi)任務(wù)上的準(zhǔn)確率對(duì)比
為了進(jìn)一步驗(yàn)證本文方法在音素分類(lèi)任務(wù)上的有效性,進(jìn)一步對(duì)使用960 h數(shù)據(jù)訓(xùn)練的第三代學(xué)生模型TERA3-41和TERA3-50在測(cè)試過(guò)程中進(jìn)行微調(diào),分類(lèi)器使用單層線(xiàn)性層.在微調(diào)過(guò)程中,預(yù)訓(xùn)練模型與下游任務(wù)的分類(lèi)器一起調(diào)整,具體結(jié)果如表2所示.由表可見(jiàn),當(dāng)僅微調(diào)1 000步時(shí),兩個(gè)模型的分類(lèi)準(zhǔn)確率已達(dá)到83.6%和83.8%.微調(diào)5 000步時(shí),準(zhǔn)確率進(jìn)一步提升到86.8%和86.9%.而微調(diào)步數(shù)達(dá)到10 000步時(shí),模型性能提升明顯減慢,相比微調(diào)5 000步時(shí)僅提升約0.6%.
表2 2個(gè)模型在音素分類(lèi)任務(wù)上微調(diào)后的準(zhǔn)確率對(duì)比
TERA3-41和TERA3-50訓(xùn)練前20 000步時(shí),準(zhǔn)確率隨訓(xùn)練步數(shù)的變化曲線(xiàn)如圖3所示.由圖可看出,訓(xùn)練9 000步時(shí),兩個(gè)模型的準(zhǔn)確率已達(dá)到87.5%,已收斂.這表明模型在使用標(biāo)注數(shù)據(jù)進(jìn)行微調(diào)時(shí),性能較優(yōu),并能較快達(dá)到收斂.
圖3 2個(gè)模型在音素分類(lèi)任務(wù)上微調(diào)后的準(zhǔn)確率曲線(xiàn)
2.3.2 說(shuō)話(huà)人識(shí)別下游任務(wù)
為了測(cè)試本文方法得到的語(yǔ)音表示能否保留除音素類(lèi)別以外的信息,進(jìn)一步在說(shuō)話(huà)人識(shí)別下游任務(wù)上測(cè)試模型性能.
選擇幀級(jí)別和句子級(jí)別,各模型在說(shuō)話(huà)人識(shí)別任務(wù)上的實(shí)驗(yàn)結(jié)果如表3所示,表中黑體數(shù)字表示最優(yōu)值.由幀級(jí)別的說(shuō)話(huà)人識(shí)別測(cè)試結(jié)果可看出,在100 h訓(xùn)練數(shù)據(jù)條件下,K=41,50時(shí)得到的說(shuō)話(huà)人識(shí)別準(zhǔn)確率較接近,分別為99.4%(TERA1-50)和99.5%(TERA1-41),相比初始的教師模型(TERA0),提高0.6%.在960 h時(shí)訓(xùn)練數(shù)據(jù)條件下,重訓(xùn)練后的說(shuō)話(huà)人識(shí)別準(zhǔn)確率與重訓(xùn)前的初始模型基本一致,約為99.2%.
而從句子級(jí)別的說(shuō)話(huà)人識(shí)別測(cè)試結(jié)果來(lái)看,相比初始教師模型,學(xué)生模型的性能并未得到明顯提升.這一現(xiàn)象出現(xiàn)的原因可能是因?yàn)樵诰垲?lèi)過(guò)程中,訓(xùn)練數(shù)據(jù)按幀進(jìn)行聚類(lèi),因此學(xué)生模型傾向于更多地學(xué)習(xí)幀級(jí)別的語(yǔ)音信息.
此外,在幾輪迭代過(guò)程中,學(xué)生模型在多次測(cè)試中基本保持性能不變.這是由于迭代過(guò)程中主要考慮語(yǔ)音幀的類(lèi)別信息,并沒(méi)有針對(duì)說(shuō)話(huà)人的信息進(jìn)行專(zhuān)門(mén)的利用,因此在聚類(lèi)重訓(xùn)練迭代過(guò)程中,模型在說(shuō)話(huà)人識(shí)別任務(wù)中的性能得到保留,并未隨著迭代次數(shù)增加而明顯提高.
表3 各模型在說(shuō)話(huà)人識(shí)別任務(wù)上的準(zhǔn)確率對(duì)比
為了進(jìn)一步評(píng)估本文方法對(duì)說(shuō)話(huà)人信息的表示能力,隨機(jī)挑選10名說(shuō)話(huà)人,使用t分布隨機(jī)鄰域嵌入(t-Distributed Stochastic Neighbour Embedding,t-SNE)[24]對(duì)語(yǔ)音的頻譜特征log-Mel譜和本文方法學(xué)習(xí)得到的語(yǔ)音表示進(jìn)行可視化分析.
對(duì)于每條音頻數(shù)據(jù),首先對(duì)其進(jìn)行平均,產(chǎn)生該句子的表示,然后使用主成分分析(Principal Com-ponents Analysis, PCA)進(jìn)行降維,最后使用scikit-learn工具箱,將t-SNE應(yīng)用于降維之后的向量,進(jìn)行二維空間的可視化.結(jié)果如圖4所示,圖中每種顏色和形狀表示一位說(shuō)話(huà)人.
由圖4(a)可看出,原始的log-Mel譜對(duì)說(shuō)話(huà)人區(qū)分性很差,不同說(shuō)話(huà)人對(duì)應(yīng)的向量都混雜在一起,說(shuō)明頻譜特征并不能較好地表征說(shuō)話(huà)人的信息.由(b)可看出,相同說(shuō)話(huà)人對(duì)應(yīng)的語(yǔ)音表示聚集在同個(gè)數(shù)據(jù)簇中,而不同說(shuō)話(huà)人的語(yǔ)音表示明顯對(duì)應(yīng)不同的數(shù)據(jù)簇,表明本文方法學(xué)習(xí)到的語(yǔ)音表示能較好地提取說(shuō)話(huà)人信息.
(a)log-Mel
(b)本文方法
2.3.3 對(duì)比實(shí)驗(yàn)結(jié)果
首先,為了研究K-means聚類(lèi)類(lèi)別數(shù)的影響,在實(shí)驗(yàn)中進(jìn)一步增加對(duì)不同類(lèi)別數(shù)的測(cè)試.實(shí)驗(yàn)使用100 h訓(xùn)練數(shù)據(jù)對(duì)模型進(jìn)行預(yù)訓(xùn)練,將類(lèi)別數(shù)K分別設(shè)置為42、45,并使用初始的教師模型訓(xùn)練一代學(xué)生模型(TERA1-42、TERA1-45).在下游任務(wù)中,音素分類(lèi)分別在LibriSpeech數(shù)據(jù)集的train-clean-100子集和TIMIT數(shù)據(jù)集上進(jìn)行測(cè)試,使用單層線(xiàn)性網(wǎng)絡(luò)作為分類(lèi)器.說(shuō)話(huà)人識(shí)別任務(wù)的設(shè)置與2.3.2節(jié)相同,K=41,42,45,50時(shí)各模型在幀級(jí)別的準(zhǔn)確率對(duì)比如表4所示.
表4 K不同時(shí)各模型的準(zhǔn)確率對(duì)比
進(jìn)一步,選擇如下對(duì)比方法:Mockingjay、AALB-ERT、TERA、wav2vec 2.0的Base版本(wav2vec 2.0-Base).同時(shí),還測(cè)試當(dāng)K=500時(shí)的實(shí)驗(yàn)結(jié)果,希望模型能通過(guò)聚類(lèi)重訓(xùn)練過(guò)程,學(xué)習(xí)更多細(xì)粒度的語(yǔ)音類(lèi)別信息.此外,考慮到教師模型和學(xué)生模型提取的語(yǔ)音表示包含的信息可能不會(huì)完全相同,因此采用拼接和相加方式,將教師模型與一次聚類(lèi)重訓(xùn)練后學(xué)生模型提取的語(yǔ)音表示進(jìn)行融合,進(jìn)一步測(cè)試融合后的語(yǔ)音表示性能.各模型的準(zhǔn)確率對(duì)比如表5所示,表中黑體數(shù)字表示最優(yōu)值.
表5 各模型的準(zhǔn)確率對(duì)比
由表5可知,使用100 h數(shù)據(jù)訓(xùn)練模型,在說(shuō)話(huà)人識(shí)別任務(wù)中,當(dāng)K=41,50時(shí),不同方法性能接近,相加和拼接的方法分別將準(zhǔn)確率提升到99.6%和99.7%.在音素分類(lèi)任務(wù)中,K=41時(shí)方法性能更優(yōu),TERA1-41(相加)在兩個(gè)數(shù)據(jù)集上的準(zhǔn)確率比TERA1-41均提升1%.TERA1-41(拼接)在兩個(gè)音素識(shí)別任務(wù)上比TERA1-41分別提升4.5%和2.6%.相比預(yù)訓(xùn)練的TERA,TERA1-41(拼接)在音素識(shí)別任務(wù)中的準(zhǔn)確率分別提升8.4%和7.4%,且在所有任務(wù)中均達(dá)到最佳性能.
使用960 h數(shù)據(jù)訓(xùn)練的模型在K=50時(shí)的性能達(dá)到最佳,在說(shuō)話(huà)人識(shí)別任務(wù)中,TERA1-50(拼接)準(zhǔn)確率達(dá)到99.6%.在兩個(gè)數(shù)據(jù)集上的音素分類(lèi)任務(wù)中,TERA1-50(拼接)的準(zhǔn)確率分別達(dá)到74.2%和73.5%.相比wav2vec 2.0-Base,在多種下游任務(wù)中,TERA1-50(拼接)性能達(dá)到或超過(guò)其水平.
本文方法與wav2vec2.0-Base的參數(shù)值對(duì)比如表6所示.在模型的訓(xùn)練過(guò)程中,本文方法的訓(xùn)練批次大小為8,相當(dāng)于約12 s的語(yǔ)音數(shù)據(jù),僅使用4個(gè)2080Ti GPU訓(xùn)練,訓(xùn)練一代學(xué)生模型需要約10天.而wav2vec2.0-Base在訓(xùn)練過(guò)程中使用64個(gè)V100 GPU,訓(xùn)練需要1.6天,總的訓(xùn)練批次大小為1.6 h的語(yǔ)音數(shù)據(jù).即使在不考慮不同GPU性能的情況下,本文方法使用單個(gè)GPU需要訓(xùn)練40天,wav2-vec2.0-Base相當(dāng)于使用單個(gè)GPU,需要訓(xùn)練約102天,因此本文方法所需計(jì)算資源更少,訓(xùn)練所需的總時(shí)間相對(duì)更短,參數(shù)約為wav2vec 2.0-Base的1/4.此外,在下游任務(wù)的微調(diào)和推理測(cè)試過(guò)程中,相比wav2vec 2.0,本文方法所需的時(shí)間大幅減少.以TIMIT數(shù)據(jù)集上的音素分類(lèi)測(cè)試為例,實(shí)驗(yàn)對(duì)比表明在訓(xùn)練相同步數(shù)時(shí),本文方法的訓(xùn)練時(shí)間約是wav2vec 2.0的1/4.
表6 本文方法和wav2vec 2.0-Base的參數(shù)值對(duì)比
2.3.4 消融實(shí)驗(yàn)結(jié)果
本節(jié)驗(yàn)證本文方法中將標(biāo)簽預(yù)測(cè)任務(wù)與重建任務(wù)結(jié)合的有效性.將僅使用標(biāo)簽預(yù)測(cè)任務(wù)訓(xùn)練的學(xué)生模型與僅使用重建任務(wù)、使用預(yù)測(cè)與重建任務(wù)結(jié)合訓(xùn)練(即本文方法)的學(xué)生模型在下游任務(wù)中的測(cè)試結(jié)果進(jìn)行對(duì)比.實(shí)驗(yàn)中均使用100 h訓(xùn)練數(shù)據(jù)對(duì)模型進(jìn)行預(yù)訓(xùn)練,聚類(lèi)重訓(xùn)練過(guò)程中的類(lèi)別數(shù)均設(shè)置為41.在訓(xùn)練下游任務(wù)時(shí),語(yǔ)音表示模型的參數(shù)均被凍結(jié),實(shí)驗(yàn)設(shè)置與2.3.3節(jié)相同.
兩種下游任務(wù)的實(shí)驗(yàn)結(jié)果如表7所示.
表7 本文方法中使用不同下游任務(wù)的準(zhǔn)確率對(duì)比
由表7可看出,相比僅使用重建任務(wù),僅使用偽標(biāo)簽預(yù)測(cè)任務(wù)得到的語(yǔ)音表示模型在說(shuō)話(huà)人識(shí)別和音素分類(lèi)任務(wù)中的性能均有所下降,特別是在說(shuō)話(huà)人識(shí)別任務(wù)中性能下降更明顯.這可能是由于標(biāo)簽預(yù)測(cè)任務(wù)更關(guān)注音素的類(lèi)別信息,對(duì)說(shuō)話(huà)人信息不敏感,從而使得到的語(yǔ)音表示中說(shuō)話(huà)人信息有所損失.將兩種任務(wù)結(jié)合進(jìn)行訓(xùn)練后,模型性能在兩個(gè)下游任務(wù)中都得到提高,表明標(biāo)簽預(yù)測(cè)任務(wù)和重建任務(wù)具有互補(bǔ)性,由此表明本文方法的有效性.
本文在自監(jiān)督語(yǔ)音表示學(xué)習(xí)過(guò)程中引入隱藏的語(yǔ)音幀類(lèi)別信息,借鑒噪聲學(xué)生訓(xùn)練的思想,構(gòu)造類(lèi)別標(biāo)簽預(yù)測(cè)任務(wù),提出基于自監(jiān)督聚類(lèi)重訓(xùn)練的語(yǔ)音表示學(xué)習(xí)方法.首先使用原始預(yù)訓(xùn)練模型作為教師模型,提取語(yǔ)音信號(hào)的初始表示,利用無(wú)監(jiān)督聚類(lèi)得到語(yǔ)音幀的類(lèi)別信息,進(jìn)而結(jié)合類(lèi)別預(yù)測(cè)任務(wù)和原始的語(yǔ)音重建任務(wù),對(duì)預(yù)訓(xùn)練模型進(jìn)行重訓(xùn)練,獲得學(xué)生模型.在這一過(guò)程中,引入噪聲學(xué)生訓(xùn)練的思想,對(duì)輸入語(yǔ)音進(jìn)行隨機(jī)擾動(dòng),增強(qiáng)語(yǔ)音表示的穩(wěn)健性.基于TERA語(yǔ)音表示學(xué)習(xí)模型,給出本文方法的具體實(shí)現(xiàn)過(guò)程.實(shí)驗(yàn)表明,本文方法通過(guò)引入潛在的音素類(lèi)別信息,得到更好的語(yǔ)音表示模型.經(jīng)過(guò)聚類(lèi)重訓(xùn)練后,所得模型在音素識(shí)別和說(shuō)話(huà)人識(shí)別等下游任務(wù)上,性能均得到一定提升.事實(shí)上,本文方法具有通用性,可與目前大部分的預(yù)訓(xùn)練方法結(jié)合,提高現(xiàn)有語(yǔ)音表示模型的語(yǔ)義信息表達(dá)能力.預(yù)訓(xùn)練模型的性能會(huì)隨著訓(xùn)練數(shù)據(jù)、訓(xùn)練時(shí)間的增加而得到提升,今后會(huì)使用更大的語(yǔ)料庫(kù)對(duì)模型進(jìn)行訓(xùn)練,并引入更多的下游任務(wù),驗(yàn)證本文模型的有效性.