黃多林 劉 棟 鄭智燊
(江蘇大學(xué)計(jì)算機(jī)科學(xué)與通信工程學(xué)院 鎮(zhèn)江 212013)
近幾年,眾多研究表明深度學(xué)習(xí)在說話人識別領(lǐng)域的特征學(xué)習(xí)中取得了巨大的成功,許多研究人員開發(fā)出利用深度神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)來生成說話人特定表征形式[1~2]的模型。深度學(xué)習(xí)模型是進(jìn)行復(fù)雜數(shù)據(jù)分析的一種強(qiáng)大工具,這些模型對于文本相關(guān)[3]和文本無關(guān)[4~5]的說話人識別任務(wù)表現(xiàn)出優(yōu)異的識別性能,逐漸成為語音領(lǐng)域的主流框架。
本文探索一種在說話人特征中引入魯棒性的方法,以應(yīng)對復(fù)雜的聲學(xué)環(huán)境。采用最近在視覺領(lǐng)域中提出的無監(jiān)督對抗不變性(UAI)框架[6]作為基準(zhǔn)模型進(jìn)行改進(jìn),提出基于對抗不變性解散的說話人識別方法(Speaker Recognition Based on Adversarial Invariance Disentangled,SR-AID)。該方法將i-vector[7]映射到兩個低維的嵌入空間中解散出兩個潛在特征,第一個潛在特征通過注意力機(jī)制和解散模塊的訓(xùn)練,只包含說話人相關(guān)的可區(qū)分性信息,而所有其他說話人無關(guān)信息則被提取到第二個潛在特征中。實(shí)驗(yàn)結(jié)果證明,注意力機(jī)制和解散模塊能夠提高說話人識別準(zhǔn)確率,即幫助第一個潛在特征學(xué)習(xí)到說話人相關(guān)信息。
SR-AID與文獻(xiàn)[6,8]中提出的無監(jiān)督對抗不變性技術(shù)的改進(jìn)之處在于本文的方法利用注意力機(jī)制分離出第一個潛在特征的干擾因素,通過解散模塊重構(gòu)出第二個潛在特征,使干擾因素流入到第二個潛在特征以學(xué)習(xí)到說話人無關(guān)信息用于重構(gòu)i-vector,從而使第一個潛在特征只包含與說話人識別相關(guān)的信息來提高說話人識別性能。

i-vector特征顯示出對說話人識別任務(wù)較好的魯棒性,并且與PLDA[9]一起實(shí)現(xiàn)了最先進(jìn)的性能。因此,本文使用i-vector作為模型的輸入特征。在實(shí)驗(yàn)中,語音信號以16kHz的采樣率采樣,并以25ms的漢明窗(以10ms的偏移)進(jìn)行分幀。采用隱馬爾可夫模型工具包(HTK)[10]提取MFCCs聲學(xué)特征,然后采用MSR工具箱[11]構(gòu)建GMM-UBM系統(tǒng)來提取i-vector。
編碼器將所有預(yù)提取好的i-vector映射到兩個低維嵌入空間,得到A1和A2潛在特征用于不同的任務(wù),即A1只包含與說話人相關(guān)的信息,而所有其他的干擾因素被A2捕獲。本文使用注意力機(jī)制從A1中選擇出說話人無關(guān)信息A'1,再與A2拼接后重構(gòu)輸入i-vector,計(jì)算方式如式(1)所示:

其中θ表示注意力層的輸出權(quán)重向量,通過將潛在特征A1與注意力權(quán)重θ相乘來選擇所有其他說話人無關(guān)信息。權(quán)重向量θ可以通過式(2~3)計(jì)算:

其中f(·)表示多層感知機(jī),ω代表中間變量。
本文采用對抗不變性解散技術(shù)的目的是進(jìn)一步消除i-vector中干擾信息的影響,數(shù)據(jù)集中所有說話人的語音信號都已經(jīng)被預(yù)提取為i-vector特征向量,一條語音被提取為一個i-vector向量。
SR-AID的對抗思想主要體現(xiàn)在包含編碼器、解碼器以及分類器的主模型與包含兩個解散模塊的對抗模型之間形成了極小極大游戲。主模型的目標(biāo)是最大化潛在特征A1對說話人預(yù)測的分類能力,并使用A2對其進(jìn)行重構(gòu),而對抗模型則最小化A1和A2的分類能力,因此,這種對抗訓(xùn)練使兩個潛在特征解散開來,該方法的總目標(biāo)函數(shù)如式(4)所示:

