彭寧,陳愛(ài)斌,周國(guó)雄,陳文潔,劉晶
1.中南林業(yè)科技大學(xué)人工智能應(yīng)用研究所,湖南長(zhǎng)沙410004
2.中南林業(yè)科技大學(xué)智慧物流技術(shù)湖南省重點(diǎn)實(shí)驗(yàn)室,湖南長(zhǎng)沙410004
3.中南林業(yè)科技大學(xué)計(jì)算機(jī)與信息工程學(xué)院,湖南長(zhǎng)沙410004
環(huán)境聲音識(shí)別主要通過(guò)聲音對(duì)場(chǎng)景進(jìn)行分類,因采集成本較低而廣泛應(yīng)用于智慧城市、智能交通等鄰域。早期的音頻識(shí)別方法包括模板匹配、隱形馬爾科夫鏈(hidden Markov model,HMM)、高斯混合模型(Gaussian mixturemodel,GMM)、支持向量機(jī)(support vector machine,SVM)、隨機(jī)森林等機(jī)器學(xué)習(xí)方法。隨著算力的提高,深度學(xué)習(xí)技術(shù)發(fā)展日新月異并進(jìn)入了各個(gè)領(lǐng)域。在2012年,以卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)為基礎(chǔ)框架的模型AlexNet在ImageNet比賽中1 000類物體的識(shí)別上遠(yuǎn)超深度神經(jīng)網(wǎng)絡(luò)(deep neural network,DNN)模型,顯示出CNN強(qiáng)大的圖像提取能力[1],于是研究人員開(kāi)始嘗試將CNN應(yīng)用于音頻識(shí)別。使用CNN對(duì)音頻進(jìn)行識(shí)別的方法主要將聲音轉(zhuǎn)化為音頻特征圖像,借助自身強(qiáng)大的圖像特征提取能力對(duì)音頻圖像進(jìn)行特征提取,并可以在以下兩方面進(jìn)行改進(jìn):1)在輸入端口音頻特征的選取方面,選擇圖像上更明顯的音頻特征,比如梅爾頻譜圖、對(duì)數(shù)梅爾頻譜圖、梅爾頻率倒譜系數(shù)(Mel-frequency cepstral coefficient,MFCC)等。2)在特征框架的提取方面,采用具有強(qiáng)特征提取能力的CNN模型結(jié)構(gòu),如深度卷積神經(jīng)網(wǎng)絡(luò)、殘差網(wǎng)絡(luò)等。
2015年,Piczak首次將CNN應(yīng)用于環(huán)境聲音識(shí)別,選用對(duì)數(shù)梅爾頻譜圖作為輸入特征,以簡(jiǎn)單的兩層CNN作為特征提取器[2]評(píng)估ESC-10、ESC-50、Urban Sound 8K這3個(gè)數(shù)據(jù)集,與傳統(tǒng)音頻識(shí)別模型進(jìn)行對(duì)比的結(jié)果顯示,以CNN作為特征提取器的方法更優(yōu)。文獻(xiàn)[3]將對(duì)數(shù)梅爾頻譜圖空洞卷積和LeakyReLU激活函數(shù)結(jié)合起來(lái),在Urban Sound 8K上得到的準(zhǔn)確率為81.9%,隨后陸續(xù)出現(xiàn)了許多改進(jìn)的CNN模型,用以提高環(huán)境聲音識(shí)別的準(zhǔn)確性。然而,音頻圖像不同于一般的普通圖像,始終包含時(shí)間維度的信息,若用CNN提取音頻特征,則會(huì)忽略時(shí)間維度上的信息。為了盡可能地保留音頻維度上的特征,研究人員選用循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural networks,RNN)提取音頻。因?yàn)樵赗NN中后一隱藏層特征與前隱藏層特征相關(guān),所以能夠有效提取時(shí)域維度的特征。文獻(xiàn)[4]將對(duì)數(shù)梅爾頻譜圖特征與注意力機(jī)制、門控循環(huán)單元(gated recurrent unit,GRU)相結(jié)合,在環(huán)境聲音識(shí)別方面取得了較好的結(jié)果。
本文基于文獻(xiàn)[5]提出了正弦注意力表征網(wǎng)絡(luò)(attention sinusoidal representation network,A-SIREN),首先用GRU網(wǎng)絡(luò)提取MFCC音頻特征;然后將正弦表征網(wǎng)絡(luò)與注意力機(jī)制相結(jié)合,以周期函數(shù)表示隱式神經(jīng),更好地抓住了音頻重點(diǎn)信息;最后將全連接層與Softmax分類器結(jié)合對(duì)識(shí)別結(jié)果進(jìn)行分類,實(shí)驗(yàn)結(jié)果表明了本文算法的有效性。
本文結(jié)構(gòu)如圖1所示,首先提取音頻MFCC特征并將數(shù)據(jù)劃分為訓(xùn)練集與測(cè)試集;然后利用GRU網(wǎng)絡(luò)進(jìn)一步提取MFCC音頻特征,借助A-SIREN模塊重新分配MFCC特征中每一幀的權(quán)重,使模型專注于音頻重要區(qū)域;最后將全連接層結(jié)合Softmax分類器對(duì)音頻進(jìn)行最終判別。
圖1 總體框架圖Figure 1 Overall framework diagram
因?yàn)楸疚囊纛l長(zhǎng)度不一致,所以將音頻長(zhǎng)度零填充至所有音頻中最大音頻長(zhǎng)度,同時(shí)設(shè)定A-SIREN層長(zhǎng)度為174。最后將全連接層大小設(shè)為10,可以表示10種類別的輸出概率。網(wǎng)絡(luò)參數(shù)結(jié)構(gòu)如表1所示。
表1 整體網(wǎng)絡(luò)參數(shù)模型Table 1 Model of overall network parameter
選擇合適的音頻特征可以提高音頻識(shí)別率。音頻特征分為時(shí)域特征和頻域特征兩大類,其中時(shí)域特征反映音頻序列隨時(shí)間變化的影響程度。過(guò)零點(diǎn)決定音頻的頻率特征,振幅決定音頻的響度變化。為了使音頻特征具有更高的保真度,研究人員往往選用較大的采樣率,因此時(shí)域特征很密集,顯示在圖像上更像是噪點(diǎn),很難體現(xiàn)其特征。此外,音頻響度雖然對(duì)音頻識(shí)別影響較小,但作為音頻判別特征會(huì)影響最終識(shí)別,因而很少有研究者將時(shí)域音頻特征作為網(wǎng)絡(luò)的輸入音頻特征。
頻域特征包含時(shí)域信號(hào)信息,同時(shí)體現(xiàn)音頻的頻率特征。在現(xiàn)有模型中,常用的頻域特征主要包括頻譜圖、梅爾頻譜圖、對(duì)數(shù)梅爾頻譜圖、MFCC等。MFCC適用于人耳且能準(zhǔn)確描述包絡(luò)特征,于是本文將此特征作為模型輸入。將時(shí)域特征進(jìn)行傅里葉變換得到頻譜圖,傅里葉變換公式為
式中:y(t)為時(shí)域信號(hào),x為頻域信號(hào),w(t?τ)表示中心位置位于τ的漢明窗(Hamming window),f為頻率,τ為幀長(zhǎng)。將所有音頻零填充至最長(zhǎng)音頻時(shí)間長(zhǎng)度4 s[6]。
梅爾濾波依照人耳特性設(shè)計(jì),主要作用是突出低頻,抑制高頻。梅爾濾波公式為
式中:fmel為經(jīng)過(guò)濾波后的梅爾頻率。對(duì)梅爾頻譜特征取對(duì)數(shù),最后進(jìn)行離散余弦變換得到MFCC特征。MFCC特征提取可視化如圖2所示。
圖2 MFCC特征提取可視化Figure 2 MFCC feature extraction visualization
在圖2中,紅色虛線框代表窗口大小,黃色框代表幀重疊區(qū)域。
本文所提出的環(huán)境聲音識(shí)別模型主要包括兩部分:GRU網(wǎng)絡(luò)與A-SIREN網(wǎng)絡(luò)。
GRU網(wǎng)絡(luò)屬于RNN的變體,考慮到早期RNN會(huì)產(chǎn)生梯度消失與梯度爆炸問(wèn)題,Hochreiter等對(duì)RNN進(jìn)行改進(jìn)后提出了長(zhǎng)短期記憶(long short-term memory,LSTM)神經(jīng)網(wǎng)絡(luò)[7],解決了RNN層次過(guò)深所產(chǎn)生的梯度消失與梯度爆炸問(wèn)題。文獻(xiàn)[8]提出的GRU不但在多項(xiàng)任務(wù)中超越LSTM網(wǎng)絡(luò),而且訓(xùn)練參數(shù)較少。因此,本文借助GRU網(wǎng)絡(luò)使單個(gè)門控單元能同時(shí)控制遺忘門與輸出門,同樣具有參數(shù)較少的特點(diǎn)。重置門公式為
式中:h(t)為隱藏層向量,包含所有輸出的權(quán)重;U為輸入權(quán)重;W為循環(huán)權(quán)重;σ為sigmoid激活函數(shù);u代表更新門,主要保留當(dāng)前重要信息;r代表遺忘門,決定信息的保留與丟棄;x(t)為當(dāng)前輸入向量。更新門與遺忘門的公式為
本文將注意力機(jī)制與正弦激活函數(shù)結(jié)合為A-SIREN,對(duì)音頻中重要信息進(jìn)行高權(quán)重分配。其中注意力機(jī)制首次在機(jī)器翻譯領(lǐng)域提出[9],并成功應(yīng)用于圖像識(shí)別、音頻識(shí)別等領(lǐng)域。由于大多數(shù)音頻數(shù)據(jù)中包含冗余信息,提取音頻中重要信息可以提高機(jī)器辨識(shí)效率。本文使用A-SIREN激活函數(shù)對(duì)注意力機(jī)制加以改進(jìn),首先用正弦函數(shù)激活GRU的隱藏層得分使其歸一化為(?1,1);然后對(duì)歸一化結(jié)果進(jìn)行Softmax處理,并為隱藏層分配權(quán)重;最后將重新分配權(quán)重后的隱藏層作為A-SIREN的輸出。正弦激活函數(shù)適合表示復(fù)雜的語(yǔ)音信號(hào)及其導(dǎo)數(shù),可以使關(guān)注點(diǎn)更容易集中到重要區(qū)域,從而更好地捕捉音頻重要特征。A-SIREN公式為
式中:vi代表第i個(gè)隱藏層的得分,由當(dāng)前隱藏層的權(quán)值進(jìn)行正弦函數(shù)激活;αi代表第i個(gè)隱藏層歸一化后的得分,使用Softmax將vi得分映射為0到1之間并作為權(quán)重。最后的輸出為所有隱藏層得分αi及其對(duì)應(yīng)隱藏層hi的乘積。A-SIREN模型的結(jié)構(gòu)如圖3所示,音頻幀長(zhǎng)遠(yuǎn)遠(yuǎn)超過(guò)5幀,為了視覺(jué)效果僅顯示部分圖像。
圖3 A-SIREN模型Figure 3 A-SIREN model
本文選取Urban Sound 8K數(shù)據(jù)集作為研究對(duì)象,該數(shù)據(jù)集由Justin Salamon等創(chuàng)建,包含來(lái)自10個(gè)類別的8 732個(gè)標(biāo)記聲音(≤4 s)[10]。數(shù)據(jù)集聲音類型分別為空調(diào)、汽車?guó)Q笛、小孩玩鬧、犬吠、電鉆、發(fā)動(dòng)機(jī)空轉(zhuǎn)、槍聲、手持式鑿巖機(jī)、警笛和街道音樂(lè)。
本文采用Tensorf low框架,編程環(huán)境為Python 3.7,硬件環(huán)境為英偉達(dá)(NVIDA)泰坦(TITAN)Xp顯卡,CPU為Intel i9。Urban Sound 8K共8 732個(gè)樣本,隨機(jī)打亂樣本序列后按照8∶2的比例劃分訓(xùn)練集與測(cè)試集。音頻采樣率為22 050 Hz,窗口長(zhǎng)度為2 048,步長(zhǎng)為512,幀之間的重疊率為窗口大小的1/4。實(shí)驗(yàn)使用Librosa工具包[11]提取40維度的MFCC特征,4 s音頻對(duì)應(yīng)于174幀,則音頻MFCC特征維度為40×174。將GRU中隱藏層的神經(jīng)元數(shù)量設(shè)定為300,訓(xùn)練時(shí)將Dropout設(shè)定為0.5,測(cè)試時(shí)不使用Dropout,以免網(wǎng)絡(luò)出現(xiàn)過(guò)擬合現(xiàn)象。優(yōu)化器選用Adam優(yōu)化器,批次大小設(shè)定為200。
Urban Sound 8K數(shù)據(jù)集中存在類別不平衡問(wèn)題,其中汽笛與槍聲的類別遠(yuǎn)少于其他音頻類別。針對(duì)數(shù)據(jù)集類別不平衡問(wèn)題,本文采用focal loss損失函數(shù),并與交叉熵(cross entropy)損失函數(shù)進(jìn)行實(shí)驗(yàn)比較。Focal loss損失函數(shù)在目標(biāo)檢測(cè)任務(wù)中首次提出[12],主要用于減少易分類樣本的權(quán)重,使模型在訓(xùn)練時(shí)更專注于難分類的樣本,從而解決了背景與前景的類別不平衡問(wèn)題。對(duì)于相同的模型,focal loss損失函數(shù)與cross entropy損失函數(shù)的實(shí)驗(yàn)結(jié)果如表2所示。
表2 不同損失函數(shù)的實(shí)驗(yàn)對(duì)比Table 2 Experimental comparison of different loss functions
由表2可以發(fā)現(xiàn):focal loss損失函數(shù)的準(zhǔn)確率高達(dá)93.5%,這一結(jié)果優(yōu)于cross entropy損失函數(shù)的實(shí)驗(yàn)結(jié)果,顯示出focal loss損失函數(shù)在音頻數(shù)據(jù)集的有效性。此外,為了突出模型的有效性,將本文模型與其他模型進(jìn)行對(duì)比實(shí)驗(yàn),結(jié)果如表3所示。
表3 與其他模型的實(shí)驗(yàn)比較Table 3 Experimental comparison with other models
將表3中實(shí)驗(yàn)1~3與實(shí)驗(yàn)4~8進(jìn)行對(duì)比可以得出:以RNN為基礎(chǔ)框架的網(wǎng)絡(luò)在識(shí)別效果方面優(yōu)于大部分CNN及其變體網(wǎng)絡(luò)模型,如實(shí)驗(yàn)3僅用GRU網(wǎng)絡(luò)模型結(jié)合梅爾頻譜特征就可以獲得較好的實(shí)驗(yàn)結(jié)果,這一結(jié)果超越了文獻(xiàn)[2,13]CNN模型的實(shí)驗(yàn)結(jié)果。音頻特征的時(shí)間維度不可忽略,而GRU網(wǎng)絡(luò)在時(shí)間維度上具有很強(qiáng)的提取能力,正好可以作為本文的基礎(chǔ)模型。將實(shí)驗(yàn)1與2進(jìn)行對(duì)比的結(jié)果表明:本文提出的A-SIREN模型能將音頻特征權(quán)重集中于分配于重要區(qū)域,從而提高環(huán)境聲音識(shí)別的準(zhǔn)確率,比原有GRU網(wǎng)絡(luò)的模型提高5.2%。
在A-SIREN模型訓(xùn)練過(guò)程中,訓(xùn)練準(zhǔn)確率與測(cè)試準(zhǔn)確率隨迭代次數(shù)的變化曲線如圖4中的(a)所示,損失值隨迭代次數(shù)的變化曲線如圖4中的(b)所示。每50次迭代輸出一個(gè)識(shí)別準(zhǔn)確率。觀察圖4測(cè)試集與訓(xùn)練集的曲線變化規(guī)律發(fā)現(xiàn):訓(xùn)練曲線模型在僅10次迭代時(shí)的識(shí)別率高達(dá)0.78,在第3 100次迭代時(shí)達(dá)到平穩(wěn)狀態(tài)(振幅≤0.005);最終識(shí)別率在0.93左右且波動(dòng)小于0.003,表明該模型經(jīng)過(guò)7 000步迭代已經(jīng)收斂到最優(yōu)值附近。在整個(gè)訓(xùn)練過(guò)程中,在訓(xùn)練集與測(cè)試集上的識(shí)別率相差小于0.10,且在穩(wěn)定后訓(xùn)練集和測(cè)試集的損失值相差小于0.07,屬于正常值范圍,表明該網(wǎng)絡(luò)擬合效果正常,并未出現(xiàn)過(guò)擬合現(xiàn)象。因此,A-SIREN模型既能較快較平穩(wěn)地收斂,同時(shí)又能獲得更好的實(shí)驗(yàn)結(jié)果,證明該模型可以有效地學(xué)習(xí)到音頻類別規(guī)律信息。
圖4 訓(xùn)練集與測(cè)試集上準(zhǔn)確率和損失值的變化Figure 4 Change of accuracy rate and loss in training set and test set
本文以混淆矩陣[16]記錄真實(shí)樣本與預(yù)測(cè)樣本的值,全局把握整體網(wǎng)絡(luò)擬合效果,如圖5顯示。
該混淆矩陣顯示了所有測(cè)試集的預(yù)測(cè)情況,橫坐標(biāo)代表預(yù)測(cè)標(biāo)簽,縱坐標(biāo)代表真實(shí)值標(biāo)簽。顏色代表樣本數(shù)量,顏色越深表示識(shí)別出正確的標(biāo)簽數(shù)量就越多,對(duì)角線數(shù)值越大表示模型的識(shí)別效果越好。在混淆矩陣中,數(shù)字1~10依次代表空調(diào)、汽車?guó)Q笛、小孩玩鬧、犬吠、電鉆、發(fā)動(dòng)機(jī)空轉(zhuǎn)、槍聲、手持式鑿巖機(jī)、警笛和街道音樂(lè)。汽車?guó)Q笛(類別2)與槍聲(類別7)的數(shù)據(jù)少于其他音頻類別的數(shù)據(jù),其顏色淺于其他類別的顏色。本文根據(jù)混淆矩陣計(jì)算出每個(gè)類別的精確率Precision、召回率Recall、F1-score如表4所示。
表4顯示了混淆矩陣各類指標(biāo)的結(jié)果,其中街道音樂(lè)的精確度最低僅為0.86,分析原因如下:在識(shí)別街道音樂(lè)時(shí),街道音樂(lè)會(huì)參雜小孩玩耍、車?guó)Q等聲音,其識(shí)別效果受到了影響,因此精確度遠(yuǎn)低于其他類別的精確度;同時(shí)從圖5也可以觀察出街道音樂(lè)與小孩玩耍的聲音相互混淆。
表4 混淆矩陣分析結(jié)果Table 4 Analysis results of confusion matrix
圖5 GUR-A-SIREN混淆矩陣Figure 5 Confusion matrix of GUR-A-SIREN
本文總結(jié)分析了以往的環(huán)境聲音分類系統(tǒng),提出了A-SIREN模型。首先在音頻特征的選取上以MFCC特征作為輸入特征;其次在模型的構(gòu)建上選擇對(duì)傳統(tǒng)的GRU網(wǎng)絡(luò)模型進(jìn)行改進(jìn),利用GRU網(wǎng)絡(luò)進(jìn)一步提取MFCC特征,同時(shí)結(jié)合注意力機(jī)制和正弦函數(shù)將音頻每一幀的注意力隱藏層得分重新映射。實(shí)驗(yàn)結(jié)果表明:A-SIREN利用了正弦函數(shù)的周期性與可導(dǎo)不變性,故在Urban Sound 8K數(shù)據(jù)集的準(zhǔn)確率比MGCC-CNN模型的準(zhǔn)確率高出5.8%。在后續(xù)的研究中,我們會(huì)繼續(xù)研究并改進(jìn)音頻模型。