国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于LPCNet的語(yǔ)音合成方法研究?

2020-07-13 12:48陳小東宋文愛(ài)劉曉峰
關(guān)鍵詞:梅爾聲學(xué)注意力

陳小東 宋文愛(ài) 劉曉峰

(中北大學(xué)軟件學(xué)院 太原 030051)

1 引言

語(yǔ)音合成(Speech Synthesis)泛指將輸入文本或音素序列映射輸出為音頻信號(hào)的技術(shù)。傳統(tǒng)的語(yǔ)音合成方法,如參數(shù)式語(yǔ)音合成[1],使用參數(shù)模型對(duì)文本進(jìn)行建模并從中生成語(yǔ)音,通常由文本分析前端、聲學(xué)模型、持續(xù)時(shí)間模型和用于波形重建的聲碼器組成,需要廣泛的領(lǐng)域?qū)I(yè)知識(shí)來(lái)進(jìn)行研究;拼接式語(yǔ)音合成[2],從語(yǔ)音庫(kù)中挑選適當(dāng)?shù)恼Z(yǔ)音單元,然后拼接以形成輸出,但其需要的音庫(kù)一般較大,靈活性有限。

近年來(lái)隨著深度學(xué)習(xí)的不斷發(fā)展和應(yīng)用,基于Seq2Seq結(jié)構(gòu)的模型被多個(gè)語(yǔ)音合成模型證明優(yōu)于傳統(tǒng)結(jié)構(gòu)。Wang[3]等最早使用帶有注意力機(jī)制的Seq2Seq方法嘗試語(yǔ)音合成系統(tǒng),但是需要一個(gè)預(yù)訓(xùn)練的HMM模型用于對(duì)齊;百度DeepVoice[4]的做法是仿照傳統(tǒng)參數(shù)合成的各個(gè)步驟,將每一階段分別用一個(gè)神經(jīng)網(wǎng)絡(luò)模型來(lái)代替;Char2Wav[5]可以直接輸入英文字符進(jìn)行合成,但仍是預(yù)測(cè)出聲學(xué)參數(shù),需要使用聲碼器進(jìn)行合成語(yǔ)音;邱澤宇[6]等利用Seq2Seq架構(gòu),實(shí)現(xiàn)了中文的語(yǔ)音合成。Taco?tron 2[7]可以直接從圖形或音素生成語(yǔ)音,該模型首先由一個(gè)循環(huán)Seq2Seq的網(wǎng)絡(luò)預(yù)測(cè)梅爾聲譜圖,然后由一個(gè)改進(jìn)的WaveNet[8]來(lái)合成這些聲譜圖的時(shí)域波形。WaveNet是一種基于神經(jīng)網(wǎng)絡(luò)的自回歸方法,使用一種新的擴(kuò)展因果卷積結(jié)構(gòu)捕獲語(yǔ)音信號(hào)中的長(zhǎng)期時(shí)間依賴關(guān)系。WaveNet作為一個(gè)語(yǔ)音合成后端的模塊,將前端字符映射為音素等一些人工的語(yǔ)言學(xué)特征轉(zhuǎn)化為語(yǔ)音波形輸出,它比傳統(tǒng)WORLD[9]聲碼器更好地重構(gòu)了原始語(yǔ)音中的相位信息,可以實(shí)現(xiàn)高質(zhì)量的合成語(yǔ)音。但是這種自回歸模型合成速度緩慢、復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu),并且需要較大的模型尺寸。

本文針對(duì)Seq2Seq語(yǔ)音合成模型中WaveNet合成語(yǔ)音緩慢、網(wǎng)絡(luò)結(jié)構(gòu)復(fù)雜等問(wèn)題,提出一種基于LPCNet[10]模型的語(yǔ)音合成方法,LPCNet模型基于WaveRNN[11]改進(jìn),它將神經(jīng)網(wǎng)絡(luò)合成與線性預(yù)測(cè)相結(jié)合,使用神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)聲源信號(hào),然后應(yīng)用LPC濾波器對(duì)其進(jìn)行濾波,確保合成高質(zhì)量語(yǔ)音的同時(shí)提高語(yǔ)音合成效率。