式(4)中解碼器和分類器之間形成一種競爭關(guān)系,分類器希望提取與說話人y相關(guān)的信息到A1中,而解碼器嘗試將所有關(guān)于i-vector(X)的信息提取到A2中,通過注意力層從A1中提取說話人無關(guān)信息和A2拼接在一起重構(gòu)X。這種競爭關(guān)系使X的信息分別流入到A1和A2中,A1傾向于包含更多與說話人y相關(guān)的信息,而A2傾向于包含更多與識別任務(wù)無關(guān)的信息。但是,這種競爭并不能夠保證A1和A2之間形成完全互補(bǔ)關(guān)系,A2中可能包含說話人相關(guān)信息,更嚴(yán)重的是A1中可能包含無關(guān)信息的干擾因素,進(jìn)而影響模型識別性能。因此,式(4)中的Ldis1和Ldis2兩個解散模塊嘗試對潛在特征A1和A2進(jìn)行“清理”。其中,編碼器、解碼器、分類器和兩個解散模塊的參數(shù)分別用?e、?d、?p、?d1和?d2表示,本算法通過反向傳播的方式進(jìn)行端到端訓(xùn)練,采用式(5)中的極大極小策略優(yōu)化。

SR-AID使用交叉熵?fù)p失函數(shù)優(yōu)化分類器,而解碼器和兩個解散模塊使用均方誤差損失函數(shù)。在多分類任務(wù)中,交叉熵?fù)p失可以衡量真實(shí)說話人標(biāo)簽y與模型預(yù)測標(biāo)簽y^的相似性,通過反向傳播算法,最小化二者的誤差來更新網(wǎng)絡(luò),對于一個訓(xùn)練樣本的交叉熵計(jì)算方式如式(7),首先通過式(6)的分類器計(jì)算出樣本的預(yù)測標(biāo)簽y^,再和真實(shí)標(biāo)簽一起計(jì)算損失。

在重構(gòu)任務(wù)中,均方誤差常被用來評價(jià)重構(gòu)的數(shù)據(jù)序列與真實(shí)值的偏離程度,解碼器和兩個解散模塊的損失計(jì)算如式(8)。

其中Z表示真實(shí)數(shù)據(jù),例如代表解碼器中的i-vector或解散1中的A2以及解散2中的A1。Z^分別表示不同模塊重構(gòu)出的數(shù)據(jù)序列,N表示數(shù)據(jù)的維數(shù)。
在實(shí)驗(yàn)中,編碼器、解碼器分別包含3個隱藏層,每層的節(jié)點(diǎn)數(shù)為256、512和256,分類器包含一個節(jié)點(diǎn)數(shù)為512的隱藏層,而兩個解散模塊分別包含1個節(jié)點(diǎn)數(shù)為256的隱藏層,潛在特征A1和A2的尺寸分別為256和128。基于文獻(xiàn)[6]中的分析,在α遠(yuǎn)大于β的情況下,通過遞增β的值來觀察分類器的性能選擇β。最后,將分類器的損失權(quán)重值α設(shè)置為100,編碼器的損失權(quán)重值β設(shè)置為4,以及解散模塊的損失權(quán)重γ設(shè)置為2時(shí),模型的性能最好。對模型進(jìn)行了2500次迭代訓(xùn)練,批量樣本大小為128。將編碼器、解碼器和分類器看作是主模型,將解散模塊1和解散模塊2看作是對抗模型。在每個迭代期間,每進(jìn)行一次批量的主模型更新時(shí),使用5次批量的對抗模型更新訓(xùn)練。使用Adam優(yōu)化器優(yōu)化主模型和對抗模型,學(xué)習(xí)率分別設(shè)置為1e-2和1e-3,并且兩者的權(quán)重衰減因子均為1e-4。對抗不變性解散訓(xùn)練的步驟如下。

