論文翻譯:2020_Acoustic Echo Cancellation Based on Recurrent Neural Network

微笑9349426發表於2022-01-05

論文地址:https://ieeexplore.ieee.org/abstract/document/9306224

基於RNN的回聲消除

摘要

  本文提出了一種基於深度學習的語音分離技術的回聲消除方法。傳統上,AEC使用線性自適應濾波器來識別麥克風和揚聲器之間的聲脈衝響應。然而,當傳統方法遇到非線性條件時,處理的結果並不理想。我們的實踐利用了深度學習技術的優勢,這有利於非線性處理。在所採用的RNN系統中,與傳統的語音分離方法不同,我們增加了單講特徵,併為每個元素分配特定的權重。實驗結果表明,該方法提高了模擬音訊的語音質量感知評價(PESQ),提高了錄製音訊的回聲損耗增強(ERLE)。

關鍵字:回聲消除,語音分離,迴圈神經網路

1 引言

  傳統的聲學回聲消除方法是使用線性自適應濾波器來識別麥克風和揚聲器之間的聲脈衝響應。圖1為我們回聲消除系統的框圖,其中\(x(n),h(n), d(n), s(n), v(n), y(n), \hat{s}(n)\)分別為遠端訊號、回聲路徑、回聲訊號、近端訊號、背景噪聲、麥克風訊號、重新合成訊號。圖2為AEC的內部結構圖,它是一種使用線性自適應濾波器的AEC方法。預估的近端訊號由預估的遠端回聲訊號減去麥克風訊號得到。

論文翻譯:2020_Acoustic Echo Cancellation Based on Recurrent  Neural Network

圖1 回聲消除系統框圖

論文翻譯:2020_Acoustic Echo Cancellation Based on Recurrent  Neural Network

圖2 AEC內部結構圖

2 相關背景

  1990年, J.-S. Soo等人提出了一種基於歸一化最小均方(NLMS)演算法的多延遲塊頻域自適應濾波器(MDF)[1]。NLMS演算法在時域內計算輸入訊號並逐幀更新權值,耗時較長。MDF演算法在頻域進行計算,對輸入訊號進行批量處理,並均勻地進行權值更新。MDF演算法的實現可以在Speex[2]中找到,這是一種開源演算法,我們在實驗中進行了比較。2017年D. Yu等人提出了一種排列不變訓練(PIT)語音分離方法[3]。他們的方法通過最小化原始語音和估計語音之間的估計誤差來訓練神經網路。2018年,Zhang, H等人提出了一種深度學習的回聲消除方法[4],並利用混合訊號和遠端回聲訊號特徵的語音分離技術進行回聲消除。我們提出的方法同時引用了近端訊號和遠端回聲訊號的特徵,並對不同特徵的權重進行調整。實驗結果表明,ERLE和PESQ都得到了改進。通過雙向門控迴歸單元[5][6]對模型進行訓練,建立神經網路。

  提議的方法將在第三節中說明。第四節和第五節將分別規定評價標準和討論實驗。最後,第六部分對本文進行總結。

3 提出方法

  在本節中,我們將介紹我們提出的基於RNN[7]的方法。A節將介紹資料集的預處理,B節說明訓練階段;最後,C部分將描述測試階段。圖3為所提出方法的架構圖。

論文翻譯:2020_Acoustic Echo Cancellation Based on Recurrent  Neural Network

圖3 所提出方法的架構圖

A 預處理

  在這項工作中,我們採用256點短時傅立葉變換(STFT)和129個頻率單元來提取語音資料的特徵。取樣率為16kHz,幀大小為16ms。STFT的流程圖如圖4所示。

論文翻譯:2020_Acoustic Echo Cancellation Based on Recurrent  Neural Network

圖4 短時傅立葉變換流程圖

B 訓練階段

  在該方法中,我們採用了BGRU構造的RNN。與雙向長短時記憶(BLSTM)網路[6][8]不同,該方法相對簡單。通過新增單講特徵(近端訊號和遠端回聲訊號)並調整各元素的權重,實驗結果表明了該演算法的良好效能。我們使用理想比率掩碼[9]作為語音分離目標。式(1)和(2)表示掩模的數學計算。

\[I R M_{1}(t, f)=\sqrt{\frac{X_{1}^{2}(t, f)}{Y^{2}(t, f)}}  (1) \]

\[\operatorname{IRM}_{2}(t, f)=\sqrt{\frac{X_{2}^{2}(t, f)}{Y^{2}(t, f)}}  (2) \]

其中,\(X_{1}, X_{2}\) , \(Y\)分別是目標近端訊號、目標遠端回聲訊號和麥克風訊號。理想比率掩碼是目標訊號在混合訊號中的比率,定義為我們的訓練目標。理想的比值掩模值在0到1之間,所以我們使用ReLU作為啟用函式,將其限制在這個範圍內。BGRU的輸入層和輸出層都有129個神經元。有三個隱藏的層,每個層有496個神經元。學習率為0.0005,迭代次數為60。BGRU中使用的損失函式為均方誤差(MSE),如式(3)所示。

