張志偉,楊可林,馮志常,王天俁
(國網山東省電力公司菏澤供電公司,山東 菏澤 274002)
在電力調度通話過程中,工作指令的下達越來越規范化,身份認證是不可或缺的一環[1-2],由于調度指令下達的特殊性,遠程身份認證至關重要,說話人確認就是一種合適的身份認證技術。在下達工作指令時使用說話人確認技術驗證其身份,既規范操作流程,又明確相關責任。
說話人確認主要分為特征提取和說話人建模兩個部分[3]。Davis 等人提出Mel 倒譜系數(Melfrequency Cepstral Coefficients,MFCC)[4]進行特征提取,然而該方法存在著抗噪性能差、不能提取聲音信號深層動態信息的問題。目前很多研究致力于提高說話人確認系統的抗噪能力。Babak 等提出Mel 子帶頻譜減法和Mel 子帶能量壓縮[5]針對Mel 子帶能量以及MFCC 特征的噪聲進行補償提高抗噪性。Paresh 等提出基于維納濾波器改進的MFCC[6],該濾波器有利于在頻域范圍內處理語音中的噪聲。Adam 等提出小波倒譜系數[7],運用小波變換進行特征提取,小波變換使用的是有限長會衰減的小波基,使噪聲只能對局部信號造成影響而不會干擾整個特征提取過程。
隨著深度學習的發展,基于深度學習的說話人識別對聲音進行深層處理提取深層特征也帶來了識別性能的提升[8]。Snyder 等人提出x-vector[9-10]將任意長度的輸入轉化成固定維度的說話人嵌入特征表達。目前性能優異的網絡模型大多數是基于x-vector 的變體[11-13]。強調通道注意、傳播和聚合的時延神經網絡(Emphasized Channel Attention,Propagation and Aggregation in Time Delay Neural Network,ECAPA-TDNN)[14]也是基于x-vector 改進而來的結構,它通過引入擠壓激勵殘差模塊(Squeeze-Excitation Res2Block,SE-Res2Block)、注意力統計池化(Attentive Statistics Pooling,ASP)和多層聚合等結構改善了x-vector 幀級時間背景限制和特征層次單一的問題。
為提高說話人確認特征提取過程的抗噪性能以及深層動態信息的提取能力,提出一種基于小波包倒譜系數(Wavelet Packet Cepstral Coefficients,WPCC)和ECAPA-TDNN 的說話人確認模型,該模型在原有MFCC 的基礎上將快速傅里葉變換(Fast Fourier Transform,FFT)更換為小波包分解,增加了倒譜均值方差歸一化以及delta、delta-delta 系數,為ECAPA-TDNN 提供具有深層動態特征的WPCC 聲學特征。該模型加強了對說話人特征的提取能力,提升了電網指令調度過程的安全性和規范化。
傳統MFCC 的提取流程如圖1所示,其關鍵部分是利用FFT 將固定語音幀由時域變換到頻域。FFT通過三角函數(正弦函數或余弦函數)線性組合得到,而三角函數是全時域函數,局部信號中的噪聲會對整個聲音信號的特征提取造成影響,導致在MFCC提取過程中容易受到噪聲的干擾。

圖1 MFCC特征提取
同時由于FFT 計算過程中其窗函數固定,該方法無法對聲音信號進行深層頻率分析,導致其提取的特征向量僅包含該語音幀的靜態信息和淺層信息,不能凸顯相鄰語音幀之間的動態關系以及聲音信號中的深層特征。
為了提高特征提取過程的抗噪性、穩健性以及充分挖掘聲音信號中的動態信息和深層特征,提出小波包倒譜系數進行特征提取,其流程如圖2 所示,主要改進策略是用小波包分解代替FFT 進行特征變換,對經過倒譜計算后的聲學特征進行倒譜均值方差歸一化(Cepstral Mean and Variance Normalization,CMVN)[15]以及通過計算delta 和delta-delta 系數獲取相鄰語音幀之間的動態關系。

圖2 WPCC特征提取
小波包分解流程如圖3 所示,它是一種局部分析工具,受到噪聲干擾后不會影響整個頻譜變換過程,僅對局部提取造成影響,且信號被多層分解,這使WPCC 能提取更加深層的特征。CMVN 通過計算補償的倒譜系數,將倒譜系數限定在固定范圍內,來消除異常樣本數據導致的不良影響,保證特征向量的穩健性。delta 和delta-delta 系數包含了鄰近語音幀之間的交互關系,在獲取說話人的風格、停頓和持續時間等信息中發揮著重要作用。

