張?zhí)祢U 柏浩鈞 葉紹鵬 劉鑒興
(重慶郵電大學(xué)通信與信息工程學(xué)院 重慶 400065)
在現(xiàn)實(shí)環(huán)境中,干凈語音常被各種背景噪聲干擾,其顯著降低了各種語音設(shè)備的性能。單通道語音增強(qiáng)即在單個(gè)麥克風(fēng)的條件下從被噪聲污染的嘈雜語音中提取出干凈語音,同時(shí)保證干凈語音的質(zhì)量與可懂度,常作為前端模塊被廣泛應(yīng)用于語音通信、自動(dòng)語音識(shí)別等領(lǐng)域。
早期語音增強(qiáng)通常采用基于統(tǒng)計(jì)模型的方法,如濾波法[1]、譜減法[2]以及基于最小均方誤差的譜估計(jì)算法[3],這類方法通常需要特定的條件假設(shè),且難以跟蹤非平穩(wěn)噪聲特征,因此不能很好地適用于多變的語音增強(qiáng)場景。而近年來,深度學(xué)習(xí)迅速發(fā)展,由于深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Network,DNN)具有較強(qiáng)的非線性建模能力,即使面對(duì)高度非平穩(wěn)噪聲,DNN也能有效提升單通道語音增強(qiáng)效果,因此,衍生出多種基于DNN的語音增強(qiáng)方法[4,5],這些方法結(jié)合各種特征預(yù)處理技術(shù)能夠展現(xiàn)較強(qiáng)的增強(qiáng)效果,但由于DNN對(duì)語音時(shí)頻結(jié)構(gòu)信息的捕獲能力較差,難以進(jìn)一步提升增強(qiáng)語音質(zhì)量。針對(duì)上述問題,循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network, RNN)與卷積神經(jīng)網(wǎng)絡(luò)(Convolution Neural Network, CNN)逐步應(yīng)用于語音增強(qiáng)任務(wù)中。由于RNN能夠發(fā)掘更多時(shí)序相關(guān)信息,文獻(xiàn)[6]用其進(jìn)行語音增強(qiáng),取得了優(yōu)于DNN的增強(qiáng)效果,但RNN存在長時(shí)依賴的問題,訓(xùn)練過程梯度容易消失,而長短時(shí)記憶單元(Long-Short Term Memory, LSTM)[7]的出現(xiàn)解決了該問題,該結(jié)構(gòu)在RNN的基礎(chǔ)上引入了門控機(jī)制,能夠選擇性傳遞信息并對(duì)梯度進(jìn)行調(diào)整,Li等人[8]進(jìn)一步采用一種雙向LSTM結(jié)構(gòu)(Bi-directional Long Short-Term Memory, BiLSTM)來進(jìn)行噪聲抑制,取得了優(yōu)于LSTM的性能。
隨著神經(jīng)網(wǎng)絡(luò)由淺向深發(fā)展,DNN與RNN會(huì)累積過大的參數(shù)而無法得到廣泛應(yīng)用。得益于CNN在圖像領(lǐng)域取得的成功,眾多學(xué)者采用CNN來進(jìn)行語音處理[9,10],CNN能夠減小訓(xùn)練參數(shù)的同時(shí)獲取豐富的上下文信息,且能保證語音結(jié)構(gòu)的完整性,因此能夠很好地適用于單通道語音增強(qiáng)任務(wù)。文獻(xiàn)[11]采用一種冗余卷積編解碼網(wǎng)絡(luò)(Redundant Convolution Encoder-and-Decoder, RCED)來進(jìn)行語音增強(qiáng),該網(wǎng)絡(luò)采用全卷積編解碼結(jié)構(gòu),取消了上下采樣以及全連接層,取得了優(yōu)于DNN與RNN的增強(qiáng)效果。文獻(xiàn)[12]提出一種卷積循環(huán)網(wǎng)絡(luò)(Convolution Recurrent Network, CRN),其聯(lián)合CNN與LSTM,能夠獲取有效上下文信息并對(duì)序列前后相關(guān)信息進(jìn)行捕獲,但該網(wǎng)絡(luò)訓(xùn)練參數(shù)較大,增強(qiáng)效果提升有限。在CRN的基礎(chǔ)上,Tan等人[13]進(jìn)一步對(duì)其改進(jìn),提出一種門控殘差網(wǎng)絡(luò)(Gate Residual Network, GRN),該網(wǎng)絡(luò)能夠挖掘更多時(shí)頻相關(guān)信息并能顯著降低訓(xùn)練參數(shù),具有較大實(shí)用價(jià)值。此外,文獻(xiàn)[14]在U-net[15]的基礎(chǔ)上引入殘差學(xué)習(xí)機(jī)制,緩解了模型梯度消失的問題,應(yīng)用于眾多基于深度學(xué)習(xí)的語音增強(qiáng)任務(wù)中。文獻(xiàn)[16,17]把注意力門模塊(Attention Gate, AG)引入U(xiǎn)-net的跳躍連接中,在解碼網(wǎng)絡(luò)中得到了更加魯棒的特征表示,取得了較好的增強(qiáng)效果。
上述方法能夠在一定程度上提升語音增強(qiáng)效果,但往往難以在模型參數(shù)與模型精度上取得很好的平衡,部分方法難以適用于計(jì)算資源有限的語音增強(qiáng)任務(wù),且無法同時(shí)捕獲各個(gè)維度的語音特征。我們以最小化參數(shù)量并最大化提升語音增強(qiáng)效果為原則,設(shè)計(jì)了一種新型卷積網(wǎng)絡(luò)用于語音增強(qiáng)。所提網(wǎng)絡(luò)采用典型編解碼結(jié)構(gòu),在編碼和解碼部分,借鑒文獻(xiàn)[18]的非對(duì)稱卷積,提出一種2維非對(duì)稱膨脹殘差(Two-Dimensional Asymmetric Dilated Residual, 2D-ADR)模塊,該模塊結(jié)合非對(duì)稱膨脹卷積與普通非對(duì)稱卷積,能夠減小訓(xùn)練參數(shù)的同時(shí)增大感受野,并獲取豐富的上下文信息,提升模型對(duì)全局信息的感知;在傳輸層提出一種1維門控膨脹殘差(One-Dimensional Gating Dilated Residual,1D-GDR)模塊,該模塊在膨脹卷積與殘差學(xué)習(xí)的基礎(chǔ)上引入了門控機(jī)制,能夠選擇性傳遞信息并增強(qiáng)網(wǎng)絡(luò)對(duì)時(shí)序相關(guān)信息的獲取,然后根據(jù)Dense-net[19]的思想,采用密集跳躍連接的方式對(duì)8個(gè)1D-GDR模塊進(jìn)行堆疊,以加強(qiáng)層級(jí)信息傳遞并實(shí)現(xiàn)隱式深度監(jiān)督。此外,我們?cè)趯?duì)應(yīng)編解碼層的跳躍連接中引入AG模塊,使得解碼過程獲得更加魯棒的底層特征。最后,在TIMIT語料庫與28種環(huán)境噪聲上驗(yàn)證了所提網(wǎng)絡(luò)的有效性與魯棒性。
神經(jīng)網(wǎng)絡(luò)在語音增強(qiáng)中的作用一般可概括為通過已知的語音和噪聲數(shù)據(jù)學(xué)習(xí)得到含噪語音到干凈語音特征空間的映射函數(shù)。本文采用譜映射的方式進(jìn)行語音增強(qiáng),增強(qiáng)流程如圖1所示。
圖1 語音增強(qiáng)流程圖
在CNN中,標(biāo)準(zhǔn)卷積僅著眼于局部感受野(receipt field),而忽略了特征圖中不同元素間的相關(guān)性。例如在K×K的卷積核中,目標(biāo)元素的值完全由它與它周圍K×K-1個(gè)元素計(jì)算,這可能導(dǎo)致缺乏對(duì)全局信息的感知。而注意力機(jī)制能夠捕捉元素間的相互關(guān)系,并賦予元素全局感受野,最終通過各種操作獲得不同時(shí)間、空間和通道之間的信息相關(guān)性[20]。注意力機(jī)制的本質(zhì)是對(duì)特征圖不同區(qū)域進(jìn)行加權(quán)處理,用來突出相關(guān)特征,并弱化無關(guān)特征。
門控機(jī)制最早提出于LSTM,通過門控機(jī)制傳遞相關(guān)特征并遺忘無關(guān)特征,從而選擇性傳遞信息流,該機(jī)制提升了RNN對(duì)序列相關(guān)信息的處理能力。但由于RNN存在并行性差、計(jì)算開銷大等缺點(diǎn),實(shí)際應(yīng)用能力較差。針對(duì)上述問題,Dauphin等人[21]提出一種性能優(yōu)越的門控線性單元(Gate Linear Unit, GLU),其具備門控機(jī)制的優(yōu)點(diǎn),同時(shí)采用全卷積運(yùn)算,有效減小了訓(xùn)練參數(shù)。GLU的表達(dá)式為
CNN通常采用擴(kuò)展網(wǎng)絡(luò)感受野的方式來增強(qiáng)對(duì)上下文信息的獲取,而膨脹卷積[13,16]是提升網(wǎng)絡(luò)感受野的有效途徑,膨脹卷積能夠指數(shù)性提升網(wǎng)絡(luò)感受野而不會(huì)損失分辨率與覆蓋范圍,在相同參數(shù)的情況下,膨脹卷積能夠提取更加豐富的特征。本文網(wǎng)絡(luò)采用2維膨脹卷積(Dilated Conv2d)與1維膨脹卷積(Dilated Conv1d)相結(jié)合的方式,Dilated Conv2d即卷積核在時(shí)間和頻率兩個(gè)尺度上膨脹,旨在獲取更加豐富的時(shí)頻相關(guān)信息,而Dilated Conv1d僅在時(shí)間維度上進(jìn)行膨脹,旨在捕獲更多序列相關(guān)信息,兩種方式都能有效擴(kuò)大網(wǎng)絡(luò)感受野。設(shè)2維卷積核F大小為( 2n+1)×(2n+1),則Dilated Conv2d的表達(dá)式為
本文網(wǎng)絡(luò)采用典型編解碼結(jié)構(gòu),包含編碼層、傳輸層與解碼層3個(gè)部分,編碼層采用2維卷積的方式獲取抽象特征,傳輸層采用1維卷積的方式對(duì)編碼序列信息進(jìn)行處理,解碼層為編碼層的逆過程。在該節(jié)中,我們首先提出了兩個(gè)殘差模塊,分別為2D-ADR與1D-GDR, 2D-ADR同時(shí)作用于編解碼層部分,1D-GDR作用于傳輸層,兩個(gè)模塊分別提取不同維度的特征信息,提升卷積過程對(duì)全局相關(guān)信息的獲取能力。其次,搭建了由1D-GDR組成的密集連接門控殘差網(wǎng)絡(luò),用以捕獲多尺度特征并增強(qiáng)層級(jí)信息傳遞。最后,引入了注意力門模塊(AG)并對(duì)整體網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行了闡述。
為了防止梯度消失,許多神經(jīng)網(wǎng)絡(luò)采用了深度殘差學(xué)習(xí)的方式[14,16],其能改進(jìn)信息流與梯度的傳播方式而優(yōu)化網(wǎng)絡(luò)訓(xùn)練。結(jié)合殘差學(xué)習(xí)與膨脹卷積的優(yōu)點(diǎn),在網(wǎng)絡(luò)編解碼層中,提出了一種2維非對(duì)稱膨脹殘差模塊(2D-ADR),如圖2(a)所示。受Lednet[18]啟發(fā),所提模塊采用了非對(duì)稱卷積的方式,即利用兩個(gè)卷積核分別為 1 ×n和n×1的卷積層來替代原來的n×n的卷積層,當(dāng)n>2時(shí),這一操作使得網(wǎng)絡(luò)參數(shù)減少 (n-2)/n,并且不會(huì)損失網(wǎng)絡(luò)精度。此外,2維膨脹卷積進(jìn)一步提升了單層卷積模塊的實(shí)際感受野,更大的感受野有利于獲取更多的上下文相關(guān)信息并進(jìn)一步提升網(wǎng)絡(luò)精度。
在2D-ADR中,所有卷積層的卷積步長都為1,且卷積之后依次通過批次歸一化(Batch Normalization, BN)層與指數(shù)線性單元(Exponential Linear Unit, ELU)激活函數(shù)。輸入特征圖首先通過一個(gè)卷積核為3 ×3的2維卷積層(Conv2d),為了控制網(wǎng)絡(luò)參數(shù),卷積后通道數(shù)C減半,特征圖大小變?yōu)門×F×(C/2), 其中T和F分別表示時(shí)間幀與頻率維度。降低通道后的特征圖并行通過兩個(gè)非對(duì)稱卷積層,右側(cè)分支采用卷積核大小分別為 1×5和5×1的 2維膨脹卷積(Dilated Conv2d),膨脹率d保持一致,用以擴(kuò)展感受野來增強(qiáng)對(duì)全局特征的提取,左側(cè)分支采用卷積核大小分別為 1 ×3 和3×1的普通2維卷積(Conv2d),用以捕獲局部特征,兩個(gè)分支通過逐點(diǎn)相加(Add)進(jìn)行合并。然后,合并后的特征圖通過一個(gè) 1×1的卷積層來還原通道數(shù)。值得注意的是,為了獲得更加魯棒的特征,受文獻(xiàn)[22]啟發(fā),本文在輸出端構(gòu)造了特征增強(qiáng)(Feature Enhancement, FE)模塊,其由全局平均池化(Global Average Pooling, GAP)和一個(gè)全連接(Full Connection, FC)層構(gòu)成,采用GAP的原因?yàn)槠鋸慕Y(jié)構(gòu)上規(guī)范了整個(gè)網(wǎng)絡(luò),以防止過度擬合,從而更好地利用全局上下文信息。最后,特征增強(qiáng)后的輸出與模塊輸入逐點(diǎn)相加得到殘差連接輸出。
在傳輸層中,本文設(shè)計(jì)了一種1維門控膨脹殘差模塊(1D-GDR)來處理編碼壓縮后的序列信息,如圖2(b)所示。由于門控機(jī)制能夠有效判別序列相關(guān)特征信息,因此1D-GDR在殘差學(xué)習(xí)與膨脹卷積的基礎(chǔ)上引入了門控機(jī)制。模塊包含上下兩個(gè)并行卷積層,卷積步長都為1,上半部分在GLU的基礎(chǔ)上把兩個(gè)卷積層替換為1維膨脹卷積(Dilated Conv1d),膨脹率保持一致,為了平衡網(wǎng)絡(luò)的性能與參數(shù),采用了卷積核大小為5的折中選擇,且卷積之后通道C減半,下半部分為兩個(gè)卷積核為1的普通1維卷積層(Conv1d),用以還原通道數(shù),分別得到殘差連接輸出與跳躍連接輸出。通過對(duì)1D-GDR模塊進(jìn)行堆疊,并不斷增大膨脹率,能夠擴(kuò)大網(wǎng)絡(luò)感受野并增強(qiáng)對(duì)1維特征元素間的長期依賴關(guān)系的獲取,從而提取更為豐富的時(shí)序相關(guān)信息。
圖2 2維非對(duì)稱膨脹殘差模塊與1維門控膨脹殘差模塊
隨著網(wǎng)絡(luò)層數(shù)疊加,特征圖的分辨率逐漸降低。目前,許多研究[17,18]采用跳躍連接的方式來融合不同層級(jí)的特征,從而彌補(bǔ)編碼過程丟失的詳細(xì)空間信息(如邊緣、邊界等),并細(xì)化特征提取結(jié)果。受Dense-net[19]啟發(fā),我們搭建了密集連接門控膨脹殘差(Dense Connection Gate Dilated Residual, DCGDR)網(wǎng)絡(luò),其結(jié)構(gòu)如圖3所示。DCGDR主要由2個(gè)1維卷積層(Conv1d)與8個(gè)1D-GDR組成,2個(gè)Conv1d用來調(diào)整輸入輸出維度,其卷積核的大小和步長都為1,中間部分由8個(gè)1D-GDR模塊以密集跳躍連接的方式堆疊而成,為防止柵格效應(yīng),膨脹率d依次設(shè)為1, 2, 5, 9, 2, 5, 9, 17,4個(gè)模塊形成一個(gè)堆棧。DCGDR作用于網(wǎng)絡(luò)的傳輸層,每一層都重用來自所有先前層的輸出,用以捕獲多尺度時(shí)序相關(guān)信息,從而融合不同級(jí)別的特征來提高模型的魯棒性,并給出更加平滑的決策邊界。另外,考慮到采用通道拼接(Concatenate)會(huì)導(dǎo)致特征通道數(shù)隨著網(wǎng)絡(luò)逐漸深入而累加,這將使得模型參數(shù)激增,不利于計(jì)算資源有限的語音增強(qiáng)任務(wù),因此,每個(gè)層級(jí)后使用了逐元素相加(Add)的方式來融合不同層級(jí)特征。
圖3 密集連接門控膨脹殘差網(wǎng)絡(luò)
通過卷積運(yùn)算之后,網(wǎng)絡(luò)在第L層的輸出可表示為
由于語音頻譜包含豐富的頻率成分,其中共振峰主要在低頻區(qū)域占主導(dǎo),而在高頻區(qū)域稀疏分布,因此有必要使用不同的權(quán)重來區(qū)分不同的區(qū)域,結(jié)合注意力機(jī)制特點(diǎn),在解碼過程中本文采用注意力門(AG)模塊對(duì)低層次特征圖的不同區(qū)域進(jìn)行聚焦,AG模塊能夠自動(dòng)學(xué)習(xí)聚焦不同形狀和大小的目標(biāo)結(jié)構(gòu),并抑制輸入特征圖中不相關(guān)的背景區(qū)域,同時(shí)突出對(duì)特定任務(wù)有用的顯著特征。本文采用的AG模塊如圖4所示,模塊的具體計(jì)算公式可表示為
圖4 注意力門控模塊
網(wǎng)絡(luò)整體結(jié)構(gòu)如圖5所示。根據(jù)文獻(xiàn)[23]所述,2維卷積更適合在保持原始語音結(jié)構(gòu)的同時(shí)進(jìn)行特征變換,因?yàn)樗拗屏俗儞Q過程過多關(guān)注局部區(qū)域,受其啟發(fā),網(wǎng)絡(luò)的編碼層和解碼層采用2維卷積的方式對(duì)特征進(jìn)行編解碼。相比之下,1維卷積更能捕捉整體特征與特征維數(shù)之間的關(guān)系,因此,傳輸層的所有1D-GDR模塊都采用1維卷積。
圖5 注意力門控膨脹卷積網(wǎng)絡(luò)
編碼層(2D-Encoder)主要包含兩類模塊即Conv2d與2D-ADR,4個(gè)Conv2d模塊用來捕獲初始語音時(shí)頻特征并對(duì)特征圖維度進(jìn)行壓縮,3個(gè)2DADR模塊用來補(bǔ)償感受野的損失,并獲取豐富的全局上下文信息,其膨脹率分別為1, 2, 4,通過對(duì)兩類模塊進(jìn)行交替組合,從而編碼壓縮得到更加魯棒的低維特征。
傳輸層(1D-Transfer)的主要模塊為DCGDR網(wǎng)絡(luò),在進(jìn)行特征傳遞之前,需要先將編碼壓縮后的特征圖重塑(Reshape)到1維,從而更加有效地捕捉整體特征的相互關(guān)系,同樣對(duì)DCGDR的輸出特征進(jìn)行重塑(Reshape)還原特征維度。
解碼層(2D-Decoder)為編碼層的逆過程,主要包含兩類模塊即2維反卷積(Deconv2d)與2D-ADR,5個(gè)Deconv2d模塊用來恢復(fù)壓縮特征的位置信息,并對(duì)抽象特征進(jìn)行一定程度的還原,3個(gè)2DADR與編碼層對(duì)應(yīng)模塊一致,用來對(duì)特征信息進(jìn)行補(bǔ)償,且膨脹率同樣為1, 2, 4。值得注意的是,網(wǎng)絡(luò)最后一個(gè)Deconv2d模塊采用Tanh作為激活函數(shù),令其作為網(wǎng)絡(luò)輸出層以還原所有尺度特征。
此外,對(duì)應(yīng)層級(jí)的編碼層與解碼層使用了跳躍連接,每個(gè)跳躍連接中嵌入了AG模塊,每個(gè)AG的輸出特征圖與相應(yīng)解碼層的輸出特征圖進(jìn)行通道拼接(Concatenate)得到新的融合特征作為下一解碼層的輸入。通過這種方式,更加魯棒的高分辨率特征與低分辨率特征進(jìn)行結(jié)合,從而提升解碼過程對(duì)特征的恢復(fù)效果并進(jìn)一步提升網(wǎng)絡(luò)精度。
網(wǎng)絡(luò)參數(shù)如表1所示。其中k,s,c和d分別表示卷積核大小、步長、輸出通道數(shù)與膨脹率,c1,c2表示DCGDR中兩個(gè)Conv1d的輸出通道數(shù)。輸入輸出維度的3個(gè)參數(shù)分別表示時(shí)間幀T、頻率維度F以及特征圖通道數(shù)C。其中,編碼部分的前2 個(gè)Conv2d模塊使得特征圖在時(shí)間和頻率上都減半,同時(shí)通道數(shù)翻倍,而后兩個(gè)Conv2d僅使得頻率維度減半而時(shí)間和通道都保持不變,通過這種方式使得網(wǎng)絡(luò)獲得多尺度信息,此外,傳輸層中DCGDR網(wǎng)絡(luò)的輸入輸出維度相同,這使得其具有很好的移植性,而解碼層用以還原特征維度和具體特征信息,從整體上看,網(wǎng)絡(luò)輸入輸出維度保持為128×128×1。
表1 網(wǎng)絡(luò)參數(shù)
實(shí)驗(yàn)在TIMIT語料庫[24]上進(jìn)行。選取其中1200干凈語音用于訓(xùn)練,300條用于測試。噪聲選自Noise92噪聲庫與其他100類生活常見環(huán)境噪聲,共28種,噪聲被分為訓(xùn)練噪聲和測試噪聲,而測試噪聲又分為匹配噪聲(參與訓(xùn)練的噪聲)與不匹配噪聲(未參與訓(xùn)練的噪聲),具體劃分方式如表2所示。含噪語音由干凈語音和噪聲混合得到,把訓(xùn)練語音和訓(xùn)練噪聲按6種信噪比(-6 dB, -3 dB, 0 dB,3 dB, 6 dB, 9 dB)混合得到含噪語音訓(xùn)練集,以訓(xùn)練集的20%作為驗(yàn)證集,每個(gè)訓(xùn)練輪次(Epoch)后使用驗(yàn)證集來驗(yàn)證性能。同樣,把測試語音與匹配噪聲混合得到匹配噪聲測試集,為了評(píng)估模型泛化能力,把測試語音和不匹配噪聲混合得到不匹配噪聲測試集,混合信噪比分別為-5 dB, 0 dB, 5 dB,10 dB。最終,我們的訓(xùn)練集包含158400條含噪語音,匹配噪聲測試集和不匹配噪聲測試集分別包含9600與7200條含噪語音。
表2 噪聲類型
本文語音和噪聲統(tǒng)一下采樣到8 kHz,幀長為31.875 ms,即255個(gè)采樣點(diǎn),幀移為7.875 ms,采用漢明窗來減少頻譜泄露。對(duì)含噪語音STFT后的幅度譜平方取對(duì)數(shù)得到輸入特征,由于STFT后的頻譜具有共軛對(duì)稱性,為減小計(jì)算量,每幀的頻率維度取一半為128,由于輸入幀數(shù)同樣為128,則網(wǎng)絡(luò)的輸入維度經(jīng)通道調(diào)整后為1 28×128×1,使用干凈語音的對(duì)數(shù)功率譜作為網(wǎng)絡(luò)訓(xùn)練標(biāo)簽,維度與含噪語音保持一致。
本文模型通過Keras在Tensorflow后端進(jìn)行開發(fā),開發(fā)環(huán)境基于CUDA10.0與cuDNN7.4.2。經(jīng)實(shí)驗(yàn)比較,每個(gè)卷積模塊的初始化方法為“he_normal”,使用ELU作為網(wǎng)絡(luò)激活函數(shù),采用Adam作為網(wǎng)絡(luò)優(yōu)化器,初始學(xué)習(xí)率為0.001,每10個(gè)訓(xùn)練輪次后,檢查驗(yàn)證損失是否下降,若未下降則學(xué)習(xí)率衰減為原先的0.5,Mini-batch大小為32,Epoch次數(shù)為100,訓(xùn)練之后保存驗(yàn)證集上最佳權(quán)值參數(shù)集。
訓(xùn)練神經(jīng)網(wǎng)絡(luò)常用的兩種損失函數(shù)分別為最小均方誤差(Mean Square Error, MSE)以及最小絕對(duì)值誤差(Mean Absolute Error, MAE)。本文采用一種新的聯(lián)合函數(shù)(Huber)作為損失函數(shù),Huber綜合了MAE與MSE的優(yōu)點(diǎn),能夠快速求得穩(wěn)定解且對(duì)奇異值不敏感,具有更高的訓(xùn)練精度,其表達(dá)式為
實(shí)驗(yàn)采用3種指標(biāo)對(duì)語音進(jìn)行客觀評(píng)估。采用語音質(zhì)量感知評(píng)價(jià)(Perceptual Evaluation of Speech Quality, PESQ)評(píng)估語音質(zhì)量[25],其得分區(qū)間為[-0.5,4.5],得分越高語音質(zhì)量越好;采用短時(shí)客觀可懂度(Short Time Objective Intelligibility, STOI)評(píng)估語音可懂度[26],其得分區(qū)間為[0,1],得分越高語音被正確理解的概率越大,后文以百分比(%)表示;采用對(duì)數(shù)譜距離(Log Spectral Distance, LSD)衡量語音的短時(shí)功率譜差異,得分越低語音失真越小。其中LSD的公式為
圖6 各損失函數(shù)的訓(xùn)練誤差與驗(yàn)證誤差
同時(shí)采用國際電聯(lián)ITU-T P.835標(biāo)準(zhǔn)推薦的3種主觀指標(biāo)對(duì)語音進(jìn)行主觀評(píng)估,分別為CSIG,CBAK和COVL,3個(gè)指標(biāo)分別表示信號(hào)失真、背景失真和整體聽覺效果的平均意見得分(Mean Opinion Score, MOS),取值范圍都為[1,5],得分越高,性能越好。主觀評(píng)測過程中,隨機(jī)選取25位聽覺良好的試聽者,并從匹配測試集和不匹配測試集中分別選取20條含噪語音(一共40條,無奇異樣本),令25位試聽者逐一對(duì)各方法得到的增強(qiáng)語音進(jìn)行評(píng)分,最后分別計(jì)算3個(gè)主觀指標(biāo)在40條樣本下的平均值。
實(shí)驗(yàn)部分,為了驗(yàn)證網(wǎng)絡(luò)的有效性,我們首先比較了網(wǎng)絡(luò)在不同參數(shù)設(shè)置下的增強(qiáng)效果,其次,本文使用了多種性能優(yōu)越的語音增強(qiáng)網(wǎng)絡(luò)作為對(duì)比方法來與本文網(wǎng)絡(luò)進(jìn)行對(duì)比,包括BiLSTM[8],RCED[11], CRN[12], GRN[13]、噪聲感知注意力門控網(wǎng)絡(luò)(NAAGN)[16]以及注意力U型網(wǎng)絡(luò)(AU-net)[17],同時(shí)對(duì)比了經(jīng)典譜減法[2]并采用最小值追蹤算法對(duì)噪聲進(jìn)行估計(jì)。其中,RCED是一種基于CNN的典型編解碼網(wǎng)絡(luò),CRN的編解碼層與文獻(xiàn)[12]保持一致,中間層為3層單向LSTM,每層包含512個(gè)隱藏單元,BiLSTM包含3層雙向LSTM,每層同樣包含512個(gè)隱藏單元,NAAGN僅采用其網(wǎng)絡(luò)主體結(jié)構(gòu),其余網(wǎng)絡(luò)的參數(shù)遵循原論文設(shè)置。為了減少變量,所有網(wǎng)絡(luò)的輸入輸出都為對(duì)數(shù)功率譜且維度與本文保持一致,同時(shí)采用本文的損失函數(shù)與數(shù)據(jù)集來進(jìn)行訓(xùn)練與測試。
保持其他參數(shù)不變,表3為本文網(wǎng)絡(luò)選取不同膨脹率對(duì)增強(qiáng)語音的PESQ和STOI(%)影響(其中PESQ和STOI(%)為14種測試噪聲和4種信噪比條件下的均值,表4同理)。對(duì)比表3可知,當(dāng)編解碼層和中間層的膨脹率分別為1, 2, 4和1, 2, 5, 9, 2, 5,9, 16時(shí),網(wǎng)絡(luò)獲得最高指標(biāo),可能是該設(shè)置減小了膨脹過程中的柵格效應(yīng),網(wǎng)絡(luò)獲取了更加豐富的全局相關(guān)特征。表4為不同AG塊數(shù)量對(duì)PESQ和STOI(%)的影響,AG塊由第1個(gè)解碼層依次向后疊加。觀察表4可知,若不采用AG,網(wǎng)絡(luò)指標(biāo)相對(duì)較低,添加AG之后,PESQ提升了0.023~0.081,STOI(%)提升了0.31~0.85,這說明注意力機(jī)制有助于進(jìn)一步提升增強(qiáng)效果,同時(shí),當(dāng)網(wǎng)絡(luò)嵌入4個(gè)AG塊時(shí),以微小的參數(shù)提升換取了更高的PESQ,因此我們采用該設(shè)置。
表3 網(wǎng)絡(luò)取不同膨脹率對(duì)增強(qiáng)語音的PESQ和STOI(%)影響
表4 AG的數(shù)量對(duì)增強(qiáng)語音PESQ和STOI(%)影響
表5和表6為匹配噪聲和不匹配噪聲信噪比(dB)為-5, 0, 5, 10下各方法得到的增強(qiáng)語音的平均PESQ和STOI(%)。對(duì)比表5可知,在匹配噪聲下,譜減法的整體增強(qiáng)效果不理想,低信噪比下的語音質(zhì)量和可懂度改善較小,可能是其對(duì)非平穩(wěn)噪聲特征捕獲較差的原因,CRN與BiLSTM的PESQ和STOI得分相近,且高于RCED方法,這說明循環(huán)網(wǎng)絡(luò)的應(yīng)用能夠促進(jìn)時(shí)序相關(guān)信息的獲取,從而進(jìn)一步提升增強(qiáng)效果,此外,GRN與AU-net網(wǎng)絡(luò)獲得了更高的指標(biāo),NAAGN同樣取得了可觀的性能提升,而相比于以上方法,本文方法在各信噪比下PESQ均取得一定領(lǐng)先,PESQ均值提升了0.065~0.443,這說明本文方法增強(qiáng)語音的質(zhì)量較高,但在-5 dB的STOI(%)略低于NAAGN,這可能是NAAGN采用了更大的卷積核,具備更大的感受野,低信噪比下的頻譜損失相對(duì)較小,但本文方法的STOI(%)均值仍優(yōu)于其他對(duì)比方法,STOI(%)均值提升了0.67~5.41,這體現(xiàn)了本文方法的有效性。對(duì)比表6可知,在不匹配噪聲下,本文方法在各信噪比下的STOI(%)與PESQ均優(yōu)于其他方法,且相較于匹配噪聲下的指標(biāo),本文方法指標(biāo)下降幅度更小,這說明本文方法具備更好的泛化能力。
表5 匹配噪聲下各方法的平均STOI(%)和PESQ
表6 不匹配噪聲下各方法的平均STOI(%)和PESQ
表7為各方法的3種主觀評(píng)價(jià)指標(biāo)(CSIG, CBAK和COVL)得分。觀察表格可知,本文方法的3種主觀指標(biāo)得分均優(yōu)于其他方法,CSIG與CBAK相對(duì)提升較多,這說明本文方法在增強(qiáng)過程中引入的干擾噪聲較小且能有效恢復(fù)語音成分,同時(shí)對(duì)背景噪聲也有較強(qiáng)的抑制能力,整體質(zhì)量和聽覺效果良好,語音失真和背景噪聲不易察覺。
表7 各方法的CSIG, CBAK和COVL得分
圖7為各網(wǎng)絡(luò)分別在14種噪聲下的LSD(4種信噪比下的均值)。從圖7可看出,在Hfchannel,Factory2與Crowd噪聲下,本文方法的LSD取得了次優(yōu)值,說明本文模型對(duì)這幾種噪聲特征的捕獲效果較差,但整體上,在多數(shù)測試噪聲下,本文方法取得了最小的LSD,這說明本文方法增強(qiáng)語音的失真更小。
圖7 各方法的LSD對(duì)比
圖8以0 dB含噪(Babble噪聲)女聲為例,對(duì)比了各方法增強(qiáng)語音的語譜圖。由圖8可看出,譜減法對(duì)該噪聲的處理能力較差,難以恢復(fù)完整語音,RCED與CRN方法能夠恢復(fù)一定語音成分,但仍存留部分低頻噪聲且高頻語音難以恢復(fù),BiLSTM進(jìn)一步降低了低頻噪聲,而GRN與AU-net恢復(fù)了更多高頻語音,相比于以上方法,NAAGN取得了更好的增強(qiáng)效果,在語音的恢復(fù)和噪聲的抑制上都有較好表現(xiàn),而相較于NAAGN,本文方法取得了進(jìn)一步的效果提升,保留了更多語音諧波特性,綜合恢復(fù)效果更加顯著。
圖8 語譜圖
圖9比較了各網(wǎng)絡(luò)的參數(shù)量。我們發(fā)現(xiàn),所提網(wǎng)絡(luò)的參數(shù)量明顯低于其他網(wǎng)絡(luò),且根據(jù)上述對(duì)比,本文方法的客觀與主觀指標(biāo)也取得了一定提升,綜上所述,本文方法以更小的計(jì)算資源達(dá)到了更好的增強(qiáng)效果,具有較高的實(shí)用價(jià)值。
圖9 參數(shù)對(duì)比
在有監(jiān)督語音增強(qiáng)中,上下文信息以及時(shí)序相關(guān)信息對(duì)神經(jīng)網(wǎng)絡(luò)能否準(zhǔn)確映射得到目標(biāo)語音特征空間至關(guān)重要,針對(duì)上述問題,本文設(shè)計(jì)了一種新型膨脹卷積網(wǎng)絡(luò)來聚合語音的多尺度上下文信息,同時(shí)結(jié)合門控機(jī)制、殘差學(xué)習(xí)以及注意力機(jī)制設(shè)計(jì)了不同的模塊來處理不同維度的語音特征,從而進(jìn)一步提升語音增強(qiáng)效果。通過在TIMIT語料庫以及28種噪聲下進(jìn)行訓(xùn)練和測試,相比于其他優(yōu)越的語音增強(qiáng)方法,本文方法在語音的質(zhì)量與可懂度上均有一定提升,且語音失真相對(duì)更小,同時(shí)網(wǎng)絡(luò)具有更小的參數(shù)量,整體方法結(jié)構(gòu)具有較高的魯棒性與泛化能力。后續(xù)研究需要繼續(xù)優(yōu)化網(wǎng)絡(luò)各模塊結(jié)構(gòu),進(jìn)一步調(diào)整模塊數(shù)量,減小計(jì)算復(fù)雜度,從而在模型參數(shù)與增強(qiáng)效果上取得更好的平衡。