方園園,朱 敏
(南京航空航天大學(xué),江蘇 南京 210016)
近年來(lái),隨著人工智能的發(fā)展,自動(dòng)語(yǔ)音識(shí)別技術(shù)(Automatic Speech Recognition,ASR)也被不斷研究與發(fā)展,并被應(yīng)用到各種不同的領(lǐng)域,例如:聲音驅(qū)動(dòng)指令、人機(jī)界面、相關(guān)文本翻譯以及醫(yī)療超聲[1?8]等,為人類(lèi)生活帶來(lái)了巨大的便利。語(yǔ)音識(shí)別技術(shù)在發(fā)展的過(guò)程中,其相關(guān)研究幾乎都致力于相關(guān)模型算法的優(yōu)化。被應(yīng)用廣泛的模型有隱馬爾可夫模型(Hidden Markov Model,HMM)、短 時(shí) 記 憶(Long Short?Term Memory,LSTM)網(wǎng)絡(luò)、深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Network,DNN)以及卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)等,多年來(lái)被不斷地改進(jìn)來(lái)改善語(yǔ)音識(shí)別率。例如:文獻(xiàn)[9]關(guān)于LSTM、DNN和CNN的各自?xún)?yōu)劣將它們組合成一個(gè)改進(jìn)模型CLDNN;文獻(xiàn)[10]致力于改進(jìn)代價(jià)與激勵(lì)函數(shù)來(lái)生成一個(gè)新的CNN改進(jìn)模型,提高語(yǔ)音準(zhǔn)確率。但是,網(wǎng)絡(luò)模型的優(yōu)化會(huì)涉及層數(shù)的加深和模型結(jié)構(gòu)的復(fù)雜化,這樣不但會(huì)使得實(shí)驗(yàn)中計(jì)算和算法相對(duì)復(fù)雜,也可能會(huì)造成網(wǎng)絡(luò)訓(xùn)練中的過(guò)擬合。
作為當(dāng)今語(yǔ)音識(shí)別深度學(xué)習(xí)模型的主流,CNN具有局部卷積及池化的顯著特點(diǎn)[10],通過(guò)對(duì)一定量的視覺(jué)圖像的分析學(xué)習(xí),來(lái)達(dá)到圖像識(shí)別、語(yǔ)音處理[11]和推薦系統(tǒng)[12]等的效果。此模型常以二維或三維圖像為輸入數(shù)據(jù),并且對(duì)此類(lèi)結(jié)構(gòu)的信息非常敏感,也是現(xiàn)如今廣泛用于計(jì)算機(jī)視覺(jué)領(lǐng)域的網(wǎng)絡(luò)模型。對(duì)于基于CNN的語(yǔ)音識(shí)別技術(shù),現(xiàn)有的研究大多將表示為時(shí)域和頻域的二維形式的語(yǔ)音特征直接輸入到CNN或是改進(jìn)優(yōu)化的CNN中。在本次實(shí)驗(yàn)中,通過(guò)觀察大量經(jīng)過(guò)語(yǔ)音活動(dòng)檢測(cè)(Voice Activity Detection,VAD)等預(yù)處理的二維語(yǔ)言特征,發(fā)現(xiàn)大多特征存在非零特征區(qū)域邊緣化的特點(diǎn),即大多數(shù)非零特征區(qū)域位于整個(gè)二維特征的邊緣位置。這樣的特點(diǎn)會(huì)造成在CNN的訓(xùn)練階段中,因?yàn)镃NN中的局部卷積和池化的特點(diǎn),語(yǔ)音特征中邊緣區(qū)域信息丟失,從而大幅度降低CNN語(yǔ)音識(shí)別的準(zhǔn)確率。在本文中,將由于非零特征區(qū)邊緣化造成的影響稱(chēng)為邊緣影響,并針對(duì)該影響展開(kāi)了研究,認(rèn)為解決該邊緣影響的方法應(yīng)起到將非零特征區(qū)域“移動(dòng)”到遠(yuǎn)離邊緣位置的效果。本次實(shí)驗(yàn)采取了幾種幾何改進(jìn)方法來(lái)緩解邊緣影響,通過(guò)相同的CNN結(jié)構(gòu)以及訓(xùn)練時(shí)長(zhǎng)在自錄制與公共數(shù)據(jù)庫(kù)的混合數(shù)據(jù)的識(shí)別準(zhǔn)確率,證明了經(jīng)過(guò)幾何改進(jìn)的二維特征,在CNN中的識(shí)別性能都優(yōu)于存在邊緣影響的原始特征。
在關(guān)于CNN的語(yǔ)音識(shí)別中,語(yǔ)音特征的提取過(guò)程通常如圖1所示。語(yǔ)言特征提取過(guò)程包括對(duì)標(biāo)準(zhǔn)數(shù)據(jù)庫(kù)的數(shù)據(jù)獲取及生成數(shù)據(jù)語(yǔ)音幀,再讓每一幀語(yǔ)音經(jīng)過(guò)梅爾濾波器生成不同頻率帶寬的能量特征值,最后將得到的二維特征放入卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練。
圖1 二維語(yǔ)音特征提取步驟結(jié)構(gòu)圖
數(shù)據(jù)獲取的主要內(nèi)容是預(yù)處理和數(shù)據(jù)幅值的縮放[13],例如歸一化和去噪等部分。文獻(xiàn)[14]在獲取數(shù)據(jù)庫(kù)時(shí),采用了二次采樣、歸一化去直流以及語(yǔ)音活動(dòng)檢測(cè)(Voice Activity Detection,VAD)的方法,便于之后語(yǔ)音特征提取等操作時(shí),不受周?chē)肼暤鹊母蓴_,也方便數(shù)據(jù)庫(kù)中大量語(yǔ)音的統(tǒng)一操作。從文獻(xiàn)[15]可知,對(duì)于經(jīng)過(guò)歸一化去直流的語(yǔ)音數(shù)據(jù),所提取的一維梅爾特征在人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network)的訓(xùn)練效果并不理想,魯棒性較差。經(jīng)過(guò)對(duì)大量該類(lèi)語(yǔ)音的觀察,發(fā)現(xiàn)語(yǔ)音之間的開(kāi)始和終止時(shí)間差異較大。此外,在未發(fā)音階段也存在周?chē)h(huán)境的聲音(噪聲)。這些因素都會(huì)影響語(yǔ)音識(shí)別的正確率和魯棒性。為了區(qū)分人聲部分和無(wú)聲部分,VAD被應(yīng)用來(lái)提取每段語(yǔ)音的人聲部分,使得每段語(yǔ)音數(shù)據(jù)的開(kāi)始和終止時(shí)刻更加統(tǒng)一,也可以去除周?chē)肼曉斐傻母蓴_。如圖2所示,對(duì)來(lái)自于第一個(gè)男性的語(yǔ)音數(shù)據(jù)“eight”(Speech,如圖2實(shí)線所示),計(jì)算對(duì)應(yīng)的短時(shí)能量(Short?Time Energy,STE),如圖2虛線所示,并通過(guò)設(shè)定的閾值來(lái)篩選人聲部分。在圖2中,STE值與原始語(yǔ)音數(shù)據(jù)一一對(duì)應(yīng),所有與高于閾值的STE值時(shí)間點(diǎn)相同的語(yǔ)音數(shù)據(jù),都會(huì)被提取出來(lái),作為新的語(yǔ)音數(shù)據(jù),用于后續(xù)處理。
圖2 歸一化的短時(shí)能量與語(yǔ)音數(shù)據(jù)結(jié)構(gòu)圖
梅爾倒譜系數(shù)(Mel Frequency Cepstral Coefficients,MFCCs)是應(yīng)用最為廣泛的語(yǔ)音特征提取方法之一。采用該系數(shù)計(jì)算所需的濾波器組,梅爾濾波器組(Mel Filter Banks,MFBs)是經(jīng)由大量實(shí)驗(yàn)所得的一系列頻譜帶寬,這些濾波器的帶寬大小,反映了人耳對(duì)于不同語(yǔ)音頻率帶寬的敏感程度。語(yǔ)音頻率值與梅爾頻率值正、逆變換公式分別為:
式中,f和m分別為頻率值和梅爾刻度值。
將語(yǔ)音頻率的上、下限值先經(jīng)由(1)變換為梅爾頻率的上、下限值,再根據(jù)所需梅爾濾波器個(gè)數(shù)進(jìn)行等份,等份而得的梅爾刻度再經(jīng)由式(2)得到梅爾濾波器的邊緣值與中間值。本文根據(jù)所選取的語(yǔ)音數(shù)據(jù)庫(kù),取32個(gè)頻率濾波器以及一個(gè)最大頻率范圍,即最低頻率300 Hz和最高頻率4 kHz;再根據(jù)這兩個(gè)頻率最值經(jīng)由梅爾變換得到梅爾刻度范圍,并將該范圍劃分為32個(gè)等份即34個(gè)梅爾刻度值,如式(3)所示;最后再應(yīng)用梅爾逆變換由梅爾刻度得到頻率值,最后得到如圖3所示的32個(gè)三角形梅爾頻率濾波器。
圖3 32個(gè)梅爾頻率濾波器
本文在提取生成語(yǔ)音特征時(shí),經(jīng)過(guò)多次試驗(yàn)后決定的一些參數(shù)如下所示。首先是在數(shù)據(jù)獲取階段中的VAD部分,經(jīng)過(guò)多次嘗試,本文選擇了0.02的閾值。在實(shí)際操作中,將STE值高于0.02的第一個(gè)數(shù)據(jù)點(diǎn)所對(duì)應(yīng)的相同時(shí)間的語(yǔ)音數(shù)據(jù)會(huì)被作為新的初始點(diǎn),而此點(diǎn)之后的所有數(shù)據(jù)將會(huì)被保留。以?xún)?nèi)容為“seven”的男性錄音為例,原始語(yǔ)音數(shù)據(jù)與VAD處理之后篩選出來(lái)的人聲部分的對(duì)比,如圖4所示。經(jīng)過(guò)VAD之后,人聲部分在本文中的語(yǔ)音特征被表現(xiàn)為二維的形式:時(shí)域坐標(biāo)和頻域坐標(biāo)[11?12]。在經(jīng)過(guò)濾波器之前,以50%的重復(fù)率將語(yǔ)音分成多個(gè)語(yǔ)音幀,然后將每一幀語(yǔ)音通過(guò)32個(gè)梅爾濾波器,計(jì)算各自不同時(shí)域的頻率能量特征。需要注意的是,與一維特征的情況不同,二維特征除了頻率坐標(biāo)系之外,還要表示時(shí)域上的坐標(biāo)。通常的梅爾倒譜系數(shù)計(jì)算是通過(guò)梅爾濾波器的語(yǔ)音能量,再經(jīng)由離散余弦變換(Discrete Cosine Transformation,DCT)和對(duì)數(shù)變換而得。但是DCT反映了被映射在另一個(gè)基(basis)的音譜信息,而非傳統(tǒng)的時(shí)域坐標(biāo)。從而造成能量值的偏移,影響特征在CNN中的局部提取[10],所以本文將DCT部分去掉。去掉DCT而計(jì)算得到的特征,稱(chēng)為MFSC特征[16]。生成的二維語(yǔ)音特征的表示如圖5所示(“nine”,male,32×32)。
圖4 VAD前后的語(yǔ)音數(shù)據(jù)
圖5 MFSC二維語(yǔ)音特征
在實(shí)驗(yàn)初期,將經(jīng)過(guò)歸一化去直流和VAD的語(yǔ)音信號(hào)進(jìn)行特征提取,得到的部分二維特征如圖6所示,在CNN中的識(shí)別效果并不理想。其CNN模型的改進(jìn),例如激勵(lì)函數(shù)和層結(jié)構(gòu)的加深,也未能改進(jìn)CNN對(duì)所得二維特征的識(shí)別效果。
圖6 男性與女性二維語(yǔ)音特征(32×32)
經(jīng)過(guò)觀察CNN中每一層卷積層或者池化層的輸出,發(fā)現(xiàn)大量的特征在經(jīng)過(guò)卷積和池化層之后,所得的輸出圖大部分都看不出明顯的特征效果,如圖7所示。經(jīng)分析,主要原因是大量特征的非零特征區(qū)域處于整個(gè)特征圖的邊緣位置。在具有局部卷積及池化等明顯特征[10]的CNN模型中,會(huì)使得這些非零特征在卷積層或池化層的響應(yīng)不明顯。這樣,CNN的邊緣化影響會(huì)大大降低CNN語(yǔ)音識(shí)別的正確率。
為了減小卷積的邊緣化影響,本文采取相應(yīng)的幾何改進(jìn)措施,將非零特征區(qū)域“移動(dòng)”使之遠(yuǎn)離邊緣區(qū)域,這樣才能讓卷積層以及池化層得到更多特征部分的響應(yīng)。本次實(shí)驗(yàn)采取的措施分別為幾何對(duì)折、雙線性插值、零值填充和翻折填充,下面將介紹這幾種幾何改進(jìn)措施。
以圖6a)左側(cè)的初始特征為例,將該特征在水平、豎直和對(duì)角線方向上進(jìn)行對(duì)折,得到了如圖8所示(男性,“nine”)最右方的對(duì)折特征??梢钥闯?,通過(guò)幾何對(duì)折的方式,雖然特征被復(fù)制,但是非零特征區(qū)域還是被完整地“移動(dòng)”到二維特征值的中心位置。
圖8 幾何對(duì)折過(guò)程
雙線性插值在圖像處理中比較常見(jiàn),本次實(shí)驗(yàn)采用雙線性插值(Bilinear Interpolation)。通過(guò)該方法,可以改變圖像的尺寸,但不會(huì)造成圖像很大的變化。如圖9所示(男性,“nine”,左男性,右女性),將圖6a)進(jìn)行雙線性插值,非零特征區(qū)域的“形狀”并沒(méi)有太大改變。
圖9 雙線性插值特征
在雙線性插值的具體施行中,因?yàn)檩斎牒洼敵鰣D像尺寸不同,分別為wi,hi(輸入圖像的寬、高)以及wo,ho(輸出圖像的寬、高),所以由寬和高的尺寸系數(shù),可得到新像素點(diǎn)坐標(biāo)(x,y),其中,x,y分別為:
式中(m,n)表示輸出圖像對(duì)應(yīng)的輸入圖像的位置點(diǎn)。值得注意的是x,y基本上為浮點(diǎn)數(shù),所以新圖像的像素點(diǎn)坐標(biāo)應(yīng)該是取其整數(shù)的(x′,y′)。
以上是關(guān)于得到新圖像的像素點(diǎn)坐標(biāo),而得到的對(duì)應(yīng)灰度值為:
在本次實(shí)驗(yàn)中,經(jīng)過(guò)雙線性插值的二維特征取得的識(shí)別正確率要比初始特征改善許多,但仍然沒(méi)有達(dá)到理想的標(biāo)準(zhǔn)。
零值填充是將初始特征的周?chē)畛淞阒担鐖D10所示(“nine”,左男性,右女性)。圖10a)的初始特征,在經(jīng)過(guò)零填充后,非零特征值不會(huì)在左上角位置,視覺(jué)上會(huì)感覺(jué)往中心方向“移動(dòng)”了一些。根據(jù)CNN中卷積層的核尺寸,本次實(shí)驗(yàn)嘗試了兩種大小的零值填充特征,分別為64×64和48×48,不難看出,圖10a)的非零特征區(qū)域相較于圖10b)要更遠(yuǎn)離邊緣區(qū)域。
圖10 零值填充特征
在本次實(shí)驗(yàn)中,“翻折”不同于“對(duì)折”,不是將整個(gè)初始特征進(jìn)行復(fù)制,而是將特征的一部分(選取含有非零特征的部分),在水平、豎直和對(duì)角線方向上進(jìn)行翻折。如圖11所示(“nine”,左男性,右女性),選取非零特征中的8行和16行以及完全翻折的幾何對(duì)折的不同。其中,形成的特征尺寸大小同樣也是基于CNN卷積層的核尺寸。從圖11可以看出,翻折特征與幾何對(duì)折特征有一個(gè)很大的不同,就是特征區(qū)域的不完整。雖然包含了初始特征的部分,但是部分被翻折的特征處于整個(gè)特征圖的邊緣。
圖11 翻折填充特征
本文基于對(duì)CNN相關(guān)知識(shí)的學(xué)習(xí)[17],進(jìn)行了CNN的設(shè)計(jì)。此節(jié)將會(huì)涉及CNN的學(xué)習(xí)過(guò)程以及本次實(shí)驗(yàn)具體設(shè)計(jì)CNN的細(xì)節(jié)。
圖12展示的是訓(xùn)練數(shù)據(jù)中的一個(gè)特征(“eight”,女性)經(jīng)過(guò)幾何對(duì)折的特征圖經(jīng)過(guò)CNN向前傳播的過(guò)程。為了清楚表示幾何改進(jìn)方法的效果,本次實(shí)驗(yàn)中對(duì)于每一種改進(jìn)特征都采用相同結(jié)構(gòu)的CNN模型,CNN模型結(jié)構(gòu)可以用以下序列表示,[I1,280,C2,10,P3,10,C4,20,P4,20,F5,150,F6,50,F7,10]。其中,I,C,P和F分別表示輸入層、卷積層、池化層和完全連接層,其下標(biāo)中的第一、二個(gè)數(shù)字分別表示它們位于CNN的第幾層和尺寸大小,例如:C2,10表示CNN中的第二層為卷積層,卷積核大小為10×10。值得注意的是,與圖7比較,經(jīng)過(guò)相同的層結(jié)構(gòu),幾何對(duì)折特征的“信息”比初始特征要明顯。
圖12 CNN向前傳播結(jié)構(gòu)圖
在了解CNN學(xué)習(xí)過(guò)程之前,首先,要了解CNN常用的幾個(gè)主要組成部分,分別為:卷積層、池化層和完全連接層。本次實(shí)驗(yàn)設(shè)計(jì)的CNN的向前傳播如下:
式中,若第i層為卷積層,“學(xué)習(xí)”的過(guò)程則是將上一次卷積層或者是池化層輸出的特征圖Fi-1(若i=1,則Fi-1表示輸入圖像),與當(dāng)前卷積層里的核Ki(k)進(jìn)行卷積,再加上偏離數(shù)列bi。最后,將此結(jié)果代入當(dāng)前卷積層的激勵(lì)函數(shù)fi中,得到第i層的第k個(gè)輸出特征圖Fi(k)。而當(dāng)?shù)趇層為池化層時(shí),對(duì)上一層特征圖的處理如下:
式中Hi(k)為第i層的第k個(gè)池化層核。因?yàn)楸敬螌?shí)驗(yàn)采用的池化層為平均池化層,故其核為H=
完全連接層一般都處于整個(gè)CNN結(jié)構(gòu)的末尾(一般是不少于一層),不同于卷積層與池化層,它輸出的不是二維的特征圖而是一維的數(shù)列,對(duì)于上一層的輸出結(jié)果(二維或者一維都有可能)處理如下:
式中,W和B分別為完全連接層的權(quán)重系數(shù)和偏離數(shù)列,它們都是與第i層節(jié)點(diǎn)數(shù)和上一層的輸出維度相關(guān)的隨機(jī)數(shù)。
本次實(shí)驗(yàn)的數(shù)據(jù)庫(kù)來(lái)自于專(zhuān)門(mén)用于語(yǔ)音研究的標(biāo)準(zhǔn)數(shù)據(jù)庫(kù),要識(shí)別的語(yǔ)音內(nèi)容為從“zero”到“nine”的單詞發(fā)音。選取的數(shù)據(jù)庫(kù)是來(lái)自4位男性和4位女性的320個(gè)錄音(持續(xù)時(shí)間都為1 s),每個(gè)人的聲音特點(diǎn),包括口音、聲音大小以及說(shuō)話開(kāi)始和結(jié)束時(shí)間等,都不一樣。在訓(xùn)練神經(jīng)網(wǎng)絡(luò)時(shí),語(yǔ)音數(shù)據(jù)中的訓(xùn)練數(shù)據(jù)(Training Data)分配有280個(gè),每個(gè)單詞分配28個(gè)語(yǔ)音,每個(gè)人的錄音涵蓋有3~4個(gè);測(cè)試數(shù)據(jù)(Testing Data)40個(gè),每個(gè)單詞分配4個(gè)語(yǔ)音,由于隨機(jī)抽取,每個(gè)人的錄音涵蓋有0~2個(gè)。經(jīng)過(guò)采用的幾種特征幾何改進(jìn)方法后,幾種情況的二維特征所取得的語(yǔ)音識(shí)別效果如表1所示,每種特征都經(jīng)過(guò)CNN獨(dú)立訓(xùn)練10次得到平均值和方差,以說(shuō)明其識(shí)別的正確率及其魯棒性。由表1可知,對(duì)于未經(jīng)任何幾何改進(jìn)的初始特征,CNN的識(shí)別正確率非常低,而且方差很大,穩(wěn)定性不高。雙線性插值特征,相較于初始特征,特征圖尺寸增大,而非零特征區(qū)域仍處于邊緣位置,正確率和方差都有所改善,但仍未到達(dá)理想的標(biāo)準(zhǔn)。在同樣的尺寸下,64×64的零值填充特征卻達(dá)到了比較理想的效果,而48×48的零值填充特征則正確率稍弱,但仍大大優(yōu)于雙線性插值特征,這樣的優(yōu)劣對(duì)比也證明了非零特征區(qū)域越遠(yuǎn)離邊緣,訓(xùn)練的效果則越好。
表1 CNN檢測(cè)正確率
對(duì)于翻折特征和幾何對(duì)折特征,可以放在一塊進(jìn)行說(shuō)明,幾何對(duì)折特征取得了所有情況中最好的效果。而不同于零填充的情況,48×48的翻折特征比64×64的翻折特征效果更好,其原因也在于,64×64的不完整特征部分更多,對(duì)CNN的識(shí)別造成了更多的干擾。
本文提出的基于CNN邊緣化分析所采取的對(duì)二維語(yǔ)音特征的幾何改進(jìn),在不改進(jìn)CNN結(jié)構(gòu)與不增加數(shù)據(jù)量的前提下,有效地改善了CNN的語(yǔ)音識(shí)別正確率。通過(guò)由專(zhuān)門(mén)用于語(yǔ)音研究的公共數(shù)據(jù)庫(kù)[17]上的結(jié)果表明,經(jīng)過(guò)不同幾何改進(jìn)的二維特征,相較于存在邊緣影響的初始特征,其在CNN的識(shí)別效果都有了不同程度的改進(jìn)。希望在未來(lái),該類(lèi)改進(jìn)方法可以運(yùn)用到更多種類(lèi)信號(hào),例如EEG、心電圖等信號(hào)在CNN中識(shí)別效果的改進(jìn)。