圖3 小波包分解
數據預處理可以分為數據預加重、分幀兩個部分。由于聲音信號的功率隨頻率升高而降低,故其大部分能量集中在低頻信號中,在通過濾波器時,高頻信號發生的衰減更加嚴重。為減少高頻部分的信息衰減,采用預加重對高頻分量進行補償,如式(1)所示。
式中:a為預加重系數,本文取a=0.98;n為聲音信號中采樣點的序號;s(n)和s(n-1)為原始信號;s′(n)為預加重之后的信號。分幀將聲音信號分為每幀20 ms 的長度,同時也設定10 ms 的重疊幀,保證每一幀都盡量的平穩。
小波包分解由一對遞歸的帶通濾波器實現,令輸入的聲音信號x(n)=(n);j為小波包分解的分解層數,其公式如式(2)所示。
式中:k為小波函數的位置參數;h(·)和g(·)分別為高通濾波器和低通濾波器(·)是經過j層小波包分解得到的第p個子帶分量是(·)的高頻部分是的低頻部分。
由于經過倒譜分析后的參數包含更多的說話人信息,具有更好的代表性,對語音信號進行倒譜計算后將得到其倒譜系數。
設wi(z)為長度為Z的子帶分量,z為wi的位置數,對其進行對數計算得到對數譜為
將對數譜進行離散余弦變換,得到w i的第l個倒譜系數為
首先根據計算得到的倒譜系數計算所有倒譜系數的均值和方差,設聲音信號的總幀數為T,聲音信號第t幀的倒譜系數向量為ct。均值以及方差分別如式(5)和式(6)所示。
則每一幀的補償倒譜系數向量為
經過倒譜均值方差歸一化后共生成16 組倒譜系數,再對16 組倒譜系數計算delta 系數和deltadelta系數。
delta系數計算公式為
式中:q 表示dt計算時包含周圍t+q和t-q位置的倒譜系數;Q為q的上限值,且本文取Q=2。
將計算得到的倒譜系數、delta 和delta-delta 系數拼接在一起得到最終的WPCC特征。
目前應用廣泛的說話人建模方法是基于時延神經網絡(Time Delay Neural Network,TDNN)[16]的x-vector,該方法僅處理了最后一個幀級提取器中的特征,且對所有幀級特征的重視程度相同。為提高幀級特征的利用率,突出區分度強的深層動態特征,將ECAPA-TDNN 的輸入MFCC 更換為包含深層動態特征的WPCC。
ECAPA-TDNN 的結構如圖4 所示,圖中Conv1D為一維卷積運算;ReLU 為非線性激活函數;BN 為批歸一化;FC 為全連接層。該模型運用SE-Res2Block增強了幀級特征的提取能力,并構建了一個多層次的剩余連接,通過多層特征聚合提高了深層特征的表達能力。

圖4 ECAPA-TDNN 結構
SE-Res2Block模塊如圖5所示,該結構將殘差結構[17]與擠壓激勵模塊(Squeeze and Excitation Block,SE-Block)[18]相互結合,通過在幀級層之間添加殘差連接來增強說話人嵌入特征。該結構被用于建模通道間的互相依賴關系,并構建了分層剩余連接來處理多尺度特征。SE-Block 根據全局聲音屬性重新縮放每個通道的時間上下文限制的幀級特征。

