多任務對抗學習[1]
為了獲得對噪音的魯棒性,引入多任務學習,分為三個網路:
- 輸入網路(綠色),用作特徵提取器
- senone輸出網路(紅色),用作senone分類
- domain輸出網路(藍色),domain這裡指噪音的類型,總共17種雜訊
為了增加對噪音的魯棒性,增加了GRL層(gradient reversal layer),網路在反向傳播的時候,對於domain網路過來的梯度取了 −α ,也就是增加噪音分類的錯誤率,以便獲得senone-discriminative domain-invariant的特徵。
[2]和[1]的思想類似。 SEGAN[3]
主要用來做語音增強(比如降噪)等。
結合conditional GAN和LSGAN,使用 L1 norm,最後的loss如下:
minDVLSGAN(D)=12Ex∼pdata(x,xc)[(D(x,xc)−1)2]+12Exc∼pdata(xc),z∼pz(z)[D(G(z,xc))2]
minGVLSGAN(G)=12Ex∼pdata(xc),z∼pz(z)[(D(G(z,xc))−1)2]+λ∥G(z,x~)−x∥1
一些參數的含義如下:
x : noise speech
xc : clean speech
z : 服從常態分佈的noise samples
訓練流程如下:
訓練的時候需要clean speech和noisy speech的pair,以保證在去除雜訊的同時保留原始語音的資訊。 參考文獻
[1].Adversarial Multi-task Learning of Deep Neural Networks for Robust Speech Recognition
[2].Invariant Representations for Noisy Speech Recognition
[3].SEGAN: Speech Enhancement Generative Adversarial Network