黃翔東 陳紅紅 甘 霖
1 (天津大學電氣自動化與信息工程學院 天津 300072)
2 (天津大學精密儀器與光電子工程學院 天津 300072)
語音增強是語音信號處理的重要組成部分,它旨在最大限度地去除背景噪聲,提高語音信號質(zhì)量和可懂度.在過去幾十年中,傳統(tǒng)的語音增強技術(shù),例如,維納濾波法[1]、譜減法[2]、基于子空間的方法[3]等受到了研究者們的青睞,但是這些技術(shù)在處理復雜環(huán)境下的語音信號時其效果往往不盡人意.
近年來,基于深度神經(jīng)網(wǎng)絡(deep neural network,DNN)的語音增強方法已被證實可獲得比傳統(tǒng)語音增強方法更高的性能[4-6].具體而言,該類方法的實質(zhì)在于通過優(yōu)化途徑獲得去噪后語音的短時傅里葉變換(short-time Fourier transform, STFT)幅度譜,并將之與原帶噪語音的相位譜結(jié)合構(gòu)造出完整的時頻譜,再進行逆短時傅里葉變換(inverse short-time Fourier transform, ISTFT),即可生成增強后的語音信號.其中幅度譜優(yōu)化可分為2 類途徑:一類是間接方法,其致力于估計對帶噪語音的STFT 幅度譜進行掩蔽操作的時頻模板,如理想二值模板(ideal binary mask,IBM)[7]、理想比值模板(ideal ratio mask,IRM)[8]等;另一類是直接映射方法,借助網(wǎng)絡優(yōu)化直接求取去噪后的語音STFT 幅度譜.研究表明,間接方法比直接映射方法可在語音增強上獲得更好的性能[9],故本文采用間接方法中的IRM 作為訓練目標.
近年來,卷積神經(jīng)網(wǎng)絡(convolutional neural network, CNN)被廣泛應用于語音增強中[10-12].文獻[10]提出了第1 個全卷積語音增強網(wǎng)絡,該網(wǎng)絡證明了CNN 可在消耗比DNN 更少參數(shù)的情況下,獲得比DNN 更優(yōu)越的性能.
但需要指出,DNN 和CNN 存在共同的缺陷,即無法捕獲語音信號的相鄰連續(xù)時間幀之間的長依賴關系,這使其性能受到限制.為解決這一問題,研究者們在這些方法中融入了循環(huán)神經(jīng)網(wǎng)絡(recurrent neural network, RNN)、長短時記憶(long short-term memory,LSTM)網(wǎng)絡,并取得了相應的性能提升.例如,文獻[13]中提出基于RNN 的深度循環(huán)神經(jīng)網(wǎng)絡(deep recurrent neural network, DRNN),實驗結(jié)果表明DRNN 的性能優(yōu)于DNN.另外,文獻[14]通過在編碼器和解碼器之間插入了雙向長短時記憶(bidirectional long short-term memory, Bi-LSTM)網(wǎng)絡,證明了獲取相鄰連續(xù)時間幀之間的長依賴關系可提升語音增強的性能,但代價是消耗更多網(wǎng)絡參數(shù).
為在不增加網(wǎng)絡參數(shù)量的同時又可以有效捕獲輸入序列的長依賴關系,研究者們將時域卷積網(wǎng)絡(temporal convolutional network, TCN)引入到語音增強中[15-18].文獻[19]指出:由于TCN 由擴張卷積構(gòu)成,擁有更大的感受野,從而可在不額外增加參數(shù)量的同時,獲得比LSTM 更長的長期有效記憶能力.然而,以上基于TCN 的工作的缺陷在于,隨著網(wǎng)絡層數(shù)的增加,梯度消失問題變得突出,使得網(wǎng)絡收斂速度變緩.
為解決梯度消失問題和進一步提升語音增強質(zhì)量,本文將擴張卷積和密集連接網(wǎng)絡(densely connected convolutional network, DenseNet)[20]相結(jié)合,提出頻率-時間擴張密集網(wǎng)絡(frequency-time dilated dense network, FTDDN).其特色在于:
1)在學習上下文信息方面,除了時間方向,擴張卷積同時被應用在頻率方向.通過所構(gòu)造的時間擴張卷積單元(time dilated convolution unit, TDCU)和頻率擴張卷積單元(frequency dilated convolution unit, FDCU),本文所提網(wǎng)絡在時頻域內(nèi)均可獲得較大的感受野,從而能有效提取出深層語音特征,達到提升語音增強性能的目的.
2)在網(wǎng)絡效率方面,本文中各級TDCU 和FDCU所提取的特征以密集連接的方式傳遞,不僅可緩解梯度消失問題,而且可避免經(jīng)典信息論所指出的因級聯(lián)信息處理模塊數(shù)目增加而導致的信息丟失問題[21].
假設含噪離散語音x(k)表示為
其中k表示時間索引,s(k)和n(k)分別表示干凈語音和加性噪聲.為實現(xiàn)語音增強從含噪語音x(k)中恢復出干凈的語音估計的目的,需將x(k)進行STFT,得到時頻表示:
其中
其中t∈[0,T-1],f∈[0,F-1],T和F分別是時間幀和觀測頻率的數(shù)量(為簡化起見,后文將省略以上各時頻表示的自變量t和f).隨后將此時頻表示的幅度譜|X|作為語音特征輸入到神經(jīng)網(wǎng)絡.經(jīng)過神經(jīng)網(wǎng)絡的優(yōu)化,得到時頻掩蔽M,并將此掩蔽M與 |X|相乘,得到增強后的語音幅度譜,最后通過對和含噪語音的相位譜 ΦX進行ISTFT 得到增強后的語音.以上過程可用式(4)描述:
其中 ?表示ISTFT,⊙表示矩陣對應元素相乘.
為能夠充分捕獲語音時頻譜在頻率、時間方向上的上下文信息,同時解決隨著網(wǎng)絡深度增加帶來的信息丟失問題,本文將擴張卷積與密集連接結(jié)構(gòu)相結(jié)合,分別設計了頻率擴張密集模塊(frequency dilated dense module, FDDM)和時間擴張密集模塊(time dilated dense module, TDDM).
FDDM 的結(jié)構(gòu)如圖1 所示(圖中表示卷積層的方框內(nèi)第1 行數(shù)字依次表示擴張因子、卷積核大小和卷積核數(shù)量),其由 6個FDCU 卷積單元以密集連接的方式組成,其中每個FDCU 都包括2 層2D 卷積層,且每個卷積層之后都連接了1 層歸一化層(batch normalization, BN)和1 個修正線性單元(rectified linear unit, ReLU).但第1 個卷積層使用普通2D 卷積,用以減少通道數(shù);而第2 個卷積層使用頻率擴張2D 卷積,其只在頻率方向使用擴張因子以增大卷積核尺寸,由此增大感受野來捕獲頻率方向的上下文信息.
Fig.1 The structure of FDDM圖1 頻率擴張密集模塊結(jié)構(gòu)
FDDM 結(jié)構(gòu)特色在于引入了密集連接結(jié)構(gòu):表現(xiàn)為每一級FDCU 的輸入都是整個FDDM 的輸入與其前面各級FDCU 輸出的匯集,從而各級FDCU 的輸入依次為16i×257×T,i=1,2,…,6.為保證在頻率方向獲得足夠大的感受野,需逐級增大FDCU 的擴張因子di,將其依次設定為2i-1,i=1,2,…,6.
TDDM 則借鑒了TCN[19]的設計結(jié)構(gòu),并采用了與FDDM 類似的框架結(jié)構(gòu),如圖2 所示:同樣由6 個TDCU 卷積塊以密集連接的方式組成,每個TDCU都包括3 部分,其中前2 部分的結(jié)構(gòu)為1D 卷積層、歸一化層、帶參數(shù)的線性修正單元(parametric rectified linear unit, PReLU),第3 部分只有1 層單獨的1D 卷積層.第1 部分采用普通1D 卷積,用以減少通道數(shù);第2 部分使用時間擴張卷積,用以學習時間方向的上下文信息;第3 部分的單獨卷積層則在輸出時恢復整個TDCU 的通道.
Fig.2 The structure of TDDM圖2 時間擴張密集模塊結(jié)構(gòu)
與FDDM 同理,TDDM 也融入了密集連接結(jié)構(gòu),表現(xiàn)為每一級TDCU 的輸入都是整個TDDM 的輸入與其前面各級TDCU 輸出的匯集,從而各級TDCU的輸入為128i×T,i=1,2,…,6,且其擴張因子di設定為2i-1,i=1,2,…,6.
從深層次意義上講,正是因為圖1 所示的FDDM和圖2 所示的TDDM 的各層級聯(lián)的FDCU 和TDCU的入口采用了密集連接,才避免了經(jīng)典信息論所述及的“多處理模塊級聯(lián)會引起信息丟失”的現(xiàn)象(即信息不增性原理)[21],從而保證了特征重用,并促進信息流的傳遞.
綜合以上擁有較大感受野的FDDM 和TDDM 的基本模塊設計,本文提出頻率-時間擴張密集網(wǎng)絡FTDDN.
圖3 展示了本文所提出的網(wǎng)絡的框架結(jié)構(gòu),其輸入時頻幅度譜 |X|首先通過2 層2D 卷積層.第1 個卷積層用于增加輸入特征的通道數(shù);第2 個卷積層用于學習局部信息,并將其輸出反饋給FDDM,以捕獲頻率方向的上下文信息和學習時間方向的局部信息.圖3 中表示卷積層的方框內(nèi)的第1 行數(shù)字表示卷積核大小和卷積核數(shù)量.
Fig.3 The structure of FTDDN圖3 頻率-時間擴張密集網(wǎng)絡結(jié)構(gòu)
FDDM 之后連接了2 層2D 卷積層和1 層1D 卷積層,其共同的作用是實現(xiàn)維度轉(zhuǎn)換以及減少通道數(shù),使FDDM 的輸出的維度轉(zhuǎn)換為128×T,并反饋至TDDM 中以學習時間方向的上下文信息.
經(jīng)TDDM 處理后,其輸出會送到3 個卷積單元中,前2 個卷積單元由1D 卷積層、歸一化層和PReLU激活函數(shù)組成,用以聚合FDDM 和TDDM 學習到的頻率、時間方向上的上下文信息,后1 個卷積單元由1D 卷積層和Sigmoid 激活函數(shù)組成,其將網(wǎng)絡估計到的時頻掩蔽模板M的維度恢復到257×T并將其值限制在[0, 1]區(qū)間內(nèi).
圖3 總體網(wǎng)絡采用了文獻[22]中提出的噪聲感知多任務損失函數(shù),即加權(quán)平均絕對誤差(weighted mean absolute error,WMAE),其定義為:
實驗數(shù)據(jù)集之一采用開源的VCTK 語料庫[23],其訓練集包括28 位說話人(14 位女性和14 位男性),測試集則包括另外2 位不同的說話人(1 位女性和1位男性).為創(chuàng)建含噪語音數(shù)據(jù)集,文獻[23]的作者以4 種信噪比(signal-noise ratio, SNR)(15 dB,10 dB,5 dB,0 dB)向干凈語音訓練集添加了10 種常見環(huán)境噪聲和人工制造的噪聲[23],從而生成包含有11 572 個語音的含噪語音訓練集;以另外4 種SNR(17.5 dB,12.5 dB,7.5 dB,2.5 dB)向干凈語音測試集中添加了5 種常見環(huán)境噪聲[23],從而生成包含有824 個語音的含噪語音測試集.為測試網(wǎng)絡的泛化能力,測試集與訓練集中所使用的噪聲均不相同.因測試集中使用的說話人和噪聲類型均與訓練集不同,故也將其用作驗證集以優(yōu)化模型參數(shù).為降低計算復雜度,本文將該語料庫的信號采樣率由48 kHz 降為16 kHz.
實驗數(shù)據(jù)集之二采用LibriSpeech 語料庫[24]的干凈語音,其采樣率為16 kHz,而噪聲來源取自DEMAND 噪聲庫[25]和DNS Challenge 中的噪聲集[26].為了構(gòu)造實驗所用數(shù)據(jù)集,在訓練階段,本文分別從LibriSpeech干凈語音訓練集和干凈語音驗證集中隨機選取13 976 句語音和871 句語音,并采用隨機選擇的方式,將DEMAND 噪聲庫中的1 000 種噪聲以10 種SNR(-7.5 dB,-6.5 dB,-4 dB,-3 dB,-1 dB,1 dB,3 dB,7 dB,-9 dB,11 dB)與這些干凈語音混合,以生成含噪語音訓練集和含噪語音驗證集.在測試階段,本文從LibriSpeech 干凈語音測試集中隨機選取740 句語音,并以4 種SNR(-5 dB,0 dB,5 dB,10 dB)向干凈語音添加4 種噪聲(DEMAND 噪聲庫:Cafter 噪聲、Kitchen噪聲、Meeting 噪聲、Office 噪聲),生成含噪語音測試集.為測試網(wǎng)絡的泛化能力,該數(shù)據(jù)集中,測試集、驗證集與訓練集中的噪聲不同:有水流聲、汽車聲等.
本文使用業(yè)內(nèi)普遍接受的語音質(zhì)量客觀評估(perceptual evaluation of speech quality,PESQ)[27]和短時客觀可懂度(short-time objective intelligibility,STOI)[28],以及主觀平均意見分數(shù)——信號失真的復合測度(CSIG)、噪聲失真的復合測度 (CBAK)和語音整體質(zhì)量的復合測度 (COVL),作為實驗結(jié)果的評價指標[29].
本文所提出的FTDDN 網(wǎng)絡的主要參數(shù)設置為:使用漢寧(Hanning)窗作為STFT 的時間窗,窗長為32 ms(幀長點數(shù)為512),幀移為16 ms(即50%重疊),由于實信號傅里葉變換具有共軛對稱性,故圖3輸入STFT 幅度譜特征的尺寸為257×T(T取決于各條語音的長度).
在每次訓練實驗中,本文將設每批處理語音的條數(shù)BatchSize=4,在每批處理中,通過補零的方式使各句語音與該Batch中最長語音長度保持一致,對于超出4 s 的語音,則只取前4 s 參與訓練.實驗選用Adam 優(yōu)化器,并以學習率0.000 2 訓練網(wǎng)絡100 次.
實驗主要包括2 方面:1)開展消融實驗,以探究FDDM,TDDM 內(nèi)部的密集連接結(jié)構(gòu)及卷積塊FDCU和TDCU 的數(shù)量R對本文所提模型的語音增強性能的影響;2)分別針對3.1 節(jié)所提的2 個數(shù)據(jù)集,將本文所提模型與現(xiàn)有的語音增強網(wǎng)絡做性能對比.
為探究卷積塊FDCU 和TDCU 的數(shù)量R和模塊FDDM 及TDDM 中的密集連接結(jié)構(gòu)對語音增強網(wǎng)絡性能的影響,本文基于VCTK 語料庫[23]進行了消融實驗.為了簡潔,消融實驗結(jié)果僅使用PESQ 和STOI 作為客觀評價指標.
圖4 展示了在FDDM 和TDDM 均存在密集連接結(jié)構(gòu)的情況下,不同的卷積塊數(shù)量R對網(wǎng)絡性能的影響.
Fig.4 Influence of different number of convolutional blocks R in FDDM and TDDM on network performance圖4 FDDM 和TDDM 中不同卷積塊數(shù)量R 對網(wǎng)絡性能的影響
從圖4 可看出,隨著R的增大,網(wǎng)絡性能逐漸提高至最高點后又開始逐漸下降.具體而言,當R從2增加到4 時,PESQ 和STOI 分別從2.89 增加到2.95和從0.938 8 增加到0.944 2;當R從4 增加到6 時,PESQ 和STOI 雖然也呈現(xiàn)一定程度的增加,但增速變緩,這是由于隨著R的增加,網(wǎng)絡深度增加,感受野也隨之增加,使得網(wǎng)絡學習到的上下文信息更豐富,最終提高了網(wǎng)絡性能;而當R從6 繼續(xù)增大時,可看到PESQ 變化趨勢平緩、STOI 開始下降,這是因為當R繼續(xù)增加時,網(wǎng)絡深度也會加深,這導致信息丟失問題加劇,而密集連接結(jié)構(gòu)的信息補充作用又無法完全解決這一問題,進而導致了網(wǎng)絡性能退化.
表1 列出了在R=6的情況下去除TDDM 和FDDM中的密集連接結(jié)構(gòu)后網(wǎng)絡的性能變化.可發(fā)現(xiàn):當分別去除TDDM 和FDDM 中的密集連接時,PESQ 從3.02 分別下降到了2.83 和2.97,STOI 從0.945 1 分別下降到了0.940 9 和0.944 7,這反映了密集連接結(jié)構(gòu)的有效性,證實了該結(jié)構(gòu)可通過信息補充加強特征傳遞和特征重用,達到增強網(wǎng)絡性能的效果.從表1的PESQ 和STOI 的下降比例可看出,相比較而言,消融TDDM 比消融FDDM 影響更大,這是因為時間方向的上下文信息比頻率方向的上下文信息更加豐富,從而間接證明了時間信息融合在提高網(wǎng)絡性能方面更重要,但頻率信息也不可忽略.
Table 1 Influence of Dense Connection on Network Performance表1 密集連接對網(wǎng)絡性能的影響
針對LibriSpeech 語料庫[24]在不同噪聲和信噪比的情況下,將本文網(wǎng)絡與3 種已有網(wǎng)絡進行性能對比,這3 種網(wǎng)絡分別是:基于LSTM 的語音增強方法、基于卷積循環(huán)網(wǎng)絡(convolutional recurrent network,CRN)[30]的語音增強方法、基于時間卷積神經(jīng)網(wǎng)絡(temporal convolutional neural network, TCNN)[31]的語音增強方法.
表2 和表3 分別展示了對本文模型和3 種對比模型測評得到的PESQ 分數(shù)和STOI 分數(shù),可以看出:除了5dB Meeting 噪聲條件下,本文模型的STOI 分數(shù)略低于CRN 以外,在其他情況下,本文模型的PESQ分數(shù)和STOI 分數(shù)均要高于對比模型,這表明本文模型的語音增強性能更優(yōu)越.
Table 2 Evaluation PESQ Scores of FTDDN and Baseline Models Using LibriSpeech Corpus表2 使用LibriSpeech 語料庫對FTDDN 與基線模型的評測PESQ 分數(shù)
觀察表2、表3 的數(shù)據(jù)可發(fā)現(xiàn),所有模型在Cafter和Meeting 噪聲條件下的語音增強性能都低于在Kitchen 和Office 噪聲條件下的語音增強性能,這可歸結(jié)為不同噪聲源的時頻譜結(jié)構(gòu)造成的影響.具體解釋如下:如圖5 所示,Cafter 和Meeting 噪聲中以人聲為主,其時頻譜結(jié)構(gòu)與干凈語音的結(jié)構(gòu)非常相似,故增加了噪聲與干凈語音的區(qū)分難度,導致網(wǎng)絡去噪性能下降;而Kitchen 和Office 噪聲結(jié)構(gòu)與干凈語音結(jié)構(gòu)相差很大,降低了網(wǎng)絡從含噪語音中學習干凈語音結(jié)構(gòu)的難度,有助于提升去噪性能.
Fig.5 The time-frequency spectrograms of clean speech and different noises圖5 干凈語音和不同噪聲的時頻譜
為直觀反映各對比模型與本文模型的語音增強效果,圖6 展示了這些模型對 5dB Kitchen 的含噪語音增強后的結(jié)果(其加噪前后的時頻譜如圖6(a)(b)所示),從中可看出,圖6(c)所示的LSTM 模型只是輕微地去除了噪聲,只能恢復干凈語音的大致結(jié)構(gòu);相比而言,圖6(d)所示的CRN 模型和圖6(e)所示的TCNN 模型去噪更顯著,但其優(yōu)勢主要體現(xiàn)在低頻區(qū),而高頻細節(jié)較為模糊;而本文提出的FTDDN 模型在去除噪聲的同時,又最大限度地保留了語音信息,見圖6(f).究其原因,各對比模型僅著重考慮了語音時間方向的上下文信息,而忽略了語音頻率方向上下文信息間的聯(lián)系,而語音的能量大部分聚集在低頻部分,這導致模型對語音的高頻信息關注度降低,使得增強后的語音高頻信息丟失,而本文提出的FTDDN 模型給予了語音頻率方向和時間方向上下文信息同等關注度,并同時學習了語音時頻譜高頻信息與低頻信息之間的相關性和時間幀之間的依賴關系,最終得以保留完整的語音時頻譜信息.需指出的是,以上實驗所使用的測試集中的說話人、噪聲種類以及信噪比皆與訓練集和驗證集中的完全不同.故表2、表3 的實驗結(jié)果證實了本文模型在數(shù)據(jù)條件完全不匹配的情況下,仍可實現(xiàn)高性能降噪,證實了本文模型具備較高的泛化能力,可適應不同噪聲條件下的復雜環(huán)境.
Fig.6 The time-frequency spectrograms of clean speech, noisy speech, and enhanced by different models圖6 干凈語音、含噪語音以及不同模型增強后的語音時頻譜
將本文提出的FTDDN 模型與現(xiàn)有的SEGAN[32],Wave-U-Net[33],WaveCRN[34],MetricGAN[35],MB-TCN[17],NAAGN[22]模型進行性能比較.所有模型都使用VCTK語料庫進行實驗.從表4 列出的對比結(jié)果可以看出,本文提出的FTDDN 模型在除STOI 以外,所有指標都優(yōu)于其他對比模型,這是由于SEGAN,Wave-U-Net,WaveCRN這3 個網(wǎng)絡的輸入為時域波形,而本文的FTDDN 則以時頻幅度譜作為網(wǎng)絡的輸入,但時頻域的信息往往比時域更加豐富、細致,從而使得網(wǎng)絡可學習到更豐富的信息,這有利于網(wǎng)絡性能的提升;MetricGAN,MB-TCN,NAAGN 這3 個網(wǎng)絡雖然與本文的FTDDN 一樣,都以時頻幅度譜作為網(wǎng)絡的輸入,但MetricGAN 的設計是直接基于評價指標來優(yōu)化網(wǎng)絡,未專注于學習語音信號的細節(jié)信息,從而使網(wǎng)絡性能受到限制;MB-TCN 更多關注于學習語音信號的時間方向的上下文信息,卻忽略了頻率方向的上下文信息的重要性;NAAGN 通過擴張卷積同時學習時間和頻率方向的上下文信息,但并沒有進行單獨學習;而本文通過融合密集連接結(jié)構(gòu)和擴張卷積將學習頻率和時間方向的上下文信息分開進行,并在網(wǎng)絡末端進行信息整合,故使網(wǎng)絡學習到的語音信息更加細致,進而提升網(wǎng)絡性能.特別地,可以發(fā)現(xiàn)NAAGN 模型的STOI 分數(shù)略高于本文所提模型,這是由于NAAGN 模型相對于本文模型額外引入了注意力門(attention gate, AG)模塊,因此可進一步學習到輸入樣本中的更感興趣的特征,并對其進行修剪,以保留相關的激活,從而可獲得略高的STOI 分數(shù).
Table 4 Performance Evaluation Scores of FTDDN and Baseline Models Using VCTK Corpus表4 使用VCTK 語料庫對FTDDN 與基線模型的性能評測分數(shù)
為高質(zhì)量地恢復語音信號,本文設計了頻率-時間擴張密集網(wǎng)絡(frequency-time dilated dense network,FTDDN),其包括2 個最主要的模塊:FDDM 和TDDM,由于這2 個模塊均融入了擴張卷積和密集連接結(jié)構(gòu),因而FTDDN 可獲得較大的感受野以捕獲頻率方向和時間方向的上下文信息.基于LibriSpeech和VCTK 語料庫與各類現(xiàn)有語音增強網(wǎng)絡性能的對比實驗表明:本文提出的FTDDN 網(wǎng)絡的語音增強性能更加優(yōu)越,可在有效抑制噪聲的同時高質(zhì)量地恢復語音,故在語音識別、文本語音轉(zhuǎn)換、助聽器設計、網(wǎng)上會議等應用中有廣闊應用前景.
作者貢獻聲明:黃翔東完善實驗方案并修改論文;陳紅紅提出算法思路,并負責完成實驗和撰寫論文;甘霖提出指導意見.