\[J_{x}=\frac{1}{T \times F \times S} \sum_{t=1}^{T} \sum_{f=1}^{F} \sum_{S=1}^{S}\left\|\hat{X}_{S}(t, f)-X_{S}(t, f)\right\|^{2}  (3) \]

其中\(T\)是時間幀的個數,\(F\)是頻率視窗的個數,\(\widehat{X}_{S}\)是估計的說話人的訊號,\({X}_{S}\)是目標說話人的訊號,\(S\)是說話人的人數。

C 測試階段

  在測試階段,將待測混合訊號的特徵輸入BGRU,將特徵與估計的掩碼逐點相乘得到估計的訊號。

4 評價

  為了減少訓練階段的時間消耗,我們使用GPU來執行程式進行加速。我們使用RTX 2080 GPU來執行我們的Python程式,其中我們使用tensorflow和librosa作為我們的神經網路和特徵提取的工具。在本節中,我們將介紹A節中的效能指標和B節中的實驗設定。

A 效能指標

  我們使用兩個效能指標來評估實驗的結果。在單話音場景中,我們使用ERLE來評估遠端回聲的衰減程度。數值越高,說明系統消除回聲的能力越強。在雙語場景下,我們使用PESQ[10]來評估估計訊號與原始訊號之間的相關性。當計算值較高時,說明相關性較高,因此可以保持一定的語音質量。ERLE數學計算可表示為(4),其中\(y(n)\)為麥克風訊號,\(\hat{s}(n)\)為複合成訊號。

\[E R L E=10 \log _{10}\left\{\frac{\varepsilon\left[y^{2}(n)\right]}{\varepsilon\left[\hat{s}^{2}(n)\right]}\right\}  (4) \]

B 實驗設定

  我們在實驗中採用了TIMIT資料集[11]。TIMIT資料集有630個揚聲器。每個演講者講10個句子。總共有6300個句子。每個句子的取樣頻率為16khz。首先,我們將這些句子組成近端訊號和遠端訊號。我們將從隨機的說話者中隨機選擇三句話,並將它們連線起來形成一個遠端訊號。我們將隨機選取另一個說話人的句子,並在前後加上與遠端訊號相同長度的零,形成近端訊號。在遠端訊號部分,訓練階段使用的揚聲器數量為30個,測試階段使用的揚聲器數量為6個,其餘的揚聲器作為近端訊號。我們在模擬和現場錄音兩種情況下生成混合語音。在模擬的情況下,我們使用[12]影像法產生房間脈衝響應,與遠端訊號卷積得到遠端回聲訊號。模擬房間大小為(4,4,4)米,麥克風置於房間中央(2,2,2)米,揚聲器隨機放置。在模擬的情況下,我們使用高斯噪聲產生的訊雜比(SNR)在0到5 dB之間。在錄音的情況下,我們在門窗緊閉的會議室進行現場錄音。此外,我們還可以通過訊號回聲比(SER)來計算近端訊號和遠端回聲訊號之間的關係。我們在實驗中分別選擇了10 dB, 0 dB和-10 dB的SER。訊雜比和SER分別表示為(5)和(6),

\[S N R=10 \log _{10}\left\{\frac{\varepsilon\left[s^{2}(n)\right]}{\varepsilon\left[v^{2}(n)\right]}\right\}  (5) \]

\[S E R=10 \log _{10}\left\{\frac{\varepsilon\left[s^{2}(n)\right]}{\varepsilon\left[d^{2}(n)\right]}\right\}  (6) \]

其中\(s(n)\)是近端訊號,\(v(n)\)是背景噪聲,\(d(n)\)是遠端回波訊號。在模擬的情況下,遠端訊號與房間脈衝響應卷積以得出遠端回波訊號。遠端回波訊號的數學計算可表示為(7):

\[d(n)=x(n) * h(n)  (7) \]

其中\(d(n)\)是遠端回聲訊號,\(x(n)\)是遠端訊號,\(h(n)\)是房間脈衝響應。麥克風訊號的數學計算可表示為(8):

\[y(n)=d(n)+s(n)+v(n)  (8) \]

其中\(d(n)\)是遠端回聲訊號,\(s(n)\)是近端訊號,\(v(n)\)是背景噪聲。

5 實驗結果

  將提出的方法與MDF演算法和PIT語音分離方法進行比較。實驗分別在高、中、低三種不同的情況下進行模擬,並記錄資料進行比較。

  表1和表2列出了高SER情況下ERLE和PESQ的結果。在模擬的情況下,BLSTM的ERLE是最高的,但在記錄的情況下,具有近端訊號特徵的神經網路的訓練模型得到的結果是所有方法中最高的。在模擬的情況下,加入近端訊號特徵並調整特徵的權重進行訓練,得到的PESQ是最高的。實驗結果表明,該方法可以有條件地提高ERLE和PESQ。

