劉伶俐, 王朝立, 于 震
(上海理工大學(xué)光電信息與計算機工程學(xué)院,上海 200093)
隱馬爾科夫模型(HMM)作為語音信號的一種統(tǒng)計模型,語音識別效果好,能夠很好地描述語音信號的特點,在數(shù)字語音處理中應(yīng)用非常廣泛.
HMM包括離散的模型(DHMM—Discrete HMM)、連續(xù)混合密度模型(CHMM—Continuous HMM)以及半連續(xù)模型(SCHMM—Semi-Continuous HMM).相比較DHMM,CHMM系統(tǒng)識別率更高,這是由于在CHMM中輸入向量X即觀察值向量,不需要經(jīng)過矢量量化轉(zhuǎn)變,這個輸入向量直接就是每一幀語音信號的特征矢量.基于CHMM系統(tǒng)識別率高的特點,它的應(yīng)用非常廣泛.文獻[1]給出了基于性別的CHMM語音識別方法,文獻[2]研究了駕駛員意圖識別的可能性,文獻[3]討論了基于聲音的軸承故障診斷等.
在HMM模型建立后用Baum-Welch迭代算法求解HMM模型,其中一個重要的問題就是初始模型的選取[4],不同的初始參數(shù)模型將產(chǎn)生不同的訓(xùn)練結(jié)果與識別結(jié)果.關(guān)于DHMM初值的研究,文獻[5]說明了DHMM初始參數(shù)選擇的一般規(guī)律和最佳選擇方法,但是CHMM的初始參數(shù)至今還沒有一個最佳的選擇方法.傳統(tǒng)CHMM參數(shù)初始化方法是隨機分布之值、K均值算法,但是由于K-means方法存在對初始中心的依靠較重、對孤立點影響較大和聚類結(jié)果不穩(wěn)定的缺點[4,6],因此,有人提出了對初值中心選擇的改進方法:基于密度的方法[7]和最大最小距離法[8].基于密度的方法首先去除孤立點,在密度所在的區(qū)域內(nèi)隨機選擇初始中心,但是密度相似性大小相差較大時,聚類結(jié)果不好;而最大最小距離方法雖然可以使類間相似性最弱,類內(nèi)相似性最強,但是忽略了孤立點對聚類結(jié)果的影響.
本文在研究連續(xù)混合密度模型(CHMM)初始參數(shù)選擇時,為了更好地平滑逼近語音特征,使語音特征矢量類間相似性最小,類內(nèi)相似性最大,采用最大距離選擇初始聚類中心、最小距離將語音特征矢量分類、平均距離去除類內(nèi)干擾點的K-means方法.這種方法不僅去除了聚類中的干擾點,而且克服了傳統(tǒng)算法的缺點,為語音訓(xùn)練識別節(jié)省了時間,提高了語音的識別率.
設(shè)S={Si},i=1,2,…,N,為模型的N狀態(tài)空間,CHMM常用M={S,X,A,B,π,F(xiàn) }6個模型參數(shù)來定義,不過一般簡化用M=(A ,B,π)表示.
A表示狀態(tài)轉(zhuǎn)移概率矩陣,A={aij},aij=P[qt+1=j(luò)|qt=i],1≤i,j≤N,q為狀態(tài)序列;B表示概率密度分布函數(shù)集合,B={bj(X)},1≤j≤N;X為觀察向量;π表示系統(tǒng)初始狀態(tài)概率的集合,πi表示初始狀態(tài)是qi的概率即πi=p [q1=i],1≤i≤N;F為系統(tǒng)終了狀態(tài)矩陣.
研究對象選取連續(xù)的無跨越自左向右的CHMM,觀察參數(shù)矢量為X=x1,x2,…,xT,狀態(tài)序列為q=q1,q2,…,qn,狀態(tài)數(shù)為N,CHMM初始模型為λ=(A,B,π).
一般認為π和A初值的選取對結(jié)果的影響不大,但B的初值對HMM的影響比較大[6].所以本文主要研究B的初值對CHMM的影響.
無跨越自左向右的CHMM,由于輸出的是連續(xù)值,不是有限的,所以不能用矩陣表示輸出概率[4],而用概率密度函數(shù)來表示,即用bj(X)表示.bj(X)稱為參數(shù)X的概率分布函數(shù),輸出X的概率可以通過bj(X)計算出來.一般bj(X)用高斯密度函數(shù)表示,由于X是多維矢量,所以用多元高斯概率密度函數(shù)表示為
這里p是X的維數(shù),μj是概率密度的均值矢量,T為轉(zhuǎn)置,∑j是概率密度的協(xié)方差矩陣(為計算方便一般用對角協(xié)方差矩陣).
在實際的語音信號處理系統(tǒng)中,往往用一個高斯概率密度函數(shù)不足以表示語音參數(shù)X的輸出概率分布,所以常采用混合模型將所有的局部特征綜合在一起,形成一個更為全面的分布函數(shù).這里使用多個高斯概率分布的加權(quán)組合,表示輸出概率密度函數(shù)[4]為
這里ωjm是混合系數(shù),又叫分支概率,即第m個分量權(quán)重,滿足為分支概率密度,即表示狀態(tài)為j的第m個分量的高斯概率密度函數(shù).μjm和∑jm是狀態(tài)j中第m個混合分量的均值矢量和協(xié)方差矩陣.
bj(X)概率密度特性滿足由式(2)可以看出,混合概率密度函數(shù)由各個概率密度函數(shù)組合而成,概率密度函數(shù)可由均值矢量、協(xié)方差和混合分量來描述.為求得輸出概率密度必須要先確定初值μjm,∑jm,ωjm,這對后面參數(shù)的重估至關(guān)重要.對各狀態(tài)的混合高斯函數(shù)的均值、方差和權(quán)系數(shù)的初始化,傳統(tǒng)采用K均值算法.
K-means算法以每類的均值矢量和協(xié)方差矩陣為類中心作為分類準則度量,則最終k個高斯分量的均值估計和方差估計即為每類數(shù)據(jù)的均值矢量和協(xié)方差矢量.
具體步驟如下:
a.由某一狀態(tài)的訓(xùn)練語音,隨機選取k個點(即特征矢量),每個點代表一個類的初始中心或平均值;
b.其余點根據(jù)相似度準則(歐氏距離)將相同或相似的數(shù)據(jù)歸為一類;
c.如果相鄰的兩次聚類中心沒有任何變化,說明對象調(diào)整結(jié)束,否則調(diào)整新的聚類中心,重復(fù)b;
d.計算每一類的均值矢量,作為高斯概率密度函數(shù)的均值估計和高斯概率密度函數(shù)的初值.
以上是傳統(tǒng)的計算方法,優(yōu)點是過程簡單、操作容易.但是這種方法有很大的缺點:第一,由于初始聚類中心是隨機選取,所以不同的初始中心可以得到不同的初始均值和方差,造成不同的局部最大,聚類結(jié)果穩(wěn)定性較差;第二,K-means算法對噪聲和孤立點數(shù)據(jù)比較敏感.
基于傳統(tǒng)算法的缺點,本文提出一種改進算法:首先選擇相互距離最遠的k個對象作為初始聚類中心;然后按相似性最強分類,為不受干擾點的影響,聚類結(jié)束后去除每類中的干擾點.這樣的好處是所選擇的初始中心更具有代表性,使得類內(nèi)相似性最強,每類均值特征與語音特征偏離度較小,能更好地平滑逼近語音特征.
從式(1)中可以看出,bj(X)由均值和協(xié)方差矩陣決定,其實主要由均值決定.假定δii(x)是協(xié)方差矩陣中的元素,δii(x)表示X與μj(x)的偏離程度,按輸出概率密度最大來說,一般總希望δii(x)應(yīng)盡可能的?。ǖ荒転榱悖?,這樣X與μj(x)越接近,bj(X)就越大.
令
由式(3)可以看出,當(dāng)X與μj(x)的偏離程度最小時,說明它們的相似性最強,即每個概率密度函數(shù)也就取得最大值,根據(jù)這個原則定義相似性.
定義1 樣本X中的元素xi是p維的,一個樣本特征向量與另一個樣本特征向量之間的相似性公式為
d的數(shù)值小說明xi,xj的相似性強,反之它們的相似性弱.式(4)選擇的是歐式距離的平方,相似性的判別與歐式距離相同,但是算法的效率要比歐式距離高.
該算法主要有3步:一是求距離;二是分類;三是去除干擾點.將樣本分為k類的具體算法描述如下:
a.某一狀態(tài)的訓(xùn)練語音X=x1,x2…xt,按式(4)分別計算兩兩特征矢量(點與點間的)距離,各特征矢量間相互獨立;
b.選出距離最大的兩個點(xi,xj)作為兩個初始中心y1=xi,y2=xj,將X中的其余點以y1,y2為初始中心按式(4)求取距離,按最小距離的原則將X分為D1,D2兩類;
c.在D1,D2中找出與y1,y2相似性最弱的特征向量xi,xj,并分別代入式(4),得到d=max(max d(y1,xi),max d(y1,xj),max d(y2,xi),max d(y2,xj)),將距離最大的xi(xj)作為y3,并以y3為中心按式(4)分類;
d.在已經(jīng)找到的m個初始中心共有D1,D2,…,Dm類,按式(4)尋找與初始中心最遠的點,并按max(max d(yi,xi),max d(yi,xj),max d(yj,xi),max d(yj,xj))選下一個初始中心,并重新劃分歸類,直到分為k類;
e.分類結(jié)束后,計算每類中其它點與聚類中心的距離,并求平均距離,將與聚類中心距離大于平均距離的點從此類中刪除;
f.將每類中的剩余點計算均值;
g.ωjm的值等于每類中的特征矢量個數(shù),除以所有類中特征矢量個數(shù)之和.
以上算法是按兩點之間相似性的大小,進行初始聚類中心的選擇,有一定的規(guī)律性,克服了一般K-means的初值選擇無序的狀況;而且根據(jù)所定義的相似性公式所選的初始聚類中心滿足協(xié)方差偏離程度最小,并且刪除了每類中的干擾點,這樣所得的均值向量與特征值向量相似性最好,聚類效果好,有利于參數(shù)的估計和語音的識別.
連續(xù)無跨越自左向右的CHMM,系統(tǒng)初始狀態(tài)概率的集合為π=[1,0,0,…,0],即從第一個狀態(tài)開始執(zhí)行.狀態(tài)轉(zhuǎn)移概率矩陣A,aij為A中的元素,0<aij<1,滿足
轉(zhuǎn)移概率矩陣初值選擇
B的初值分別由傳統(tǒng)K-means方法與改進后的K-means方法進行選擇.對于傳統(tǒng)K-means方法隨機選擇初始聚類中心,然后按最小距離準則對輸入樣本分類,更新聚類中心,通過迭代最后得到初始參數(shù);而對于改進的K-means方法先按照最大距離選擇k個相似性最弱的點,然后按最小距離準則對輸入樣本分類,更新聚類中心,最后將每類中的孤立點去除,計算每類的均值矢量、協(xié)方差矩陣以及混合權(quán)值作為初始參數(shù).
實驗是在matlab 7.0環(huán)境下實現(xiàn),語音樣本為非特定人孤立數(shù)字0~9共400個.每個數(shù)字錄音40個,其中20個用于語音訓(xùn)練,20個用于語音識別.采用不同的初始化方法進行語音識別所得到的識別率結(jié)果如表1所示.
表1 不同參數(shù)初始化方法Tab.1 Different parameters initialization ways
從表1可以看出,采用改進后的K-means算法所得到的CHMM初始參數(shù)得到的識別率更好,這是因為此方法克服了傳統(tǒng)算法的缺點,并去除了干擾點對識別結(jié)果的影響.
研究了CHMM的初始參數(shù)概率密度函數(shù)的選擇,在傳統(tǒng)的初值選擇方法的基礎(chǔ)上提出了改進后的K-means方法.在規(guī)定的條件下,改進后的初值選擇方法,克服了語音在初值的選擇上不穩(wěn)定性和孤立點的影響,更逼近語音特征,提高了聚類的準確性和語音的識別率.
[1] 張捍東,李金煒.基于性別識別的分類CHMM語音識別[J].計算機工程與應(yīng)用,2007,21(7):187-189.
[2] Jin L S,Hou H J,Jiang Y Y.Driver intention recognition based on continuous hidden Markov model[C]//International Conference on Transportation,Mechanical,and Electrical Engineering(TMEE).Changchun,2011:739-742.
[3] Wu B,Wang M J,Lou Y G.Cyclostationarity and CHMM based bearing fault diagnosis approach in start-up process[C]//2010 2nd International Conference on Computer Engineering and Technology(ICCET).Chengdu,2010:433-436.
[4] 趙力.語音信號處理[M].北京:機械工業(yè)出版社,2008.
[5] 馬明,張杰,王建宇,等.語音識別中隱馬爾科夫模型初值的估計[J].數(shù)據(jù)采集與處理,1997,2(7):96-100.
[6] 韓紀慶.語音信號處理[M].北京:清華大學(xué)出版社,2004.
[7] 汪中,劉貴全,陳恩紅,等.一種優(yōu)化初始中心點的K-means算法[J].模式識別與人工智能,2009,2(4):299-304.
[8] 蘇中,馬少平,楊強.基于Web-Log Mining的Web文檔聚類[J].軟件學(xué)報,2002,13(1):99-104.