圖5 SE-Res2Block模塊
ECAPA-TDNN 使用多層特征聚合,將最終的幀級特征與通過SE-Res2Block 計算得到的前兩層幀級特征融合起來,為統計池化層提供多層次的特征信息。然后通過注意力統計池化層的處理,將每一個幀級特征的重要性賦予其不同的權重,把網絡的注意力集中在具有代表性的幀級特征中,并將幀級特征聚合成段級特征。最后利用全連接層將段級特征映射為512維的說話人嵌入。
實驗采用TIMIT數據集[19]進行訓練和測試,該數據集由630 名說話人構成,每個說話人提供10 條語音。訓練集包括6 100條語音,這些語音被用于模型參數訓練。測試集由200 條語音隨機生成13 191對語音組成,用于說話人確認性能評估。
為測試模型的抗噪性能,在語音樣本中加入信噪比(Signal-Noise Ratio,SNR)分別為30 dB、20 dB和10 dB 的高斯白噪聲來模擬噪聲環境,信噪比越小代表信號中的噪音成分越大,識別難度越高。
為獲得更好的性能,在訓練階段均采用AAMSoftmax[20]損失函數(m被設置為0.20,s被設置為30)進行迭代訓練。在測試階段,余弦距離被用來衡量兩個嵌入特征的相似度。實驗采用等錯誤率(Equal Error Rate,EER)來評估模型性能。
使用MFCC+x-vector、WPCC+x-vector、MFCC+ECAPA-TDNN 和WPCC+ECAPA-TDNN 在干凈條件下進行對比實驗,其中WPCC 使用消失距為26 的Daubechies 小波進行訓練和測試,實驗結果如表1所示。
分析表1的結果,發現本文提出的基于WPCC和ECAPA-TDNN 模型EER 最低,該模型相較于傳統的MFCC 與x-vector 模型提升巨大。本文構建的WPCC無論結合ECAPA-TDNN還是x-vector性能都有增強。使用ECAPA-TDNN 說話人建模時,WPCC 相較于MFCC 提升接近26%,使用傳統的x-vector 時提升更大,達到51%。小波包分解通過多尺度變換和delta、delta-delta 系數提取了原始音頻中的深層特征和動態信息,使倒譜系數擁有了更好的表征能力。

表1 不同模型性能對比 單位:%
圖6 是4 種不同模型分別在干凈、30 dB、20 dB和10 dB 條件下的實驗結果。分析圖6 可知,隨著信噪比的降低,4 種模型的識別性能都有所降低,這說明噪聲是一個極大影響識別性能的因素;使用WPCC 的模型性能在不同信噪比條件下均優于MFCC,這是由于WPCC 使用小波包分解獲得一組獨立頻譜,抑制了聲音信號中的噪聲表達,且小波包分解比FFT具有更豐富的時頻分辨率。

圖6 不同信噪比條件下模型結果
小波基函數是WPCC 的一個關鍵問題,合適的小波基函數可以提高WPCC 的性能。這一部分旨在評估不同小波基函數和消失距在不同信噪比條件下的性能表現。考慮Daubechies 小波和Symlets 小波,實驗中分別用DbN和SymN表示Daubechies 小波和Symlets小波,其中N是消失距大小。
圖7 和圖8 分別是本文模型使用Daubechies 小波和Symlets 小波在不同消失距和信噪比條件下的實驗結果。通過比較這兩張圖發現,當信噪比為10時,系統性能最差,除了Db26 以外的所有EER 都大于5%。Db26 在信噪比為10 dB 和30 dB 時,性能最優,EER分別為1.20%和4.80%。而在信噪比為20 dB的條件下,Db26 的EER 相較于Db14 升高了8.25%。Symlets 小波在信噪比為30 dB、20 dB 和10 dB 條件下得最優結果分別為1.37%、2.40%和5.66%,消失距均為20。

圖7 Daubechies小波不同信噪比實驗

圖8 Symlets小波不同信噪比實驗
這些結果表明消失距和支撐度的大小是影響小波包倒譜系統性能的兩個關鍵因素,提升小波的消失距對提高模型性能有一定的幫助,當增大小波的消失距時,支持度增大,小波基函數變得平滑,從而可以更好逼近聲音信號。但從圖7 可以觀察到消失距并不完全與性能呈正相關趨勢,Db32 在三種信噪比條件下的EER 均高于Db26,當小波基函數的消失距和支撐度增大到一定程度時,小波基函數會過于平滑,將丟失聲音信號中的細節特征,不利于特征表達。所以須在消失距和支撐度大小之間達到平衡。從上述結果表明,Db26 是WPCC 中綜合性能最優的小波基函數。
提出一種基于WPCC和ECAPA-TDNN的說話人確認模型,并使用TIMIT 數據集訓練和測試。實驗結果表明,該模型性能比傳統的MFCC 和x-vector 模型提升明顯,WPCC特征提取方式相較于MFCC 方式抗噪性能和泛化能力也更好,在不同信噪比條件下均有增強。同時也研究了不同小波基函數和消失距對識別性能的影響,發現消失距為26 的Daubechies小波是WPCC 中綜合性能最優的小波基函數。該研究成果將極大地提高說話人確認技術在電力調度通話過程中的應用,促進指令調度流程的規范化和智能化。