表1 ERLE的高SER (10db)

論文翻譯:2020_Acoustic Echo Cancellation Based on Recurrent  Neural Network

表2 PESQ的高SER值(10db)

論文翻譯:2020_Acoustic Echo Cancellation Based on Recurrent  Neural Network

  表3和表4列出了中等SER情況下ERLE和PESQ的結果。總體結果不如高SER情況下的高。同樣的,在BLSTM中模擬的ERLE是最高的,而我們的方法在記錄的情況下表現最好。在模擬的情況下,可以發現類似的結果在高SER情況下。

表3 ERLE的介質SER (0 dB)

論文翻譯:2020_Acoustic Echo Cancellation Based on Recurrent  Neural Network

表4 PESQ的介質SER (10db)

論文翻譯:2020_Acoustic Echo Cancellation Based on Recurrent  Neural Network
  最後,從表5和表6中可以看出,即使在較低的SER情況下,我們的方法在一定的條件下也能提高效能。

  傳統的語音分離方法只使用混合訊號特徵,而我們提出的方法增加了一個單語音特徵並調整每個元素的權重。實驗結果表明,在記錄的情況下,新增單語特徵後,ERLE達到了所有方法中最高的。在模擬的情況下,在加入單語特徵和調整元素權重後,PESQ在深度學習方法中也達到最高。

表5 ERLE的低SER (- 10db)

論文翻譯:2020_Acoustic Echo Cancellation Based on Recurrent  Neural Network

表6 PESQ的低SER (- 10db)

論文翻譯:2020_Acoustic Echo Cancellation Based on Recurrent  Neural Network

6 結論

  提出了一種基於雙向門控迴圈單元(BGRU)的回聲消除演算法,該演算法增加了近端特徵。實驗結果表明,通過新增單語特徵和調整元素的權重可以提高演算法的效能。在模擬的情況下,我們提出的方法比BLSTM[3]好0.2-0.3。在記錄的情況下,所提出的方法比Speex[2]好20-30 dB。該方法在模擬情況下可以提供更好的PESQ,而在ERLE上的效能略有下降。在未來的訓練階段,我們會增加各種記錄資料,針對不同環境增強系統模型。

7 參考文獻

[1] J.-S. Soo and K. Pang, "Multidelay block frequency domain adaptive filter," IEEE Transactions on Acoustics, Speech, and Signal Processing, vol. 38, no. 2, pp. 373–376, 1990.
[2] J.-M. Valin, Speex: A Free Codec For Free Speech, Available: http://www.speex.org/
[3] M. Kolbak, D. Yu, Z.-H. Tan, and J. Jensen, "Multi-talker speech separation with utternance-level permutation invariant training of deep recurrent neural networks" IEEE/ACM Trans. Audio Speech Lang. Proc., vol. 25, pp. 1901-1913, 2017.
[4] Zhang, Hao, and DeLiang Wang. "Deep Learning for Acoustic Echo Cancellation in Noisy and Double-Talk Scenarios,"Training 161.2 (2018): 322.
[5] Chung, Junyoung, et al. "Empirical evaluation of gated recurrent neural networks on sequence modeling." arXiv preprint arXiv:1412.3555 (2014).
[6] Schuster, Mike, and Kuldip K. Paliwal. "Bidirectional recurrent neural networks." IEEE Transactions on Signal Processing 45.11 (1997): 2673-2681.
[7] A. Graves, A. Mohamed, and G. Hinton, "Speech recognitionwith deep recurrent neural networks," in ICASSP, 2013, pp.6645–6649
[8] S. Hochreiter and J. Schimidhuber, "Long short-term memory,"Neural Computation, vol. 9, pp. 1735–1780, 1997
[9] Y. Wang, A. Narayanan, and D. L. Wang, "On training targets for supervised speech separation," IEEE/ACM Transactions on Audio, Speech and Language Processing (TASLP), vol. 22, no. 12, pp. 1849–1858, 2014.
[10] A. W. Rix, J. G. Beerends, M. P. Hollier, and A. P. Hekstra,"Perceptual evaluation of speech quality (pesq)-a new method for speech quality assessment of telephone networks and codecs," in ICASSP, 2001, pp. 749–752.
[11] L. F. Lamel, R. H. Kassel, and S. Seneff, "Speech database development: Design and analysis of the acoustic-phonetic corpus," in Speech Input/Output Assessment and Speech Databases, 1989.
[12] J. B. Allen and D. A. Berkley, "Image method for efficiently simulating small-room acoustics," The Journal of the Acoustical Society of America, vol. 65, no. 4, pp. 943–950, 1979.

相關文章