論文翻譯:2021_MetricGAN+: An Improved Version of MetricGAN for Speech Enhancement

凌逆戰發表於2021-12-21

論文地址:MetricGAN+:用於語音增強的 MetricGAN 的改進版本

論文程式碼:https://github.com/JasonSWFu/MetricGAN

引用格式:Fu S W, Yu C, Hsieh T A, et al. MetricGAN+: An Improved Version of MetricGAN for Speech Enhancement[J]. arXiv preprint arXiv:2104.03538, 2021.

摘要

  用於訓練語音增強模型的代價函式與人類的聽覺感知之間的差異往往使增強後的語音質量不能令人滿意。因此,考慮人的感知的客觀評價指標可以作為縮小差距的橋樑。我們之前提出的MetricGAN旨在通過將指標與鑑別器相連線來優化目標指標。因為在訓練過程中只需要目標評估函式的分數,所以度量甚至可以是不可微的。在這項研究中,我們提出了一個MetricGAN+,其中提出了三種結合語音處理領域知識的訓練技術。在Voicebank-Demand資料集上的實驗結果表明,與之前的MetricGAN相比,MetricGAN+可以將PESQ分數提高0.3,並獲得最先進的結果(PESQ分數=3.15)。

關鍵詞:語音增強、語音質量優化、黑盒評分優化、MetricGAN

1  引言

  語音增強(SE)模型有許多不同的應用和目標。例如,在人與人之間的交流中,我們關心語音質量或清晰度(例如,在具有嚴重背景噪聲的電話通話中,清晰度可能比質量更重要)。另一方面,在人機通訊中,SE的目標是提高語音識別效能(例如,降低自動語音識別(ASR)系統在噪聲條件下的誤詞率(WER))。因此,訓練特定於任務的SE模型可以為其目標應用程式獲得更好的效能。

   要部署特定於任務的SE模型,最直觀的方法是採用與最終目標相關的損失函式。雖然基於訊號電平的差異(例如,?1或?2損耗)直接應用測量方法是直接的,但一些研究表明它與語音質量[1-3]、可懂度[4]和語音誤位元速率[5,6]沒有很高的相關性。

   另一種選擇是直接優化語音質量或清晰度。這通常是非常具有挑戰性的,通常客觀的評估指標被用作替代指標。在人類感知相關的客觀度量中,語音質量的感知評價(PESQ)[7]和短時客觀可懂度(STOI)[8]分別是用於評價語音質量和清晰度的兩個常用函式。這兩個度量的設計考慮了人的聽覺感知,並且與乾淨和退化語音訊號之間的簡單?1或?2距離相比,與主觀聽力測試顯示出更高的相關性[1,4]。

  根據是否必須知道評價指標的細節,當前優化這些客觀得分的技術可以分為兩類:1)白盒:這些方法[4,9-12]用手工製作的、可區分的評價指標來近似複雜的評價指標。但是,必須知道指標的詳細資訊,並且只能將其用於目標指標。(2)黑盒:這些方法[3,13,14]主要將度量作為獎勵,並應用基於強化學習的技術來提高分數。然而,培訓通常效率低下,效能提高有限。

  MetricGAN[15]屬於黑盒類別,與傳統的?1丟失相比,它可以獲得更好的訓練效率和適度的效能改善(平均PESQ分數增加0.1%以上)。雖然MetricGAN可以很容易地用於優化不同的評估指標(例如,PESQ、STOI或WER),但我們主要以PESQ分數優化為例。其他分機可在[16-18]找到。

  在本研究中,為了進一步提升MetricGAN框架的效能,揭示影響效能的重要因素,我們提出了MetricGAN+。MetricGAN+背後的基本思想沒有改變,改進來自於包括三種結合了語音處理領域知識的訓練技術。對鑑別器(D)提出了兩種改進,對生成器(G)提出了一種改進:

對於鑑別器:

1)、包含噪聲語音用於鑑別器訓練:除了增強和乾淨的語音之外,還使用噪聲語音來最小化鑑別器和目標客觀度量之間的距離。

2)、增加來自重放緩衝器的樣本大小:將從前一個曆元產生的語音重複用於訓練D。這可以防止D災難性地遺忘[19]。

對於生成器:

1)、掩碼估計的可學習Sigmoid函式:傳統的Sigmoid函式對於掩碼估計並不是最優的,因為它對於所有頻段都是相同的,並且具有最大值1。按頻率學習的Sigmoid函式更靈活,並且改善了SE的效能。

  為了提高重複性,SpeechBrain工具包中提供了MetricGAN+

2  MetricGAN介紹

  MetricGAN的主要思想是用神經網路(例如,Quality-Net[20])模擬目標評估函式(例如,PESQ函式)的行為。代理估計函式從原始分數中學習,將目標評價函式視為黑盒。一旦訓練了代理評估,它就可以用作語音增強模型的損失函式。不幸的是,靜態代理很容易被對抗性的例子愚弄[22](估計質量分數上升,但真實分數下降[21])。為了緩解這個問題,我們最近提出了一個學習框架,其中代理損失和增強模型交替更新[15]。這種方法被稱為MetricGAN,因為它的目標是優化黑盒度量得分,其訓練流程類似於生成對抗網路(GANS)。下面,我們簡要介紹一下MetricGAN的培訓情況。

  設$Q'(I)$是表示歸一化在0和1之間的目標評估度量的函式,其中$I$表示度量的輸入。例如,對於PESQ和STOI,$I$表示我們想要評估的一對增強語音$G(x)$(或帶噪語音$x$)及其對應的乾淨語音$y$。為了確保鑑別器網路(D)的行為類似於$D'$,$D$的目標函式是

$$公式1:\begin{aligned}
L_{\mathrm{D}(\text { MetricGAN })}=& \mathbb{E}_{x, y}\left[\left(D(y, y)-Q^{\prime}(y, y)\right)^{2}+\right.\\
&\left.\left(D(G(x), y)-Q^{\prime}(G(x), y)\right)^{2}\right]
\end{aligned}$$

這兩個術語分別用於減少$D(.)$和$D'(.)$之間的差異,分別用於純淨語音和增強語音。注意,$D'(y,y)= 1$和$0 \leq Q'(G(x),y) \leq 1$。

  生成器網路(G)的訓練完全依賴於對抗性損失

$$公式2:L_{\mathrm{G}(\text { MetricGAN })}=\mathbb{E}_{x}\left[(D(G(x), y)-s)^{2}\right]$$

其中$s$表示期望分配的分數。例如,要生成乾淨的語音,只需將$s$賦值為1。整體的訓練流程如圖1所示。

3  從MetricGAN到MetricGAN+

  為了提高MetricGAN框架的效能,提出了一些先進的學習技術。在調查過程中,我們還研究了對結果或訓練效率有顯著影響的因素。MetricGAN+的改進主要來自以下三個方面的修改。

3.1  學習噪聲語音的度量學分數

  Kawanaka et al.[16]建議在訓練鑑別器時包含有噪音的語音。事實證明,這穩定了學習過程。我們對MetricGAN+也採用相同的策略。因此,將鑑別器網路的損失函式修改如下:

$$公式3:\begin{array}{r}L_{\mathrm{D}(\text { MetricGAN+ })}=\mathbb{E}_{x, y}\left[\left(D(y, y)-Q^{\prime}(y, y)\right)^{2}+\right. \left(D(G(x), y)-Q^{\prime}(G(x), y)\right)^{2}+ \left.\left(D(x, y)-Q^{\prime}(x, y)\right)^{2}\right]\end{array}$$

其中,第三項用於最小化$D(·)$和$D'(`)$對於帶噪語音。

3.2  經驗重放緩衝區(Replay Buffer)的樣本

  正如在深度Q-network[23]中一樣,我們發現重用從前一個epoch產生的資料來訓練鑑別器帶來了巨大的效能改進。直觀地,在沒有經驗重放的情況下,鑑別器可能會忘記目標$Q'$的函式在先前生成的語音中的行為,從而使得?(.)與?‘(.)不太相似。為了說明重放緩衝區的工作原理,我們在演算法1中介紹了訓練過程。在MetricGAN+中,我們將history_portion從0.1(在MetricGAN中使用)增加到0.2。

3.3  掩模估計的可學習Sigmoid函式

  大多數基於掩碼的語音增強方法[24]將S型啟用應用於輸出層,以將掩碼限制在0和1之間。然而,由於相位差異,乾淨$|Y(t,f)|$和噪聲($|N(t,f)|$)幅度譜的總和與噪聲($|X(t,f)|$)的幅度譜[25]不完全匹配:

