王 燁,屈 丹,李弼程,劉 崧
(1.信息工程大學(xué) 信息工程學(xué)院,河南 鄭州450002;2.杭州恒生數(shù)字有限公司,浙江 杭州310000)
語種識別方法:基于并行音素識別器與語言模型和統(tǒng)計(jì)模型兩種方法[1]?;诓⑿幸羲刈R別器的方法是將用于區(qū)分不同語種的典型音素經(jīng)過標(biāo)注后訓(xùn)練建模,這些音素的排列方式體現(xiàn)該語種的結(jié)構(gòu)。該方法的缺點(diǎn)是需要專業(yè)的語言學(xué)知識建立音素集合,并且大量的語料需要人工標(biāo)注?;诮y(tǒng)計(jì)模型的方法是根據(jù)參數(shù)向量空間的概率統(tǒng)計(jì)分布構(gòu)建不同語言的模型,不需要語言學(xué)知識,實(shí)驗(yàn)語料也無需標(biāo)注。由于該方法良好的移植性,使其得到了廣泛的應(yīng)用?;诮y(tǒng)計(jì)模型的方法主要有高斯混合模型-全局背景模型(Gaussian mixture model-universal background model,GMM-UBM)[2],支持向量機(jī)(support vector machine,SVM)[3]和高斯超矢量支持向量機(jī)(GMM-Supervector SVM,GSV-SVM)[4]3種。其中GSV-SVM 方法結(jié)合GMM較好的魯棒性和SVM優(yōu)越的區(qū)分性,比單獨(dú)使用GMM或SVM取得了更好的識別效果,應(yīng)用最為廣泛,而且成為NIST評測的主要方法。
本文設(shè)計(jì)了一套完整的基于GSV-SVM的方言識別系統(tǒng)。主要針對普通話、青海方言和藏語中的安多方言進(jìn)行識別。由于漢語和藏語同屬漢藏語系,且青海方言與普通話的差異更小,因此對于這3種方言的區(qū)分難度相比于不同語系語言的區(qū)分難度要大得多。為提高系統(tǒng)的識別能力,又增加子空間映射和得分規(guī)整。實(shí)驗(yàn)結(jié)果表明,采用本文設(shè)計(jì)的系統(tǒng),對各種方言的識別率均能達(dá)到90%以上。
產(chǎn)生式模型GMM是通過大量的訓(xùn)練數(shù)據(jù)以及較高的模型混元數(shù)對語種的統(tǒng)計(jì)特征分布進(jìn)行較好的描述,因而具有較好的魯棒性。區(qū)分式模型SVM的優(yōu)勢在于其優(yōu)越的分類能力,但是SVM的魯棒性較差,在有噪聲的情況下,系統(tǒng)性能下降很快。GSV-SVM模型結(jié)合GMM和SVM的優(yōu)點(diǎn),是當(dāng)前語種識別的主流模型。本文描述的語種識別系統(tǒng)如圖1所示。該系統(tǒng)分為訓(xùn)練和測試兩部分。訓(xùn)練部分,首先對語音文件提取聲學(xué)特征,通過訓(xùn)練特征文件得到語種無關(guān)的全局背景模型UBM,再利用最大后驗(yàn)概率(maximum a posteriori,MAP)準(zhǔn)則自適應(yīng)得到GSV,然后在超矢量空間進(jìn)行低維映射,然后訓(xùn)練多組識別分類器;在訓(xùn)練階段,對開發(fā)數(shù)據(jù)的多組分類器生成的分?jǐn)?shù)域進(jìn)行LDA變換,并訓(xùn)練得分規(guī)整模型;測試部分,對待測的語音文件采用相同的步驟得到GSV,再通過多分類器進(jìn)行識別,然后進(jìn)行分?jǐn)?shù)域的映射最終輸出識別結(jié)果。
圖1 GSV-SVM語種識別系統(tǒng)處理流程
特征提取是對語音信號進(jìn)行變換,盡量去除冗余信息,保留能夠較好區(qū)分不同語種的特征,并對噪聲和信道有很好的魯棒性。本文的特征提取流程如圖2所示。首先對語音文件提取梅爾頻率倒譜系數(shù)(mel frequency cepstrum coefficient,MFCC)[5],考慮語言的長時特性對于語種識別更為重要,對MFCC再進(jìn)行移位差分倒譜(shifted delta cepstrum,SDC)擴(kuò)展[6],最后對特征參數(shù)進(jìn)行魯棒性處理——倒譜均值減(cepstrum mean subtraction,CMS)[7]和高斯化[8]。
圖2 特征處理過程
MFCC是將頻譜轉(zhuǎn)化為基于Mel頻標(biāo)的非線性頻域。由于考慮了人耳對低頻敏感而對高頻不敏感的非線性特性,MFCC取得了較好的識別效果。
SDC參數(shù)是在原有MFCC特征參數(shù)基礎(chǔ)上衍生出來的,用一組四維參數(shù)表示(N,d,P,K)。N表示倒譜參數(shù)的維數(shù),d表示差分時移,P表示差分倒譜塊的轉(zhuǎn)移量,K表示倒譜塊的個數(shù)。若MFCC為7維,圖3為一維MFCC對應(yīng)的SDC參數(shù),參數(shù)的取值為(7,1,3,7)。
CMS是一種廣泛應(yīng)用于語種識別的去信道卷積噪聲的方法。將語音信號由于調(diào)制帶來的噪聲,通過變換將時域上相卷積的噪聲變換到倒譜域上相加的關(guān)系,在倒譜域上將調(diào)制噪聲減去。
圖3 一維MFCC對應(yīng)的SDC參數(shù)
高斯化是一種特征參數(shù)的規(guī)整方法。語種識別中使用的特征參數(shù)是隨機(jī)矢量,其概率分布往往受到實(shí)際環(huán)境的影響,高斯化就是對特征參數(shù)進(jìn)行規(guī)整,使其即使受到環(huán)境影響也能近似相同分布,將特征參數(shù)都變換到事先給定的標(biāo)準(zhǔn)高斯分布上。
1.2.1 GSV的生成
全局背景模型(UBM)是通過訓(xùn)練大量數(shù)據(jù)得到的一個語種無關(guān)的高斯混合模型。訓(xùn)練數(shù)據(jù)的選擇要覆蓋各種信道情況、不同質(zhì)量的話音和不同語言。GMM可表示為
式中:x——F維的特征矢量,M——高斯混合數(shù),mi,Σi,ωi——第i個混元的均值、協(xié)方差、權(quán)重。f(·)——F維高斯分布,即
對于任意一段語音,從UBM中通過MAP自適應(yīng)準(zhǔn)則得到表征該語音段的GMM
然后將每個高斯混元的均值矢量(或還包括協(xié)方差矢量、權(quán)重)按順序拼接成一個超矢量輸入SVM訓(xùn)練和測試,GSV的產(chǎn)生過程如圖4所示。
圖4 GMM超矢量產(chǎn)生過程
1.2.2 GSV子空間映射
在超矢量的運(yùn)算過程中,由于數(shù)據(jù)之間不可避免的存在相關(guān)、冗余和噪聲等多方面的影響,造成超矢量維數(shù)巨大,必然造成判決結(jié)果的不準(zhǔn)確且計(jì)算量龐大,因此如何學(xué)習(xí)超矢量的低維子空間結(jié)構(gòu)是一個值得考慮的問題。研究發(fā)現(xiàn),一段語音信號由于長度有限,超矢量中只有少數(shù)的中心對此有區(qū)分性。因此可以采用主分量分析(principal component analysis,PCA)方法進(jìn)行映射,即通過特征變換尋找并保留數(shù)據(jù)中最有效、最重要的成分,舍去一些冗余的、包含信息量較少的成分,實(shí)質(zhì)是一個降維的過程。這里主要采用奇異值分解的方法獲得映射矩陣。即將原始數(shù)據(jù)的N維矢量x映射為M維矢量c(M<N),盡可能地保存x包含的信息。既可以有效的減少運(yùn)算量,又可以提高判決的精度。
1.2.3 基于KL核的多組語種識別支持向量機(jī)模型
支持向量機(jī)(SVM)是一種當(dāng)今較常用的機(jī)器學(xué)習(xí)方法,SVM的判決函數(shù)可表示為
其中,yj取值+1或-1,分別代表目標(biāo)語種或非目標(biāo)語種,xj為第j個支持向量,αj為該支持向量對應(yīng)的權(quán)重,x為測試語音段生成的超矢量,β是與測試語音段無關(guān)的偏移參數(shù)。
核函數(shù)的選取使用Campbell等[9]提出的KL核,該核函數(shù)的提出是從采用KL距離來衡量兩個GMM模型出發(fā),后來引入超矢量這一概念,并將其作為SVM的核函數(shù)。
式中:x——F維的特征矢量,M——高斯混合數(shù),mxi——xi第i個混元的均值,Σi、ωi——UBM第i個混元的協(xié)方差、權(quán)重。
由于KL核是一個線性核函數(shù),SVM的判決函數(shù)可以表示為
采用KL核函數(shù)映射后,多組語種識別SVM模型訓(xùn)練流程如圖5所示,假設(shè)對N種語言進(jìn)行識別,每兩種語言要計(jì)算得分模型,即C2N個二分類模型,且對于任意一種語言要計(jì)算該語言與非該語言的得分模型,即N個得分模型。因此N個語種計(jì)算得分歸一化需要計(jì)算個得分模型。
圖5 多組語種識別SVM模型訓(xùn)練流程
在識別時,由于模型之間的得分相關(guān),不同語句對于不同模型的得分波動不同,得分模型的分布也不一致,導(dǎo)致整體識別結(jié)果的不可靠,因此需要建立得分規(guī)整模型進(jìn)行處理[10]。由于采用了N(N+1)/2組語種識別分類器進(jìn)行判別,所以對于每段語音,都可以構(gòu)成一個N(N+1)/2維的得分矢量。首先,使用線性區(qū)分性分析(lineardiscriminativeanalysis,LDA)對得分矢量降維,降低相關(guān)性,然后對開發(fā)數(shù)據(jù)集不同語言種類建立SVM模型。得分模型的產(chǎn)生如圖6所示。
圖6 得分模型
2.1.1 實(shí)驗(yàn)語料庫
本文采用的實(shí)驗(yàn)語料為漢語普通話、漢語青海方言、藏語安多方言的電話信道單聲道語音。每種語言數(shù)據(jù)無重疊切分成30秒的語音段,其中訓(xùn)練集每種語言各1734段,開發(fā)集每種語言各216段,測試集漢語普通話1170段,藏語安多方言3900段,青海方言218段。使用閉集識別率作為測試評價指標(biāo)。
2.1.2 系統(tǒng)參數(shù)配置
特征參數(shù)采用7維MFCC及其SDC擴(kuò)展共形成56維特征,其中SDC的參數(shù)(N,d,P,K)為(7,1,3,7)。GMM-UBM混元數(shù)為2048,迭 代30次。PCA降 維 將114688維超矢量降至800維。SVM核函數(shù)選用KL核,得分歸一化的模型為6維,經(jīng)過LDA去相關(guān)降至3維。
2.2.1 實(shí)驗(yàn)1:相關(guān)系數(shù)τ對識別率的影響
通過MAP準(zhǔn)則從UBM模型自適應(yīng)得到GSV時,參數(shù)τ的取值對系統(tǒng)識別效果是有影響的,它描述當(dāng)前GMM與UBM之間的相關(guān)程度。表1為測試相關(guān)系數(shù)τ取不同值時GSV-SVM系統(tǒng)的識別效果。GMM混元為2048,特征參數(shù)的維數(shù)為56,因此GSV的維數(shù)為114688。采用如此高維的參數(shù)訓(xùn)練SVM無論是對硬件設(shè)備的要求和計(jì)算量都是存在一定困難的。而采用PCA降維可以保留數(shù)據(jù)中最重要的成分,去除冗余部分,提高運(yùn)算效率。因此后續(xù)實(shí)驗(yàn)均是將GSV通過PCA降維至800維的實(shí)驗(yàn)結(jié)果。實(shí)驗(yàn)結(jié)果表明,隨著τ值的變化,各數(shù)據(jù)集的識別效果略有變化,訓(xùn)練集和開發(fā)集數(shù)據(jù)隨著τ值的增加有所下降,而測試集在τ=8時取得最佳的識別效果。根據(jù)實(shí)驗(yàn)結(jié)果綜合考慮,后續(xù)實(shí)驗(yàn)均采用τ=8。
表1 相關(guān)系數(shù)τ取不同值的識別率
2.2.2 實(shí)驗(yàn)2:SVM二分類實(shí)驗(yàn)
為了對后端得分規(guī)整實(shí)驗(yàn)做準(zhǔn)備,對所有的SVM二分類模型進(jìn)行計(jì)算。表2為6個SVM二分類模型的識別效果。實(shí)驗(yàn)結(jié)果表明,與藏語相關(guān)的二分類實(shí)驗(yàn)效果均較好,所有數(shù)據(jù)集的識別率均在90%以上,訓(xùn)練集的甚至達(dá)到99以上,因?yàn)椴卣Z的安多方言是藏語主要的3種方言中唯一一種無調(diào)方言,與有調(diào)的普通話和青海方言差異較大;而漢語普通話和漢語青海方言區(qū)分度相對較小,識別率相對較低。
表2 SVM二分類實(shí)驗(yàn)
2.2.3 實(shí)驗(yàn)3:得分規(guī)整實(shí)驗(yàn)
后端得分規(guī)整是將每個語種的均值超矢量通過得分歸一化模型拼接成一個得分矢量,再對得分矢量進(jìn)行SVM訓(xùn)練。該得分歸一化模型是在開發(fā)集數(shù)據(jù)上進(jìn)行的。得分規(guī)整起到歸一化的作用,并且在得分域上進(jìn)一步增加了得分的區(qū)分性。表3為得分規(guī)整實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果表明,對GSVSVM(PCA)系統(tǒng)進(jìn)行后端規(guī)整,訓(xùn)練集的識別效果略有下降,但開發(fā)集和測試集的識別率均有提高。
表3 得分規(guī)整實(shí)驗(yàn)
2.2.4 實(shí)驗(yàn)4:LDA實(shí)驗(yàn)
由于6維得分矢量維數(shù)較低,容易造成矢量空間的實(shí)驗(yàn)樣本分布集中,影響SVM的分類效果。為進(jìn)一步提高實(shí)驗(yàn)樣本的區(qū)分性,增加LDA實(shí)驗(yàn),使同一類的樣本盡量集中,不同類的樣本盡可能分開。表4為LDA實(shí)驗(yàn)的結(jié)果。實(shí)驗(yàn)結(jié)果表明,增加LDA實(shí)驗(yàn)對識別率均有提高。
表4 LDA實(shí)驗(yàn)
2.2.5 實(shí)驗(yàn)5:3種語言的測試實(shí)驗(yàn)
采用本文的實(shí)驗(yàn)系統(tǒng),對3種實(shí)驗(yàn)語料的測試集數(shù)據(jù)分別進(jìn)行測試。表5為單獨(dú)測試3種語言的測試實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果表明,單獨(dú)測試3種語言的測試集,識別率均能達(dá)到90%以上。
表5 3種語言測試集測試效果
對于方言識別中存在的混淆度較大導(dǎo)致識別率較低的問題,本文針對漢語普通話、青海方言和藏語安多方言設(shè)計(jì)實(shí)現(xiàn)一個基于GSV-SVM的方言識別系統(tǒng)。在模型建立部分通過子空間映射去除冗余信息,提高不同方言之間的區(qū)分度;并在后端得分域?qū)⒏髂P椭g的得分進(jìn)行規(guī)整,減小得分的波動,提高判決的精度。實(shí)驗(yàn)結(jié)果表明,采用本文的系統(tǒng)對方言進(jìn)行識別,3種方言的識別率均能達(dá)到90%以上,而藏語的識別效果最佳。
[1]Burget L,Matejka P,Schwarz P,et al.Analysis of feature extraction and channel compensation in a GMM speaker recognition system[J].IEEE Transactions on Audio,Speech,and Language Processing,2007,15(7):1979-1986.
[2]Matejka P.Phonotactic and acoustic language recognition[D].Brno:Brno University of Technology,2008.
[3]Campbell W M,Campbell J P,Reynolds D A,et al.Support vector machines for speaker and language recognition[J].Computer Speech and Language,2006,20(2-3):210-229.
[4]Campbell W M,Sturim D E,Reynolds D A.Support vector machines using GMM supervectors for speaker verification[J].IEEE Signal Processing Letters,2006,13(5):308-311.
[5]Zhang Weiqiang,He Liang,Deng Yan,et al.Time frequency cepstral features and heteroscedastic linear discriminant analysis of language recognition[J].IEEE Transactions on Acoustics,Speech and Signal Processing,2011,19(2):266-276.
[6]Torres-carrasquillo P A,Singer E,Campbell W,et al.The MITLL NIST LRE 2007Language Recognition System[C]//Brisbane,Australia:Proc of Interspeech,2008:719-722.
[7]Matejka P,Burget L,Glembek O,et al.BUT language recognition system for NIST 2007evaluations[C]//Brisbane,Australia:Proc of Interspeech,2008:739-742.
[8]FU Qiang.The study of GMM-based language identification[D]//Hefei:University of Science and Technology of China,2009(in Chinese).[付強(qiáng).基于高斯混合模型的語種識別的研究[D].合肥:中國科技大學(xué),2009]
[9]Campbell W M,Sturim D E,Reynolds D A.Support vector machines using GMM supervectors for speaker verification[J].IEEE Signal Processing Letters,2006,13(5):308-311.
[10]LEI Wenhui.Support vector machine based language recognition[D].Hefei:University of Science and Technology of China,2009(in Chinese).[雷文輝.基于支持向量機(jī)的語種識別研究[D].合肥.中國科技大學(xué),2009.]