曾春艷,馬超峰,王志鋒,朱棟梁,趙 楠,王 娟,劉 聰
1.湖北工業(yè)大學(xué) 太陽能高效利用及儲(chǔ)能運(yùn)行控制湖北省重點(diǎn)實(shí)驗(yàn)室,武漢430068
2.華中師范大學(xué) 數(shù)字媒體技術(shù)系,武漢430079
在日常工作和生活中,很多場(chǎng)合需要身份認(rèn)證,即鑒定一個(gè)人的真實(shí)身份或確認(rèn)一個(gè)人所宣稱的身份與他實(shí)際的身份是否符合。隨著時(shí)代的發(fā)展,身份認(rèn)證的方法從原來的證件、ID 卡及用戶名和密碼結(jié)合到現(xiàn)在利用人的生物特征不斷克服以往的缺陷[1]。
目前發(fā)展比較成熟的生物特征識(shí)別技術(shù)包括:指紋、手形、視網(wǎng)膜、虹膜、面孔、語音、簽名等[2]。語音是人們?cè)谌粘I钪薪涣骱蜏贤ǖ淖钭匀唬⑶乙彩亲钪苯拥姆绞街?。人類的語音信號(hào)傳達(dá)豐富的信息[3],如語言學(xué)的文本信息、語種信息等;說話人自身情感、種族、年齡以及人的心理活動(dòng)特性等,甚至傳達(dá)語音產(chǎn)生時(shí)的外界環(huán)境因素以及傳輸?shù)男诺佬畔⒌?。同時(shí),語音信號(hào)采集方便,成本較低,獲取渠道多樣;不涉及說話人的隱私;識(shí)別過程是非接觸式的,因此亦具備遠(yuǎn)程識(shí)別特性[4]。
自20 世紀(jì)30 年代開始研究至今,說話人識(shí)別技術(shù)的發(fā)展取得了一系列的成果,國(guó)內(nèi)外研究人員從各個(gè)角度出發(fā)發(fā)表了相關(guān)綜述[5-11]。1985 年,Doddington 從人工和計(jì)算機(jī)識(shí)別兩方面概述說話人識(shí)別技術(shù)[5]。1996年,F(xiàn)urui按照文本相關(guān)、文本無關(guān)和文本提示型將說話人識(shí)別技術(shù)分為三類[6]。2003 年,F(xiàn)u 等從建模技術(shù)、背景模型、信道補(bǔ)償三個(gè)模塊概述說話人識(shí)別方法[7]。2010 年,Kinnunen 等分別從特征提取和說話人建模兩個(gè)方向總結(jié)以往的說話人識(shí)別技術(shù)的進(jìn)展[8]。2015年,Hansen 等綜合人類感知和機(jī)器識(shí)別的特點(diǎn),從特征、建模、評(píng)估等方面分析了說話人識(shí)別技術(shù)[9]。2016 年,鄭方等主要概述說話人識(shí)別的應(yīng)用現(xiàn)狀及面臨的技術(shù)難題[10]。2019 年,覃曉逸等從語音增強(qiáng)方向,介紹了說話人識(shí)別在遠(yuǎn)場(chǎng)環(huán)境下語音信號(hào)的處理技術(shù)[11]。然而,綜合以往綜述,對(duì)近年來發(fā)展迅猛的基于深度學(xué)習(xí)的說話人識(shí)別技術(shù)分析總結(jié)則相對(duì)較少。
傳統(tǒng)的說話人識(shí)別算法所采用的模型,一般屬于淺層結(jié)構(gòu),只是對(duì)原始的輸入信號(hào)進(jìn)行較少層次的線性或者非線性處理以達(dá)到信號(hào)與信息處理的目的。這種結(jié)構(gòu)的優(yōu)點(diǎn)在于易于學(xué)習(xí),而且有比較完整的數(shù)學(xué)算法證明推導(dǎo)。但是對(duì)于復(fù)雜的語音信號(hào),其模型表達(dá)能力有限,不能夠充分地學(xué)習(xí)到信號(hào)中的結(jié)構(gòu)化信息和高層信息。而深層結(jié)構(gòu)的模型,如深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Network,DNN),由于其多層非線性變換的復(fù)雜性,具有更強(qiáng)的表達(dá)與建模能力,更適合處理這類復(fù)雜信號(hào)[12-13]。因此本文著重深度學(xué)習(xí)方法,總結(jié)并分析目前深度學(xué)習(xí)在該領(lǐng)域進(jìn)展,并對(duì)典型網(wǎng)絡(luò)及其性能進(jìn)行了匯總分析,更具時(shí)效性,并總結(jié)了說話人識(shí)別研究面臨的問題及挑戰(zhàn),以期推動(dòng)說話人識(shí)別技術(shù)的進(jìn)一步發(fā)展。
本文首先敘述了說話人識(shí)別的任務(wù)模型、框架流程、傳統(tǒng)算法,按照深度學(xué)習(xí)在說話人識(shí)別中的作用方式,將目前的研究分為基于深度學(xué)習(xí)的特征表達(dá)、基于深度學(xué)習(xí)的后端建模、端到端聯(lián)合優(yōu)化三種類別,并分析和總結(jié)了其典型算法的特點(diǎn)及網(wǎng)絡(luò)結(jié)構(gòu),對(duì)其具體性能進(jìn)行了對(duì)比分析。最后,總結(jié)了深度學(xué)習(xí)在說話人識(shí)別中的應(yīng)用特點(diǎn)及優(yōu)勢(shì),并進(jìn)一步分析了目前說話人識(shí)別研究面臨的問題及挑戰(zhàn),并展望了深度學(xué)習(xí)框架下說話人識(shí)別研究的前景。
說話人識(shí)別是指通過對(duì)說話人語音信號(hào)的分析處理,確認(rèn)說話人是否屬于所記錄的說話人集合,以及進(jìn)一步確認(rèn)說話人是誰。按其最終完成的任務(wù)不同,說話人識(shí)別可以分為兩類:說話人確認(rèn)(Speaker Verification)和說話人辨認(rèn)(Speaker Identification)。前者判斷某段語音是否是由指定的
某個(gè)人所說,是“1V1”的判別。后者是判斷某段語音是由若干人中的哪一個(gè)人所說,是“1VN”的判別。
根據(jù)識(shí)別對(duì)象的不同,說話人識(shí)別還可以分為三類:文本有關(guān)型、文本無關(guān)型和文本提示型。文本有關(guān)的說話人識(shí)別方法,要求說話人的發(fā)音關(guān)鍵詞和關(guān)鍵句子作為訓(xùn)練文本,識(shí)別時(shí)按照相同內(nèi)容發(fā)音。文本無關(guān)的說話人識(shí)別方法,無需限制訓(xùn)練和識(shí)別時(shí)的說話內(nèi)容,識(shí)別對(duì)象是自由的語音信號(hào)。值得注意的一點(diǎn)是文本無關(guān)難度大,必須在自由的語音信號(hào)中找到能表征說話人的信息的特征和方法,建立其說話人模型困難。文本提示的方法,需要在每一次識(shí)別時(shí),識(shí)別系統(tǒng)從一個(gè)規(guī)模很大的文本集合中選擇提示文本,要求說話人按提示文本發(fā)音,識(shí)別和判斷都是在說話人對(duì)文本內(nèi)容正確發(fā)音的基礎(chǔ)上進(jìn)行的,防止說話人語音被盜用。
一個(gè)完整的說話人識(shí)別系統(tǒng)如圖1所示,主要實(shí)現(xiàn)語音特征提取和識(shí)別兩個(gè)功能。具體可以分為兩個(gè)階段:訓(xùn)練階段和識(shí)別階段。訓(xùn)練階段需要使用者的若干訓(xùn)練語音片段,提取這些語音片段的特征參數(shù)以作為標(biāo)準(zhǔn),使系統(tǒng)訓(xùn)練學(xué)習(xí),從而建立特定說話人模板。在識(shí)別階段,截取待識(shí)別者的語音片段,對(duì)其進(jìn)行特征參數(shù)的提取,然后與建立的模板進(jìn)行比較,根據(jù)一定的相似準(zhǔn)則進(jìn)行判定。
圖1 基本的說話人識(shí)別系統(tǒng)框架
如表1 所示,目前高斯混合模型-通用背景模型(Gaussian Mixture Model-Universal Background Model,GMM-UBM)[14]、高斯混合模型-支持向量機(jī)(Gaussian Mixture Model-Support Vector Machine,GMM-SVM)[15]、聯(lián)合因子分析(Joint Factor Analysis,JFA)[16]、i-vector[17]成為說話人識(shí)別領(lǐng)域主流的研究框架,它們?cè)谡f話人建模表示和打分判決上的不同特點(diǎn),使得建立在各自方法基礎(chǔ)上的信道魯棒算法也存在差異。
2.3.1 GMM-UBM
GMM 作為通用的概率統(tǒng)計(jì)模型,能夠有效地模擬多維矢量的任意連續(xù)概率分布,同時(shí)引入與說話人無關(guān)的UBM 彌補(bǔ)建模樣本的不足,因此GMM-UBM 框架十分適合文本無關(guān)的說話人識(shí)別[14],如圖2所示。然而由于GMM-UBM 框架在為說話人建模時(shí)采用高階高斯模型,導(dǎo)致待估參數(shù)較多,識(shí)別時(shí)運(yùn)算量大,從而影響其推廣使用;并且缺乏對(duì)于信道多變性的補(bǔ)償能力,不能很好地解決信道魯棒問題。又由于其主要針對(duì)目標(biāo)說話人語音特征分布建模,不考慮不同說話人語音特征分布之間的差異信息,所以該框架區(qū)分能力也較弱。
圖2 基于GMM-UBM的說話人識(shí)別算法
2.3.2 GMM-SVM
為提升對(duì)信道的抗干擾能力,Campbell 將SVM 引入到GMM-UBM 的建模中。因?yàn)镚MM-UBM 模型中,在MAP(Maximum A Posterior)[18]自適應(yīng)環(huán)節(jié)僅僅是利用UBM模型對(duì)目標(biāo)說話人數(shù)據(jù)做了均值的自適應(yīng)。如圖3 所示,通過將GMM 每個(gè)高斯分量的均值單獨(dú)提取出來組成高斯超向量(Gaussian Super Vector,GSV)[15],進(jìn)而搭建GSV-SVM 系統(tǒng)。依靠SVM 核函數(shù)的強(qiáng)大非線性分類能力,在GMM-UBM 的基礎(chǔ)上大幅提升了識(shí)別的性能。另外加入基于GSV 的一些規(guī)整算法,例如擾動(dòng)屬性投影(Nuisance Attribute Projection,NAP)[19]、類內(nèi)方差規(guī)整(Within Class Covariance Normalization,WCCN)[20]等,都在一定程度上補(bǔ)償了由于信道易變形對(duì)說話人建模帶來的影響。但是,研究發(fā)現(xiàn)其識(shí)別率進(jìn)一步提升受到信道因素影響仍較為嚴(yán)重。
圖3 基于GMM-SVM的說話人識(shí)別算法
2.3.3 JFA
為了解決GMM-UBM 模型抗信道干擾性弱的問題,Kenny等提出了JFA[16]。在JFA中,將說話人GSV所在的空間劃分為本征空間(跟說話人本身有關(guān)的矢量特征)、信道空間(跟信道有關(guān)的矢量特征)和殘差空間(跟其他變化有關(guān)的矢量特征)。JFA的思路是保存跟說話人相關(guān)的特征而去掉和信道相關(guān)的特征,很好地克服了信道的影響,系統(tǒng)的性能得到了明顯提高。
盡管JFA 對(duì)于特征音空間與特征信道空間的獨(dú)立假設(shè)看似合理,但事實(shí)上數(shù)據(jù)之間都具有相關(guān)性。絕對(duì)的獨(dú)立分布假設(shè)往往為數(shù)學(xué)的推導(dǎo)提供了便利,卻限制了模型的泛化能力,并且在分別建模說話人空間、信道空間以及殘差空間期間,每一步均會(huì)引入誤差。
2.3.4 i-vector
i-vector是基于JFA的簡(jiǎn)化版,即用一個(gè)全因子空間(Total factor matrix,T)同時(shí)描述說話人信息和信道信息,然后把語音映射到了一個(gè)固定且低維的向量上[17]。由于信道信息的存在,對(duì)識(shí)別系統(tǒng)產(chǎn)生干擾,甚至嚴(yán)重影響系統(tǒng)的識(shí)別準(zhǔn)確率,所以通常會(huì)采用WCCN、線性判別分析(Linear Discriminant Analysis,LDA)[21]、概率線性判別分析程序(Probabilistic Linear Discriminant Analysis,PLDA)[22]進(jìn)行信道補(bǔ)償,如圖4 所示,但噪聲對(duì)GMM特征依然有很大影響。
表1 經(jīng)典的說話人識(shí)別算法
圖4 基于i-vector的說話人識(shí)別算法
i-vector 在文本無關(guān)說話人識(shí)別上表現(xiàn)優(yōu)秀,但是在文本相關(guān)的識(shí)別上的表現(xiàn)卻不如傳統(tǒng)的GMM-UBM框架好。i-vector 看似簡(jiǎn)潔,是由于其舍棄了如文本差異性之類的信息,在文本無關(guān)識(shí)別中,注冊(cè)語音和測(cè)試語音在內(nèi)容上的差異性比較大,因此需要抑制這種差異性;但在文本相關(guān)識(shí)別中,又需要放大訓(xùn)練和識(shí)別語音在內(nèi)容上的相似性,導(dǎo)致說話人的特征相似性被稀疏化,使得區(qū)分能力下降。
近年來,隨著計(jì)算能力的加強(qiáng),運(yùn)用深度學(xué)習(xí)方法來解決語音信號(hào)處理領(lǐng)域的問題正逐步得到研究人員們的重視,如語音識(shí)別[23-26]、說話人識(shí)別[27-30]。深度神經(jīng)網(wǎng)絡(luò)作為模式識(shí)別研究領(lǐng)域中的一種建模方法,其不僅具有強(qiáng)大的表征能力,還具有很強(qiáng)的分類能力。同時(shí),大數(shù)據(jù)的存在為深度學(xué)習(xí)提供了充足的樣本支持。本文所要研究的說話人識(shí)別任務(wù)是一個(gè)復(fù)雜的分類問題,其要求所采用的說話人模型需具有很強(qiáng)的表征能力,同時(shí)對(duì)于不同說話人的語音特征分布又要有一定區(qū)分能力。因此,采用DNN 完成說話人識(shí)別任務(wù)有著其他機(jī)器學(xué)習(xí)方法不可相比的優(yōu)勢(shì),本文按照深度學(xué)習(xí)在說話人識(shí)別中的作用方式大致分為特征表達(dá)、后端建模、端到端三類來綜述國(guó)內(nèi)外研究進(jìn)展,并分析其特點(diǎn)和關(guān)鍵步驟,如表2所示。
說話人識(shí)別任務(wù)的性能提升的關(guān)鍵在于是否得到既富含說話人信息,又少含信道或噪聲等無關(guān)信息的特征。深度學(xué)習(xí)強(qiáng)大的表現(xiàn)力得益于其深層次的非線性變換,利用DNN 來捕捉說話人特征是目前非常活躍的研究領(lǐng)域[31-32]。深度學(xué)習(xí)方法應(yīng)用于說話人識(shí)別的前端,可分為如下兩種:一是DNN 與傳統(tǒng)框架結(jié)合,即DNN/i-vector 框架[33-42];二是完全使用深度學(xué)習(xí)的框架探索出一系列的embedding特征[43-45]。
標(biāo)準(zhǔn)的i-vector 框架是使用UBM 來對(duì)語音聲學(xué)特征序列進(jìn)行對(duì)準(zhǔn)并表示成高維的充分統(tǒng)計(jì)量,然后基于因子分析將該統(tǒng)計(jì)量映射成i-vector,最后利用PLDA模型來計(jì)算不同i-vector間的似然比分?jǐn)?shù)并做出判決[17,22]。在以下兩個(gè)小節(jié)中,描述如何在i-vector 框架下使用DNN后驗(yàn)概率和DNN瓶頸特征。
3.1.1 DNN后驗(yàn)概率
傳統(tǒng)框架使用UBM估計(jì)每幀在每個(gè)高斯分量上的后驗(yàn)概率,其中每個(gè)高斯分量代表一個(gè)類別,這些類是通過無監(jiān)督聚類方式得到的,但是這些類無任何具體含義,僅僅代表空間中的某塊區(qū)域。如圖5 所示,利用語音識(shí)別中監(jiān)督訓(xùn)練的DNN 替代UBM 的作用,將DNN的每個(gè)輸出節(jié)點(diǎn)作為一個(gè)類別,其中關(guān)鍵點(diǎn)在于這些類是通過語音識(shí)別中聚類后得到綁定的三音素狀態(tài),與發(fā)音內(nèi)容有明確的對(duì)應(yīng)關(guān)系,從而較大提升了說話人識(shí)別的性能[33-34]。
圖5 基于DNN/i-vector的混合模型
3.1.2 DNN瓶頸特征
深度學(xué)習(xí)其一個(gè)重要的使用方式就是降維,即通過非線性變換減少網(wǎng)絡(luò)中某個(gè)隱層節(jié)點(diǎn)數(shù)降低維度,可以更好地抽象出數(shù)據(jù)中的特征細(xì)節(jié)。由于降維后該隱層節(jié)點(diǎn)數(shù)遠(yuǎn)小于其他層,于是這層被形象的稱為瓶頸(Bottleneck,BN)層,其輸出被稱為瓶頸特征(Bottleneck Features,BNF)[35]。BN 層的加入雖然限制了網(wǎng)絡(luò)內(nèi)部的信息流通,但也提高了特征信息的信噪比,抑制了網(wǎng)絡(luò)多余的表達(dá)能力。通過抑制過擬合現(xiàn)象的發(fā)生,得到了更好的泛化模型。
表2 基于深度學(xué)習(xí)的說話人識(shí)別算法
如圖6 所示,基于堆疊瓶頸特征(Stack Bottleneck Features,SBNF)方法的DNN在結(jié)構(gòu)上使用了兩個(gè)級(jí)聯(lián)神經(jīng)網(wǎng)絡(luò),第一個(gè)SBN輸入到第二個(gè)SBN中,實(shí)現(xiàn)堆疊操作[36]。一般將梅爾倒譜特征(Mel-Frequency Cepstral Coefficients,MFCC)作為原始輸入特征傳輸?shù)狡款i神經(jīng)網(wǎng)絡(luò),之后對(duì)瓶頸層獲得的值進(jìn)行其他處理。研究發(fā)現(xiàn)BNF比傳統(tǒng)的單幀短時(shí)頻譜特征(如MFCC[38]和感知線性預(yù)測(cè)(Perceptual Linear Predictive,PLP)[39])包含更多的說話人信息[36-37]。張玉來等人將懲罰函數(shù)和套索算法加入到DNN中,進(jìn)一步減少瓶頸特征中的冗余信息,提升特征的表征能力[40]。此外,通過特征融合的方式聯(lián)合使用BNF 和MFCC,可以實(shí)現(xiàn)信息互補(bǔ),使系統(tǒng)取得優(yōu)異的效果[41-42]。
圖6 基于堆棧瓶頸特征的網(wǎng)絡(luò)結(jié)構(gòu)
embeddings 特征是一種將長(zhǎng)度不一的語句映射為固定維度的表征向量,所以i-vector 也是Embedding 的一種。然而與i-vector 的貝葉斯建模不同,基于神經(jīng)網(wǎng)絡(luò)的embeddings 方法具有非線性建模的能力,且embedding 特征會(huì)在訓(xùn)練神經(jīng)網(wǎng)絡(luò)時(shí)更新,可以有很多變種。目前基于DNN 的embedding 特征有d-vector[43]、x-vector[44]、j-vector[45]等。
3.2.1 d-vector
2014 年,Google 提出使用使用監(jiān)督訓(xùn)練的DNN 來提取特征而不同于DNN/i-vector 方法僅用于表示語音幀的概率分布。說話人的每個(gè)語音幀輸入到該DNN,累積最后一層隱藏層的輸出激活值作為該特定說話人的表示,即為d-vector 特征[43],如圖7 所示。一般情況下,是將softmax 層作為輸出層,此方法去除softmax 層將能夠更好地表達(dá)未知說話者的緊湊模型。與傳統(tǒng)方法不同,該方法不使用任何自適應(yīng)技術(shù)來提取訓(xùn)練階段中的已知特征,僅僅使用DNN 模型在注冊(cè)和匹配階段提取特定特征。d-vector雖然簡(jiǎn)單,但對(duì)DNN框架下的說話人識(shí)別研究的推廣意義重大。
圖7 基于d-vector的網(wǎng)絡(luò)結(jié)構(gòu)
3.2.2 x-vector
x-vector[44]是由Snyder從時(shí)延神經(jīng)網(wǎng)絡(luò)(Time-Delay Neural Networks,TDNN)中提取的embeddings特征,如圖8 所示。其中網(wǎng)絡(luò)結(jié)構(gòu)中的統(tǒng)計(jì)池化層負(fù)責(zé)將幀級(jí)特征(frame-level feature)映射到段級(jí)特征(segmentlevel 或utterance-level feature),具體是計(jì)算幀級(jí)特征的均值和標(biāo)準(zhǔn)差。由于TDNN 是時(shí)延架構(gòu),因此其網(wǎng)絡(luò)結(jié)構(gòu)的特點(diǎn)在于輸出層可以學(xué)習(xí)到長(zhǎng)時(shí)特征,所以x-vector在短語音上表現(xiàn)出更強(qiáng)的魯棒性。
圖8 基于x-vector的網(wǎng)絡(luò)結(jié)構(gòu)
3.2.3 j-vector
i-vector 的提取依賴較長(zhǎng)的語音信號(hào),而在文本相關(guān)的說話人確認(rèn)任務(wù)中,通常語音很短。文本相關(guān)的說話人確認(rèn)任務(wù)既要解決驗(yàn)證身份的問題,又要解決驗(yàn)證語音內(nèi)容的問題。j-vector(聯(lián)合向量)[45]被提出來解決這類問題。如圖9 所示,訓(xùn)練DNN 模型期間同時(shí)采用說話人和文本兩個(gè)標(biāo)簽信息來更新網(wǎng)絡(luò)參數(shù),一旦網(wǎng)絡(luò)訓(xùn)練完成,移除這兩個(gè)輸出層,使用最后一層隱藏層提取說話人-文本的聯(lián)合向量。另外,多任務(wù)學(xué)習(xí)方式避免了DNN訓(xùn)練中的過擬合問題,并增強(qiáng)了DNN節(jié)點(diǎn)的表征能力。
圖9 基于j-vector的網(wǎng)絡(luò)結(jié)構(gòu)
深度學(xué)習(xí)作用于說話人識(shí)別系統(tǒng)的后端部分,主要是用深度學(xué)習(xí)處理傳統(tǒng)的聲學(xué)特征,使更具區(qū)分性,更利于區(qū)分說話人[46-49]。
到目前為止,i-vector 在大多數(shù)情況下仍然是文本無關(guān)聲紋識(shí)別中表現(xiàn)性能最好的建??蚣?,研究人員后續(xù)的改進(jìn)都是基于對(duì)i-vector 進(jìn)行優(yōu)化,包括LDA、PLDA等。但以往的改進(jìn)方式都是基于線性的方法,對(duì)模型的區(qū)分能力地提升有限。深度學(xué)習(xí)方法則提供了一種非線性的方式,通過對(duì)特征進(jìn)行補(bǔ)償操作,提高了特征的區(qū)分性。如Bhattacharya等提出了說話人分類器網(wǎng) 絡(luò)(Speaker Classifier Network,SCN)用 于 對(duì)SRE2010數(shù)據(jù)集中的說話人建模,該方法是利用神經(jīng)網(wǎng)絡(luò)將i-vector 投影到相對(duì)高維的標(biāo)簽空間中,從而得到更具魯棒性的說話人表示,以此提升i-vector 系統(tǒng)的性能[46];酆勇等人提出了基于深度獨(dú)立子空間分析(Independent Subspace Analysis,ISA)網(wǎng)絡(luò),將度量學(xué)習(xí)的信息對(duì)約束和深度學(xué)習(xí)結(jié)合起來,有效降低信道差異對(duì)識(shí)別系統(tǒng)的影響[48]。
傳統(tǒng)方法和embedding 的共同點(diǎn),都是先從語音中提取出特征再做分類或者確認(rèn)。與它們不同,端到端系統(tǒng)將兩者合到一個(gè)系統(tǒng),從輸入到輸出,一體化特征訓(xùn)練和分類打分。因此,端到端架構(gòu)引起了人們的極大關(guān)注,并在說話人識(shí)別[50-58]中取得卓越的表現(xiàn)。本文基于卷積結(jié)構(gòu)和循環(huán)結(jié)構(gòu)介紹端到端結(jié)構(gòu)的研究。
百度Deep Speaker在殘差網(wǎng)絡(luò)(Residual Networks,ResNets)的啟發(fā)下,建立了深度殘差卷積神經(jīng)網(wǎng)絡(luò)模型(ResCNN)[52]。具體是使用深度神經(jīng)網(wǎng)絡(luò)從話語中提取幀級(jí)特征;然后,池化層和長(zhǎng)度歸一化層產(chǎn)生說話人話語級(jí)的embeddings。使用Triplet loss[54]損失函數(shù)訓(xùn)練,最小化同一個(gè)說話人的embeddings 對(duì)的距離并最大化不同說話人的embeddings 對(duì)的距離;采用softmax 層和交叉熵進(jìn)行預(yù)訓(xùn)練,優(yōu)化模型。牛津大學(xué)模仿VGG(Visual Geometry Group),提出了VGGVox 網(wǎng)絡(luò)結(jié)構(gòu),也采用了Triplet loss 損失函數(shù)訓(xùn)練網(wǎng)絡(luò),識(shí)別效果顯著[53]。其中比較關(guān)鍵的一點(diǎn)在于使用Triplet loss 損失函數(shù)。
Triplet loss基本思路是構(gòu)造一個(gè)三元組,由anchor、positive 和negative 組成,其中anchor 和positive 表示來自于同一個(gè)人的不同聲音,negative 表示來自不同的人的聲音,然后,用大量標(biāo)注好的三元組作為網(wǎng)絡(luò)輸入,訓(xùn)練DNN參數(shù)。其優(yōu)點(diǎn)在于直接使用embeddings之間的相似度作為優(yōu)化的成本函數(shù),最大化anchor 和positive的相似度,同時(shí)最小化anchor 和negative 的相似度。這樣,在提取了說話者的embedding 之后,說話人識(shí)別任務(wù)就可以簡(jiǎn)單地通過相似度計(jì)算實(shí)現(xiàn)。
與TE2E loss和Triplet loss相比,Generalized End-to-End(GE2E)loss 每次更新都和多個(gè)人相比,因此號(hào)稱能使訓(xùn)練時(shí)間更短,說話人驗(yàn)證精度更高[55]。其基本思路是,挑選N 個(gè)人,每人M 句話,通過一定的順序排列組合,接著通過LSTM RNN(Long Short-Term Memory Recurrent Neural Network)提取N×M 句話的embeddings,然后求取每個(gè)embedding 和每個(gè)人平均embedding 的相似度,得到一個(gè)相似度矩陣。最后,通過最小化GE2E loss 使得相似矩陣中有顏色的相似度盡可能大,灰色的相似度盡可能小,即本人的embedding 應(yīng)該和本人每句話的embedding 盡可能相近,和其他人的embedding盡可能遠(yuǎn)離,從而訓(xùn)練LSTM RNN網(wǎng)絡(luò)。
以往的說話人識(shí)別算法采用的特征都是基于人類設(shè)計(jì)的,因此性能的好壞依賴于人類知識(shí)的認(rèn)知程度,受限性很大。然而,深度特征無需先驗(yàn)知識(shí),可以自主學(xué)習(xí)提取有效特征,其特點(diǎn)總結(jié)如下所示。
(1)魯棒性
DNN 其特點(diǎn)是深層次的網(wǎng)絡(luò)結(jié)構(gòu),逐層訓(xùn)練的方式使得DNN 的每一層能夠在不同級(jí)別上提取特征,從而一步一步將簡(jiǎn)單的特征轉(zhuǎn)化為更加復(fù)雜的特征,而這種分層特性可以提升特征的魯棒性,克服復(fù)雜環(huán)境帶來的干擾。
(2)遷移性
雖說現(xiàn)在數(shù)據(jù)量巨大,但大部分是沒有標(biāo)簽的,并且目前對(duì)學(xué)習(xí)模型的要求是易構(gòu)建、強(qiáng)泛化。深度學(xué)習(xí)方法具備的遷移性則可以很好地解決這些問題。在實(shí)際應(yīng)用中,大部分?jǐn)?shù)據(jù)或任務(wù)是存在相關(guān)性的,遷移性便是最大程度找到這些相似性,進(jìn)而加以合理利用。
前文分析了近年來研究人員對(duì)說話人識(shí)別技術(shù)的研究成果。從研究現(xiàn)狀來看,在實(shí)際應(yīng)用中仍面臨諸多問題。
(1)短語音
說話人識(shí)別系統(tǒng)的精度越高,建立特定說話人的模型所需的數(shù)據(jù)就越多。受實(shí)際環(huán)境的限制,不易獲得用戶長(zhǎng)時(shí)間的語音數(shù)據(jù),且短語音條件下獲得的信息量太少,無法提取出充足的區(qū)分性信息。為此,關(guān)于短語音問題的研究陸續(xù)展開[44,57,59-60],如x-vector[44]采用具有時(shí)延架構(gòu)的TDNN,可以在輸出層學(xué)習(xí)到長(zhǎng)時(shí)特征;加入attention學(xué)習(xí)機(jī)制[59-60],attention機(jī)制的作用原理實(shí)際上是特征選擇,因?yàn)槊慷翁卣鲗?duì)說話人自身特征的貢獻(xiàn)程度并非是均等的,attention 機(jī)制會(huì)自動(dòng)選擇出重要的特征,從而提升識(shí)別系統(tǒng)在短語音條件下的魯棒性。
(2)背景噪聲
噪聲的存在會(huì)影響語音信號(hào)的質(zhì)量,甚至淹沒語音信號(hào),目前應(yīng)用的降噪算法是語音降噪和語音增強(qiáng)。然而這些算法雖然有效地提高了語音信號(hào)的信噪比,卻忽略了對(duì)說話人的語音信息的保留,使得處理后的正確識(shí)別率沒有明顯的提高。近年來,研究人員也提出了一系列方案[28,49,61]。例如,多任務(wù)學(xué)習(xí)(multitask learning)提升魯棒性[28];利用DNN學(xué)習(xí)含噪語音與干凈語音i-vector之間的映射關(guān)系[49];對(duì)抗式訓(xùn)練(adversarial training)[61-62]從數(shù)據(jù)增強(qiáng)入手,既平衡樣本類別的數(shù)量,又使得訓(xùn)練出的模型更具魯棒性。
(3)信道失配
信道一直是影響說話人識(shí)別的最大因素之一,由于通信線路的復(fù)雜性以及通話設(shè)備的多樣性,經(jīng)常使得訓(xùn)練與測(cè)試語音信道失配,導(dǎo)致識(shí)別性能的急劇下降。目前解決信道失配問題的方法也有很多[42,46],如融合傳統(tǒng)的手工統(tǒng)計(jì)特征和深度特征[42],非線性的神經(jīng)網(wǎng)絡(luò)代替WCCA補(bǔ)償i-vector特征[46]。
本文首先敘述了說話人識(shí)別的任務(wù)模型、框架流程、傳統(tǒng)算法,按照深度學(xué)習(xí)在說話人識(shí)別中的作用方式,將目前的研究分為基于深度學(xué)習(xí)的特征表達(dá)、基于深度學(xué)習(xí)的后端建模、端到端聯(lián)合優(yōu)化三種類別,并分析和總結(jié)了其典型算法的特點(diǎn)及網(wǎng)絡(luò)結(jié)構(gòu),對(duì)其具體性能進(jìn)行了對(duì)比分析。最后,總結(jié)了深度學(xué)習(xí)在說話人識(shí)別中的應(yīng)用特點(diǎn)及優(yōu)勢(shì),進(jìn)一步分析了目前說話人識(shí)別研究面臨的問題及挑戰(zhàn),并展望了深度學(xué)習(xí)框架下說話人識(shí)別研究的前景。
深度神經(jīng)網(wǎng)絡(luò)的優(yōu)勢(shì)在于不僅能夠描述目標(biāo)說話人的語音特征統(tǒng)計(jì)分布,更重要的是其注重描述不同說話人語音特征分布間的差異信息,所以其在解決說話人識(shí)別技術(shù)的魯棒性問題方面表現(xiàn)出極大的潛力。隨著研究人員對(duì)說話人識(shí)別領(lǐng)域的關(guān)注度越來越高,深度學(xué)習(xí)方法也在不斷創(chuàng)新和改善,相信未來研究人員能提出更有效提升識(shí)別系統(tǒng)魯棒性的方法,使得說話人識(shí)別可以大范圍落地實(shí)現(xiàn)。