$$公式4:|X(t, f)| \neq|Y(t, f)|+|N(t, f)|$$

因此,不能保證理想的幅值掩碼$|Y(t,f)|/|X(t,f)|$小於1。因此,我們在(5)中將刻度變數$\beta $設定為等於1.2.

  此外,用於壓縮輸入值的標準Sigmoid函式對於語音處理可能不是最佳的。例如,由於噪聲和語音在高、低頻段的模式是不同的,不同的頻段可以有自己的壓縮函式來進行掩碼估計。為了賦予我們的模型這種靈活性,我們設計了一個可學習的Sigmoid函式,如下所示:

其中$\alpha $是從訓練資料中學習的。不同的頻段有自己的$\alpha $。

  $\alpha $控制壓縮函式的形狀。如圖2所示,大$\alpha $(紅色)的值類似於硬閾值,並且大多數輸出值不是0就是1(更不平滑、更飽和[26],類似於二進位制掩碼)。另一方面,小$\alpha $(綠色)的行為更像線性函式,可以觀察到它與綠色虛線有較大的重疊(虛線和Sigmoid函式之間的重疊可以大致表示線性的範圍)

圖2:帶有不同$\alpha $的Sigmoid函式

4  實驗

4.1  資料集

  為了將提出的MetricGAN+與其他現有方法進行比較,我們使用公開可用的Voicebank-Demand資料集[27]。訓練集(11572個話語)由28個說話人組成,具有4個訊雜比(15、10、5和0dB)。測試集(824個話語)由2個說話人組成,具有4個SNR(17.5、12.5、7.5和2.5dB)。有關資料的詳細資訊可以在原文中找到。除了PESQ評分外,我們還使用其他三個度量對效能進行評估:CSIG預測訊號失真的平均意見評分(MOS),CBAK預測背景噪聲干擾的MOS,COVL預測整體語音質量的MOS。這三個指標的範圍都在1到5之間。對於使用的所有指標,值越高表示效能越好。

4.2  模型搭建

  本實驗中使用的生成器是具有兩個雙向LSTM層的BLSTM[28],每個層有200個神經元。LSTM之後是兩個完全連線的層,每個層分別具有用於掩碼估計的300個LeakyReLU節點和257個(可學習的)Sigmoid節點。當該掩碼與輸入的噪聲幅度譜圖相乘時,噪聲分量應該被去除。此外,如文獻[3]中所述,為了防止音樂噪音,在T-F掩模處理之前,將地板(flooring)應用於估計的掩模。這裡,我們將T-F掩碼的下限閾值設定為0.05。這裡的鑑別器是具有四個二維(2-D)卷積層的CNN,具有15個濾波器和(5,5)核大小。為了處理可變長度的輸入(不同的語音發聲具有不同的長度),新增了2-D全域性平均池化層(global  average  pooling  layer),使得特徵可以固定在15維(15是前一層中的特徵對映的數量)。隨後新增3個完全連通的層,每層分別有50個和10個LeakyReLU神經元,以及1個線性節點。此外,為了使D為平滑函式(即,輸入譜圖中的任何小的修改都可以顯著改變估計分數),通過使用譜歸一化將鑑別器限制為1-Lipschitz連續[29]。在實驗中,Number_of_Samples設定為100。

4.3  實驗結果

  我們首先展示在第3節中介紹的不同訓練技術的效果。在表1中,每一行的結果是使用上一行的設定加上當前技術得出的。從表中可以看出,與進一步增加緩衝器中的樣本大小相比,去除輸入譜圖的歸一化,並將噪聲語音包含到$D$訓練中 會帶來更大的改善。但是,表2顯示,如果不保留重放緩衝區,PESQ得分僅達到2.82。當我們從緩衝區中隨機抽取10%和20%的歷史增強資料時,分數分別增加0.2和0.23。當history_portion=0.3時,我們沒有觀察到進一步的改進。這意味著如果沒有緩衝器,鑑別器可能只關注當前樣本的評估結果,而忽略其對先前生成的語音的正確性(災難性遺忘[19])。由於$D$和$Q'$之間的差異,因此$D$的梯度可能不是$Q$的梯度的一個很好的近似。

