謝婭利,龐煒千,白 靜,薛珮蕓,趙建星,師晨康
(太原理工大學 信息與計算機學院,山西 晉中 030600)
說話人識別是一種根據說話人的特征來確定身份的模式識別技術。說話人識別技術廣泛應用于各個領域[1,2],因此對說話人識別技術進行研究具有重要現實意義。
特征提取在說話人識別系統中扮演舉足輕重的角色。Huang JJ等[3]利用人耳的聽覺特性將小波包分解為五級,提取語音中包含的動態特征進行說話人識別。然而在信噪比較低的情況下,提取的特征參數會導致識別率顯著下降。Yang HY等[4]提出雙閾值函數去噪的特征方法進行說話人識別,該方法在低信噪比環境下具有更好的性能。然而該算法較復雜,訓練時間較長。周萍等[5]將伽瑪通濾波倒譜系數和梅爾頻率倒譜系數融合,并結合它們的動態特性構成混合參數,用高斯混合模型進行分類,實驗結果表明該參數具有更好的抗噪性和識別性。Zhang Yan等[6]從發音器官中提取發音動作參數,使用動態時間規整進行說話人識別,研究發現發音動作特征對噪聲環境下的說話人識別率有明顯提高。
通過上述研究發現,發音動作特征與聲學特征一樣具有識別性。目前說話人識別主要選用單模態特征,然而僅使用單模態特征進行說話人識別很難提高其識別率。于是本文對傳統發音動作特征進行改進得到參考點發音動作特征,并將其與聲學特征進行融合,采用基于懲罰項的嵌入式特征選擇去除冗余特征,得到雙模態融合特征,然后使用TORGO數據庫和自建庫進行實驗,驗證本文所提參考點發音動作特征和雙模態融合特征的有效性。
聲學特征可分為語言學特征和超語言學特征,語言學特征包括詞匯、句法、語法和語境等,超語言學特征有音質特征、韻律特征和頻譜特征。由于語言學特征提取和分析比較困難,本文選擇韻律特征和伽瑪通濾波倒譜系數進行說話人識別。
韻律特征主要體現語音信號語調和強度的特點,不同說話人的聲音強度和語調流暢度是不同的,由于韻律特征對信道環境噪聲不敏感,因此被廣泛應用于文本無關的說話人識別[7]。常見的韻律特征有振幅、共振峰、基頻、過零率、短時能量等。
信號的振幅表示振動的強度,幅值越大,信號的強度越高。共振峰是元音激勵產生的一組共振頻率,反映了聲道的共振特性。
基頻是濁音中聲帶振動的頻率。在發音過程中,聲門瞬間閉合,聲道受到強烈刺激,此時振幅急劇增加,導致突變,則該處基頻為兩個相鄰聲門閉合時間的倒數[8]。使用短時自相關函數進行基音檢測,則語音信號x(m)的基頻為
Rn(k)=∑N-km=nxn(m)xn(m+k)
(1)
語音信號在一幀內越過零電平的次數為過零率。它能在一定程度上反映信號的頻譜特性,從而對語音信號進行粗略估計,則函數表示為
Zn=0.5∑N-1m=0|sgn[xn(m)]-sgn[xn(m-1)]|
(2)
語音的短時能量可以通過它的響度來衡量。設各幀語音信號xn(m)的幀長為N,則能量公式為
En=∑N-1m=0x2n(m)
(3)
伽瑪通濾波倒譜系數(Gammatone filter cepstral coef-ficient,GFCC)是根據人耳的聽覺特性構造的語音特征參數,反映了說話人之間的差異,并且在一定程度上減小了噪聲對特征提取的影響,具有良好的識別性能。語音信號通過快速傅里葉變換后,使用伽瑪通濾波器組進行濾波,伽瑪通濾波器組可模擬人耳耳蝸基底膜的分頻特性[9],其濾波器的帶寬與人耳的臨界頻帶關系為
ERB(f)=24.7×(4.37f/1000+1)
(4)
對濾波器的輸出采用對數壓縮和離散余弦變換,得到聽覺特征參數GFCC
GFCC(i)=2π∑Mj=1αjcos[πiM(j-0.5)],i=1,2,…,N
(5)
其中,α1,α2,…,αj是一組對數能量譜,N是GFCC參數的維數,M表示濾波器的個數。
發音動作參數由三維電磁發音儀(3D electromagnetic articulography,EMA)采集,由發音部位產生的發音動作參數位移和速度值作為發音動作特征(articulatory movement features,AMF)[10,11]。EMA采集的發音動作參數都是原始數值,由于每個說話人發音部位的特性容易受到其它發音部位的相對位置變化的影響,在說話人識別系統中直接用初值進行分類效果并不太好,因此要對原始數據進行處理。于是本文對傳統發音動作特征進行改進,提出參考點發音動作特征(reference point articulatory movement features,RPAMF)提取算法,用來突破單獨發音部位提取的發音動作參數不足、識別率低的限制。
參考點發音動作特征提取算法的主要思路是由于說話人在發音時鼻梁始終與身體保持相對靜止,因此選擇以鼻梁為參考點,舌部(舌尖、舌中、舌后)、唇部(上唇、下唇)和下頜與參考點相對位移和相對速度作為發音動作參數,RPAMF參數公式如下