2 模型架構(gòu)

本文提出的模型主要由兩部分組成,一個(gè)引入注意力機(jī)制的Encoder-Decoder(編碼器-解碼器)框架聲學(xué)模型,用于從輸入的字符序列預(yù)測(cè)梅爾聲譜的幀序列;一個(gè)LPCNet模型作為聲碼器,基于預(yù)測(cè)的梅爾聲譜幀序列生成語(yǔ)音波形。

本文采用梅爾聲譜圖作為聲學(xué)特征。以中文帶調(diào)拼音序列作為輸入,通過(guò)編碼器首先將其轉(zhuǎn)換為嵌入語(yǔ)言特征的隱層表征,然后在每一個(gè)解碼步驟中通過(guò)注意力機(jī)制將其傳輸?shù)浇獯a器,解碼器的遞歸網(wǎng)絡(luò)接受隱層表征用以預(yù)測(cè)梅爾聲譜圖。最后,預(yù)測(cè)的梅爾聲譜圖通過(guò)LPCNet模型合成目標(biāo)語(yǔ)音。圖1顯示了模型的總體架構(gòu)。

2.1 注意力機(jī)制

注意力機(jī)制近年變得非常流行,并且在機(jī)器翻譯[12]任務(wù)上表現(xiàn)得非常好。在語(yǔ)音合成中注意力機(jī)制有助于聯(lián)合學(xué)習(xí)輸出聲音特征和輸入序列映射的對(duì)齊。Tacotron2中,采用的是位置敏感注意力機(jī)制[13]。本文建議用Transformer模型[14]中更簡(jiǎn)單的Query-Key self attention來(lái)代替這種注意力機(jī)制。因?yàn)镼uery-Key self attention不僅能在訓(xùn)練過(guò)程中快速的學(xué)到對(duì)齊,而且比位置敏感注意力機(jī)制需要更少的參數(shù)。

在聲學(xué)模型中,編碼器中的元素序列由一系列的數(shù)據(jù)對(duì)構(gòu)成,此時(shí)給定解碼器中的某個(gè)元素Query,通過(guò)點(diǎn)積計(jì)算Query和各個(gè)Key的相似性,得到每個(gè)Key對(duì)應(yīng)Value的權(quán)重系數(shù),通過(guò)softmax歸一化后,然后再對(duì)Value矩陣?yán)^續(xù)加權(quán)求和,得到最終的注意力概率。

圖1 模型架構(gòu)

給定 Q(Query)、K(Key)、V(Value),每個(gè)解碼步驟的注意力概率通過(guò)點(diǎn)積計(jì)算。在使用點(diǎn)積運(yùn)算進(jìn)行相似度計(jì)算的基礎(chǔ)上,縮小了d倍(d為輸入字符的維度),其目的在于調(diào)節(jié)作用,使得內(nèi)積不易過(guò)大。

其中T表示編碼器中元素序列的長(zhǎng)度。

2.2 聲學(xué)模型

聲學(xué)模型采用基于Seq2Seq的梅爾聲譜圖預(yù)測(cè)網(wǎng)絡(luò),主要由圖1中的編碼器和引入注意力機(jī)制的解碼器兩個(gè)神經(jīng)網(wǎng)絡(luò)組成,將輸入序列轉(zhuǎn)換為對(duì)應(yīng)的梅爾聲譜圖。編解碼器組合作為一個(gè)整體的網(wǎng)絡(luò),與傳統(tǒng)的聲學(xué)參數(shù)統(tǒng)計(jì)模型相比,能更準(zhǔn)確的生成聲學(xué)特征。

設(shè)y=[y1,y2,...,yt]表示網(wǎng)絡(luò)輸出的梅爾頻譜序列。特征預(yù)測(cè)網(wǎng)絡(luò)使用每個(gè)輸出幀yt的條件分布來(lái)建模輸入和輸出特征序列之間的映射關(guān)系為

給定之前的輸出幀y