表2  不同history_part的結果

表1  MetricGAN+消融研究

  表1還顯示,使用可學習的sigmoid可以進一步提高分數。我們試圖讓$\beta $也可學習,但效能沒有進一步改善。學習到的$\alpha$值如圖3所示。大多數$\alpha$值小於1(傳統的S形函式的原始值),接近0.5。正如第3.3節所指出的,這意味著對於大多數頻率bin,可學習的sigmoid的行為更像一個線性函式。這自然地導致了一個梯度反向傳播,比發生在飽和區域的更有效。另一方面,對於高頻頻率bin,學習到的$\alpha$值遠大於1,因此掩碼的行為更像二進位制掩碼。我們推測這是因為訓練資料中的噪聲型別沒有佔據高頻區域,或者是因為PESQ函式的特性。然而,還需要更多的實驗來驗證可能的原因。

圖3  在可學習的S形函式中學習\alpha的值

  在圖4中,我們展示了不同訓練技術和相同BLSTM模型結構的MetricGAN的訓練曲線,但訓練時使用了均方誤差損失。從這個圖中,我們可以首先觀察到,所有基於MetricGAN的方法都大大優於MSE損失。此外,引入噪聲語音進行判別器訓練和採用可學習的sigmoid不僅提高了最終效能,而且提高了訓練效率。

圖4  不同設定的學習曲線(G結構是固定的)。

  表3將MetricGAN+與其他常用方法進行了比較。雖然我們的生成器只是一個傳統的BLSTM,以幅度譜圖作為輸入,並具有適當的損失函式,但它的效能優於最近的模型(例如,注意機制[30,31])或相感知輸入(例如,波形[32][33]或相位[34])。我們也注意到[35]報告的分數比我們的高,但是感知損失函式訓練需要額外的資料集。與BLSTM (MSE)相比,我們的MetricGAN+將PESQ分數從2.71提高到3.15。我們還發現,我們的模型的CBAK得分低於其他先進水平;這可能是由於T-F mask的低閾值設定為0.05,如4.2節所述,因此仍然存在一些噪聲。

表3  在VoiceBank-DEMAND資料集上比較MetricGAN+和其他方法 

5  未來工作

  MetricGAN+的程式碼可以在SpeechBrain工具包中獲得,我們鼓勵社群不斷提高它的效能和培訓效率。在下面,我們列出了一些值得探索的方向

1)、由於MetricGAN是一個黑盒框架,它可以被用來優化不同的度量。在[17]中,它被用於優化語音清晰度。據我們所知,它還沒有被用於黑箱ASR模型(如谷歌ASR)的噪聲條件下的WER最小化。

2)、可以進一步研究鑑別器的結構。現在它只是一個簡單的CNN和全域性平均池化。更先進的機制,如注意力[30,31]可能會取代全域性池化。此外,如果目標$Q'$函式更復雜(如ASR模型的WER),則可能需要增加鑑別器的複雜度。

3)、使用重放緩衝區訓練非常耗時,特別是當緩衝區中已經有大量的歷史資料時。增量學習(Incremental learning)[40]可能是這個問題的一個很好的解決方案。

6  結論

  在本研究中,我們提出了幾種技術來提高MetricGAN框架的效能。我們發現,在鑑別器訓練中引入噪聲語音和應用可學習的s型函式是最有用的方法。我們的MetricGAN+在VoicBank-DEMAND資料集上實現了最先進的結果,與MetricGAN和BLSTM (MSE)相比,PESQ分數可以分別提高0.3和0.45。從實驗結果來看,我們認為所提出的框架可以進一步改進並應用於不同的任務;因此,我們將程式碼公開。

7  參考文獻

[1] C. K. Reddy, V. Gopal, and R. Cutler, "DNSMOS: A nonintrusive perceptual objective speech quality metric to evaluate noise suppressors," arXiv preprint arXiv:2010.15258, 2020.

[2] P. Manocha, A. Finkelstein, R. Zhang, N. J. Bryan, G. J. Mysore, and Z. Jin, "A differentiable perceptual audio metric learned from just noticeable differences," in Proc. Interspeech, 2020.

