綜上,一段語音就被映射為時間軸上一系列的向量集合,這些集合再通過一些規(guī)整的操作后,即可成為反映語音特性的特征集合。但僅靠這些特征集合還難以實現(xiàn)聲紋識別的目標,聲學(xué)特征可以理解為時間軸上為聲道拍攝的一系列快照,它直接映射的仍然是語意的內(nèi)容,如何從一堆變化的特征中提取出不變的身份特性呢?接下來,就是統(tǒng)計建模發(fā)揮威力的時候了。
3. 化繁為簡-聲紋模型的進化路
既然希望計算機能夠識別一個用戶的聲紋,那首先得讓計算機“認識”這個用戶的身份。典型的聲紋識別的系統(tǒng)的框架如下圖所示:

圖7:典型的說話人確認系統(tǒng)流程圖
聲紋識別系統(tǒng)是一個典型的模式識別的框架,為了讓計算機認識一個用戶的身份,需要目標用戶首先提供一段訓(xùn)練語音,這段語音經(jīng)過特征提取和模型訓(xùn)練等一系列操作,會被映射為用戶的聲紋模型。在驗證階段,一個身份未知的語音也會經(jīng)過一系列的操作被映射為測試特征,測試特征會與目標模型進行某種相似度的計算后得到一個置信度的得分,這個得分通常會與我們?nèi)斯ぴO(shè)定的期望值進行比較,高于這個期望值,我們認為測試語音對應(yīng)的身份與目標用戶身份匹配,通過驗證;反之則拒絕掉測試身份。因此,識別性能好壞的關(guān)鍵在于對語音中身份信息的建模能力與區(qū)分能力,同時對于身份無關(guān)的其余信息具有充分的抗干擾能力和魯棒性。
盡管每個人的語音看起來千變?nèi)f化,但也不是完全沒有規(guī)律可循。盡管我們每天會說很多話,但常用的字詞至多只有數(shù)千個左右的級別;另外我們也做不到和家里的旺財發(fā)出一模一樣的叫聲。這也引出了聲紋識別,同時也是傳統(tǒng)的語音識別框架下的一個很合理的假設(shè):將語音拆分到音素(phone)的級別,狹義的現(xiàn)代漢語只需要32個音素就已經(jīng)足夠用了。
如果考慮到每個音素的形態(tài)還會受到前后音素的影響,構(gòu)建三音素模型(tri-phone)的話,那至多也只有幾千個備選的三音素集合(不是簡單的32的三次方,我們也會去掉一些稀有的和根本不會出現(xiàn)的搭配),而不同說話人的三音素樣本盡管有明顯的差異,但都能在空間中的某個區(qū)域內(nèi)聚類。由語音和對應(yīng)的聲學(xué)特征的這些性質(zhì)啟發(fā),1995年DA Reynolds首次將混合高斯模型(Gaussian Mixture Model,GMM)成功地應(yīng)用于文本無關(guān)的聲紋識別任務(wù),至此之后的20多年,奠定了GMM在聲紋識別中地基的地位,后續(xù)聲紋的發(fā)展演進都是以GMM作為基礎(chǔ)進行改進和拓展的。
在繼續(xù)深入了解建模之前,我們有必要明確聲紋識別,或者把范圍再縮小一些,明確文本無關(guān)聲紋識別任務(wù),它的難點在哪里?在前文也提到過,聲紋識別是一個兼具理論研究價值與工程應(yīng)用背景的領(lǐng)域,聲紋的難點主要在以下幾個方面:
如何在語音多變性的背后,挖掘不變的身份信息。
實際應(yīng)用中,從用戶體驗和成本的角度上考慮,針對目標用戶可采集到的語料是極其有限的(按照學(xué)術(shù)上的定義,實際可用的語音是稀疏(sparse)的),如何在有限的數(shù)據(jù)中完成穩(wěn)定的建模與識別。
對于同一個用戶,即便采集到的兩段語音內(nèi)容都是相同的,但由于情緒、語速、疲勞程度等原因,語音都會有一些差異性。如何補償這種說話人自身語音的差異性。
聲音是通過錄音設(shè)備進行采集的,不同的型號的錄音設(shè)備對語音都會造成一定程度上的畸變,同時由于背景環(huán)境和傳輸信道等的差異,對語音信息也會造成不同程度的損傷,一般在研究中將這些外界影響語音的效應(yīng)稱為信道易變性(Channel Variability)。我們難以做到針對每一種信道效應(yīng)都開發(fā)對應(yīng)專屬的聲紋識別系統(tǒng),那么如何補償這種由于信道易變性帶來的干擾。
明確了需要解決的問題之后,再回過來看GMM,它的優(yōu)勢在哪里?首先GMM是什么,它是一大堆形狀不定的高斯分量的加權(quán)組合。有研究表明,當GMM中高斯分量的數(shù)量足夠多的時候,GMM可以模擬任意的概率分布。

圖8:我們只利用了七個葫蘆娃就擬合出了一座山(畫圖真心太累,你們懂了就好_(¦3」∠)_)