編碼器首先將輸入拼音序列轉(zhuǎn)換為512維的字符向量,然后通過(guò)三個(gè)卷積層對(duì)輸入字符序列的上下文進(jìn)行建模,每層卷積包含512個(gè)5×1的卷積核,后接批標(biāo)準(zhǔn)化(batch normalization)[15]和 ReLU激活函數(shù),最終卷積層的輸出被輸入到雙向LSTM層以生成編碼特征。編碼器將輸入的字符序列x=[x1,...,xTx] 轉(zhuǎn) 換 為 隱 藏 特 征 表 示 序 列h=[h1,...,hTh],如下所示:

具有注意力機(jī)制的解碼器利用h,在輸出幀上產(chǎn)生概率分布為

構(gòu)建一個(gè)注意力機(jī)制接受編碼器的輸出,編碼器的每次輸出,注意力機(jī)制都將編碼的序列概括為一個(gè)上下文向量c。在每個(gè)解碼器步驟上使用注意力概率計(jì)算上下文向量c

解碼器根據(jù)上下文向量c來(lái)預(yù)測(cè)輸出梅爾聲譜圖的幀序列。首先將上一步預(yù)測(cè)出的聲譜幀輸入到雙層全連接的“Pre-net”,每層有256個(gè)隱藏Relu單元以學(xué)習(xí)注意力,并在卷積層后應(yīng)用概率為0.5 的 Dropout[16]進(jìn)行正則化處理。然后,將上下文向量c和Pre-net的輸出通過(guò)兩個(gè)具有1024個(gè)單元的單向LSTM層,其中LSTM層之后是兩個(gè)預(yù)測(cè)“完成概率”和目標(biāo)頻譜幀的投影層,用于預(yù)測(cè)完成概率表示生成后的序列是否到達(dá)最后一幀。在訓(xùn)練過(guò)程中,如果該概率超過(guò)0.5,就會(huì)自動(dòng)停止生成聲譜幀。

最后,為了提高生成精度,引入了5個(gè)卷積層的“Post-net”作為后處理網(wǎng)絡(luò),每層由512個(gè)5×1卷積核和一個(gè)批標(biāo)準(zhǔn)化處理組成。Post-net利用雙向上下文信息對(duì)解碼器預(yù)測(cè)的梅爾聲譜圖進(jìn)行了細(xì)化,最后一層的輸出疊加到卷積前的頻譜幀上產(chǎn)生最終的結(jié)果。設(shè) z=[z1,...,zTz]表示Post-net輸出序列,這是模型的最終預(yù)測(cè)。在給定編解碼器網(wǎng)絡(luò)y輸出的情況下,特征序列z的分布被建模為

其中Wp表示Post-net的參數(shù)。

2.3 聲碼器

聲碼器作用于從聲學(xué)特征重構(gòu)語(yǔ)音波形,是語(yǔ)音合成模型至關(guān)重要的一部分。傳統(tǒng)基于數(shù)字信號(hào)處理的聲碼器速度很快,但是合成的語(yǔ)音質(zhì)量較差,而基于神經(jīng)網(wǎng)絡(luò)的聲碼器語(yǔ)音質(zhì)量更高,但在許多神經(jīng)語(yǔ)音合成方法中,神經(jīng)網(wǎng)絡(luò)必須對(duì)整個(gè)語(yǔ)音生成過(guò)程建模,通常復(fù)雜度太高,無(wú)法實(shí)時(shí)。其中WaveNet利用自回歸方法對(duì)一個(gè)數(shù)據(jù)流X的聯(lián)合概率分布建立模型,對(duì)數(shù)據(jù)流X中的每一個(gè)元素x的條件概率求乘積。該模型使用過(guò)去的樣本預(yù)測(cè)序列的當(dāng)前值,對(duì)于一段未處理音頻xt,構(gòu)建的聯(lián)合概率函數(shù)為

其中N為語(yǔ)音樣本數(shù)量,h為影響分布的輔助特征,由于生成模型的自回歸特點(diǎn),WaveNet的生成速度非常緩慢。