[3] Y. Koizumi, K. Niwa, Y. Hioka, K. Kobayashi, and Y. Haneda, "DNN-based source enhancement to increase objective sound quality assessment score," IEEE/ACM Transactions on Audio, Speech, and Language Processing, vol. 26, pp. 1780-1792, 2018.

[4] S.-W. Fu, T.-W. Wang, Y. Tsao, X. Lu, and H. Kawai, "End-toend waveform utterance enhancement for direct evaluation metrics optimization by fully convolutional neural networks," IEEE/ACM Transactions on Audio, Speech and Language Processing, vol. 26, pp. 1570-1584, 2018.

[5] D. Bagchi, P. Plantinga, A. Stiff, and E. Fosler-Lussier, "Spectral feature mapping with mimic loss for robust speech recognition," in Proc. ICASSP, 2018, pp. 5609-5613.

[6] L. Chai, J. Du, and C.-H. Lee, "Acoustics-guided evaluation (AGE): a new measure for estimating performance of speech enhancement algorithms for robust ASR," arXiv preprint arXiv:1811.11517, 2018.

[7] A. Rix, J. Beerends, M. Hollier, and A. Hekstra, "Perceptual evaluation of speech quality (PESQ), an objective method for end-to-end speech quality assessment of narrowband telephone networks and speech codecs," ITU-T Recommendation P. 862, 2001.

[8] C. H. Taal, R. C. Hendriks, R. Heusdens, and J. Jensen, "A short-time objective intelligibility measure for time-frequency weighted noisy speech," in Proc. ICASSP, 2010, pp. 4214-4217. [9] Y. Zhao, B. Xu, R. Giri, and T. Zhang, "Perceptually guided speech enhancement using deep neural networks," in Proc. ICASSP, 2018, pp. 5074-5078.

[10] J. M. Martin-Donas, A. M. Gomez, J. A. Gonzalez, and A. M. Peinado, "A deep learning loss function based on the perceptual evaluation of the speech quality," IEEE Signal Processing Letters, 2018.

[11] J. Kim, M. El-Kharmy, and J. Lee, "End-to-end multi-task denoising for joint SDR and PESQ optimization," arXiv preprint arXiv:1901.09146, 2019.

[12] M. Kolbæ k, Z.-H. Tan, and J. Jensen, "Monaural speech enhancement using deep neural networks by maximizing a shorttime objective intelligibility measure," in Proc. ICASSP, 2018.

[13] Y. Koizumi, K. Niwa, Y. Hioka, K. Kobayashi, and Y. Haneda, "DNN-based source enhancement self-optimized by reinforcement learning using sound quality measurements," in Proc. ICASSP, 2017, pp. 81-85.

[14] H. Zhang, X. Zhang, and G. Gao, "Training supervised speech separation system to improve STOI and PESQ directly," in Proc. ICASSP, 2018, pp. 5374-5378.

[15] S.-W. Fu, C.-F. Liao, Y. Tsao, and S.-D. Lin, "MetricGAN: Generative adversarial networks based black-box metric scores optimization for speech enhancement," in Proc. ICML, 2019.

[16] M. Kawanaka, Y. Koizumi, R. Miyazaki, and K. Yatabe, "Stable training of DNN for speech enhancement based on perceptuallymotivated black-box cost function," in Proc. ICASSP, 2020.

[17] H. Li, S.-W. Fu, Y. Tsao, and J. Yamagishi, "iMetricGAN: Intelligibility enhancement for speech-in-noise using generative adversarial network-based metric learning," in Proc. Interspeech, 2020.

[18] S.-W. Fu, C.-F. Liao, T.-A. Hsieh, K.-H. Hung, S.-S. Wang, C. Yu, et al., "Boosting objective scores of speech enhancement model through MetricGAN post-processing," in Proc. APSIPA, 2020.

[19] I. J. Goodfellow, M. Mirza, D. Xiao, A. Courville, and Y.  Bengio, "An empirical investigation of catastrophic forgetting in gradient-based neural networks," in Proc. ICLR, 2014.

[20] S.-W. Fu, Y. Tsao, H.-T. Hwang, and H.-M. Wang, "Quality-Net: An end-to-end non-intrusive speech quality assessment model based on blstm," in Proc. Interspeech, 2018. 

