柯 健,徐志京
(上海海事大學 信息工程學院,上海 201306)
語音一直是人與人之間交流與信息共享的主要方式,為人們的日常生活帶來了極大的便利。然而社會環(huán)境是一個復雜的客體,時常會伴隨著各種復雜的背景噪聲,對語音清晰度產(chǎn)生極大影響[1]。語音增強的目的主要是從帶噪語音中提取純凈語音或者去除復雜的背景噪聲,以提高語音清晰度和可懂度[2]。
對語音增強的研究開始于20世紀60年代,傳統(tǒng)語音增強算法主要有維納濾波法、譜減法、最小均方誤差法、子空間法等,該類方法大多需要依賴于對噪聲的估計,因此噪聲估計在傳統(tǒng)語音增強方法研究中尤為重要。傳統(tǒng)的語音增強算法原理簡單,實現(xiàn)容易,但是由于對噪聲譜的估計不準,導致存在“音樂”噪聲。維納濾波算法雖然有效解決了該問題,使殘留噪聲近似于白噪聲,不再是音樂噪聲,輸出語音聽起來更加悅耳,但維納濾波器是基于最小均方誤差估計,在處理非平穩(wěn)噪聲信號上效果不理想,容易造成語音失真。
隨著神經(jīng)網(wǎng)絡的迅速發(fā)展,越來越多的神經(jīng)網(wǎng)絡模型也被應用到語音增強算法中,為語音增強算法帶來新的可能。深度神經(jīng)網(wǎng)絡的隱含層數(shù)目多,而且隱含層的傳遞函數(shù)是非線性函數(shù),可以更好地提取語音信號中的結構化信息和高維信息,具有更強大的表達與建模能力,但是其泛化能力有待提升。傳統(tǒng)的語音增強算法中認為人耳對于相位并不敏感,故忽略了相位在語音增強中的作用性,然而2013年Martin Krawczyk等人[3]研究表明相位在提高語音質(zhì)量上同樣具有重要作用。因此,本文提出一種端到端的語音增強方法,采用生成對抗網(wǎng)絡(Generative Adversarial Network,GAN),無需提取復雜的語音特征,保留原始特征,進一步有效提高語音質(zhì)量。
維納濾波算法是基于最小均方誤差估計的線性濾波算法[4],假設輸入為平穩(wěn)隨機過程,且它的統(tǒng)計特性已知,求解維納-霍夫方程即可得到最佳濾波器的沖擊響應。
圖1為維納濾波語音增強在時域上的算法圖,輸入含噪聲信號為:
y(t)=x(t)+n(t)
(1)
其中x(t)為純凈語音信號,n(t)為加性噪聲信號,對式(1)進行傅里葉變換得到:
Y(t,k)=X(t,k)+N(t,k)
(2)
式(2)為第t幀、第k頻譜上的輸入信號頻域表示。輸入信號經(jīng)過譜估計器h(t)得到增強信號s(t),其估計過程如下:
(3)
e(t)=x(t)-s(t)
(4)
E[e2(t)]=E[(x(t)-s(t))2]
(5)
其中,式(4)表示輸出信號與預期信號之間的誤差,式(5)為該誤差的均方估計,對其進行求導,可獲得濾波系統(tǒng)h的最優(yōu)均方誤差,得出維納增益為:
(6)
其中ξ(t,k)表示先驗信噪比。
S(t,k)=H(t,k)·Y(t,k)
(7)
式(7)通過H(t,k)與Y(t,k)相乘得到增強語音信號的頻譜估計,再利用傅里葉反變換即可得到增強語音信號時域波形。
圖1 維納濾波語音增強時域算法圖
生成對抗網(wǎng)絡啟發(fā)自博弈論中的二人零和博弈,由GOODFELLOW I J于2014年提出[5],此后在圖像生成方面成績顯著,并在圖像處理、語音識別和自然語言處理等領域中有著廣泛應用。生成對抗網(wǎng)絡是一種生成式模型,學習服從某種分布Z的樣本z映射為服從另一種分布X的樣本x,其博弈雙方為生成模型(generative model)和判別模型(discriminative model),學習的過程就是兩者相互對抗的過程,對抗的最終目標是獲得納什均衡,即生成器生成近似真實樣本分布,判別器無法辨出真假。
圖2為生成對抗網(wǎng)絡算法框圖,定義輸入的隨機噪聲z服從Pz(z)分布(高斯分布、均勻分布等),生成模型G是一個多層感知機,用來捕捉樣本數(shù)據(jù)的分布,輸出G(z)表示生成模型的生成樣本,訓練目標是生成近似于真實樣本的假樣本,其損失函數(shù)表示為:
log(1-D(G(z)))
(8)
圖2 GAN算法框圖
在生成模型后再接上一個多層感知機,作為判別模型D,它可以看作是一個二分類器,輸入為來自生成模型的假樣本G(z)和真實樣本x,輸出為D(x)。D(x)表示判斷真假樣本的概率,其目標是揪出G模型生成的假樣本,并判別輸出結果D(G(z))概率為0,對于真實樣本,判別輸出結果D(x)概率為1。其損失函數(shù)表示為:
-(log(D(x))+log(1-D(G(z))))
(9)
兩者在訓練過程中性能不斷得到優(yōu)化,判別模型D的判別能力越來越強,生成模型G的生成樣本愈加真實,該網(wǎng)絡的代價函數(shù)表示為:
Ez~p(z)[log(1-D(G(z)))]
(10)
當最終D(G(z))=0.5時,即判別模型無法對輸入數(shù)據(jù)做出判決,可以認為生成模型模擬出了近似于真實樣本的分布。
本文通過設置對抗網(wǎng)絡來進行語音增強,輸入原始語音信號,輸出增強語音信號。生成模型G結構設置為全卷積神經(jīng)網(wǎng)絡(Fully Convolutional Networks, FCN),全卷積神經(jīng)網(wǎng)絡由卷積神經(jīng)網(wǎng)絡發(fā)展而來,與經(jīng)典卷積神經(jīng)不同,全卷積神經(jīng)網(wǎng)絡取消了最后一層用于得到固定長度的特征向量進行分類的全連接層,轉而采用偏置卷積對最后一個卷積層的特征圖進行上采樣,使它恢復到原始輸入尺寸,因此全卷積神經(jīng)網(wǎng)絡可以接受任意尺寸的輸入。
圖3為全卷積神經(jīng)網(wǎng)絡結構圖,在卷積階段,輸入信號通過多個卷積層和池化層被降維壓縮,每N步就會得到一個卷積結果,并且每層使用校正線性單元(The Rectified Linear Unit, ReLU)[6]作為激活函數(shù),之所以選擇該激活函數(shù)是因為在反向傳播過程中,ReLU減輕了語音訓練過程中梯度彌散。圖4為生成模型G的訓練結構圖,生成模型G的網(wǎng)絡結構是一個端到端的對稱結構,類似于自動編碼器的編碼和解碼過程。本文使用16 kHz對原始語音進行上采樣,經(jīng)過N個濾波器得到卷積結果c,并與潛在特征向量z連接,此時目標函數(shù)可表示為:
(11)
圖3 全卷積神經(jīng)網(wǎng)絡結構圖
圖4 生成模型G的訓練結構圖
為了穩(wěn)定訓練并提高G中生成的樣本的質(zhì)量,本文使用改進的生成對抗網(wǎng)絡,將目標函數(shù)的交叉熵損失函數(shù)用最小二乘代替,則生成模型G損失函數(shù)表示如下:
(12)
同時為減小誤差損失,本文采用L2范數(shù)防止訓練出現(xiàn)過擬合,提升網(wǎng)絡的泛化能力,生成模型G的損失函數(shù)更新如下:
(13)
偏置卷積過程為卷積過程的逆過程,包括上采樣和跳躍連接結構[7]。傳統(tǒng)的池化會縮小樣本尺寸,使一些細節(jié)信息丟失,通過上采樣恢復原始尺寸,可以保留更詳細的信息。跳躍連接結構用來優(yōu)化輸出,保證輸出結果更加精細。
所有的實驗都是基于TIMIT語音數(shù)據(jù)集構建的[8],本文使用了320條純凈語音數(shù)據(jù)集,其中男女生語音各一半;噪聲數(shù)據(jù)集來自加性噪聲和9種來自Aurora2(Pearce et al.,2000)[9]的噪聲數(shù)據(jù)集,其中每種噪聲信噪比分為15 db,10 db,5 db,0 db,-5 db 5個等級。在訓練集中將280條純凈語音數(shù)據(jù)與各種類型噪聲數(shù)據(jù)相加來構建多種條件的訓練語音數(shù)據(jù)集。在測試集中,選取另5種噪聲數(shù)據(jù)集與40條純凈語音數(shù)據(jù)相加來構建不同條件的測試集。
本文所有的語音信號均采用16 kHz下采樣,相應幀長設置為1 s,幀移為500 ms,采樣點數(shù)為16 384,在訓練和測試過程中均使用預加重系數(shù)a為0.95的預加重濾波器對輸入語音進行預處理。
在訓練階段,本文的訓練樣本由兩部分組成,如圖5所示,第一部分是判別模型D的輸入為噪聲信號和純凈語音信號的合成,輸出標記為1,第二部分判別模型D的輸入為生成模型G生成的增強語音信號,輸出是假樣本并標記為0。本文設置訓練模型學習率(learning rate, lr)為0.000 2,批尺寸(batch-size)為150,訓練周期為150次。
圖5 基于生成對抗網(wǎng)絡語音增強結構圖
生成模型G網(wǎng)絡結構的卷積部分由11個卷積層構成,步長為2,輸入服從N(0,1)的標準正態(tài)分布作為隨機噪聲z,維度和深度均為256,特征圖的個數(shù)隨著濾波器個數(shù)的增加而增加,每層卷積特征圖數(shù)增加一倍,樣本數(shù)減小一倍。如前所述,反卷積階段與卷積過程相反,參數(shù)相同。
判別模型D的網(wǎng)絡結構與生成模型G的卷積階段結構類似,是一個二分類卷積神經(jīng)網(wǎng)絡,判別模型D有兩個輸入為16 384×1維的通道,每層卷積層使用參數(shù)α為0.3的Leaky-ReLU非線性激活函數(shù)。
語音增強的評價標準主要分為主觀評價和客觀評價。本文采用的是客觀評價法,客觀評價是目前使用比較廣泛的一種方法,本文選取分段信噪比(Segmental SNR,SSNR)和語音質(zhì)量聽覺評估(Perceptual Evaluation of Speech Quality, PESQ)兩種方法對模型進行評估。分段信噪比(SSNR)計算公式如(14)所示:
SSNR=
(14)
其中,l(l=0,1,…,L)表示幀號,L為總的幀數(shù),N為窗長。分段信噪比(SSNR)越大,語音質(zhì)量越高[10]。
語音質(zhì)量聽覺評估(PESQ)是語音質(zhì)量評價中的一種典型算法,受到廣泛使用,與主觀評價相似度較高[11],其采用的是線性評分制度,數(shù)值在-0.5~4.5之間,表示輸入測試語音與輸出語音相比語音質(zhì)量的高低,分數(shù)越高,語音質(zhì)量越好。
本文選取5種不同類型的噪聲數(shù)據(jù)集與40條純凈語音數(shù)據(jù)相加構建不同條件的測試集對該生成對抗網(wǎng)絡進行評估。對測試集的處理與輸入模型中的方法相同,用測試集驗證方法的準確性。表1為客觀評價結果,其中,Noisy表示原始語音信號,Winner表示使用維納濾波算法的語音增強信號,Gan表示使用生成對抗網(wǎng)絡算法的語音增強信號。為便于分析,將本文算法與傳統(tǒng)方法中的維納濾波語音增強方法相比較,從表1可以看出,生成對抗網(wǎng)絡的PESQ分數(shù)相比較于傳統(tǒng)的維納濾波算法略高0.97%,而在分段信噪比上生成對抗網(wǎng)絡要比維納濾波算法高15.91%,實驗表明使用生成對抗網(wǎng)絡進行語音增強可懂度略微提高,語音信號的清晰度較好,進一步驗證了本文提出方法的可行性和有效性。
表1 客觀評價結果
本文以一種新的方法實現(xiàn)了語音增強,不同于傳統(tǒng)的基于譜估計算法和深度神經(jīng)網(wǎng)絡算法,本文采用一種端到端的語音增強算法,利用對抗方式生成增強語音信號,保留原始語音信號時域上的相位細節(jié)信息,對生成對抗網(wǎng)絡在語音增強領域做了初步探索。通過實驗表明,該方法不僅可行,并可以有效替代傳統(tǒng)流行方法,得到更好的增強性能。
由于本文采用生成對抗網(wǎng)絡模型,在訓練過程中存在一些新的問題。首先,在對數(shù)據(jù)集的選取上,噪聲類型不夠全面,語音數(shù)量較少,以后可以進一步擴大數(shù)據(jù)庫,進行相應的研究。其次,未來在對生成對抗網(wǎng)絡結構優(yōu)化上還需進一步研究。
[1] LOIZOU P C. Speech Enhancement:theory and pratice (2nd ed)[M]. Boca Raton, FL, USA:CRC Press, Inc., 2013.
[2] YANG L P, FU Q J. Spectral subtraction-based speech enhancement for coghlear implant patients in background noise[J]. Journal of the Acoustical Society of America, 2005, 117(3): 1001-1004.
[3] PALIWAL K, WJCICKI K, SHANNON B, The importance of phase in speech enhancement[J]. Speech Communication, 2011, 53(4):465-494.
[4] LIM J S, OPPENHEIM A V. Enhancement and bandwidth compression of noisy speech[J]. Proceedings of the IEEE, 1978, 67(12):1586-1604.
[5] GOODFELLOW I J, POUGET-ABADIE J, MIRZA M, et al. Generative adversarial nets[C]. Advances in Neural Information Processing Systems(NIPS), 2014: 2672-2680.
[6] HE K, ZHANG X, REN S,et al. Delving deep into rectifiers: surpassing human-level performance on imagenet classification[J]. Proceedings of the IEEE International Conference on Computer Vision(ICCV), 2015: 1026-1034.
[7] RADFORD A, METZ L, CHINTALA S. Unsupervised representation learning with deep convolutional generative adversarial networks[J]. arXiv preprint arXiv:1511.06434, 2015.
[8] GAROFOLO J S. Getting started with the DARPA TIMIT CD-ROM: an acoutic phonetic continuous speech database[J]. National Institute of Standards and Technology(NIST), Gaithersburgh, MD, 1988, 107: 16.
[9] PEARCE D, HIRSCH H G. The aurora experimental framework for the performance evaluation of speech recognition systems under noisy confitions[C]//Proceedings of the 6th International Conference on Spoken Language Processing, 2000:29-32.
[10] DELLER J R, HANSEN J H L. Discrete-time processing of speech signals (2nd ed)[M]. New York: IEEE Press, 2000.
[11] RIX A W, BEERENDS J G, HOLLIER M P, et al. Perceptual evaluation of speech quality(PESQ)-a new method for speech quality assessment of telephone networks and codecs[C]//ICASSP. IEEE Computer Society, 2001:749-752.