根據(jù)Source-Filter(源-濾波器)的語(yǔ)音產(chǎn)生機(jī)理,語(yǔ)音產(chǎn)生過(guò)程主要分為激勵(lì)源、聲道響應(yīng)兩個(gè)獨(dú)立的模塊。在神經(jīng)語(yǔ)音合成方法中,大多數(shù)由神經(jīng)網(wǎng)絡(luò)整體模擬激勵(lì)源、聲道響應(yīng),但實(shí)際上在建模時(shí),用一個(gè)簡(jiǎn)單的全極點(diǎn)線性濾波器[17]就可以很好地表示聲道響應(yīng),而使用神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)卻非常復(fù)雜。因此LPCNet模型以WaveRNN為基礎(chǔ)加入LPC濾波器模塊降低神經(jīng)網(wǎng)絡(luò)的復(fù)雜度,將對(duì)整個(gè)語(yǔ)音采樣值建模的過(guò)程分解成線性和非線性兩部分,線性部分通過(guò)基于數(shù)字信號(hào)處理的線性預(yù)測(cè)給出,神經(jīng)網(wǎng)絡(luò)僅需建模較小的非線性部分,這樣就可以簡(jiǎn)化神經(jīng)網(wǎng)絡(luò)聲碼器。

語(yǔ)音相鄰樣本點(diǎn)具有很強(qiáng)的相關(guān)性,通常假設(shè)語(yǔ)音采樣值是一個(gè)自回歸過(guò)程,即當(dāng)前時(shí)刻樣本值可以近似由相鄰歷史時(shí)刻的樣本值線性表示,設(shè)St為時(shí)間t時(shí)的信號(hào),其基于之前樣本的線性預(yù)測(cè)為

其中,ak是當(dāng)前幀的線性預(yù)測(cè)系數(shù),通過(guò)將梅爾頻譜轉(zhuǎn)換為線性頻率功率譜密度,利用一個(gè)逆快速傅里葉變換將線性頻率功率譜密度轉(zhuǎn)換得到一個(gè)自相關(guān)函數(shù),最后通過(guò)Levinson-Durbin算法計(jì)算得到。

把殘差信號(hào)當(dāng)作激勵(lì)源,使用神經(jīng)網(wǎng)絡(luò)可以直接預(yù)測(cè)殘差,通過(guò)由線性預(yù)測(cè)系數(shù)構(gòu)成的全極點(diǎn)濾波器便可以恢復(fù)原始語(yǔ)音。為了和聲學(xué)模型的輸出保持?jǐn)?shù)據(jù)一致性,將梅爾聲譜圖作為L(zhǎng)PCNet的聲學(xué)特征輸入。LPCNet將數(shù)字信號(hào)處理和神經(jīng)網(wǎng)絡(luò)結(jié)合應(yīng)用于語(yǔ)音合成中的聲碼器,可以在普通的CPU上快速的合成高質(zhì)量語(yǔ)音,訓(xùn)練過(guò)程也會(huì)變得更加高效,有很好的研究意義。

3 實(shí)驗(yàn)與分析

3.1 基本設(shè)置

實(shí)驗(yàn)操作系統(tǒng)為Ubuntu 14.04.1,顯卡使用NVIDIA GeForce GTX 1080Ti,處 理 器 為 Intel i7-5200U,內(nèi)存為8G,主頻為3.2Hz,程序運(yùn)行框架為T(mén)ensorflow 1.3.0平臺(tái)。

實(shí)驗(yàn)使用了一個(gè)由一位專業(yè)女性演講者錄制的語(yǔ)音和韻律都很豐富的普通話語(yǔ)音數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)由5000個(gè)話語(yǔ)以及相對(duì)應(yīng)的文本拼音標(biāo)注組成(約6小時(shí),分為訓(xùn)練、驗(yàn)證和測(cè)試三個(gè)子集,分別為4000,700和300個(gè)話語(yǔ)),數(shù)據(jù)采樣率16kHz,位數(shù)16bit。