本文所有實(shí)驗(yàn)的環(huán)境都是基于Ubuntu16.04LST操作系統(tǒng),GPU為NVIDIA TIITAN X,編程語言為Python3.5,深度學(xué)習(xí)開發(fā)框架為PyTorch。
實(shí)驗(yàn)采用TIMIT[12]數(shù)據(jù)集來評估本文方法的性能。該數(shù)據(jù)集是由麻省理工學(xué)院(MIT),SRI International(SRI)和Texas Instruments,Inc.共同設(shè)計(jì),在TI(Texas Instruments)錄制,并由美國麻省理工學(xué)院(MIT)轉(zhuǎn)錄,國家標(biāo)準(zhǔn)與技術(shù)研究所(NIST)對CD-ROM的生產(chǎn)進(jìn)行了驗(yàn)證和準(zhǔn)備。TIMIT包含美國8個主要方言地區(qū)的630位演講者的寬帶錄音,每位演講者被要求朗讀10個語音豐富的句子。數(shù)據(jù)集包含時(shí)間對齊的字形,豐富的語音內(nèi)容和單詞轉(zhuǎn)錄,以及每個發(fā)音為16kHz語音.wav格式的波形文件,該數(shù)據(jù)集常用于說話人識別和語音識別模型好壞評判的基準(zhǔn)數(shù)據(jù)集。
為評估SR-AID的識別性能,在兩類數(shù)據(jù)劃分設(shè)置下與其他幾種公認(rèn)的說話人識別方法進(jìn)行比較:GMM-UBM[13~14]、i-vector/PLDA[14]、EML[15]和VAE[14]。兩類不同的數(shù)據(jù)劃分統(tǒng)計(jì)如表1和表2所示,而ELM[15]和VAE[14]方法分別是這兩類數(shù)據(jù)劃分下目前準(zhǔn)確率最高的方法,GMM-UBM和i-vector/PLDA是TIMIT數(shù)據(jù)集上的基準(zhǔn)方法。

表1 TIMIT上120個說話人樣本的訓(xùn)練集和測試集的實(shí)驗(yàn)設(shè)置

表2 TIMIT上630個說話人樣本的訓(xùn)練集和測試集的實(shí)驗(yàn)設(shè)置
表3展示了TIMIT數(shù)據(jù)集上說話人數(shù)量為120時(shí)不同方法的識別準(zhǔn)確率。在相同GMM混合物數(shù)量(256)和i-vector維度(100)的條件下,SR-AID比基準(zhǔn)方法的準(zhǔn)確率提高了4.41%,比最好的方法ELM高2.74%。

表3 TIMIT上120個說話人的準(zhǔn)確率對比
為了評估SR-AID對比VAE的性能,采用所有說話人(630位說話人)的語音數(shù)據(jù)訓(xùn)練,實(shí)驗(yàn)設(shè)置如表2。從表4的實(shí)驗(yàn)結(jié)果觀察可知,SR-AID的識別準(zhǔn)確率比基準(zhǔn)方法GMM-UBM和i-vector/PLDA分別提高了8.58%和8.42%,比最好的方法VAE提高了2.86%。

表4 TIMIT上630個說話人的準(zhǔn)確率對比
表4和表5的結(jié)果清楚地表明本文方法在TIMTI數(shù)據(jù)集上,相對于最好的說話人識別方法,準(zhǔn)確率有明顯地提升。
本小節(jié)在測試集損失和測試集準(zhǔn)確率兩個方面上,分析解散層、注意力機(jī)制和編碼器分別對SR-AID的影響。在損失對比實(shí)驗(yàn)中,本文只在630人的數(shù)據(jù)設(shè)置下進(jìn)行實(shí)驗(yàn)。準(zhǔn)確率的對比實(shí)驗(yàn)是在120人和630人兩種數(shù)據(jù)設(shè)置下實(shí)現(xiàn)。
3.4.1 測試集損失的對比實(shí)驗(yàn)
圖2直觀地展示了移除注意力機(jī)制的方法與SR-AID對測試集損失的影響。有注意力機(jī)制和無注意力機(jī)制兩種情況下,有注意力機(jī)制時(shí)損失值下降更低。并且隨著迭代次數(shù)增加,無注意力機(jī)制的損失值出現(xiàn)往上輕微波動,而有注意力機(jī)制的本文方法表現(xiàn)穩(wěn)定,甚至有繼續(xù)下降的趨勢。

