張 筱,張 巍,王文浩,萬永菁
(華東理工大學(xué)信息科學(xué)與工程學(xué)院,上海 200237)
語音轉(zhuǎn)換系統(tǒng)旨在改變給定說話人(源說話人)的聲學(xué)特性使其聽起來像指定說話人(目標(biāo)說話人)的聲音,并且在此過程中保持語音的語義信息不變[1]。語音轉(zhuǎn)換已經(jīng)被廣泛應(yīng)用于各種任務(wù),例如隱藏說話人身份、為語音障礙者開發(fā)個性化助聽器、文語轉(zhuǎn)換合成系統(tǒng)、用不同人的聲音進行電影配音等。因此,對語音轉(zhuǎn)換的研究不僅能推進信號處理領(lǐng)域的理論發(fā)展,還可以推進與之交叉的其他領(lǐng)域的研究進展[2]。
語音轉(zhuǎn)換系統(tǒng)的實現(xiàn)包括以下幾個要素:分析合成模型、聲學(xué)特征參數(shù)、特征參數(shù)轉(zhuǎn)換規(guī)則和語音庫。本文主要研究了基于平行語音庫的特征參數(shù)轉(zhuǎn)換映射規(guī)則,并使用高質(zhì)量的STRAIGHT模型來完成參數(shù)提取和語音合成工作。
參數(shù)轉(zhuǎn)換目前已經(jīng)發(fā)展成熟,使用較多的算法是基于高斯混合模型GMM(Gaussian Mixture Model)[3]的統(tǒng)計算法和基于人工神經(jīng)網(wǎng)絡(luò)ANN(Artificial Neural Network)[4]的轉(zhuǎn)換算法。使用高斯混合模型來實現(xiàn)語音轉(zhuǎn)換任務(wù)時存在過擬合問題,并且高斯混合模型是一種淺層模型,其特征的選擇對系統(tǒng)性能的好壞起決定性作用,由于過高的維度會使高斯混合模型中的線性轉(zhuǎn)換項接近奇異值,因此GMM建模通常在低維譜特征(如美爾頻率倒譜系數(shù)、線性預(yù)測系數(shù)等)空間中進行,從而導(dǎo)致轉(zhuǎn)換效果不佳[5]。
人工神經(jīng)網(wǎng)絡(luò)中的生成對抗網(wǎng)絡(luò)GAN(Generative Adversarial Network)[6]自提出至今已被廣泛應(yīng)用于各個領(lǐng)域。在語音信號處理領(lǐng)域,GAN在語音增強、語音識別、語音轉(zhuǎn)換等方面都有應(yīng)用。文獻[7]首次提出將GAN 應(yīng)用于語音增強SEGAN(Speech Enhancement Generative Adversarial Network),該方法直接在時域?qū)φZ音原始波形進行操作,利用端到端的訓(xùn)練模型實現(xiàn)語音增強,實現(xiàn)了具有良好適應(yīng)性的語音增強生成式架構(gòu)。文獻[8]將GAN應(yīng)用于自動語音識別ASR(Automatic Speech Recognition)系統(tǒng),該方法在頻域?qū)γ罓栕V特征進行操作,提高了ASR系統(tǒng)的噪聲魯棒性。文獻[9]對SEGAN進行改進,實現(xiàn)了耳語到人聲的語音轉(zhuǎn)換,與傳統(tǒng)的回歸模型相比有著更加自然的基音輪廓。
目前語音轉(zhuǎn)換參數(shù)使用較為廣泛的有線性預(yù)測系數(shù)LPC(Linear Predictive Coefficients)和美爾頻率倒譜系數(shù)MFCC(Mel-Frequency Cepstral Coefficients),這些參數(shù)是由語音原始信號經(jīng)過手工提取后得到的,在提取過程中不可避免地存在損失和失真。
針對上述問題,本文著眼于STRAIGHT譜參數(shù)SPC(STRAIGHT Spectra Coefficients)[10]的研究,使用生成對抗網(wǎng)絡(luò)對其進行轉(zhuǎn)換。在此基礎(chǔ)上,為了進一步改善轉(zhuǎn)換效果,本文提出了多譜特征生成對抗網(wǎng)絡(luò)MSFGAN(Multi-Spectral Feature Generative Adversarial Network),將高維度的SPC和不同低維度的參數(shù)結(jié)合,通過跨域重建誤差進行融合,利用生成對抗網(wǎng)絡(luò)的學(xué)習(xí)機制來實現(xiàn)語音轉(zhuǎn)換,從而獲得具有良好清晰度和可懂度的高質(zhì)量語音。
語音轉(zhuǎn)換系統(tǒng)的實現(xiàn)分為訓(xùn)練和轉(zhuǎn)換2個階段,如圖1所示。在訓(xùn)練階段,首先對源語音和目標(biāo)語音進行預(yù)加重、分幀、加窗等預(yù)處理,然后使用STRAIGHT分析模型提取聲道參數(shù)和聲源參數(shù),這些聲學(xué)參數(shù)經(jīng)過動態(tài)時間規(guī)整DTW(Dynamic Time Warping)之后用于建立說話人語音間的非線性映射函數(shù)。在轉(zhuǎn)換階段,分別采用訓(xùn)練階段得到的映射函數(shù)對測試語音的聲道參數(shù)和聲源參數(shù)進行轉(zhuǎn)換,最后使用STRAIGHT合成模型得到轉(zhuǎn)換語音。
聲源和聲道參數(shù)共同作用使得語音的個性特征各不相同。聲源參數(shù)主要包括基音頻率、聲門波形、基頻波動等,聲道參數(shù)主要包括譜包絡(luò)系數(shù)、線性預(yù)測系數(shù)、美爾頻率倒譜系數(shù)等。語音轉(zhuǎn)換涉及聲學(xué)建模、特征對齊和聲學(xué)映射。聲學(xué)建模表示聲道的形狀、聲門激勵的形狀和長期韻律參數(shù)[11]。其中,聲道參數(shù)對于識別說話者唯一性的作用比聲源參數(shù)更為突出[12],因此本文主要研究聲道參數(shù)中譜包絡(luò)系數(shù)的轉(zhuǎn)換,對于聲源參數(shù)中的基音頻率,使用單高斯模型算法進行轉(zhuǎn)換。
本文使用自適應(yīng)加權(quán)譜內(nèi)插STRAIGHT模型提取語音信號的特征參數(shù),它的優(yōu)點在于可以分解出相互獨立的譜包絡(luò)系數(shù)和基頻參數(shù),合成高質(zhì)量的語音[13]。
Figure 2 Comparison of waveform and voiceprint of spectral feature圖2 時域波形圖和譜特征聲紋圖對比
語音信號x(t)的表示如式(1)所示:
x(t)=v(t)*e(t)
(1)
其中,t代表時間,v(t)代表聲道信號,e(t)代表周期性聲源信號。通過剝離v(t)與e(t)之間的關(guān)聯(lián)性,可以將x(t)轉(zhuǎn)變?yōu)榉侵芷谛盘枴?/p>
首先利用式(2)對語音信號進行短時傅里葉變換:
F(ω,t)=FFT[x(t)w(t)]=X(ω)W(ω)
(2)
傳統(tǒng)的通過加窗計算得到的語音信號的短時譜會在時間軸和頻率軸上出現(xiàn)與基音有關(guān)的周期性。為了正確估計語音信號的譜包絡(luò),使其不受基頻的影響,必須將此二維空間上的周期性去除。故STRAIGHT中采用了卷積二維三角窗的平滑內(nèi)插方法,利用式(3)對F(ω,t)進行譜包絡(luò)系數(shù)提取[13]:
t-τ)|)2dλdτ)])1/2
(3)
此外通過對STRAIGHT譜包絡(luò)進行線性預(yù)測分析可以得到LPC,對STRAIGHT譜包絡(luò)系數(shù)進行對數(shù)幅值壓縮和扭曲頻率離散余弦變換可以得到MFCC,這解決了傳統(tǒng)方法中由短時傅里葉變換得到MFCC而導(dǎo)致的倒譜階數(shù)的限制(上限約13階)[14]。
訓(xùn)練時,首先分別對源語音和目標(biāo)語音信號進行分幀,然后利用DTW將其對齊,將對齊后的語音以N幀作為1個“塊”,以相同的塊對語音進行滑動截取,相鄰2個塊之間的重疊率為50%,對于語音末端不足N幀的部分填零;測試時采用不重疊方式截取塊,對于語音末端不足N幀部分填零。對于每一個塊提取M維譜特征參數(shù)并生成語音聲紋圖,其橫坐標(biāo)代表幀數(shù),縱坐標(biāo)代表特征維度,顏色深淺代表幅值大小。語音信號的時域波形圖和不同譜特征參數(shù)生成的語音聲紋圖如圖2所示,其中fn=512為幀數(shù),inc=256為幀移,SPC、MFCC和LPC的大小分別為512×512,512×32,512×16。
生成對抗網(wǎng)絡(luò)由生成器G(Generator)和鑒別器D(Discriminator)組成。生成器學(xué)習(xí)將樣本z從先驗分布Z映射到來自另一分布X的訓(xùn)練樣本x,鑒別器判斷輸入是來自數(shù)據(jù)集的真實樣本x或是來自生成器的生成樣本G(z),其目標(biāo)函數(shù)如式(4)所示:
LGAN(G,D)=Ex~Pdata(x)[logD(x)]+
Ez~Pz(z)[log(1-D(G(z)))]
(4)
其中,G(z)是生成器輸出的生成樣本,D(x)是鑒別器對輸入樣本的鑒別結(jié)果。在訓(xùn)練過程中先固定鑒別器的參數(shù),更新生成器的參數(shù),直至生成器效果最優(yōu),再固定生成器參數(shù),更新鑒別器參數(shù),在D(G(z))=0.5時,即鑒別器無法區(qū)分輸入樣本是真實的還是生成的,生成器能模擬出真實樣本數(shù)據(jù)的分布。
本文的研究基于平行語音庫,因此使用條件生成對抗網(wǎng)絡(luò)cGAN(conditional Generative Adversarial Network)[15]給生成器和鑒別器額外的信息xc來對其進行約束,目標(biāo)函數(shù)更改為式(5):
LcGAN(G,D)=Ex,xc~Pdata(x,xc)[logD(x)]+
Ez~Pz(z),xc~Pdata(xc)[log(1-D(G(z,xc),xc))]
(5)
對于語音轉(zhuǎn)換來說,目標(biāo)語音為x,源語音為xc,轉(zhuǎn)換語音為G(z,xc)。其中源語音xc就相當(dāng)于給出的標(biāo)簽,這樣將無監(jiān)督網(wǎng)絡(luò)變成了有監(jiān)督網(wǎng)絡(luò),利用xc對模型的生成過程加以指導(dǎo),使得最后的輸出語音與輸入語音具有相同語義內(nèi)容。文獻[16]將對抗損失函數(shù)與傳統(tǒng)損失函數(shù)相結(jié)合并驗證了其有效性。本文采用文獻[16]的思想,在目標(biāo)函數(shù)中加入了L1范數(shù),以促使生成器得到更加接近目標(biāo)語音的輸出。
Figure 3 Framework of voice conversion based on cGAN圖3 基于cGAN的語音轉(zhuǎn)換框架
修改后的目標(biāo)函數(shù)如式(6)所示:
G*=LcGAN(G,D)+λLL1(G)
(6)
其中,LL1(G)如式(7)所示:
LL1(G)=Ex,xc,z[‖x-G(z,xc)‖1]
(7)
基于cGAN的語音轉(zhuǎn)換框架如圖3所示,附加信息的加入使得整個網(wǎng)絡(luò)的訓(xùn)練更加穩(wěn)定,從而得到與源語音具有相同語義內(nèi)容的轉(zhuǎn)換語音。圖3中Pz是隨機噪聲圖,這是因為要得到多種多樣的輸出需要給出不同的輸入,所以引入隨機噪聲來模擬不同的輸入;Pxc、Px和PG(z,xc)分別代表源語音、目標(biāo)語音和轉(zhuǎn)換語音的譜包絡(luò)系數(shù)聲紋圖,Pyc、Py和PG(z,yc)代表源語音、目標(biāo)語音和轉(zhuǎn)換語音的輔助譜特征參數(shù)聲紋圖。
多模態(tài)融合是通過聯(lián)合多個模態(tài)的信息來實現(xiàn)目標(biāo),根據(jù)融合的層次可分為像素級、特征級和決策級。為了進一步提高轉(zhuǎn)換語音的質(zhì)量,本文提出基于多譜特征生成對抗網(wǎng)絡(luò)的語音轉(zhuǎn)換算法,使用特征級多模態(tài)融合技術(shù),將高維度的原始譜特征參數(shù)和低維度的抽象譜特征參數(shù)進行特征級融合,以提高網(wǎng)絡(luò)對語音信號的感知能力。MSFGAN的結(jié)構(gòu)如圖4所示。
MSFGAN的生成器如圖5a所示,先通過卷積編碼器將SPC聲紋圖降維得到高級特征,再通過卷積解碼器上采樣到原始分辨率;同時使用跳躍連接(Skip Connection)將編碼時第i層和解碼時第n-i層大小一致的特征圖進行拼接,這樣使得低層和高層可以共享不同分辨率下像素級的信息。根據(jù)原始圖像的大小將鑒別器構(gòu)造為5層的網(wǎng)絡(luò),如圖5b所示,通過卷積得到大小遠小于原始圖像的特征圖,再進行鑒別,從而提高了網(wǎng)絡(luò)的性能。
Figure 4 Voice conversion based on MSFGAN圖4 基于多譜特征生成對抗網(wǎng)絡(luò)的語音轉(zhuǎn)換
Figure 5 Generator,discriminator and Unet structure of MSFGAN圖5 多譜特征生成對抗網(wǎng)絡(luò)的生成器、鑒別器和Unet結(jié)構(gòu)圖
將輔助譜特征參數(shù)聲紋圖通過一個如圖5c所示的Unet網(wǎng)絡(luò)[17],訓(xùn)練后使其獲得語音的輔助譜特征域映射關(guān)系;然后將其與由SPC得到的特征域映射關(guān)系相結(jié)合,通過增加跨域重建誤差將2種模態(tài)的信息融合??缬蛑亟ㄕ`差定義如式(8)所示:
Lcross=Ey,yc,z[‖y-G(z,yc)‖1]
(8)
修改后的目標(biāo)函數(shù)如式(9)所示:
G*=LcGAN(G,D)+α1LL1(G)+α2Lcross(Unet)
(9)
目標(biāo)函數(shù)由GAN網(wǎng)絡(luò)的對抗損失項、生成器損失項和Unet的跨域重建誤差項這3個分量組成。定義β=α2/α1為跨域重建誤差項比例系數(shù),該參數(shù)用于調(diào)節(jié)生成器損失項和跨域重建誤差項的比例,因為網(wǎng)絡(luò)主要學(xué)習(xí)的是原始譜包絡(luò)系數(shù)之間的映射關(guān)系,所以β∈[0,1]。當(dāng)β=0時,MSFGAN模型簡化為cGAN的語音轉(zhuǎn)換模型。在訓(xùn)練過程中,使用隨機梯度下降算法SGD(Stochastic Gradient Descent)和Dropout策略來提高網(wǎng)絡(luò)的泛化能力,模型參數(shù)通過優(yōu)化目標(biāo)函數(shù)進行更新學(xué)習(xí),使用跨域重建誤差來實現(xiàn)多模態(tài)特征的融合,從而提高了轉(zhuǎn)換語音的質(zhì)量。
本文所需的數(shù)據(jù)集來自中國科學(xué)院自動化研究所的CASIA漢語語料庫,語料庫由4位具有代表性的專業(yè)說話人錄制而成,涵蓋了424個漢語常用字音節(jié),語音單句平均時長約1.5 s,分為相同文本(300條)和不同文本(100條)2部分。本文實驗基于平行語音庫進行,采樣頻率為16 kHz。訓(xùn)練集由每個說話人的100條語句組成,測試集由每個說話人的20條語句組成,共涵蓋400多個語音音節(jié)。語音模型選擇STRAIGHT分析合成模型,特征參數(shù)選用512維譜包絡(luò)系數(shù)、16維線性預(yù)測系數(shù)和32維美爾頻率倒譜系數(shù)。在實驗時,設(shè)置4組對照實驗:男轉(zhuǎn)女(M1-F1),女轉(zhuǎn)男(F1-M1),男轉(zhuǎn)男(M1-M2),女轉(zhuǎn)女(F1-F2)。
本文使用平均美爾譜失真值MCD(Mel-Cepstral Distortion)[18]和語譜圖來評價轉(zhuǎn)換后的語音。MCD值越小,說明轉(zhuǎn)換語音和目標(biāo)語音越接近,轉(zhuǎn)換效果越好。同時結(jié)合語譜圖作為輔助,兩者一起可以得到相對準(zhǔn)確、符合真實聽覺感受的評價。
MCD計算公式如式(10)所示:
(10)
4.2.1 GMM與cGAN對比
因為在相對小的數(shù)據(jù)集上基于傳統(tǒng)統(tǒng)計方法和基于深度神經(jīng)網(wǎng)絡(luò)的方法是有可比性的,所以在實驗中,使用同樣100句語音分別訓(xùn)練GMM和本文提出的cGAN,并進行分析和對比。表1展示了4組實驗中2種語音轉(zhuǎn)換算法在測試集(20句)上的平均MCD。表1中使用基于GMM的算法進行的2組實驗的特征參數(shù)分別為LPC和MFCC,使用基于cGAN的算法進行的3組實驗的特征參數(shù)分別為LPC、MFCC和SPC。
從表1中可以看出,4組實驗中基于cGAN的算法優(yōu)于傳統(tǒng)基于GMM的算法,并且在基于cGAN的算法中,使用STRAIGHT譜參數(shù)顯著提高了算法的有效性。在2種算法中,使用LPC參數(shù)的效果均弱于使用MFCC參數(shù)的。此外,因為同性間聲音特征的差異度小于異性間的,使得同性語音轉(zhuǎn)換后的MCD值小于異性語音的。
Table 1 Mean Mel-cepstral distortion of algorithms based on GMM and cGAN
4.2.2 跨域重建誤差比例系數(shù)β最優(yōu)值選取
在MSFGAN中跨域重建誤差比例系數(shù)β的不同會導(dǎo)致轉(zhuǎn)換效果的差異,表2和表3分別展示了在測試集上,SPC+MFCC組合和SPC+LPC在使用不同β時的MCD均值和方差。
由表2可知,在SPC+MFCC組合中,當(dāng)β取值分別在0.3和0.2左右時,男聲轉(zhuǎn)女聲以及女聲轉(zhuǎn)男聲的平均MCD取得最小值;當(dāng)β取值在0.4左右時,男聲轉(zhuǎn)男聲以及女聲轉(zhuǎn)女聲的MCD取得最小值。對比表3和表2可以看出,使用SPC+MFCC組合的總體效果優(yōu)于使用SPC+LPC組合的,這是因為在MSFGAN中,Unet的卷積操作使得特征參數(shù)高度抽象,而LPC本身維度較低使得信息在下采樣過程中丟失。并且在SPC+LPC組合中,對不同的β計算得出的MCD平均值差異較小,因此最優(yōu)值的選取由MCD的均值和方差共同確定。男聲轉(zhuǎn)女聲以及男聲轉(zhuǎn)男聲的β的最優(yōu)值根據(jù)平均MCD決定,取值為0.3;女聲轉(zhuǎn)男聲以及女聲轉(zhuǎn)女聲的β的最優(yōu)值結(jié)合方差,取值分別為0.1和0.3。
Table 2 Mean and variance of MCD under different β in SPC+MFCC combination
Table 3 Mean and variance of MCD under different β in SPC+LPC combination
綜合表2和表3可知,2種組合中β的最優(yōu)值均小于0.5,這表明在網(wǎng)絡(luò)的訓(xùn)練過程中SPC起了主導(dǎo)的作用,輔助信息權(quán)重的過度增加反而會導(dǎo)致網(wǎng)絡(luò)的學(xué)習(xí)效果變差。
4.2.3 3種算法綜合對比
圖6比較了不同訓(xùn)練集大小下3種算法在相同性別與不同性別間轉(zhuǎn)換的美爾譜失真度變化。選取10,20,50,100,150條語音作為5組訓(xùn)練數(shù)據(jù),分析比較3種譜特征轉(zhuǎn)換算法。隨著訓(xùn)練語音數(shù)量的增加,轉(zhuǎn)換語音的MCD呈下降趨勢,且下降趨勢趨于平緩。在訓(xùn)練數(shù)據(jù)為100條時就可以得到相對理想的效果,在訓(xùn)練數(shù)據(jù)為150條時轉(zhuǎn)換效果提升不大,但訓(xùn)練時間則成倍增長,因此選擇100條作為最終的訓(xùn)練集大小。
Figure 6 MCD comparison of different algorithms in four modes圖6 4種模式中不同算法MCD對比
此外由圖6還可得知,在本文提出的2種算法中,不管是同性間還是異性間,轉(zhuǎn)換目標(biāo)為女聲的效果都優(yōu)于轉(zhuǎn)換目標(biāo)為男生的,并且F1-F2模式的效果最佳。這是因為女聲有更多的高頻成分,所包含的信息量更多,因此網(wǎng)絡(luò)可以更好地學(xué)習(xí)到說話人的個性特征,從而提高轉(zhuǎn)換效果。
主觀評價是讓測試者根據(jù)自然度及可懂度來做出判斷和打分,從而評估系統(tǒng)性能的優(yōu)劣。通常轉(zhuǎn)換系統(tǒng)的主觀評價有ABX測試[19]和MOS測試[20]2種,本文使用MOS測試來對3種算法所得轉(zhuǎn)換語音進行打分。
在語音質(zhì)量和說話人相似度方面,將總共240(20條文本×3個方法×4種模式)條轉(zhuǎn)換語音與相應(yīng)的目標(biāo)語音進行比較。2個指標(biāo)的得分均在1~5,5分最好,1分最差。評價結(jié)果如表4所示。
Table 4 Comparison of MOS values among three conversion algorithms
由表4可知,在平均語音質(zhì)量和說話者相似性方面,基于GMM的語音算法效果最差,缺乏連續(xù)性,聽起來有點斷斷續(xù)續(xù),并且存在較大的雜音,在同性語音轉(zhuǎn)換時,轉(zhuǎn)換后語音更接近源語音;基于cGAN使用譜包絡(luò)系數(shù)語音轉(zhuǎn)換算法效果有所提升,但是仍存在連續(xù)性不佳的問題,聽起來有些卡頓;基于MSFGAN使用SPC和MFCC組合的語音轉(zhuǎn)換算法明顯得到了最高的評分,接近于4,這表明語音有很好的連續(xù)性,并且有更好的清晰度和可懂度,轉(zhuǎn)換語音聽起來更接近目標(biāo)語音。
本文提出了基于多譜特征生成對抗網(wǎng)絡(luò)的語音轉(zhuǎn)換算法,將語音譜特征轉(zhuǎn)為聲紋圖,利用生成對抗網(wǎng)絡(luò)的對抗學(xué)習(xí)機制來恢復(fù)語音的細節(jié)特征,從而通過圖像翻譯的方式來實現(xiàn)語音轉(zhuǎn)換。為了進一步提高轉(zhuǎn)換效果,本文使用特征級的多模態(tài)融合技術(shù)將包含更多信息的高維度原始特征和低維度抽象特征通過跨域重建誤差融合構(gòu)成多譜特征,使得網(wǎng)絡(luò)學(xué)習(xí)到來自不同特征域的信息,提高了網(wǎng)絡(luò)對語音信號的感知能力,最終得到具有良好清晰度和可懂度的高質(zhì)量語音。