最近在做畢設(shè),所以查了很多的資料。有paper有博客,牛人太多了,浙大的一個妹子真的是太厲害了,而且長的也女神~~廢話不多,接下來總結(jié)一下
GMM-HMM是兩個算法,GMM和HMM。
其中GMM是混合高斯模型(Gauss of mixture models),什么意思呢。意思是說,給出一堆觀察序列(可以是多維的可以是一維的),用幾個高斯函數(shù)模擬一個模型,這個模型產(chǎn)生這些觀察序列的概率最大,其中組合在一起的每個高斯函數(shù)都有一個權(quán)重設(shè)為Pi,所有Pi的和是1.那么通過EM算法的學(xué)習(xí)方法,把所有高斯函數(shù)的參數(shù)都給學(xué)習(xí)出來。高斯函數(shù)的限定只有兩個參數(shù)我們稱之為[mu,sigma],學(xué)過高斯人都應(yīng)該知道,mu是中心點也就是均值,sigma代表了高斯函數(shù)的胖瘦,還有一個參數(shù)就是權(quán)重Pi。當模型搭建好了,用一個test序列跑一下,可以得出每個高斯函數(shù)的概率。GMM也是一個聚類過程,幾個高斯函數(shù)就是幾個中心。學(xué)習(xí)過程就是訓(xùn)練聚類的訓(xùn)練過程。
HMM是隱馬爾科夫模型,是在不知道實際狀態(tài)變化過程的情況下可以看到觀察序列。
之前一直不知道為啥要引入GMM,原來是HMM分為離散馬爾科夫和連續(xù)的馬爾科夫。比如說,離散的我可以窮舉出所有的觀察可能值,但是連續(xù)的就有無窮多觀察值,這樣Observe就不能確定了。那么需要引入GMM。
GMM把所有的訓(xùn)練樣本學(xué)習(xí)一遍。把類似離散馬爾科夫中的發(fā)射矩陣訓(xùn)練出來。也就是狀態(tài)->觀察值(可以是數(shù),向量等)。這樣HMM再訓(xùn)練自己的狀態(tài)轉(zhuǎn)移矩陣等,這樣HMM就可以用了。
對于每個單詞訓(xùn)練一個HMM的類型。只要將信號通過MFCC提取特征值,MFCC可以得到一個 特征維數(shù)*幀數(shù) 的矩陣。也就是說觀察序列為特征維數(shù)*幀數(shù) 的矩陣。
聯(lián)系客服