圖2 注意力機(jī)制對測試集損失的影響
同樣從圖3中觀察可知,有解散層的SR-AID比無解散層的損失值更低。不斷訓(xùn)練的過程中,有解散層的SR-AID使損失值繼續(xù)下降,與無解散層的損失值拉開距離。

圖3 解散模塊對測試集損失的影響
從圖4可知,無編碼器的SR-AID損失在訓(xùn)練初期下降較快,這是由于編碼器相對于注意力層和解散模塊,擁有更多的參數(shù)需要訓(xùn)練,因此無編碼器的SR-AID對比上述兩種情況下的SR-AID,模型參數(shù)量更少,所以圖1和圖2中的訓(xùn)練前期,有無注意力機(jī)制和有無解散層的對比損失的下降速率十分接近。但是隨著迭代次數(shù)的不斷增加,無編碼器的SR-AID損失幾乎沒有變化,而有解碼器的SR-AID下降明顯。

圖1 基于對抗不變性解散的說話人識別方法

圖4 解碼器對測試集損失的影響
3.4.2 測試集上的識別準(zhǔn)確率對比實(shí)驗(yàn)
為了驗(yàn)證SR-AID的注意力機(jī)制是否能夠有助于提高說話人識別準(zhǔn)確率,做了如下對比實(shí)驗(yàn),用Dropout代替注意力層選擇潛在特征A1中說話人無關(guān)信息到解碼器中,結(jié)果如表5所示。

表5 有無注意力層的說話人識別準(zhǔn)確率對比
從表5可知,在120人和630人數(shù)據(jù)劃分下,有注意力層的準(zhǔn)確率比無注意力層的準(zhǔn)確率分別提高了1.99%和2.27%。結(jié)果驗(yàn)證了本文方法的注意力層能夠幫助潛在特征A1捕獲更多說話人相關(guān)信息以及分離其他干擾因素來提高模型識別性能。
從圖3可知,在模型訓(xùn)練時(shí),有解散層使測試集的損失更低,但是否能夠提高說話人識別準(zhǔn)確率,卻有待驗(yàn)證。因此,表6展示了有解散層與無解散層兩種情況下的準(zhǔn)確率對比結(jié)果。

表6 有無解散層的說話人識別準(zhǔn)確率對比
表6顯示,在120人和630人數(shù)據(jù)劃分下,有解散層的本文方法的準(zhǔn)確率比無解散層的準(zhǔn)確率分別提高了1.04%和1.11%。結(jié)果驗(yàn)證了本文方法中的解散層確實(shí)解散出說話人相關(guān)特征,提高說話人識別任務(wù)的準(zhǔn)確率。通過對比圖2和圖3以及表5和表6可知,注意力機(jī)制比解散層對SR-AID的作用更大。
為了驗(yàn)證編碼器是否對SR-AID起到積極作用,表7展示了在120人情況下,有編碼器的SR-AID比無編碼器時(shí)提高0.78%,在630人情況下提高0.81%,實(shí)驗(yàn)結(jié)果表明解碼器對本文方法的有效性。

表7 有無解碼器的說話人識別準(zhǔn)確率對比
本文提出一種對抗不變性解散的說話人識別方法,通過對抗不變性解散訓(xùn)練和注意力機(jī)制,從語音信號包含的所有其他干擾因素中學(xué)習(xí)到說話人相關(guān)信息,得到說話人魯棒性特征,并將這些說話人特征用于說話人識別任務(wù)。在TIMIT數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果驗(yàn)證了本文方法的有效性,在兩類數(shù)據(jù)設(shè)置下均取得了最高的識別準(zhǔn)確率,并且通過實(shí)驗(yàn)分析了注意力機(jī)制、解散層和編碼器對本文方法的影響。在未來的工作中,我們將關(guān)注于使用低維的聲學(xué)特征通過該方法獲得說話人嵌入特征,進(jìn)一步提高在其他復(fù)雜場景下的說話人識別魯棒性。