(6)

(7)

特征融合可同時提取多個特征,以實現特征互補并減少單個特征固有缺陷的影響[12]。聲學特征和發音動作特征能從不同角度反映說話人信息,由于不同特征之間具有互補性,有效的融合能更全面的表征出說話人特性。
本文提出的雙模態融合特征主要思路如下,首先提取語音的韻律特征如過零率、振幅、基頻、短時能量以及第1和第2共振峰,并計算韻律特征和GFCC的統計參數;其次選擇舌尖、舌中、舌后,上唇、下唇和下頜各單獨發音部位相對于鼻梁運動產生的平均位移、位移的方差、平均速度和速度的方差,組成72維RPAMF;然后將韻律特征和GFCC的統計函數與72維RPAMF特征融合,采用基于懲罰項的嵌入式特征選擇方法去除不相關和冗余的特征,組成最終的雙模態融合特征。
雙模態融合特征集合表示為
F={Fr,Fg,Frp}
(8)
其中,Fr表示韻律特征集合,Fg表示GFCC特征集合,Frp表示72維RPAMF特征集合。
韻律特征集合表示為
Fr={z,A,P,E,F1,F2}
(9)
其中,z為過零率;A為振幅的統計參數構成的向量,即
A=(maxA,minA,,maxA′,minA′,′)
(10)
各量依次為振幅的最大值、最小值、平均值,振幅變化率的最大值、最小值、平均值;P由基頻的統計參數構成,即
P=(maxP,minP,,maxP′,minP′,′)
(11)
各量依次為基頻的最大值、最小值、平均值,基頻變化率的最大值、最小值、平均值;E表示短時能量及其變換率的統計值,即
E=(maxE,minE,,maxE′,minE′,′)
(12)
各量依次為能量最大值、最小值、平均值和能量變化率的最大值、最小值、平均值;F1,F2分別表示由第1和第2共振峰的統計參數構成的向量,即
F1=(1,σ2F1,Δ1,σ2ΔF1)
(13)
F2=(2,σ2F2,Δ2,σ2ΔF2)
(14)
其各量依次為均值、方差及一階差分的均值和方差。
GFCC特征集合表示為
Fg={G1,G2…,Gk}
(15)
Gk= (k,σ2Gk,Δk,σ2ΔGk)
(16)
k取12,其各量依次為均值、方差及一階差分的均值和方差。
72維RPAMF特征集合表示為
Frp={Sx,Sy,Sz,Vx,Vy,Vz}
(17)
其中,Sx,Sy,Sz分別表示由舌尖、舌中、舌后,上唇、下唇和下頜相對于鼻梁X軸、Y軸、Z軸平均位移和位移的方差構成,即
Sx=(x,σ2Sx)
(18)
Sy=(y,σ2Sy)
(19)
Sz=(z,σ2Sz)
(20)
Vx,Vy,Vz分別表示舌尖、舌中、舌后,上唇、下唇、下頜相對于鼻梁X軸、Y軸、Z軸平均速度和速度的方差構成的特征向量,即
Vx=(x,σ2Vx)
(21)
Vy=(y,σ2Vy)
(22)
Vz=(z,σ2Vz)
(23)
為了去除冗余特征,采用基于懲罰項的嵌入式特征選擇方法,引入L1、L2范數正則化,L1正則項來選擇特征,L2正則交叉檢驗。其目標函數公式如下
minw∑ni=1(yi-wTxi)2+λ1w1+λ2w22
(24)
對于同類語音數據具有相似性和不同類數據具有不同幾何距離的特點,本文采用高斯混合模型-支持向量機(Gaussian mixture model-support vector machine,GMM-SVM)分類器創建說話人識別系統,GMM-SVM說話人識別系統結合了高斯混合模型(Gaussian mixture model,GMM)和支持向量機(support vector machine,SVM)的優點,與單獨使用GMM或SVM的說話人識別系統相比,具有更好的魯棒性和識別率,語音信號經過GMM模型參數化表示后的均值超向量可提高SVM模型對序列的分類能力,并且SVM在數據量較小時也能很好解決分類問題。GMM-SVM算法是通過GMM提取均值超矢量,利用SVM進行分類,從而達到說話人識別的目的[13]。GMM-SVM的說話人識別系統如圖1所示。

