周 迪,簡志華,胡偉通,汪云路
1(浙江宇視科技有限公司,杭州 310051) 2(杭州電子科技大學(xué) 通信工程學(xué)院,杭州 310018) 3(杭州電子科技大學(xué) 網(wǎng)絡(luò)空間安全學(xué)院,杭州 310018)
語音轉(zhuǎn)換是一種改變語音信號中說話人特性的技術(shù),它將一個人的聲音變成另外一個人的聲音,而不改變其中的語義內(nèi)容[1,2].
高斯混合模型(Gaussion Mixture Model,GMM)作為一種概率統(tǒng)計模型,常用于語音轉(zhuǎn)換,是一種主流的轉(zhuǎn)換方法,它的轉(zhuǎn)換函數(shù)是一種加權(quán)求均值的形式[3-6].這種轉(zhuǎn)換方法易于實現(xiàn)且效果不錯,但存在兩點不足:一是統(tǒng)計平均的轉(zhuǎn)換函數(shù)會使得轉(zhuǎn)換后的語音譜包絡(luò)過于平滑,降低語音自然度;二是為了減少模型訓(xùn)練時的計算量,特征參數(shù)常常是低維的,如MFCC、LSP等,但低維參數(shù)會損失語音中較多的信息,會使音質(zhì)下降.最近幾年,稀疏字典在語音處理的多個領(lǐng)域都得到了很好的應(yīng)用,基于語音樣本字典的轉(zhuǎn)換算法逐漸發(fā)展了起來.這些算法常采用高維的語音譜作為特征參數(shù),并用非負(fù)矩陣分解(Non-negative Matrix Factorization,NMF)求解轉(zhuǎn)換函數(shù)[7-10].該類算法有效地改進(jìn)了基于統(tǒng)計參數(shù)方法的頻譜過于平滑以及由于語料不足所造成的過擬合問題,產(chǎn)生更加自然的語音.但是,上述語音轉(zhuǎn)換算法在實際的噪聲應(yīng)用環(huán)境下,由于噪聲的存在,使得實驗室純凈語音訓(xùn)練的轉(zhuǎn)換系統(tǒng)的性能激劇下降,無法滿足很多實際場景的應(yīng)用需求.
論文在以往NMF轉(zhuǎn)換方法基礎(chǔ)上,提出了采用兩個字典聯(lián)合起來實現(xiàn)噪聲環(huán)境下的語音轉(zhuǎn)換.該算法在訓(xùn)練階段,通過語音庫中的純凈語音得到源語音字典和背景噪聲字典,并將兩者相結(jié)合;在語音轉(zhuǎn)換時,用聯(lián)合字典將輸入的帶噪語音進(jìn)行稀疏表示,根據(jù)源語音字典的權(quán)值矩陣和目標(biāo)語音字典就可以得到轉(zhuǎn)換后的語音,從而完成含噪語音的轉(zhuǎn)換.
稀疏表示是NMF語音轉(zhuǎn)換的核心[8],假定某說話人的特征矢量x∈RL×1,則可由其基矢量序列表示為:
(1)
其中J是基矢量aj總的數(shù)目,所有這些基矢量就構(gòu)成語音字典A=[a1,a2,…,aJ],而hj是相應(yīng)基矢量的加權(quán)系數(shù),并形成權(quán)值矢量h=[h1,h2,…,hJ]T.
假定有一段D幀的語音,用X∈RL×D表示它的特征矢量序列.利用公式(1),X可表示為:
X=AH
(2)
其中H∈RJ×D表示權(quán)值矩陣.
為實現(xiàn)轉(zhuǎn)換,在訓(xùn)練階段,對源和目標(biāo)說話人的特征矢量序列用動態(tài)時間規(guī)整(Dynamic Time Warping,DTW)進(jìn)行對齊[11],并建立平行的源語音字典A和目標(biāo)語音字典B.因此,轉(zhuǎn)換函數(shù)可以表示為:
(3)
在NMF轉(zhuǎn)換算法中,由目標(biāo)語音字典B和源語音的權(quán)值矩陣H就可以實現(xiàn)語音轉(zhuǎn)換,但如果在有噪的環(huán)境下,即待轉(zhuǎn)換的語音是含有噪聲的,由純凈語音訓(xùn)練得到模型與含噪語音之間存在不匹配,因此語音轉(zhuǎn)換系統(tǒng)性能會下降,不能有效地實現(xiàn)轉(zhuǎn)換.為此,論文采用增加噪聲字典的方式提出了一種噪聲魯棒性的NMF語音轉(zhuǎn)換算法(Noise Robust NMF,NR-NMF).
聯(lián)合字典包含了語音字典和噪聲字典,字典中的原子是一幀信號的頻譜,由于轉(zhuǎn)換階段的輸入語音是含噪的,語音信號的頻譜通過短時傅里葉變換(Short Time Fourier Transform,STFT)來計算.但在訓(xùn)練階段,由于源語音和目標(biāo)語音都是純凈語音,對它們進(jìn)行動態(tài)時間規(guī)整過程中,采用由STRAIGHT模型[12]導(dǎo)出的MCC (Mel-Cepstral Coefficients)作為特征參數(shù)來進(jìn)行規(guī)整,再根據(jù)這些規(guī)整信息來獲得對齊的源、目標(biāo)語音STFT頻譜參數(shù)序列,并建立平行的源語音、目標(biāo)語音字典As和Bs.
同時引入噪聲字典An,將語音字典As與噪聲字典An一同構(gòu)成聯(lián)合字典A,即:
A=[AsAn]
(4)
為使噪聲字典An與實際應(yīng)用場景相匹配,論文提取實際環(huán)境下的噪聲STFT頻譜作為噪聲字典.聯(lián)合字典A生成過程示意圖如圖1所示.
假設(shè)含噪語音中任意第d幀的STFT頻譜特征參數(shù)為xd,則有:
=Ahds.t. hd≥0
(5)
圖1 生成聯(lián)合字典的流程圖Fig.1 Flow chart for generating the joint dictionary
=AHs.t.H≥0
(6)
在X和A已知的情況下,通過最小化損失函數(shù)來估計權(quán)值矩陣H,即:
H=arg min{dKL(X,AH)+‖λΛ1×D.*H‖1}s.t.H≥0
(7)
式(7)中,dKL(·)是KL散度,λ=[λ1…λJ…λJ+K]T是稀疏懲罰因子,包含語音部分懲罰因子和噪聲部分懲罰因子,‖·‖1是l1范數(shù).權(quán)值矩陣H可由乘性迭代更新規(guī)則得到[8],即:
(8)
其中?表示點乘,式中除法都是點除,矩陣ΛL×D,Λ1×D中的元素都是1.
權(quán)值矩陣H包含了語音字典的權(quán)值矩陣Hs和噪聲字典的權(quán)值矩陣Hn,即:
(9)
因此轉(zhuǎn)換后的目標(biāo)語音頻譜為:
(10)
(11)
本文所提出的語音轉(zhuǎn)換系統(tǒng)原理框圖如圖2所示.
圖2 語音轉(zhuǎn)換系統(tǒng)原理框圖Fig.2 Framework of voice conversion system
實驗采用的CASIA語音庫是實驗室安靜環(huán)境下的漢語語音.語音庫采用相同的文本,即每個人的發(fā)音內(nèi)容是一樣.信號的采樣頻率為16KHz,采用16位比特量化.實驗隨機選用150句作為訓(xùn)練集,50句作為測試集.采用1024點的FFT計算語音STFT頻譜,語音幀長為20ms,幀移為10ms.而含噪語音由噪聲庫Noisex-92中的5種常見噪聲(white、pink、babble、factory、volvo)疊加純凈語音得到.
論文采用文獻(xiàn)[8]中的差異值作為兩個矢量序列之間距離度量,表示為:
(12)
差異值E越小,兩個矢量序列之間就更具有相似性.
實驗中聯(lián)合字典包括語音字典部分和噪聲字典部分,通過使用該聯(lián)合字典達(dá)到含噪語音與字典的匹配.論文先進(jìn)行了兩個字典大小選擇的實驗,其中NMF循環(huán)迭代次數(shù)預(yù)選擇為400,稀疏懲罰因子λ為0.1.圖3顯示了含噪語音和經(jīng)過NMF分解重構(gòu)后語音之間的差異值E跟兩個字典大小關(guān)系.
由圖3(a)可以看出,在不同噪聲字典大小情況下,隨著語音字典幀數(shù)J增大,含噪語音及其重構(gòu)語音之間的差異值E逐漸減小,并且字典幀數(shù)J達(dá)到4000以后,差異值E逐漸趨于穩(wěn)定,因此語音字典幀數(shù)選擇為4000幀.從圖3(b)來看,在各種語音字典大小J的條件下,隨著噪聲字典大小K的增大,含噪語音及其重構(gòu)語音之間的差異值E均逐漸減小,但減小量的越來越小.由于轉(zhuǎn)換算法在實際的應(yīng)用中,需要從背景環(huán)境中獲取噪聲,噪聲字典過大,則需要提取較長時間,不適合實時的處理,所以折中考慮選擇噪聲字典大小K為2000幀.
圖3 差異值E和語音字典大小、噪聲字典大小的關(guān)系Fig.3 Relationship between distortion E and the size of speech dictionary,noise dictionary
在求取H的循環(huán)迭代計算中,將噪聲字典所對應(yīng)的稀疏懲罰因子都設(shè)置為0,這是因為噪聲不具有稀疏性.因此,本文實驗只研究語音字典的稀疏懲罰因子對轉(zhuǎn)換性能的影響,并將稀疏懲罰因子λ設(shè)置在0.1-0.9的區(qū)間,而循環(huán)迭代次數(shù)從0到400變化,含噪語音及其經(jīng)NMF分解重構(gòu)語音之間的差異值E的變化曲線如圖4所示.
圖4 差異值E和懲罰因子λ、迭代次數(shù)Fig.4 Curves of distortion E and number of iterations under different penalty factor λ
由圖4來看,迭代次數(shù)達(dá)到200次以后各條曲線的值幾乎不會隨循環(huán)次數(shù)的增加而有所變化,因此論文將循環(huán)迭代次數(shù)設(shè)定為200.同時,隨著λ的值從0.9減小到0.1,重構(gòu)前后語音特征矢量之間的差異值E逐漸減小.為進(jìn)一步確定參數(shù)λ的取值,本文比較了λ從0.1減小到0.01時,用圖2所示的轉(zhuǎn)換系統(tǒng)對含噪語音進(jìn)行轉(zhuǎn)換,轉(zhuǎn)換后的語音頻譜與對應(yīng)的目標(biāo)語音頻譜之間的差異值E如圖5所示.
圖5 轉(zhuǎn)換系統(tǒng)差異值E和懲罰因子λ之間的關(guān)系Fig.5 Curve of distortion E and penalty factor λ after conversion
由圖5可以看出,稀疏懲罰因子λ為0.04時,轉(zhuǎn)換頻譜與目標(biāo)頻譜差異值E達(dá)到最小,因此語音字典的權(quán)值矩陣所對應(yīng)的懲罰因子為0.04.
我們將傳統(tǒng)的NMF轉(zhuǎn)換算法[8]與本文NR-NMF算法進(jìn)行性能對比,同時為了增強NMF算法抗噪能力,在轉(zhuǎn)換之前采用譜減法進(jìn)行降噪處理[14,15],將該方法稱為SS-NMF(Spectral Subtraction NMF)算法.圖6是NMF、SS-NMF以及NR-NMF 3種算法的差異值對照圖.
圖6 3種轉(zhuǎn)換算法的性能比較Fig.6 Performance comparison of the threeconversion algorithms
圖6中的差異值E是表示含噪語音進(jìn)行轉(zhuǎn)換后的語音頻譜與對應(yīng)的目標(biāo)語音頻譜之間的差異值.從圖中可以看出,隨著SNR由-5dB逐漸增大到20dB時,轉(zhuǎn)換語音與目標(biāo)語音的差異值E逐漸減小,說明當(dāng)輸入語音不管是含噪語音還是較為純靜的語音,本算法都具有較好的轉(zhuǎn)換效果.由圖中NMF曲線與NR-NMF曲線的比較可以看出,在各種信噪比條件下NR-NMF算法的差異值都比傳統(tǒng)的NMF算法要小,而且信噪比越低,NR-NMF算法的性能優(yōu)勢更明顯.同時,與SS-NMF算法相比,在高信噪比時,兩者的差異值接近,但在低信噪比時,NR-NMF算法的差異值明顯要小,說明本文算法雖然在高信噪比時與SS-NMF算法的性能相當(dāng),但在低信噪比時對轉(zhuǎn)換系統(tǒng)的性能有很大的提升.圖7顯示的是語音受白噪聲干擾,信噪比為0dB的情況下,分別用NR-NMF與SS-NMF轉(zhuǎn)換后語音的語譜圖對比.圖7(a)為待轉(zhuǎn)換的含噪語音語譜圖,圖7(b)為目標(biāo)語音語譜圖,圖7(c)為SS-NMF轉(zhuǎn)換后的語譜圖,圖7(d)為NR-NMF轉(zhuǎn)換后的語譜圖.由圖7(b)、圖7(c)比較可以看出SS-NMF算法在SNR=0dB低信噪比下存在較多的噪聲殘留,因此轉(zhuǎn)換效果明顯變差,由圖7(b)、圖7(d)比較可以看出NR-NMF算法轉(zhuǎn)換后的語譜圖存在極少的噪聲殘留,轉(zhuǎn)換效果優(yōu)于SS-NMF.
圖7 白噪聲環(huán)境下(SNR=0dB)NR-NMF與SS-NMF的對比Fig.7 Comparison of NR-NMF and SS-NMF with white noise when SNR=0dB
為比較本文算法在其他不同噪聲的情況下也具有較好的性能,論文分別在pink、babble、factory、volvo這4種噪聲的情況下進(jìn)行了實驗,實驗結(jié)果見表1所示.從表1來看,NR-NMF算法分別在6種不同的信噪比情況下都比傳統(tǒng)的NMF算法具有更小的差異值,特別在低信噪比時具有更好的性能優(yōu)勢.
表1 NR-NMF與NMF在不同噪聲情況下的差異值對比Table 1 Comparison of distortion for NR-NMF and NMF with different noises
綜上實驗表明,NR-NMF算法具有非常好的噪聲魯棒性,在低信噪比情況下也能實現(xiàn)較好的轉(zhuǎn)換效果,同時該算法在多種噪聲環(huán)境下也都有更好的轉(zhuǎn)換性能.
表2 NMF、SS-NMF與NR-NMF的MOS分對照Table 2 Comparison of MOS of NMF, SS-NMF and NR-NMF
語音轉(zhuǎn)換系統(tǒng)性能的測試,不僅包括客觀評測,還包括主觀評價.論文對轉(zhuǎn)換系統(tǒng)的性能進(jìn)行了主觀評價,采用的方法是MOS打分,它是用來評價轉(zhuǎn)換后的語音質(zhì)量.MOS打分的評測結(jié)果如表2所示.從表2中的實驗結(jié)果來看,本文算法NR-NMF比SS-NMF和NMF算法都具有更高的MOS分,同時,由于引入了降噪功能,SS-NMF轉(zhuǎn)換后的語音比NMF具有更好語音質(zhì)量.
論文通過引入噪聲字典,提出了一種具有噪聲魯棒性的語音轉(zhuǎn)換算法NR-NMF.將噪聲字典與源語音字典進(jìn)行聯(lián)合,以匹配各種不同噪聲環(huán)境下的語音,實現(xiàn)在噪聲環(huán)境下的語音轉(zhuǎn)換.實驗結(jié)果表明,該算法在噪聲環(huán)境較為惡劣的情況下也能很好地實現(xiàn)語音轉(zhuǎn)換.同時,該算法中噪聲數(shù)據(jù)可以直接由說話人所處環(huán)境中采集得到且無需在前端增加額外的消噪模塊,所以極大的方便了語音轉(zhuǎn)換的應(yīng)用.