實(shí)驗(yàn)采用80維梅爾聲譜圖作為聲學(xué)特征。為了計(jì)算梅爾聲譜圖,首先使用50毫秒幀大小,10毫秒幀移和漢明窗口函數(shù)對(duì)音頻執(zhí)行短時(shí)傅里葉變換。然后,使用范圍從125 Hz~7.6 kHz的80個(gè)梅爾濾波器將STFT幅度譜轉(zhuǎn)換為梅爾刻度,最后通過(guò)對(duì)數(shù)函數(shù)進(jìn)行動(dòng)態(tài)范圍壓縮。Ad?am優(yōu)化器指定參數(shù)β1=0.9,β2=0.999,學(xué)習(xí)率初始設(shè)置0.001。批次規(guī)模(batch size)為32,使用預(yù)測(cè)和目標(biāo)譜圖之間的L2距離作為損失函數(shù)來(lái)訓(xùn)練整個(gè)網(wǎng)絡(luò)。

為了減少誤差,在訓(xùn)練過(guò)程中,通過(guò)教師強(qiáng)迫(Teacher force)[18]的方式訓(xùn)練模型,在解碼步驟提供真實(shí)的梅爾聲譜圖,而不是模型預(yù)測(cè)的梅爾聲譜圖。為了保證該模型能夠長(zhǎng)期對(duì)序列進(jìn)行學(xué)習(xí),將教師強(qiáng)迫比從1.0(完全教師強(qiáng)迫)退火到0.2(20%教師強(qiáng)迫)。

3.2 實(shí)驗(yàn)評(píng)估

實(shí)驗(yàn)分別使用客觀和主觀兩種測(cè)試方式來(lái)評(píng)估合成語(yǔ)音的質(zhì)量。首先,采用MOS評(píng)分法[18~19]對(duì)模型進(jìn)行主觀評(píng)估,MOS指標(biāo)用來(lái)衡量聲音接近人聲的自然度和音質(zhì)。將語(yǔ)音合成模型生成的樣本提供給評(píng)估人員,并按1(差)到5(優(yōu))打分,分值間隔0.5,然后計(jì)算分?jǐn)?shù)的算術(shù)平均值即為最終的MOS分?jǐn)?shù)。

表1 不同模型的MOS評(píng)分對(duì)比

本文對(duì)參數(shù)式模型和拼接模型,以及Tacotron2模型做了對(duì)比,使用這些模型分別合成一組20個(gè)句子,并通過(guò)MOS測(cè)試將它們的得分與原始錄音進(jìn)行比較。每個(gè)句子由30名不同的測(cè)評(píng)者進(jìn)行評(píng)估,表1顯示了測(cè)試的結(jié)果。

由表1可知,基于LPCNet的語(yǔ)音合成模型和Tacotron2模型所生成的語(yǔ)音質(zhì)量明顯高于傳統(tǒng)的參數(shù)式和拼接式合成模型,原因在于這兩個(gè)模型的聲學(xué)模型部分都是基于Seq2Seq的特征預(yù)測(cè)網(wǎng)絡(luò),它能更好地學(xué)習(xí)到聲學(xué)特征。另外,它們的MOS得分幾乎相等,并且接近于真實(shí)錄音的分值,說(shuō)明它們?cè)诤铣烧Z(yǔ)音的質(zhì)量上都很優(yōu)異,但是LPCNet模型的復(fù)雜度比Tacotron2的模型要低得多,所以基于LPCNet的語(yǔ)音合成模型比Tacotron2更高效。

對(duì)于客觀評(píng)估方式,本文使用MCD(Mel Ceps?tral Distance)梅爾倒頻率失真度[20],它通過(guò)測(cè)量預(yù)測(cè)梅爾倒譜與真實(shí)梅爾倒譜之間的距離來(lái)評(píng)估合成語(yǔ)音與真實(shí)語(yǔ)音的質(zhì)量差距,距離越小越好。測(cè)試使用包含大約20min(300個(gè)句子)的驗(yàn)證集。

表2 不同模型的MCD值對(duì)比

從表2中可以看出,LPCNet模型的MCD值略小于Tacotron2模型,相比參數(shù)式模型和拼接式模型,表現(xiàn)則更為優(yōu)異,可以得出基于LPCNet的語(yǔ)音合成模型合成的語(yǔ)音質(zhì)量更接近于真實(shí)語(yǔ)音,相比其他三種模型合成的語(yǔ)音更自然。

