婁迎曦,袁文浩,時云龍,胡少東
(山東理工大學 計算機科學與技術學院, 山東 淄博 255049)
語音作為生活中傳遞信息的重要載體之一,倘若受到噪聲的干擾會嚴重影響對目標語音的獲取。語音增強作為信號處理中的關鍵技術,旨在提高語音信號的質(zhì)量和可懂度、舒適度[1]。傳統(tǒng)的語音增強方法有譜減法[2-3]、維納濾波法[4]等,在假設噪聲是平穩(wěn)的條件下對含噪語音進行增強,對非平穩(wěn)的噪聲抑制能力較差。
隨著深度學習技術的不斷發(fā)展,研究人員開始將深度學習應用到語音增強任務。文獻[5]通過深度神經(jīng)網(wǎng)絡(deep neural networks,DNN)學習含噪語音和純凈語音之間的非線性關系,以語音的對數(shù)功率譜特征(logarithmic power spectra,LPS)作為網(wǎng)絡的輸入和訓練目標,相比傳統(tǒng)的語音增強方法顯著提高了語音增強性能。文獻[6]使用復數(shù)域上的復數(shù)理想比率掩碼(complex ideal ratio mask,cIRM)作為訓練目標,實現(xiàn)了對純凈語音幅度譜和相位譜的同步估計??紤]到語音在時頻域中的二維相關性,文獻[7]將卷積神經(jīng)網(wǎng)絡(convolutional neural networks,CNN)應用到語音增強領域。文獻[8]提出一種全卷積神經(jīng)網(wǎng)絡(fully convolutional networks,F(xiàn)CN),實現(xiàn)含噪語音到純凈語音的直接映射,相比基于DNN的語音增強方法,顯著提高了語音增強的可懂度。文獻[9]使用Maxout激活函數(shù)代替Sigmoid激活函數(shù),解決了基于CNN訓練過程中過擬合的問題??紤]到語音序列相鄰幀之間的關聯(lián)性,文獻[10]使用循環(huán)神經(jīng)網(wǎng)絡(recurrent neural networks,RNN)隨著序列時間上的變化進行建模,進一步提高了語音增強的性能。文獻[11]使用長短時記憶網(wǎng)絡(long short-term memory,LSTM)有效緩解了RNN在處理語音增強問題時梯度消失和梯度爆炸的問題。文獻[12]提出了一種基于LSTM-RNN的語音增強方法,使用LPS特征作為輸入,分別將純凈語音的LPS和IRM作為訓練目標,實驗結(jié)果表明,該方法可有效提升增強后語音的質(zhì)量和可懂度。
實際上,無論采用哪種網(wǎng)絡結(jié)構進行語音增強,都應充分利用語音序列信息上下文之間的相關性,使網(wǎng)絡更好地學習含噪語音和純凈語音之間的非線性關系,因此網(wǎng)絡模型的輸入通常是連續(xù)的多幀含噪語音序列。然而含噪語音序列相鄰幀所包含的信息并非都是有利信息,也有可能是噪聲主導的干擾信息。傳統(tǒng)的循環(huán)神經(jīng)網(wǎng)絡在處理含噪語音序列時,將不同時間步上的輸入編碼為固定長度的向量表示,使得網(wǎng)絡無法有選擇性地學習序列信息,限制了網(wǎng)絡模型的性能。因此,本文將Attention機制與準循環(huán)神經(jīng)網(wǎng)絡(quasi-recurrent neural network,QRNN)結(jié)合,設計出一種融合注意力機制的QRNN(ATT-QRNN)語音增強模型?;赒RNN對含噪語音并行計算的特性保證網(wǎng)絡模型的訓練速度,通過Attention機制使得QRNN的輸入是賦予權重的含噪語音序列,從而提高網(wǎng)絡模型對含噪語音序列中目標信息的學習能力,以提高網(wǎng)絡的增強性能。
QRNN相鄰時刻的隱層連接方式不再采用全連接的形式,而是將連續(xù)時間步上的隱層單元連接改進為僅對上一時刻對應隱層單元連接,表示QRNN網(wǎng)絡在多路隱層單元之間可以進行并行計算,從而提高網(wǎng)絡的訓練速度。QRNN由卷積層和池化層組成,通過卷積對含噪語音序列信息進行跨緯度特征提取作為網(wǎng)絡的輸入,并構造門控函數(shù)和記憶單元使得網(wǎng)絡可以保存之前時刻的序列信息。QRNN在t時刻隱層單元結(jié)構如圖1所示,由遺忘門、輸出門和記憶單元組成。
圖1 QRNN隱層單元結(jié)構
遺忘門ft控制隱層單元對當前時刻輸入序列的保留程度;記憶單元ct控制隱層單元對之前時刻序列信息的保留程度;輸出門ot決定隱層單元的輸出。對給定的含噪語音序列X=[x1,x2,...,xT],經(jīng)過大小為k的濾波器卷積后得到第t幀為中心連續(xù)k幀的含噪語音序列Xt=[xt-(k-1)/2,...,xt,...,xt+(k-1)/2]作為網(wǎng)絡的輸入,根據(jù)k的取值不同可以改變輸入到隱層單元的語音序列維度。此時QRNN中序列信息zt、遺忘門ft、輸出門ot的計算公式為:
(1)
(2)
(3)
式中:Wz、Wf、Wo均為門函數(shù)的權重矩陣;elu、σ表示激活函數(shù)。最后通過記憶單元ct貫穿不同時刻序列信息的保留程度并決定網(wǎng)絡隱層最后的輸出ht:
ct=ftοct-1+itοzt,
(4)
ht=otοct。
(5)
Attention機制是一種資源分配機制,常用于序列任務分配。通過對關鍵的序列信息賦予更大的權重,提高網(wǎng)絡對目標信息的關注程度。在語音增強的任務中,不同時刻輸入網(wǎng)絡中的序列對語音增強效果的影響是不同的,因此本文在模型中引入Attention機制,使網(wǎng)絡以高注意關注目標語音的某一區(qū)域,同時以低注意感知噪聲干擾信號,且網(wǎng)絡可以隨著時間的推移改變注意力的焦點。Attention機制的更新方式為
(6)
式中:αij是通過Attention機制的線性層學習得到的權重系數(shù);dj為Attention機制層的輸入;vi為Attention機制層的輸出。
本文將Attention機制與QRNN網(wǎng)絡結(jié)合,使模型在保證訓練速度的基礎上更有效地學習語音序列的上下文關系,以達到更好的增強效果。融合Attention機制的QRNN語音增強模型如圖2所示,網(wǎng)絡由輸入層、Attention機制層、QRNN層以及輸出層組成,其中卷積層的并列模塊表示QRNN對含噪語音序列的并行處理。
圖2 基于ATT-QRNN的語音增強模型
本文將Attention機制應用在網(wǎng)絡的輸入層之后,即網(wǎng)絡不再以含噪語音序列直接作為QRNN層的輸入,而是直接將含有權重系數(shù)的含噪語音序列作為后續(xù)QRNN層的輸入。則Attention在t時刻的輸出vt可表示為
vt=αtXt,
(7)
式中:αt是通過Attention機制對含噪語音序列賦予的權重;Xt為當前時刻網(wǎng)絡輸入的連續(xù)多幀含噪語音序列特征。
基于ATT-QRNN的語音增強方法見表1。
表1 基于ATT-QRNN的語音增強方法
實驗階段采用的數(shù)據(jù)集由愛丁堡大學信息學院語音技術研究中心(CSTR)[13]提供。該數(shù)據(jù)集包括純凈語音數(shù)據(jù)集Voice Bank集[14]和噪聲數(shù)據(jù)集Demand集[15]。在訓練階段將Voice Bank集中的28位說話人錄音和Demand集中的8類噪聲、2類人工合成噪聲按照15、10、5和0 dB的全局信噪比合成11 572段含噪語音文件。在測試集將Voice Bank集中的2位說話人錄音和Demand集中的另外5類噪聲按照17.5、12.5、7.5和2.5 dB的全局信噪比合成824段含噪語音文件。
在數(shù)據(jù)處理階段所有語音文件均采用16 kHz進行重采樣,實驗STFT的語音窗長設為512點(32 ms),幀移設置為256點(16 ms)。網(wǎng)絡采用連續(xù)7幀的含噪語音LPS特征作為輸入,采用純凈語音的幅度譜掩蔽特征作為網(wǎng)絡的訓練目標,損失函數(shù)采用MAE。網(wǎng)絡迭代epoch設為50,batchsize設為512,優(yōu)化器選用Adamax。為驗證ATT-QRNN模型的合理性和有效性,實驗階段使用QRNN模型作為基準模型,旨在驗證ATT-QRNN能夠利用QRNN模型提升訓練速度的前提下,提高網(wǎng)絡模型的性能。此外還將LSTM和GRU網(wǎng)絡以及融合相同注意力機制的ATT-LSTM、ATT-GRU進行語音增強,以對比ATT-QRNN在增強后語音的性能以及網(wǎng)絡訓練時間上的優(yōu)勢。
本文采用的語音增強性能的評價指標主要包括主觀語音質(zhì)量評估(perceptual evaluation of speech quality,PESQ)[16]、短時客觀可懂度(short-time objective intelligibility,STOI)[17]、語音信號失真指數(shù)(CSIG)[18]、背景噪聲失真指數(shù)(CBAK)[18]、整體質(zhì)量(COVL)[18]。其中,PESQ是國際上公認的客觀MOS評估指標,其取值范圍介于[-0.5,4.5]之間,取值越高表示增強后語音的質(zhì)量越高。STOI是衡量增強后語音可懂度的重要指標,尤其是在低信噪比的情況下,STOI的得分情況具有重要意義,其取值范圍介于[0,1]之間,取值越高表示增強后語音的可懂度越高。CSIG、CBAK、COVL是通過多種指標線性回歸分析得到的,取值范圍均介于[0,5]之間,取值越高表示增強后語音的質(zhì)量越高。
2.3.1 網(wǎng)絡訓練時間和參數(shù)量對比
本文旨在保障網(wǎng)絡訓練速度的基礎上提高語音增強的性能,因此本文首先對比了ATT-QRNN網(wǎng)絡和其他模型的參數(shù)量和每個epoch上的訓練時間,對比結(jié)果見表2。
表2 不同網(wǎng)絡訓練時間和參數(shù)量對比
結(jié)果表明,ATT-QRNN的參數(shù)量與QRNN近似,明顯少于LSTM、GRU、ATT-LSTM、ATT-GRU的,
雖然ATT-QRNN與QRNN相比在每個epoch的平均訓練時間上存在延時,但與其他模型相比仍有大幅度提升。即基于ATT-QRNN的語音增強模型綜合上具有較少的訓練參數(shù)和較快的訓練速度。
2.3.2 語音增強性能對比
在語音增強性能的對比上,首先采用PESQ和STOI兩種指標對比增強后語音的質(zhì)量和可懂度。圖3給出了不同網(wǎng)絡增強后的PESQ與STOI得分情況。在相同的信噪比下,ATT-QRNN以及其他模型的PESQ和STOI得分相比含噪語音均有不同程度提升,且基于ATT-QRNN的語音增強方法的兩種評估指標得分提升幅度最大,表明注意力機制能有效地改善含噪語音的質(zhì)量和可懂度。
(a)PESQ得分
表3對比了ATT-QRNN與其他模型在不同信噪比下CSIG、CBAK、COVL的得分情況。通過對表3觀察發(fā)現(xiàn),語音增強網(wǎng)絡各項評估指標的取值相比于含噪語音的評估指標均有所提升。其中基于ATT-QRNN的語音增強方法在CSIG指標的12.5 dB和17.5 dB上得分略低于ATT-GRU;在COVL指標的7.5 dB上得分略低于ATT-LSTM、ATT-GRU;在其他不同信噪比和指標下,ATT-QRNN均取得了最優(yōu)得分。綜合表3的得分情況,盡管ATT-QRNN在某些信噪比下的得分略低于其他網(wǎng)絡模型,但在同一指標不同信噪比的平均得分水平上,ATT-QRNN均取得了最優(yōu)得分。
表3 不同網(wǎng)絡的語音增強性能比較
為了更加直觀地對比不同網(wǎng)絡的語音增強效果,本文以信噪比為2.5 dB的一段含噪語音為例,對比了該含噪語音以及對應的純凈語音、不同網(wǎng)絡增強后的語音語譜圖。圖4(a)—圖4(h)分別表示純凈語音、含噪語音以及基于LSTM、GRU、QRNN、ATT-LSTM、ATT-GRU、ATT-QRNN增強后的語音語譜圖。
(a)純凈語音 (b)含噪語音 (c)LSTM增強的語音
通過語譜圖的對比發(fā)現(xiàn),各網(wǎng)絡增強后的語音語譜圖明顯比含噪語音的降低了更多的能量噪點,使增強后的語音語譜圖更趨近于純凈語音的。其中基于ATT-QRNN增強后的語音語譜圖能量噪點減少的最明顯,保留了更多的目標語音細節(jié),表明ATT-QRNN網(wǎng)絡對噪聲具有更好的抑制能力,對噪聲干擾起到了緩解作用。
綜合分析以上實驗結(jié)果,相比除QRNN以外的其他模型,融合注意力機制的QRNN語音增強方法具有更快的訓練速度,且在增強后的語音質(zhì)量和可懂度的客觀評價,以及增強后語音的語譜圖的客觀分析上都取得了更好的結(jié)果,表明融合注意力機制的QRNN在保證訓練速度的基礎上,通過注意力機制能提高語音增強性能。
1)通過QRNN網(wǎng)絡實現(xiàn)對含噪語音序列信息并行計算,保證網(wǎng)絡的訓練速度。
2)在QRNN網(wǎng)絡層前融入Attention機制對含噪語音的處理,通過權重分配提高網(wǎng)絡模型學習更多有利信息的能力。
3)相比除QRNN以外的其他模型,融合注意力機制的QRNN語音增強方法具有更快的訓練速度。
4)通過對語譜圖觀察表明本文提出的方法對干擾噪聲具有更好的抑制能力。
綜合表明融合注意力機制的QRNN在保證訓練速度的基礎上,通過注意力機制能提高語音增強性能。