[21] S.-W. Fu, C.-F. Liao, and Y. Tsao, "Learning with learned loss function: Speech enhancement with quality-net to improve perceptual evaluation of speech quality," IEEE Signal Processing Letters, 2019.

[22] C. Szegedy, W. Zaremba, I. Sutskever, J. Bruna, D. Erhan, I. Goodfellow, et al., "Intriguing properties of neural networks," arXiv preprint arXiv:1312.6199, 2013.

[23] V. Mnih, K. Kavukcuoglu, D. Silver, A. A. Rusu, J. Veness, M. G. Bellemare, et al., "Human-level control through deep reinforcement learning," Nature, vol. 518, pp. 529-533, 2015.

[24] D. Wang and J. Chen, "Supervised speech separation based on deep learning: An overview," IEEE/ACM Transactions on Audio, Speech, and Language Processing, 2018.

[25] H. ErdoGAN, J. R. Hershey, S. Watanabe, and J. Le Roux, "Phase-sensitive and recognition-boosted speech separation using deep recurrent neural networks," in Proc. ICASSP, 2015, pp. 708-712.

[26] Z. Cao, M. Long, J. Wang, and P. S. Yu, "Hashnet: Deep learning to hash by continuation," in Proc. ICCV, 2017, pp. 5608-5617.

[27] C. Valentini-Botinhao, X. Wang, S. Takaki, and J. Yamagishi, "Investigating RNN-based speech enhancement methods for noise-robust Text-to-Speech," in SSW, 2016, pp. 146-152.

[28] F. Weninger, H. ErdoGAN, S. Watanabe, E. Vincent, J. Le Roux, J. R. Hershey, et al., "Speech enhancement with LSTM recurrent neural networks and its application to noise-robust ASR," in Proc. LVA/ICA, 2015, pp. 91-99.

[29] T. Miyato, T. Kataoka, M. Koyama, and Y. Yoshida, "Spectral normalization for generative adversarial networks," arXiv preprint arXiv:1802.05957, 2018.

[30] Y. Koizumi, K. Yaiabe, M. Delcroix, Y. Maxuxama, and D. Takeuchi, "Speech enhancement using self-adaptation and multihead self-attention," in Proc. ICASSP 2020, pp. 181-185.

[31] J. Kim, M. El-Khamy, and J. Lee, "Transformer with Gaussian weighted self-attention for speech enhancement," in Proc. ICASSP, 2020.

[32] J. Su, Z. Jin, and A. Finkelstein, "HiFi-GAN: High-fidelity denoising and dereverberation based on speech deep features in adversarial networks," in Proc. Interspeech, 2020.

[33] A. Defossez, G. Synnaeve, and Y. Adi, "Real time speech enhancement in the waveform domain," in Proc. Interspeech, 2020.

[34] D. Yin, C. Luo, Z. Xiong, and W. Zeng, "Phasen: A phase-andharmonics- aware speech enhancement network," in Proc. AAAI 2020, pp. 9458-9465.

[35] S. Kataria, J. Villalba, and N. Dehak, "Perceptual loss based speech denoising with an ensemble of audio pattern recognition and self-supervised models," in Proc. ICASSP, 2021.

[36] S. Pascual, A. Bonafonte, and J. Serra, "SEGAN: Speech enhancement generative adversarial network," in Proc. Interspeech, 2017.

[37] M. H. Soni, N. Shah, and H. A. Patil, "Time-frequency maskingbased speech enhancement using generative adversarial network," in Proc. ICASSP, 2018, pp. 5039-5043.

[38] D. Baby and S. Verhulst, "SerGAN: Speech enhancement using relativistic generative adversarial networks with gradient penalty," in Proc. ICASSP, 2019, pp. 106-110.

[39] Q. Zhang, A. Nicolson, M. Wang, K. K. Paliwal, and C. Wang, "Deepmmse: A deep learning approach to mmse-based noise power spectral density estimation," IEEE/ACM Transactions on Audio, Speech, and Language Processing, vol. 28, pp. 1404- 1415, 2020.

[40] C.-C. Lee, Y.-C. Lin, H.-T. Lin, H.-M. Wang, and Y. Tsao, "SERIL: Noise adaptive speech enhancement using regularization-based incremental learning," in Proc. Interspeech, 2020. 

 

相關文章