圖1 基于GMM-SVM的說話人識別系統
用KL距離表示不同說話人之間的差異性,其公式如下
D=∫Rnga(x)log(ga(x)gb(x))dx
(25)
其中,ga,gb是經過MAP自適應技術而得的,但KL距離不能直接用于SVM模型,需使用log-sum不等式來獲得KL距離上限,MAP自適應時,保持其方差和權重不變,只更新GMM模型的均值。假設滿足方差為對角矩陣,則公式如下
d=0.5∑Ni=1wi(μai-μbi)∑-1i(μai-μbi)
(26)
其中,μa,μb為MAP自適應后的均值超向量。從上述兩式可得,0≤D≤d, 均值超向量間的差距越大,兩個語音段的差異就越大,從而能更好區分說話人。由于上式具備良好的對稱性,可以將上式轉換為內積樣式,讓核函數滿足SVM模型的KKT約束條件
K(utta,uttb)=∑Ni=1wi(μai)t∑-1iμbi=∑Ni=1(wi∑-0.5iμai)(wi∑-0.5iμbi)
(27)
從而得到基于GMM模型均值超向量的線性核函數。
在SVM模型中,將多分類問題分解為多個二值分類問題,采用一對多的方法。一對多方法要求將每個類別分別訓練成相應的分類器,對于n個類別,需要分別訓練n個相應的分類器。對于非線性SVM分割超平面表示為
f(x)=∑mi=1αiyiκ(xi,xj)+b
(28)
其中,κ(xi,xj) 就是核函數,核函數將原始樣本空間映射到高維空間,找到最優分類超平面,從而將非線性分類問題轉化為線性分類問題。
為驗證本文所提方法的優越性,采用多倫多大學和語音病理學系聯合開發的TORGO數據庫和實驗室自建庫進行實驗。TORGO數據庫包含約23 h的英語語音數據和發音動作數據,構音障礙的類型是腦癱或肌萎縮性脊髓側索硬化癥[14],無其它身體損傷,能自主發音。實驗室自建庫包含健聽學生和構音障礙患者的普通話語音數據和發音動作數據,健聽學生為在校大學生,構音障礙患者為聽力障礙,佩戴助聽器有5年以上,并擁有一年以上語言康復訓練經歷,無其它身體損傷,能自主發音。數據庫基本構成情況見表1和表2。

表1 TORGO數據庫概況

表2 自建數據庫概況
在實際應用中,語音內容大多與文本無關,可供識別的語音數據也往往較少,隨著語音持續時間的縮短,準確率將顯著降低。針對上述問題,本文隨機選取每人60個不同短文本,為了避免數據質量對實驗結果造成不良影響,在開始實驗之前需要對原始數據進行多次篩選,用Praat軟件篩選聲學數據,Visartico軟件篩選運動學數據,經過雙重篩選后,每人提取40條語音數據,40條發音動作參數數據。
本文用TORGO數據庫和自建庫進行實驗,使用SVM、GMM-SVM對說話人進行識別,GMM模型選擇混合度為32,采用K-Means實現模型參數初始化。核函數采用徑向基核函數,根據粒子群算法優化參數[15]。采用10折交叉驗證方法對說話人進行分類實驗。
為測試所提RPAMF特征對正常人和構音障礙患者不同發音部位的識別性能,把構音障礙患者設為對照組,對傳統發音動作特征和參考點發音動作特征進行對比實驗,測試改進RPAMF特征的識別率。然后去除病理因素對所有人進行實驗,驗證改進RPAMF特征的有效性。測試結果見表3和表4。

表3 TORGO數據庫不同發音部位AMF和RPAMF識別率/%

表4 自建庫不同發音部位AMF和RPAMF識別率/%
從表3和表4的實驗結果得出,無論正常人還是構音障礙患者,無論使用何種分類器,提出的RPAMF的識別準確率都比AMF的識別準確率高,使用GMM-SVM分類器后優化效果更為明顯。將正常人和構音障礙患者作為整體實驗對象進行實驗,實驗結論同樣適用。驗證了本文所提RPAMF的有效性。
從上述實驗結果得出,無論使用何種數據庫,本文所提的RPAMF的識別性能都比AMF的識別性能好,因此將TORGO數據庫和自建庫作為整體實驗對象,測試單模態特征的分類精度及所提雙模態融合特征的識別性能。具體分類識別結果見表5。

表5 說話人各類特征識別率/%
從表5可以看出,無論使用何種分類器,雙模態融合特征相比于單模態特征識別準確率都有所提高。使用SVM分類器,雙模態融合特征識別準確率達到了94.57%,相比于單模態特征識別準確率最少提高了4.21%,提升較為明顯,使用雙模態融合特征和GMM-SVM分類器的組合達到的識別準確率最高,識別準確率達到了96.72%,體現了本文所提雙模態融合特征的優越性,雙模態融合特征可以更好地表征說話人之間的差異,同時選用GMM-SVM分類器,可以取得更好的識別效果。
隨著社會的發展,說話人識別越來越重要。雖然相關研究成果十分豐富,但單模態特征并不能很好的表現說話人之間的差異,于是本文將聲學統計特征和參考點發音動作特征進行融合,采用基于懲罰項的嵌入式特征選擇去除冗余特征,從而構成雙模態融合特征下的說話人識別系統。在TORGO數據庫和自建庫上進行實驗,實驗結果驗證了本文所提RPAMF的優越性。同時,將兩數據庫作為整體實驗對象,測試不同特征的分類精度,從而發現雙模態融合特征能實現更高的識別率。在今后的研究中,需要對特征融合做進一步的理論研究和技術改進,力求達到更高的識別率。