季敏飛, 陳 寧
( 華東理工大學(xué)信息科學(xué)與工程學(xué)院,上海 200237)
聲紋識(shí)別作為身份驗(yàn)證的一種手段,已經(jīng)廣泛應(yīng)用于實(shí)際生活中。但在大多數(shù)的實(shí)際應(yīng)用場(chǎng)景中,由于實(shí)際應(yīng)用數(shù)據(jù)與訓(xùn)練數(shù)據(jù)在內(nèi)部特征(例如情感、語言[1]、說話風(fēng)格、年齡等)或者外部特征 (例如背景噪聲、傳輸信道、麥克風(fēng)、室內(nèi)混響等)上存在的差異,導(dǎo)致訓(xùn)練的模型在實(shí)際應(yīng)用場(chǎng)景下的性能大幅下降。同時(shí)由于實(shí)際場(chǎng)景中數(shù)據(jù)相對(duì)匱乏,無法獲得可用于模型訓(xùn)練的足夠數(shù)據(jù)對(duì)模型進(jìn)行重新訓(xùn)練,因此,如何對(duì)原有的模型進(jìn)行域遷移使其在目標(biāo)域上達(dá)到較好的效果成為一個(gè)重要的問題。
為了解決以上問題,研究人員提出了許多適合聲紋識(shí)別的域遷移方法。以在I-Vector[2]聲紋識(shí)別模型的域遷移為例,文獻(xiàn)[3]首先在I-Vector 模型基礎(chǔ)上探討了域不匹配的問題,然后采用了一些聚類方法來解決該問題。文獻(xiàn)[4]在文獻(xiàn)[3]基礎(chǔ)上提出了基于PLDA (Probabilistic Linear Discriminant Analysis)的I-Vector 聲紋識(shí)別模型域遷移框架,通過使用一個(gè)域外的PLDA 判別模型去歸類域內(nèi)數(shù)據(jù),再根據(jù)這些數(shù)據(jù)重新調(diào)整PLDA 判別器的參數(shù)。文獻(xiàn)[5]使用DICN 技術(shù)將域內(nèi)、域外數(shù)據(jù)重新映射到第3 個(gè)空間,并通過使用一小部分域內(nèi)數(shù)據(jù)提升PLDA判別器的效果。文獻(xiàn)[6]提出了一個(gè)無監(jiān)督的域遷移方法,通過調(diào)整域內(nèi)、域外之間的協(xié)方差來解決域不適配的問題。文獻(xiàn)[7]提出了基于 COR relation Alignment(CORAL)的域遷移方法,通過對(duì)齊兩個(gè)域之間的二階統(tǒng)計(jì)量來實(shí)現(xiàn)域遷移, 并且不需要任何標(biāo)簽。在此基礎(chǔ)上,文獻(xiàn)[8]將CORAL 域遷移技術(shù)應(yīng)用到基于I-Vector 以及X-Vector[9-10]的聲紋識(shí)別模型,得到CORAL+模型。
最近,基于深度學(xué)習(xí)的域遷移算法成為新的研究熱點(diǎn)。文獻(xiàn)[11]運(yùn)用mix-PLDA 和TBC-PLDA 來提升系統(tǒng)的魯棒性。文獻(xiàn)[12]提出了一個(gè)新的端到端域遷移方法,通過引入對(duì)抗損失來解決聲紋識(shí)別中語言不匹配的問題。文獻(xiàn)[13]同樣借助對(duì)抗思想,通過DANN 的方法來實(shí)現(xiàn)聲紋識(shí)別的域遷移。
在文獻(xiàn)[14]中,研究人員首次引入生成對(duì)抗網(wǎng)絡(luò)(Generative Adversarial Network, GAN)來解決聲音場(chǎng)景分類 (Acoustic Scene Classification, ASC) 任務(wù)中域不匹配的問題,利用少量目標(biāo)域數(shù)據(jù)來調(diào)整網(wǎng)絡(luò)模型,提高模型在未知數(shù)據(jù)集上的分類準(zhǔn)確率。本文對(duì)文獻(xiàn)[14]提出的用于聲音場(chǎng)景分類的域遷移算法進(jìn)行了研究和改進(jìn),并將其應(yīng)用到基于XVector 的聲紋識(shí)別模型的域遷移上。聲紋識(shí)別任務(wù)與文獻(xiàn)[14]中的聲音場(chǎng)景分類任務(wù)存在較大的差異,主要表現(xiàn)為:(1)文獻(xiàn)[14]中聲音場(chǎng)景分類任務(wù)中源域和目標(biāo)域的標(biāo)簽類別是保持不變的,而在聲紋識(shí)別任務(wù)中,由于源域和目標(biāo)域的說話人不同,因此分類的標(biāo)簽也發(fā)生了變化;(2)與聲學(xué)場(chǎng)景分類任務(wù)相比,聲紋識(shí)別任務(wù)中類的個(gè)數(shù)多了很多,這就加大了分類的難度;(3)文獻(xiàn)[14]的實(shí)驗(yàn)中,源域數(shù)據(jù)和目標(biāo)域數(shù)據(jù)的差異主要來自于錄制設(shè)備、采樣頻率等,而在本文的實(shí)驗(yàn)中,源域數(shù)據(jù)和目標(biāo)域數(shù)據(jù)存在說話人、語種、環(huán)境以及噪聲等多方面的不同,差異更大。為了適應(yīng)新的任務(wù),本文對(duì)文獻(xiàn)[14]提出的遷移模型進(jìn)行了兩方面改進(jìn):首先,重新設(shè)計(jì)鑒別器網(wǎng)絡(luò)結(jié)構(gòu)以便適合聲紋識(shí)別任務(wù);其次,在遷移后為了確保特征提取模型在說話人分類中的性能不下降,使用源域標(biāo)注樣本對(duì)特征提取模塊進(jìn)行調(diào)整。
X-Vector 特征向量提取模型框圖如圖1 所示。該模型以梅爾倒譜系數(shù) (Mei-Frequency Cepstrum Coefficient, MFCC)為輸入,由時(shí)延神經(jīng)網(wǎng)絡(luò)(Time Delay Neural Network, TDNN)、統(tǒng)計(jì)池化層和全連接層組成。其中TDNN 主要用于提取語音所包含的時(shí)序特性;統(tǒng)計(jì)池化層的作用是將整個(gè)時(shí)序特征進(jìn)行聚合。該模型訓(xùn)練完成后,取第一個(gè)全連接層的輸出作為X-Vector 特征向量。
圖1 X-Vector 模型框圖Fig. 1 Block diagram of X-Vector model
圖2 GAN-DASV 模型框圖Fig. 2 Block diagram of GAN-DASV model
將已經(jīng)在源域A(S)上訓(xùn)練好的特征提取模型E(S)對(duì)目標(biāo)域訓(xùn)練數(shù)據(jù)A(T1)進(jìn)行遷移學(xué)習(xí),從而獲取更適合目標(biāo)域的特征提取模型E(T)。遷移后的模型性能將在目標(biāo)域測(cè)試集A(T2)上進(jìn)行測(cè)試。算法主要分為3 個(gè)步驟,其中域遷移過程不需要目標(biāo)域訓(xùn)練集標(biāo)簽。
其中,C為說話人分類器。
1.2.2 從源域到目標(biāo)域的遷移 如圖2(b)所示,在源域到目標(biāo)域的遷移階段,將在源域A(S)上訓(xùn)練好的模型E(S)遷移至目標(biāo)域數(shù)據(jù)集A(T)。
首先,采用E(S)的參數(shù)對(duì)目標(biāo)域特征提取模型E(T)進(jìn)行初始化,并采用隨機(jī)初始化的方法對(duì)鑒別器D進(jìn)行初始化。然后,采用生成對(duì)抗網(wǎng)絡(luò)[15]的訓(xùn)練思想,將E(T)和D分別看成是生成對(duì)抗網(wǎng)絡(luò)中的生成器和鑒別器,并對(duì)它們進(jìn)行交替訓(xùn)練,使E(T)(A(T1))和E(S)(A(S))的數(shù)據(jù)分布盡可能相似。其中鑒別器D用于區(qū)分輸入的E(S)(A(S))或E(T)(A(T1))來自于源域還是目標(biāo)域。而目標(biāo)域特征提取模型E(T)則用于混淆鑒別器的判斷,使其無法分辨E(T)(A(T1))究竟來自于源域還是目標(biāo)域。在此過程中用于訓(xùn)練的D和E(T)的損失函數(shù)L(D)和L(E(T)) 分別如式(2)和式(3)所示。
在每次D和E(T)交替訓(xùn)練的過程中,為了保證不降低E(T)提取說話人特征的能力,將源域數(shù)據(jù)A(S)輸入新的E(T)和C,進(jìn)行說話人類別分類的訓(xùn)練,這也是本文對(duì)文獻(xiàn)[14]的一種改進(jìn)。除此之外,為了減少模型訓(xùn)練過程中的震蕩,參照文獻(xiàn)[16]的方法,將鑒別器的輸入進(jìn)行調(diào)整,將歷史數(shù)據(jù)與最新數(shù)據(jù)進(jìn)行混合作為其輸入。
1.2.3 遷移模型測(cè)試 如圖2(c)中所示,在測(cè)試階段,采用遷移學(xué)習(xí)獲得的X-Vector 模型E(T)提取目標(biāo)域測(cè)試集A(T2)中樣本的特征,并采用基于PLDA或余弦評(píng)分(Cosine Distance Scoring, CDS) 算法對(duì)其進(jìn)行打分。
實(shí)驗(yàn)階段的主要任務(wù)是驗(yàn)證本文提出的模型從源域到目標(biāo)域上遷移的可行性。為了模擬實(shí)際場(chǎng)景中目標(biāo)域數(shù)據(jù)集不足的情況,實(shí)驗(yàn)中選取的目標(biāo)域數(shù)據(jù)集的大小將遠(yuǎn)遠(yuǎn)小于源域數(shù)據(jù)的大小。同時(shí),實(shí)驗(yàn)中X-Vector 通過PyTorch 來實(shí)現(xiàn),而PLDA 鑒別器則采用了Kaldi 上提供的程序。
實(shí)驗(yàn)采用 AISHELL1[17]為源域數(shù)據(jù)集,VoxCeleb1[18]和CN-Celeb[19]為目標(biāo)域數(shù)據(jù)集。
AISHELL1 是希爾貝殼公司提供的開源中文普通話語音數(shù)據(jù)集,它包含了178 h 的錄音,由400 個(gè)說話人構(gòu)成。在實(shí)驗(yàn)中,為了更好地顯示本文算法的遷移效果,只采用了源數(shù)據(jù)集一半的樣本,由隨機(jī)挑選的來自于340 個(gè)說話人的50 000 條語音片段組成。
VoxCeleb1 數(shù)據(jù)集包含了取自YouTube 的1 251個(gè)說話人超過100 000 條語音片段。實(shí)驗(yàn)隨機(jī)選取了VoxCeleb1 訓(xùn)練集中的3 400 個(gè)語音片段構(gòu)成目標(biāo)域訓(xùn)練集,將VoxCeleb1 的測(cè)試集作為目標(biāo)域測(cè)試集。
CN-Celeb 是由清華大學(xué)提供的開源的中文普通話語音數(shù)據(jù)庫。它包含1 000 位中國名人的130 000條語音片段、11 種語音題材,共計(jì)274 h。同樣從CN-Celeb 提供的訓(xùn)練集上隨機(jī)選取了2 500 條數(shù)據(jù)作為目標(biāo)域訓(xùn)練集,并將該數(shù)據(jù)集的測(cè)試集作為本實(shí)驗(yàn)的測(cè)試集。
VoxCeleb1 和CN-Celeb 被選為目標(biāo)域數(shù)據(jù)集的原因是它們與源域數(shù)據(jù)集存在如下差異:
(1) VoxCeleb1 與AISHELL1 之間的語言不同,前者為英語,后者為普通話。
(2) CN-Celeb 與AISHELL1 相比,CN-Celeb 為非約束數(shù)據(jù)集,其包含如娛樂、訪問、直播等場(chǎng)景,在聲紋識(shí)別任務(wù)上更具挑戰(zhàn)性。
(3) 無論是VoxCeleb1 還是CN-Celeb,其信噪比都小于AISHELL1。
實(shí)驗(yàn)中,將輸入的音頻分為長度為25 ms 的語音幀,并提取每幀語音的23 維梅爾倒譜系數(shù)作為XVector 模型的輸入。X-Vector 和鑒別器的網(wǎng)絡(luò)結(jié)構(gòu)分別如表1、表2 所示。將X-Vector 網(wǎng)絡(luò)中第1 個(gè)全連接層的輸出作為鑒別器的輸入,采用 Adam 優(yōu)化器[20],批次大小和學(xué)習(xí)率分別設(shè)置為128 和0.001。將得到的模型在目標(biāo)域測(cè)試數(shù)據(jù)集A(T2)上進(jìn)行測(cè)試來驗(yàn)證它的性能。
表1 X-Vector 網(wǎng)絡(luò)結(jié)構(gòu)Table 1 Network structure of X-Vector model
表2 鑒別器網(wǎng)絡(luò)結(jié)構(gòu)Table 2 Network structure of discriminator
2.3.1 遷移前后性能對(duì)比 分別采用基于PLDA 和余弦評(píng)分(Cosine Distance Scoring, CDS)的打分方式對(duì)輸出的X-Vector 特征向量進(jìn)行打分。其中,基于PLDA 的打分方式具有很好的信道補(bǔ)償能力,而基于CDS 的打分方式能更直觀地觀察到遷移對(duì)模型性能提升的效果。在遷移前后用于訓(xùn)練PLDA 的數(shù)據(jù)分別為遷移前后目標(biāo)域訓(xùn)練數(shù)據(jù)集上提取的XVector 特征向量,實(shí)驗(yàn)結(jié)果如表3 所示。可以看出,在目標(biāo)域測(cè)試集上,無論選用PLDA 還是CDS 的打分方式,本文提出的域遷移算法均可有效降低聲紋識(shí)別的等錯(cuò)誤率(Equal Error Rate, EER)。以基于PLDA 的打分方式為例,經(jīng)過域遷移后,在VoxCeleb1和CN-Celeb 目標(biāo)域測(cè)試集上,EER 分別下降了21.46%和19.24%。EER 越小模型性能越好。
表3 遷移前后性能對(duì)比Table 3 Performance comparison before and after domain adaptation
2.3.2 與傳統(tǒng)遷移方法性能對(duì)比 為驗(yàn)證本文方法的優(yōu)越性,將本文方法與基于DANN[21]的遷移方法進(jìn)行對(duì)比,結(jié)果分別如表4 和圖3 所示。分別采用EER、最小檢測(cè)代價(jià)(Minimum Detection Cost Function,DCF)、拒識(shí)率曲線(Detection Error Tradeoff, DET)作為衡量指標(biāo),其中DET 曲線越靠近左下角,表明性能越好。表4 和圖3所示的實(shí)驗(yàn)結(jié)果表明,在兩個(gè)目標(biāo)域測(cè)試集上,本文方法的3 種衡量指標(biāo)均優(yōu)于基于DANN 的域遷移算法。
表4 本文算法與DANN 算法對(duì)比Table 4 Performance comparison between this paper and DANN
圖3 域遷移前后DET 曲線對(duì)比Fig. 3 DET Curves comparison before and after domain adaptation
本文提出了一種面向聲紋識(shí)別域遷移的模型。該模型可利用少量的無標(biāo)簽?zāi)繕?biāo)域樣本實(shí)現(xiàn)域遷移學(xué)習(xí)。與遷移前相比,可在VoxCeleb1 和CN-Celeb數(shù)據(jù)集上實(shí)現(xiàn)21.46%和19.24%的EER 的提升。
將來,我們還會(huì)嘗試引入新的生成對(duì)抗網(wǎng)絡(luò),如CycleGan,進(jìn)行相關(guān)研究,以進(jìn)一步提升模型的性能。