張文林 牛 銅 張連海 李弼程
(解放軍信息工程大學(xué)信息工程學(xué)院 鄭州 450002)
在語音識別中,說話人相關(guān)(Speaker Dependent,SD)模型的識別性能比說話人無關(guān)(Speaker Independent,SI)模型要好得多[1]。然而實(shí)際中,由于難以獲得充足的訓(xùn)練數(shù)據(jù),直接訓(xùn)練SD模型往往是不現(xiàn)實(shí)的。對于一個實(shí)用的連續(xù)語音識別系統(tǒng),需要利用少量的說話人相關(guān)數(shù)據(jù)對SI模型進(jìn)行自適應(yīng)得到SD模型,從而提高系統(tǒng)的識別性能。
說話人自適應(yīng)方法通??梢苑譃槿箢怺2]:基于最大后驗(yàn)概率(Maximum A Posteriori,MAP)的方法、基于線性變換的方法和基于說話人聚類的方法。在基于MAP的方法中,假設(shè)SD模型參數(shù)服從某種先驗(yàn)分布,利用給定的自適應(yīng)數(shù)據(jù)對模型參數(shù)進(jìn)行最大后驗(yàn)估計(jì),從而得到最大后驗(yàn)意義下的SD模型;這種方法具有良好的漸近性能,當(dāng)訓(xùn)練數(shù)據(jù)越來越多時,可以得到較精確的SD模型?;诰€性變換的方法,典型的代表是最大似然線性回歸(Maximum Likelihood Linear Regression,MLLR)[3],其基本原理是在最大似然準(zhǔn)則下,估計(jì)一組線性變換對 SI模型參數(shù)進(jìn)行變換得到 SD模型;相比MAP自適應(yīng)方法,這種方法需要的自適應(yīng)數(shù)據(jù)量較少,但漸近性能較差。而基于說話人聚類的方法則利用說話人之間相關(guān)性,通過訓(xùn)練集中SD模型參數(shù)的某種線性組合來逼近新的 SD模型參數(shù)。相比于前兩類方法,這類方法需要估計(jì)的參數(shù)數(shù)量最少,適合于極少量自適應(yīng)數(shù)據(jù)下的快速說話人自適應(yīng),其典型代表是基于本征音(Eigen Voice,EV)[4]的自適應(yīng)方法和基于參考說話人加權(quán)(Reference Speaker Weighting,RSW)[5,6]的自適應(yīng)方法。在本征音自適應(yīng)方法中,通過對訓(xùn)練集中的SD 模型參數(shù)進(jìn)行主分量分析(Principal Component Analysis,PCA),找到SD模型參數(shù)的一組基;在自適應(yīng)階段,將新的SD模型參數(shù)限制在這組基所張成的子空間中,通過估計(jì)SD模型的坐標(biāo),從而達(dá)到快速說話人自適應(yīng)的目的。而在RSW 方法中,用若干參考說話人模型參數(shù)的線性組合來逼近當(dāng)前說話人相關(guān)模型。在文獻(xiàn)[6]提出的可變參考說話人加權(quán)(Variable Reference Speaker Weighting,VRSW)算法中,在自適應(yīng)階段,根據(jù)“說話人系數(shù)”的大小動態(tài)選取與當(dāng)前說話人最相似的若干個SD模型參數(shù),進(jìn)而重新計(jì)算其線性組合來逼近當(dāng)前說話人相關(guān)模型。
近年來,盡管出現(xiàn)了各種基于2D-PCA[7]及基于張量分解[8]的說話人自適應(yīng)方法,它們分別利用了SD模型參數(shù)的某種矩陣分解或張量分解的形式,需要估計(jì)的參數(shù)數(shù)量大于MLLR 方法,在自適應(yīng)數(shù)據(jù)足分時,可以達(dá)到比MLLR方法更好的自適應(yīng)效果,然而在少量自適應(yīng)數(shù)據(jù)條件下,易于出現(xiàn)過訓(xùn)練的問題,性能反而不如經(jīng)典的本征音方法。
本文針對基于隱馬爾可夫模型的聲學(xué)模型,研究其在極少量自適應(yīng)數(shù)據(jù)下的快速說話人自適應(yīng)方法。與經(jīng)典本征音自適應(yīng)方法的基本思想相同,新方法也是基于說話人子空間的,需要在訓(xùn)練階段利用 PCA得到說話人空間的基矢量;與傳統(tǒng)方法不同的是,新方法中說話人子空間不是在自適應(yīng)前預(yù)先確定的,而是在自適應(yīng)過程中動態(tài)選擇的;在選擇說話人子空間的方法上,與可變參考說話人加權(quán)算法[6]不同的是,子空間基矢量是直接通過最大似然準(zhǔn)則選擇的,而不是通過“加權(quán)系數(shù)”的大小進(jìn)行選擇,從而得到一種基于最大似然可變子空間的說話人自適應(yīng)方法。根據(jù)子空間的維數(shù)是否固定,本文分別提出了固定維數(shù)最大似然子空間方法和可變維數(shù)最大似然子空間方法及其快速實(shí)現(xiàn)流程。在基于微軟語料庫[7]的連續(xù)語音識別實(shí)驗(yàn)中,在有監(jiān)督和無監(jiān)督的條件下,新方法均優(yōu)于經(jīng)典的基于本征音的方法和MLLR方法。
本文如下的章節(jié)安排如下:第2節(jié)簡要給出了基于本征音的說話人自適應(yīng),并引入相關(guān)數(shù)學(xué)符號;第 3節(jié)給出了說話人子空間最大似然基的選取算法,及在此基礎(chǔ)之上的固定維數(shù)與可變維數(shù)子空間說話人自適應(yīng)方法;第4節(jié)給出了實(shí)驗(yàn)結(jié)果及分析;最后一節(jié)給出了本文的結(jié)論。
設(shè)訓(xùn)練集中共S個說話人,聲學(xué)特征矢量為D維,聲學(xué)模型中共有M個高斯分量。令SI模型中第m個高斯分量的均值矢量和協(xié)方差矩陣分別為μm和∑m,對第s個說話人,其SD模型中第m個高斯分量的均值矢量為μm(s)。本文僅討論聲學(xué)模型中高斯分量均值矢量的自適應(yīng)。
在基于本征音的說話人自適應(yīng)中,定義第s個說話人的超矢量為
其中每一個說話人超矢量的維數(shù)為M×D維,則所有訓(xùn)練說話人超矢量Υ={y(s),s=1,2,…,S}構(gòu)成了一個說話人子空間,其維數(shù)最大為S。對Υ進(jìn)行主分量分析,最多可以得到S個基矢量,按其對應(yīng)的特征值從大到小可以表示為e(1),e(2),…,e(S),其中e(k)即稱為第k個“本征音(eigenvoice)”。
在經(jīng)典的本征音說話人自適應(yīng)中,假設(shè)所有的說話人超矢量落入一個K維的子空間中(0<K<S),則對于一個未知說話人相關(guān)模型,其說話人超矢量可以表示為
其中為訓(xùn)練說話人超矢量的均值矢量,xk為對應(yīng)第k個本征音的系數(shù)。
估計(jì)未知說話人超矢量y在K維說話人子空間中的坐標(biāo)即可進(jìn)行說話人自適應(yīng),通常稱x為“說話人因子(speaker factor)”。
設(shè)自適應(yīng)數(shù)據(jù)的特征矢量序列為O={o1,o2,…,oT},其中T為語音幀數(shù)。采用最大似然準(zhǔn)則和期望最大(Expectation Maximization,EM)算法,說話人自適應(yīng)過程等價于求解如下最優(yōu)化問題[3]:
其中γm(t)表示第t幀特征矢量屬于SI模型中第m個高斯分量的后驗(yàn)概率,給定自適應(yīng)數(shù)據(jù)的標(biāo)注,它可以通過經(jīng)典的 Baum-Welch前后向算法[9]計(jì)算得到。
設(shè)第k個本征音e(k)中對應(yīng)第m個高斯分量的子矢量為em(k),高斯超矢量均值對應(yīng)第m個高斯分量的部分為em(K)],則。代入式(3)中的目標(biāo)函數(shù),并對x求導(dǎo),令其導(dǎo)數(shù)等于 0,可以得到說話人超矢量的最大似然估計(jì)為
式(4)即為最大似然本征分解(Maximum Likelihood Eigen Decomposition,MLED)[3]求解說話人因子的表達(dá)式。
圖1 2維說話人子空間示例
為了簡單起見,圖1中僅給出前2維本征音e(1)和e(2)所張成的2維子空間;虛線所示橢圓表示訓(xùn)練說話人在這2維子空間中的分布,由于第1個本征音e1所對應(yīng)的特征值較大,訓(xùn)練說話人在其上分布的方差也越大,對應(yīng)圖1中表現(xiàn)為橢圓長軸。然而,對于某一個說話人s(實(shí)心圓圈所示),其在第2個本征音e2上的坐標(biāo)值大于第1個本征音e1上的坐標(biāo)值,所以若強(qiáng)制選擇1維的子空間,應(yīng)該選擇由e2所確定的1維子空間,而不是e1所確定的子空間。實(shí)際中說話人子空間維數(shù)K的典型值取為10~20,在這種較高維子空間中,說話人分布的稀疏性將會更為明顯,上述現(xiàn)象也將會更為突出。因此,簡單地取前K個最大特征值對應(yīng)的本征音所張成的子空間作為所有測試說話人的子空間是不合理的。本節(jié)將討論如何在最大似然準(zhǔn)則下,針對每個說話人選取最優(yōu)的子空間。
最優(yōu)子空間的確定,其本質(zhì)上是最優(yōu)基矢量的選擇,即最優(yōu)本征音的選擇。在RSW算法中,最佳參考說話人的選擇也可以視為說話人子空間中一組非正交基的選擇;在文獻(xiàn)[6]提出的 VRSW 算法中,通過參考說話人模型的加權(quán)系數(shù)來進(jìn)行選擇,然而加權(quán)系數(shù)與EM算法的目標(biāo)函數(shù)是不完全一致的,因此從最大似然的角度來看,選擇得到的這組參考說話人模型并非“最大似然基”。因此,本文的算法思路是,針對每一個本征音,假設(shè)說話人超矢量落入其張成的1維子空間中,計(jì)算對應(yīng)的最大似然說話人因子及其對數(shù)似然值(即 EM 算法的目標(biāo)函數(shù)值);選擇似然度最大的K個本征音作為最優(yōu)子空間的基矢量,這樣所得到的基矢量可以認(rèn)為是“最大似然基矢量”,所得到說話人子空間可認(rèn)為是“最大似然子空間”。
在說話人子空間的基矢量僅由ek組成的情況下,由式(4),最大似然說話人因子的計(jì)算可簡化為
式(5)即為忽略各本征音之間相關(guān)性的說話人因子估計(jì)公式。由此得到對應(yīng)說話人相關(guān)模型均值矢量為,將式(5)結(jié)果代入式(3)中的目標(biāo)函數(shù),整理可得其對數(shù)似然值為
其中C為與本征音e(k)無關(guān)的常數(shù)項(xiàng)。
因此,對每個可能的本征音e(k)(k=1,2,…,S),計(jì)算式(6),并對其從大到小排序,對應(yīng)的前K個本征音即為最大似然意義下的最佳K維說話人子空間的基,設(shè)其為{(k),k=1,2,…,K},根據(jù)式(4)重新進(jìn)行最大似然本征分解,即可得到該最佳K子空間下說話人因子。
上述基于最大似然子空間的說話人自適應(yīng)算法可以高效地實(shí)現(xiàn),具體算法流程如下:
(1)預(yù)先選定說話人子空間維數(shù)K(1≤K≤S);
(2)計(jì)算M×S2個加權(quán)內(nèi)積,其中1 ≤m≤M,1 ≤k1≤S,1≤k2≤S;
(3)在給定自適應(yīng)數(shù)據(jù)及其標(biāo)注情況下,進(jìn)行狀態(tài)強(qiáng)制對齊及Baum-Welch前后向算法,累積其零階和一階充分統(tǒng)計(jì)量,即和
(4)利用(1)中預(yù)先計(jì)算好的加權(quán)內(nèi)積值,計(jì)算
其中 1 ≤k1≤S,1 ≤k2≤S,1≤k≤S;
(5)計(jì)算Lk=b(k)2/A(k,k)(即式(6)),1≤k≤S;對其從大到小進(jìn)行排序,選擇前K個最大的kL,設(shè)其所對應(yīng)的序號分別為l1,l2,…,lK;
(6)由(3)中計(jì)算結(jié)果,構(gòu)造矩陣
在3.2節(jié)中,最大似然子空間維數(shù)K的選擇是一個難點(diǎn),需要通過多次試驗(yàn)來確定。本節(jié)給出一種基于可變維數(shù)最大似然子空間的快速說話人自適應(yīng)算法。其基本思想是,通過最大似然本征音的對數(shù)似然值計(jì)算一個門限,對于其它本征音,只有當(dāng)其似然值大于該門限時才被保留。此時,3.2節(jié)中算法流程的(1),(4),(5)步分別替換為:
(1)選定門限值α(0<α<1);
為了驗(yàn)證本文算法的有效性,我們針對一個典型的連續(xù)語音識別系統(tǒng)進(jìn)行了實(shí)驗(yàn)。實(shí)驗(yàn)語料采用微軟語料庫[10],其中訓(xùn)練語料包含100個男性說話人,每個人200句話,共約33 h的語音數(shù)據(jù);測試語料包含另外20個男性說話人,每人20句話,每句話大約5 s的話音。實(shí)驗(yàn)中,特征參數(shù)采用13維美爾頻率倒譜系數(shù)(Mel-Frequency Cepstral Coefficients,MFCC)及其一階差分和二階差分,總的特征矢量維數(shù)為39維?;€系統(tǒng)中的SI模型利用開源隱馬爾可夫模型工具包(Hidden Markov Toolkit,HTK)[9]訓(xùn)練得到,采用上下文相關(guān)的三音子有調(diào)音節(jié)作為聲學(xué)建模單元,采用自左向右?guī)ё原h(huán)無跳轉(zhuǎn)三狀態(tài)的HMM模型,每個狀態(tài)8個高斯混元,利用HTK進(jìn)行三音子聚類后共19136個高斯混元。訓(xùn)練階段利用基于回歸樹(32個回歸類)的MLLR自適應(yīng)方法得到100個訓(xùn)練說話人相關(guān)模型,進(jìn)而利用PCA得到100個本征音矢量。測試階段解碼器采用HTK自帶的一遍解碼器HVite,不采用語法模型,解碼參數(shù)配置與文獻(xiàn)[10]中相同。在說話人自適應(yīng)實(shí)驗(yàn)中,分別從每個測試說話人語音中隨機(jī)抽取1句話(小于5 s)語音作為自適應(yīng)數(shù)據(jù),剩下的19句話作為測試數(shù)據(jù),利用HTK中的HResult工具在所有測試語音上統(tǒng)計(jì)有調(diào)音節(jié)的平均識別率作為實(shí)驗(yàn)結(jié)果。
為了比較算法的有效性,我們分別實(shí)現(xiàn)了基于MLLR的自適應(yīng)和經(jīng)典的基于本征音的自適應(yīng)方法。對于本征音(EV)方法和固定維數(shù)最大似然可變子空間(MLEV)方法,分別在說話人子空間維數(shù)K取為10,20和30的情況下進(jìn)行了實(shí)驗(yàn)。對于可變維數(shù)最大似然子空間(VMLEV)方法,對門限α取為0.1,0.08和0.06的情況分別進(jìn)行了測試,并對測試說話人的平均最大似然子空間維數(shù)(用表示)進(jìn)行了統(tǒng)計(jì)。各種自適應(yīng)方法均在有監(jiān)督(給定自適應(yīng)數(shù)據(jù)標(biāo)注)和無監(jiān)督條件下(不給定自適應(yīng)數(shù)據(jù)標(biāo)注)分別進(jìn)行了實(shí)驗(yàn)。自適應(yīng)實(shí)驗(yàn)結(jié)果匯總?cè)绫?所示,其中基線系統(tǒng)(SI模型)的有調(diào)音節(jié)平均識別率為52.71%(文獻(xiàn)[10]中報道結(jié)果為51.21%)。
由表1的實(shí)驗(yàn)結(jié)果可以看出,對于MLLR算法,由于自適應(yīng)數(shù)據(jù)量過少(每個測試說話人平均少于5 s),無法進(jìn)行有效的自適應(yīng),有調(diào)音節(jié)平均識別率相比SI模型幾乎沒有任何提高。
對于經(jīng)典的本征音自適應(yīng)算法,系統(tǒng)平均識別率可以得到較大的提高,隨著說話人子空間維數(shù)的增加,所需要估計(jì)的參數(shù)個數(shù)也相應(yīng)地增加,識別率先增后降。
對于本文提出的固定維數(shù)最大似然子空間的方法,相比經(jīng)典的本征音自適應(yīng)算法,在相同的子空間維數(shù)下,識別率有了更進(jìn)一步的提高。而對于可變維數(shù)最大似然子空間方法,可以在自適應(yīng)階段自動確定最大似然子空間的維數(shù),具有更好的穩(wěn)健性;當(dāng)α=0 .08時,無論是在有監(jiān)督還是無監(jiān)督條件下,相比其它幾種方法,均具有最佳的自適應(yīng)效果。
實(shí)驗(yàn)中,我們還統(tǒng)計(jì)了在相同的子空間維數(shù)下,最大似然子空間方法與經(jīng)典的本征音方法所選擇的本征音基矢量的相同個數(shù),平均統(tǒng)計(jì)結(jié)果如表2所示(括號外為有監(jiān)督自適應(yīng)實(shí)驗(yàn)統(tǒng)計(jì)結(jié)果,括號內(nèi)為無監(jiān)督自適應(yīng)實(shí)驗(yàn)統(tǒng)計(jì)結(jié)果):
表1 一句話(5 s)自適應(yīng)實(shí)驗(yàn)結(jié)果(有調(diào)音節(jié)平均識別率)
表2 VMLEV與傳統(tǒng)本征音方法的相同本征音個數(shù)的平均值
由表2可以看出,在經(jīng)典的本征音自適應(yīng)方法中根據(jù)最大特征值所確定的K維子空間,對于每一個測試說話人而言并非是最佳的,需要提高子空間維數(shù)才能夠盡量覆蓋到最佳的子空間;但提高子空間維數(shù)就會增加所要估計(jì)的參數(shù)個數(shù),在自適應(yīng)數(shù)據(jù)量極少的情況下,這會增加過訓(xùn)練的風(fēng)險。本文提出的最大似然可變子空間方法可以選擇出最佳的K維子空間,通過自動確定子空間維數(shù)K,在盡量少的待估參數(shù)個數(shù)下得到盡可能好的自適應(yīng)效果,有效地避免了過訓(xùn)練的問題。
本文提出了一種基于最大似然可變子空間的說話人自適應(yīng)算法。與經(jīng)典基于說話人子空間的本征音自適應(yīng)方法不同,新方法中說話人子空間的基矢量是在自適應(yīng)階段、通過最大似然準(zhǔn)則動態(tài)選取的,從而可以得到盡量低維的(最大似然意義下的)最佳說話人子空間,進(jìn)而可以在極少量的自適應(yīng)數(shù)據(jù)條件下得到盡量好的自適應(yīng)效果。實(shí)驗(yàn)結(jié)果表明,本文方法的自適應(yīng)效果相比經(jīng)典 MLLR方法和本征音方法均有明顯的提高。
[1]Lee C H,Lin C H,and Juang B H.A study on speaker adaptation of the parameters of continuous density hidden Markov models[J].IEEE Transactions on Signal Processing,1991,39(4):806-814.
[2]李虎生,劉加,劉潤生.語音識別說話人自適應(yīng)研究現(xiàn)狀及其發(fā)展趨勢[J].電子學(xué)報,2003,31(1):103-108.Li Hu-sheng,Liu Jia,and Liu Run-sheng.Technology of speake adaptation in speech recognition and its development trend[J].Acta Electronica Sinica,2003,31(1):103-108.
[3]Ghoshal A,Povey D,Agarwal M,et al..A novel estimation of feature-space MLLR for full-covariance models[C].International Conference on Acoustics,Speech and Signal Processing,Dallas,Texas,USA,2010:4310-4313.
[4]Kuhn R,Junqua J C,Nguyen P,et al..Rapid speaker adaptation in eigenvoice space[J].IEEE Transactions on Speech and Audio Processing,2000,8(6):695-707.
[5]Teng W X,Gravier G,Bimbot F,et al..Rapid speaker adaptation by reference model interpolation[C].Interspeech,Antwerp,Belgium,2007:258-261.
[6]Teng W X,Gravier G,Bimbot F,et al..Speaker adaptation by variable reference model subspace and application to large vocabulary speech recognition[C].International Conference on Acoustics,Speech and Signal Processing,Taipei,China,2009:4381-4384.
[7]Jeong Y and Sim H S.New speaker adaptation method using 2-D PCA[J].IEEE Signal Processing Letters,2010,17(2):193-196.
[8]Jeong Y.Speaker adaptation based on the multilinear decomposition of training speaker models[C].International Conference on Acoustics,Speech and Signal Processing,Dallas,Texas,USA,2010:4870-4873.
[9]Young S,Evermann G,Gales M,et al..The HTK Book.HTK Version 3.4,2009.
[10]Chang E,Shi Y,Zhou J,et al..Speech lab in a box:a Mandarin speech toolbox to jumpstart speech related research[C].EUROSPEECH-2001,Aalborg,Denmark,2001:2799-2802.