3.3 對(duì)比研究

為了確定不同聲碼器之間的性能差異,本文對(duì)聲碼器部分做了一個(gè)對(duì)比研究,同時(shí)采用前文介紹的聲學(xué)模型,分別對(duì)參數(shù)化WORLD聲碼器和常規(guī)WaveNet聲碼器合成的語(yǔ)音樣本進(jìn)行了評(píng)估,其中WORLD聲碼器的中間聲學(xué)參數(shù)包括基頻、頻譜包絡(luò)和非周期性參數(shù)。

圖2 各類聲碼器MOS評(píng)分

從圖2可以得出,LPCNet與WORLD相比,在語(yǔ)音質(zhì)量上有著巨大的差異,相比WaveNet還略有欠缺。然而,因?yàn)樘厥獾木矸e框架和自回歸采樣方式,WaveNet具有緩慢的合成速度。而LPCNet結(jié)構(gòu)更簡(jiǎn)單,合成速度更快,同樣可以生成高質(zhì)量的語(yǔ)音,所以LPCNet模型作為聲碼器合成語(yǔ)音的效率更高。

另一方面,測(cè)試合成驗(yàn)證集話語(yǔ)時(shí),基于LPC?Net模型的方法平均生成3000個(gè)樣本/s,相比之下,自回歸采樣的WaveNet方法平均產(chǎn)生257個(gè)樣本/秒。本文所提出的方法合成語(yǔ)音的速度顯著提高,它通過(guò)數(shù)字信號(hào)處理技術(shù)和神經(jīng)網(wǎng)絡(luò)的結(jié)合,使得合成語(yǔ)音速度比WaveNet更快,所以該方法有效解決了WaveNet神經(jīng)聲碼器合成語(yǔ)音緩慢的問(wèn)題。

4 結(jié)語(yǔ)

本文提出一種基于LPCNet模型的語(yǔ)音合成方法,將梅爾聲譜圖作為聲學(xué)特征,首先利用Que?ry-Key self attention注意力機(jī)制的Seq2Seq網(wǎng)絡(luò)將輸入字符轉(zhuǎn)換為梅爾聲譜圖,然后將所生成的梅爾聲譜圖通過(guò)LPCNet模型進(jìn)行語(yǔ)音波形的重構(gòu),生成了高質(zhì)量的語(yǔ)音。經(jīng)過(guò)研究得出以下結(jié)論:

1)本文基于LPCNet模型的語(yǔ)音合成方法,降低了基于Seq2Seq結(jié)構(gòu)語(yǔ)音合成的模型復(fù)雜度。

2)通過(guò)將數(shù)字信號(hào)處理技術(shù)和神經(jīng)網(wǎng)絡(luò)相結(jié)合,合成語(yǔ)音的速度大大加快,實(shí)現(xiàn)了高效的語(yǔ)音合成。

3)將LPCNet模型作為聲碼器,合成的語(yǔ)音質(zhì)量接近于WaveNet,并顯著高于WORLD聲碼器。

4)與傳統(tǒng)的參數(shù)式和拼接式語(yǔ)音合成模型相比,本文提出方法的合成語(yǔ)音主觀評(píng)測(cè)MOS分?jǐn)?shù)更高和客觀評(píng)測(cè)MCD值更低。

猜你喜歡
梅爾聲學(xué)注意力
讓注意力“飛”回來(lái)
進(jìn)一步放大細(xì)膩通透的優(yōu)勢(shì) Davis Acoustics(戴維斯聲學(xué)) MODEL M/MODEL S/BASSON 88
還原音樂(lè)的本來(lái)面貌 Davis Acoustics(戴維斯聲學(xué))Courbet N°5
愛(ài)的就是這股Hi-Fi味 Davis Acoustics(戴維斯聲學(xué))Balthus 70
梅爾:我的追求塑造了夢(mèng)
梅爾維爾鯨
“熊”視眈眈
A Beautiful Way Of Looking At Things
夢(mèng)想是眼睛,第一個(gè)攀上珠峰的盲人探險(xiǎn)家
閱讀理解兩則