


收稿日期:2023-03-29
DOI:10.19850/j.cnki.2096-4706.2023.22.012
摘? 要:在現實環境中,語音信號常常受到噪聲的干擾,影響了人們的通信體驗。語音增強的目的是從帶噪語音中恢復出純凈語音。針對傳統語音增強方法在非平穩噪聲條件下增強效果不理想的問題,基于深度學習方法,提出一種聯合時頻注意力機制和U-Net的語音增強算法:AU-Net。AU-Net在發揮卷積編解碼結構對特征多尺度融合優勢的同時,能夠通過注意力機制獲取到更加豐富的語音全局信息。仿真實驗表明,相比基線模型,所提算法各項語音評價指標均得到提升,減少了語音背景噪聲,有效提高了語音的質量和清晰度。
關鍵詞:語音增強;注意力機制;U-Net;深度學習
中圖分類號:TN912.35;TP18 文獻標識碼:A 文章編號:2096-4706(2023)22-0052-06
Single-Channel Speech Enhancement Algorithm of Combination of Time-Frequency Attention Mechanism and U-Net
LIU Xu
(School of Computer Science and Information Security, Guilin University of Electronic Technology, Guilin? 541004, China)
Abstract: In real-world environments, speech signals are often interfered by noise, which affects people's communication experience. The purpose of speech enhancement is to recover clean speech from noisy speech. To address the issue that traditional speech enhancement methods have poor enhancement effects under non-stationary noise conditions, a speech enhancement algorithm based on Deep Learning, called AU-Net (Attention based U-Net), is proposed by combining time-frequency attention mechanism and U-Net. AU-Net can not only leverage the advantages of the convolutional encoding-decoding structure for feature multi-scale fusion, but also obtain richer global information of speech through attention mechanism. The simulation experiments show that the proposed algorithm improves all speech evaluation metrics compared to the baseline model, reduces speech background noise, and effectively improves the quality and clarity of speech.
Keywords: speech enhancement; attention mechanism; U-Net; Deep Learning
0? 引? 言
語音增強的目的是從帶噪語音中恢復出干凈的語音信號。語音增強在許多方面都有應用,如助聽器、車載系統和智能耳機等,也可作為語音識別、自然語言處理等相關語音研究的前端處理模塊。語音增強根據傳感器的不同分為單通道語音增強和多通道語音增強。單通道語音增強相比多通道語音增強具有硬件要求低和應用方便的優點,但由于缺失聲音的空間信息,在低信噪比條件下增強效果不理想,仍需要更廣泛的研究。
近年來深度學習因為其強大的特征學習能力和高維非線性映射能力,使多個研究領域取得了突破性的進展。神經網絡模型如深度神經網絡[1]、循環神經網絡[2]、卷積神經網絡[3]等被應用于語音增強領域,相比傳統方法,對非平穩噪聲、未知噪聲和高信噪比語音的增強效果顯著提高。
卷積神經網絡(CNN)因其相對較少的參數量、強大的特征提取能力和簡單的網絡結構成為語音增強方法的一大研究熱點。Fu等人[4]提出了一種信噪比感知CNN來自適應增強帶噪語音,取得了不錯的效果。Hou等人[5]提出了一種聯合視聽信息的語音增強模型。Bhat等人[6]提出了能在智能手機上部署的輕量級CNN語音增強模型,多目標學習的方式有利于增強性能的提升。Shifas等[7]聯合卷積模塊和遞歸模塊,提出了一種對噪聲魯棒的語音增強模型,提升了語聲增強算法對噪聲的魯棒性。Park[8]去掉了CNN中的全連接層,使用全卷積網絡(Fully Convolutional Network, FCN)進行語音增強。由于CNN在語音增強領域不錯的效果,很多研究者采用基于卷積編碼器-解碼器(Convolutional Encoder-Decoder)的網絡進行語音增強。2016年,U-Net[9]網絡首次用于醫學圖像分割任務,一舉奪得ISBI2015細胞追蹤挑戰賽和齲齒檢測挑戰賽的冠軍。Wave-U-Net[10]被提出用于語音分離任務,其以時域信號作為輸入,避免了帶噪語音和干凈語音相位失配問題,提升了語音增強效果。
注意力模型[11]最開始在機器翻譯任務中取得了不錯的效果,此后在深度神經網絡中得到了廣泛應用。注意力機制受人類視覺機制的啟發而提出,人類的視覺可以根據觀看目的來專注于圖像的局部,同時忽視目標周圍信息,同樣的,注意力機制可以使模型在預測時,更加關注有利于任務目標的特征區域,減小無關特征區域的權值,這可以提高神經網絡模型的特征提取能力和訓練效率。Hu等人[12]將注意力機制應用于CNN,通過賦予通道合適的權重,提高了模型的預測能力。Zhao等[13]結合卷積模塊和注意力機制,增強了卷積層的特征表示能力,用時域和頻域損失函數對模型聯合優化。
本文提出一種聯合時頻注意力機制和U-Net的神經網絡模型,U-Net神經網絡能夠對語音淺層特征進行多尺度融合[14]得到深層特征,同時利用時頻多頭注意力機制使解碼層關注編碼層輸出中的關鍵時頻特征區域,提高了解碼層解碼效率和準確率,并且加快了網絡訓練速度,提高了增強后語音的質量和可懂度,對比基線網絡多個語音指標得到了提升。
在下文中,第1節首先介紹了AU-Net(Attention based U-Net)模型總體架構,然后描述U-Net網絡和時頻注意力模塊原理;第2節闡述了實驗設置和實驗過程;第3節給出了AU-Net構成有效性實驗結果以及與部分模型性能指標對比結果;第4節總結全文并提出了未來的研究思路。
1? AU-Net模型
1.1? AU-Net總體架構
如圖1所示,AU-Net由編碼器、解碼器和多頭注意力模塊組成。在數據預處理階段,對輸入帶噪語音時域信號進行分幀加窗后,經過短時傅里葉變換得到幅度譜。分幀操作利用了語音信號的短時平穩性,同時可以得到語音信號的時頻關系;加窗是為了減少頻譜泄露;短時傅里葉變換將時域信號轉換到時域進行分析,減小了網絡模型的建模負擔。訓練階段,帶噪語音幅度譜經過網絡映射得到增強語音幅度譜掩蔽,損失函數采用增強后語音幅度譜和干凈語音幅度譜的均方誤差。增強階段,將帶噪語音幅度譜作為網絡輸入,輸出增強語音幅度譜,結合帶噪強語音的相位譜,經過逆短時傅里葉變換得到增強后語音時域信號。
1.2? U-Net模塊
U-Net網絡結構采用端到端的編解碼結構,如圖2左半部分所示,編碼模塊輸入首先經過一個下采樣層將維度F和T降為原來的一半,然后經過卷積層,通道數C增大一倍,接著經過批標準化和Relu激活函數,得到編碼模塊輸出。
編碼器部分的計算過程可以表示為:
其中Fi表示第i層編碼模塊輸出,BM表示批標準化,Wi表示第i層編碼模塊中的卷積核,*表示卷積操作,MP表示對輸入進行下采樣,Fi-1表示i-1層編碼模塊輸出,bi表示卷積操作的偏置項。
如圖2右半部分所示,解碼模塊由轉置卷積模塊和卷積模塊組成,首先轉置卷積模塊對跳連接后的輸入進行上采樣并減半通道數,然后經過卷積模塊再次減半通道數,卷積模塊由兩個卷積層、兩個批標準化模塊和兩個Relu激活函數組成,上一層模塊輸出和同層編碼層的輸入拼接后作為下一解碼模塊的輸入。解碼器部分的計算過程可以表示為:
其中Gi表示第i層解碼模塊輸出,BM表示批標準化,Vi表示第i層解碼模塊中的卷積核,*表示卷積操作,Di表示轉置卷積,Cat表示在通道維度的連接操作,Gi-1表示i-1層解碼模塊輸出,Fi表示第i層編碼模塊輸入,bi表示卷積操作的偏置項。
編碼器輸出同樣經過一個卷積核為1×1的一維卷積將通道數變為1,然后與輸入幅度譜相乘得到增強語音的幅度譜。
1.3? 時頻多頭注意力模塊
AU-Net中的時頻多頭注意力模塊,如圖3所示,大小為[B,C,F,T](B表示批大小,C表示通道數,F表示頻域,T表示幀的數量)的最后一層編碼層輸出的深層特征的T和F維度通過平鋪合并為一個維度,然后和C維度交換位置,得到注意力模塊的輸入大小為[B,T×F,C],經過多頭注意力機制、殘差連接、層標準化和前饋神經網絡,學習得到時頻特征的權重,多頭注意力模塊強化對語音增強有利的時頻特征,同時抑制不利于語音增強的時頻特征,提高了解碼器在語音增強任務中解碼效率。
時頻注意力模塊可以表示為:
其中xa表示注意力層輸出,xe表示時頻注意力模塊輸入,同時也是編碼器輸出,LN表示層標準化,Pos表示位置編碼操作,MultiHead表示多層注意力操作。
位置編碼(Positional Encoding)是一種在輸入時頻特征中加入位置信息的方式,用于解決時頻順序的問題。位置編碼可以用以下算式表示:
其中,PE(pos, 2i)和PE(pos, 2i+1)分別表示位置編碼矩陣中位置為(pos,2i)和(pos,2i+1)的元素,i為編碼維度的下標,d為編碼維度的數量(本文為輸入的通道維度數量)。sin和cos是正弦函數和余弦函數。
多頭注意力模塊輸出之后還需經過前饋神經網絡(Feedforward Neural Network, FFN),FFN的作用是對多頭注意力層輸出的特征進行非線性變換,以便更好地捕捉輸入序列中的局部依賴關系。具體來說,FFN由兩個全連接層組成,其中間使用激活函數,如ReLU??梢员硎緸椋?/p>
其中xf表示前饋神經網絡輸出,LN表示層標準化,xa表示注意力模塊輸出,FFN表示前饋神經網絡操作。
FFN操作可以表示為:
其中FFN(x)表示前饋神經網絡輸出,max(0,·)表示ReLU激活函數,W1,W2,b1,b2分別表示權重和偏置。
最后將前饋神經網絡輸出與時頻注意力模塊輸入相乘得到經過注意力加權的編碼器輸出:
其中xd表示時頻注意力模塊輸出,同時也是解碼器輸入,xe表示時頻注意力模塊輸入,同時也是編碼器輸出,xf表示時頻注意力模塊經過學習得到的輸入的權重。
多頭注意力模塊如圖4所示,包含了h個縮放點積實現的自注意力,自注意力機制由Q查詢和K-V鍵值對計算,Q和K做縮放點積得到Q和V的相關性,用相關性和V相乘然后相加,便得到了對應時頻的權重系數,實際計算中,自注意力機制可以實現矩陣計算,多頭注意力機制則有多個注意力矩陣。
多頭注意力模塊的計算式表示為:
其中Q,K,V表示輸入經過參數矩陣映射得到的矩陣,dk表示K的維數,headi表示第i個注意力輸出,i介于[1,h],h表示頭的個數,concat表示將多個注意力輸出連接起來。
2? 實驗
2.1? 數據集
驗證實驗在VoiceBank-DEMAND數據集(VBD)上進行,該數據集語言為英語,包含干凈語音信號和與噪音以不同信噪比混合得到帶噪語音。純凈語音均來自Voice Bank corpus數據集,訓練集一共有11 572個音頻,來自男女各14人,測試集一共有824個音頻,來自男女各一人,在不同的噪聲條件下合成帶噪語音,總共有40種噪聲條件,噪聲共10種,8種來自DEMAND數據集,另外兩種由人工合成,信噪比分別為0 dB,5 dB,10 dB和15 dB;測試集語音總共有20種噪聲條件,5種噪聲全部選自DEMAND數據集,訓練集噪聲和測試集噪聲沒有交集,以2.5 dB,7.5 dB,12.5 dB和17.5 dB的信噪比合成。該數據集中語音信號采樣頻率為48 kHz,為了與其他論文中的算法進行對比,將數據集中所有語音信號重采樣為16 kHz。此外為了分析模型在低信噪比條件下的去噪性能,從上述測試集干凈語音中任意選擇一男一女兩個說話人,噪聲信號選用Noisex92噪音數據集中的babble、f16、factory1、machinegun和white噪音,在4種信噪比條件下(-5 dB,0 dB,5 dB,10 dB)進行混合得到總計800條語音數據。
2.2? 評價指標
驗證實驗采用語音質量感知評估(PESQ)和短時客觀可懂度(STOI)還使用CSIG(MOS Pre-dictor of Speech Distortion)、CBAK(MOS Predictor of Intrusiveness of Background Noise)和COVL(MOS Predictor of Overall Processed Speech Quality)三個指標用于與其他語音增強方法分析比對。PESQ指標預測語音的平均主觀意見得分,分值范圍為-0.5~4.5,分值越大,語音質量越好。STOI方法評估處理語音的可懂度,分值范圍為0~1,分值越大,語音可懂度越好。CSIG、CBAK和COVL是計算MOS(Mean Opinion Score)大小的三種評價指標,分值范圍在1~5之間,MOS越大,語音質量越好。CSIG反映語音失真度,CBAK反映背景噪聲干擾強度,COVL反映語音整體質量,使用客觀擬合方法計算CSIG,CBAK,COVL以模擬語音主觀評價結果。
2.3? 參數設置
模型編碼模塊卷積核大小為3×3,padding為1,步長為(1,1),注意力機制dmodel為1 024,前饋神經網絡隱藏層神經元個數為1 024,轉置卷積的卷積核大小為2×2,步長為(2,2)。
語音采樣率由48 kHz降采樣為16 kHz,用海寧窗對時域語音信號加窗,幀長設為20 ms,每幀含320個采樣點,幀移設為10 ms。通過短時傅里葉變換得到輸入帶噪語音幅度譜作為網絡模型的輸入。
在PyTorch平臺上訓練模型,損失函數選擇增強語音幅度譜和干凈語音幅度譜的均方誤差函數(Mean Square Error, MSE),通過梯度反向傳播對模型進行訓練,優化器采用Adam,學習率設為5×10-4,梯度動量和分母動量分別設置為0.9和0.999,訓練200輪,實驗在windows 10系統上進行,該系統配置了24核Intel(R) Xeon(R) CPU E5-2690 v3(2.6 GHz)的CPU和1張GeForce RTX 2080 Ti的顯卡。
3? 實驗結果及分析
3.1? 在VBD上比較分析
為了驗證AU-Net在復雜噪聲條件下的語音增強性能,與其他經典語音增強算法進行了對比分析,選用Wavenet[15]、CNN-GAN[16]、Wave-U-Net[17]、CRN[18]以及U-Net基線網絡作為對比算法,表1給出了AU-Net與上述算法的語音評價指標數值,空白表示論文作者未給出該指標數值。通過語音評價指標數據可知,在基線U-Net中加入時頻注意力模塊后,PESQ指標提升了11%,CSIG指標提升了7.7%,CBAK指標提升了2.8%,COVL提升了9.3%,而模型參數量僅僅少量提升,可見時頻注意力模塊對基線網絡在語音增強方面的提升作用。相比其他語音增強算法,AU-Net在各項語音評價指標上也有了一定的提升,這表明,AU-Net可以對語音中的噪音起到良好的抑制作用,可以有效提高語音的質量和可懂度。
3.2? 低信噪比條件增強效果
如表2所示,所提方法在各個信噪比條件下的評價指標均優于基線模型,PESQ提升了10%,STOI提升了3%,fwSNRseg提升了21%,有效去除了語音中的噪聲成分,獲得了良好的語音增強效果。
3.3? 語譜圖分析
為了直觀感受所提方法的語音增強效果,得到了VBD數據集中的p232_134的干凈語音、帶噪語音和增強語音的波形圖和語譜圖,分別如圖5中(a)(b)
(c)和(d)(e)(f)所示。通過波形圖可以看出,AU-Net可以有效去除帶噪語音中的主要噪聲成分,與干凈語音的波形圖視覺上相似。通過語譜圖可以看出,增強語音的波形圖除低頻部分外,和干凈語音語譜圖很接近,表明了所提方法語音增強的有效性,可以達到語音增強的目的。這說明,通過結合U-Net網絡的多尺度特征融合及時頻注意力機制的優勢,對語音特征進行編碼,并通過注意力機制提升對時頻特征的學習效率,抑制了語音中的噪聲,提高了增強語音的質量和可懂度。
4? 結? 論
針對傳統方法對非穩性噪聲去噪效果不理想的問題,基于深度學習方法,本文提出了一種聯合時頻注意力機制和U-Net的語音增強算法:AU-Net,該算法利用U-Net對語音特征進行多尺度融合,并通過時頻注意力機制提高模型的特征提取能力。通過在VBD數據集上測試及與其他算法對比,所提出方法能夠有效抑制噪聲成分,提高語音的質量和可懂度。但是所提方法對語噪混合時段的低頻噪聲的去噪效果還不夠理想,還需要對算法進一步優化。
參考文獻:
[1] KUMAR A,FLORENCIO D. Speech Enhancement in Multiple-noise Conditions Using Deep Neural Networks [J/OL].arXiv:1605.02427 [cs.SD].(2016-05-09).https://arxiv.org/abs/1605.02427.
[2] WENINGER F,ERDOGAN H,WATANABE S,et al. Speech Enhancement with LSTM Recurrent Neural Networks and its Application to Noise-Robust ASR [C]//LVA/ICA 2015: Proceedings of the 12th International Conference on Latent Variable Analysis and Signal Separation.Berlin:Springer,2015,9237:91-99.
[3] HEALY E W,YOHO S E,WANG Y X,et al. An Algorithm to Improve Speech Recognition in Noise for Hearing-Impaired Listeners [J].The Journal of the Acoustical Society of America,2013,134(4):3029-3038.
[4] FU S-W,TSAO Y,LU X G. SNR-aware Convolutional Neural Network Modeling for Speech Enhancement [C]//Proceedings of the Interspeech 2016.Grenoble:ISCA,2016:3768-3772.
[5] HOU J-C,WANG S-S,LAI Y-H,et al. Audio-visual Speech Enhancement Using Multimodal Deep Convolutional Neural Networks [J].IEEE Transactions on Emerging Topics in Computational Intelligence,2018,2(2):117-128.
[6] BHAT G S,SHANKAR N,REDDY C K A,et al. A Real-time Convolutional Neural Network Based Speech Enhancement for Hearing Impaired Listeners Using Smartphone [J].IEEE Access,2019,7:78421-78433.
[7] SHIFAS M P,CLAUDIO S,TSIARAS V,et al. A Fully Recurrent Feature Extraction for Single Channel Speech Enhancement [J/OL].arXiv:2006.05233 [eess.AS].(2020-06-09).https://arxiv.org/abs/2006.05233.
[8] PARK S R,LEE J. A Fully Convolutional Neural Network for Speech Enhancement [J/OL].arXiv:1609.07132 [cs.LG].(2016-09-22).https://arxiv.org/abs/1609.07132v1.
[9] RONNEBERGER O,FISCHER P,BROX T. U-net: Convolutional Networks for Biomedical Image Segmentation [J/OL].arXiv:1505.04597 [cs.CV].(2015-05-18).https://arxiv.org/abs/1505.04597v1.
[10] STOLLER D,EWERT S,DIXON S. Wave-U-Net: A Multi-Scale Neural Network for End-To-End Audio Source Separation [J/OL].arXiv:1806.03185 [cs.SD].(2018-06-08).https://arxiv.org/abs/1806.03185.
[11] BAHDANAU D,CHO K,BENGIO Y. Neural Machine Translation by Jointly Learning to Align and Translate [J/OL].arXiv:1409.0473 [cs.CL].(2014-09-01).https://arxiv.org/abs/1409.0473.
[12] HU J,SHEN L,ALBANIE S,et al. Squeeze-and-excitation Networks [J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2020,42(8):2011-2023.
[13] ZHAO S K,NGUYEN T H,MA B. Monaural speech enhancement with Complex Convolutional Block Attention Module and Joint Time Frequency Losses [C]//ICASSP 2021-2021 IEEE International Conference on Acoustics,Speech and Signal Processing (ICASSP).Toronto:IEEE,2021:6648-6652.
[14] DEFOSSEZ A,SYNNAEVE G,ADI Y. Real Time Speech Enhancement in the Waveform Domain [J/OL].arXiv:2006.12847 [eess.AS].(2020-06-23).https://arxiv.org/abs/2006.12847v1.
[15] RETHAGE D,PONS J,SERRA X. A Wavenet for Speech Denoising [C]//2018 IEEE International Conference on Acoustics, Speech and Signal Processing(ICASSP).Calgary:IEEE,2018:5069-5073.
[16] SHAH N,PATIL H A,SONI M H. Time-Frequency Mask-based Speech Enhancement using Convolutional Generative Adversarial Network [C]//2018 Asia-Pacific Signal and Information Processing Association Annual Summit and Conference (APSIPA ASC).Honolulu:IEEE,2018:1246-1251.
[17] MACARTNEY C,WEYDE T. Improved Speech Enhancement with the Wave-U-Net [J/OL].arXiv:1811.11307 [cs.SD].(2018-11-27).https://arxiv.org/abs/1811.11307.
[18] TAN K,WANG D L. A Convolutional Recurrent Neural Network for Real-Time Speech Enhancement [C]//Proceedings of the Interspeech 2018.Hyderabad:IEEE,2018:3229-3233.
作者簡介:劉旭(1997.04—),男,漢族,河北邯鄲人,碩士在讀,研究方向:基于深度學習的語音增強。