王基豪,周曉彥,李大鵬,韓智超,王麗麗
(南京信息工程大學(xué)電子與信息工程學(xué)院,江蘇南京 210044)
鳥(niǎo)類(lèi)作為生態(tài)系統(tǒng)中的重要組成部分,分布廣泛且對(duì)環(huán)境變化敏感,多數(shù)學(xué)者將鳥(niǎo)類(lèi)作為監(jiān)測(cè)環(huán)境變化的指示物種[1-2],因此對(duì)鳥(niǎo)類(lèi)物種的監(jiān)測(cè)、識(shí)別及分類(lèi)具有重要意義。目前識(shí)別鳥(niǎo)類(lèi)物種的主要方式有兩種,分別是對(duì)鳥(niǎo)類(lèi)物種外形特征的識(shí)別以及對(duì)鳥(niǎo)鳴聲的識(shí)別,在實(shí)際監(jiān)測(cè)中,由于鳥(niǎo)類(lèi)形態(tài)監(jiān)測(cè)存在成本高、范圍限制大、效率低等問(wèn)題[3],使得鳥(niǎo)鳴聲監(jiān)測(cè)成為當(dāng)前的主流監(jiān)測(cè)方向。隨著信號(hào)處理和聲音識(shí)別技術(shù)的逐漸成熟,1996年Anderson等[4]利用模板匹配的方法首次實(shí)現(xiàn)了對(duì)靛藍(lán)彩鹀和斑胸草雀兩種鳥(niǎo)鳴聲的識(shí)別。之后國(guó)內(nèi)外學(xué)者圍繞基于鳥(niǎo)鳴聲的鳥(niǎo)類(lèi)識(shí)別問(wèn)題,通過(guò)手工提取特征、機(jī)器學(xué)習(xí)等方法展開(kāi)了大量的研究,但對(duì)識(shí)別效果的提升一直比較有限。
隨著深度學(xué)習(xí)的發(fā)展,國(guó)內(nèi)外部分研究表明深度神經(jīng)網(wǎng)絡(luò)如卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network, CNN)[5]、卷積循環(huán)神經(jīng)網(wǎng)絡(luò)(Convolutional Recurrent Neural Network, CRNN)[6]、長(zhǎng)短期記憶網(wǎng)絡(luò)(Long Short-Term Memory, LSTM)[7]等在鳥(niǎo)聲識(shí)別中能提取更有價(jià)值、更豐富的特征信息。邱志斌等[8]將梅爾語(yǔ)譜圖輸入到24層的自搭建CNN模型中,利用微調(diào)網(wǎng)絡(luò)參數(shù)在包含40類(lèi)鳥(niǎo)鳴聲的數(shù)據(jù)集中能達(dá)到96.1%的識(shí)別準(zhǔn)確率。Takahashi等[9]在原有VGGNet卷積神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)上進(jìn)行改進(jìn)用于鳥(niǎo)聲識(shí)別,結(jié)合數(shù)據(jù)增強(qiáng)算法解決了過(guò)擬合問(wèn)題,對(duì)Freesound數(shù)據(jù)庫(kù)中的鳥(niǎo)類(lèi)進(jìn)行識(shí)別實(shí)驗(yàn),識(shí)別準(zhǔn)確率較改進(jìn)前提高了16個(gè)百分點(diǎn)。Adavanne等[10]在卷積神經(jīng)網(wǎng)絡(luò)和循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network, RNN)的基礎(chǔ)上提出了卷積循環(huán)神經(jīng)網(wǎng)絡(luò),該方法提取了主頻和對(duì)數(shù)梅爾頻帶能量聲學(xué)特征,在三個(gè)獨(dú)立數(shù)據(jù)集上測(cè)試獲得了95.5%的識(shí)別準(zhǔn)確率。馮郁茜[11]提出了雙模態(tài)特征融合鳥(niǎo)類(lèi)物種識(shí)別方法,通過(guò)卷積神經(jīng)網(wǎng)絡(luò)與長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)的級(jí)聯(lián)結(jié)構(gòu),融合鳥(niǎo)聲的時(shí)頻域特征,完成對(duì)鳥(niǎo)聲識(shí)別算法的優(yōu)化,在6種鳥(niǎo)類(lèi)識(shí)別中獲得了93.9%的平均識(shí)別準(zhǔn)確率。但文獻(xiàn)[8-10]只使用了單一特征,并且對(duì)于某些關(guān)聯(lián)性不強(qiáng)的數(shù)據(jù)不能獲取更為全面的特征,存在一定的局限性。
本文重點(diǎn)關(guān)注鳥(niǎo)鳴聲信號(hào)特征的多樣性,通過(guò)短時(shí)傅里葉變換(Short Time Fourier Transform,STFT)獲取包含時(shí)頻域特征信息的鳥(niǎo)聲語(yǔ)譜圖,以及通過(guò)對(duì)原始音頻信號(hào)計(jì)算得到梅爾頻率倒譜系數(shù)(Mel Frequency Cepstrum Coefficient, MFCC)靜態(tài)分量、MFCC一階差分和二階差分組成的混合特征向量。本文受文獻(xiàn)[11]啟發(fā),提取了不同鳥(niǎo)聲音頻特征后利用雙通道網(wǎng)絡(luò)級(jí)聯(lián)特征,其中一條通道利用卷積神經(jīng)網(wǎng)絡(luò)具有的平移不變性,對(duì)三維語(yǔ)譜圖局部特征信息進(jìn)行提取交互,得到局部細(xì)粒度頻譜特征,同時(shí)另外一條通道利用Transformer網(wǎng)絡(luò)結(jié)構(gòu)的多頭注意力機(jī)制,完成對(duì)MFCC混合特征向量的提取,得到兼顧上下文的全局序列特征,最后將兩條通道的特征融合到一起,增加每一個(gè)特征的信息量以提高鳥(niǎo)聲識(shí)別的準(zhǔn)確率。
本文提出的鳥(niǎo)聲識(shí)別算法網(wǎng)絡(luò)整體由兩個(gè)分支組成,兩個(gè)分支為并行關(guān)系,各自同時(shí)進(jìn)行計(jì)算處理。上部分支首先對(duì)輸入的原始音頻信號(hào)進(jìn)行預(yù)加重、分幀加窗等預(yù)處理操作后得到STFT三維語(yǔ)譜圖;然后輸入到卷積神經(jīng)網(wǎng)絡(luò)(CNN)中提取局部頻域特征;最后通過(guò)線性層得到大小為Ncls×C1的二維矩陣特征集,其中Ncls為識(shí)別鳥(niǎo)類(lèi)物種數(shù)目,C1為上部分支輸出特征向量維度大小。下部分支首先對(duì)輸入的原始音頻信號(hào)進(jìn)行預(yù)加重、分幀加窗等預(yù)處理操作后計(jì)算得到MFCC以及對(duì)應(yīng)的一階差分、二階差分特征,將其拼接得到F×C2維的梅爾特征集,隨后對(duì)特征集嵌入位置編碼,以時(shí)序排列的方式輸入Transformer編碼器網(wǎng)絡(luò)中,通過(guò)多頭注意力(Multi-Head Attention, MHA)模塊并行處理多組特征向量,得到兼顧上下文的全局序列特征,再通過(guò)多層感知機(jī)(Multi-Layer Perceptron, MLP)完成對(duì)輸出結(jié)果的優(yōu)化,最后通過(guò)線性層得到Ncls×C2維的二維特征集矩陣,其中F為梅爾特征向量維度大小,C2為下部分支輸出特征向量維度大小,在這里表現(xiàn)為原始音頻信號(hào)的輸入幀數(shù)。將兩條分支的特征集進(jìn)行拼接融合得到更豐富的特征信息后,通過(guò)Softmax函數(shù)得到最終的預(yù)測(cè)結(jié)果。鳥(niǎo)聲識(shí)別整體網(wǎng)絡(luò)結(jié)構(gòu)圖如圖1所示。
圖1 鳥(niǎo)聲識(shí)別整體網(wǎng)絡(luò)結(jié)構(gòu)示意圖Fig.1 Schematic diagram of the general network structure of bird sound recognition
1.1.1 STFT語(yǔ)譜圖
對(duì)于獲取的原始鳥(niǎo)聲音頻信號(hào)來(lái)說(shuō),每一幀內(nèi)的鳥(niǎo)聲頻譜可以看作是不變的,但是這種看作不變的短時(shí)頻譜只能用于反映鳥(niǎo)聲?shū)Q叫時(shí)的靜態(tài)特性。為了能反映出鳥(niǎo)聲信號(hào)的動(dòng)態(tài)頻率特性,實(shí)現(xiàn)對(duì)非平穩(wěn)時(shí)變信號(hào)的分析,采用短時(shí)傅里葉變換生成STFT語(yǔ)譜圖[12]。對(duì)于一個(gè)連續(xù)時(shí)間信號(hào)x(t),其連續(xù)時(shí)間內(nèi)的STFT表達(dá)式為
式中:S(ω,τ)是關(guān)于ω和τ的二維函數(shù),w(t-τ)是時(shí)移長(zhǎng)度為τ的窗函數(shù)。從本質(zhì)上來(lái)看,STFT是對(duì)傅里葉變換(Fourier Transorm, FT)進(jìn)行加窗操作,對(duì)每一次窗函數(shù)中的信號(hào)分幀進(jìn)行單獨(dú)處理。但實(shí)際中由于計(jì)算機(jī)只能處理離散信號(hào),所以還需要對(duì)連續(xù)時(shí)間信號(hào)的STFT中每一幀信號(hào)的傅里葉變換用離散傅里葉變換(Discrete Fourier Transorm, DFT)代替。對(duì)于輸入的離散信號(hào)x(n),其對(duì)應(yīng)的離散STFT表達(dá)式為
式中:X(l,k)是一個(gè)關(guān)于l和k的二維函數(shù),l表示幀平移量,k表示當(dāng)前譜線數(shù),N和n分別表示總采樣點(diǎn)數(shù)以及當(dāng)前第n幀。利用幅度變化關(guān)于時(shí)間與頻率的關(guān)系以及能量大小關(guān)于時(shí)間與頻率的關(guān)系,還可以推導(dǎo)出:
式中:S(l,k)為功率譜,是能量關(guān)于時(shí)間與頻率的二維函數(shù),根據(jù)式(3)中關(guān)于X(l,k)的二維函數(shù)關(guān)系,可以繪制對(duì)應(yīng)的STFT語(yǔ)譜圖,利用圖像來(lái)獲取所需的三維信息,橫軸為時(shí)間,縱軸為頻率,顏色的深淺表示能量的大小。STFT語(yǔ)譜圖可以清楚了解到鳥(niǎo)聲音頻隨時(shí)間變化所能展現(xiàn)的頻率以及能量的變化。
通過(guò)上述操作對(duì)原始鳥(niǎo)聲音頻信號(hào)進(jìn)行處理獲取STFT語(yǔ)譜圖,窗函數(shù)采用漢寧窗,其中幀移為l=11 ms,總采樣點(diǎn)數(shù)為N=44 100??紤]到不同種類(lèi)鳥(niǎo)聲的能量差異較大會(huì)導(dǎo)致生成語(yǔ)譜圖顏色差異影響后續(xù)網(wǎng)絡(luò)訓(xùn)練,為此挑選出能量最大的鳥(niǎo)聲語(yǔ)譜圖作為上限基準(zhǔn)點(diǎn),對(duì)所有語(yǔ)譜圖按照式(4)標(biāo)準(zhǔn)化縮放:
為節(jié)省存儲(chǔ)空間,將縮放后生成的語(yǔ)譜圖壓縮為256×256×3的三通道RGB圖像,并以jpg格式存儲(chǔ)?;已泺B(niǎo)聲信號(hào)生成的STFT語(yǔ)譜圖如圖2所示。
1.1.2 MFCC混合特征向量
MFCC特征參數(shù)是一種在語(yǔ)音識(shí)別中廣泛應(yīng)用的特征,其更接近人耳聽(tīng)覺(jué)機(jī)制,可以降低原始鳥(niǎo)聲音頻中環(huán)境噪聲的干擾[13]。為了獲取MFCC靜態(tài)特征、一階差分和二階差分特征組成的混合特征向量,對(duì)原始音頻信號(hào)進(jìn)行如下操作:
(1) 通過(guò)一階高通濾波器進(jìn)行預(yù)加重,濾波器計(jì)算公式為
其中:α取值區(qū)間為(0.9, 1),本文取0.935。
(2) 對(duì)信號(hào)進(jìn)行分幀加窗操作,窗函數(shù)選擇為漢明窗,幀長(zhǎng)為23 ms,幀移為11 ms。
(3) 對(duì)每一幀預(yù)處理后的信號(hào)進(jìn)行快速傅里葉變換(Fast Fourier Transform, FFT)獲取對(duì)應(yīng)的頻譜,再通過(guò)式(3)獲得功率譜。
(4) 將功率譜輸入到梅爾濾波器組中計(jì)算獲得梅爾能量,其中梅爾濾波器組選用一組非均勻等高三角帶通濾波器對(duì)頻譜進(jìn)行平滑處理,消除諧波帶來(lái)的干擾[14]。設(shè)劃分的三角帶通濾波器為Hm(k),則對(duì)于每一幀音頻信號(hào)均存在一個(gè)對(duì)數(shù)梅爾能量函數(shù)Emel(m),將功率譜與梅爾濾波器組計(jì)算得到的對(duì)數(shù)梅爾能量表達(dá)式為
式中:M為每組濾波器個(gè)數(shù),本文M=40。
(5) 對(duì)經(jīng)過(guò)梅爾濾波后的對(duì)數(shù)梅爾能量進(jìn)行離散余弦變換(Discrete Cosine Transform, DCT),具體求解表達(dá)式為
式中:Emfcc(n)函數(shù)中n表示當(dāng)前第n幀,m取值滿足式(6)中每組濾波器個(gè)數(shù)限制。創(chuàng)建好對(duì)應(yīng)的數(shù)組標(biāo)簽后,可以得到MFCC靜態(tài)特征。這里考慮到第0維為表征平均值,沒(méi)有參考價(jià)值,且大部分能量集中在低頻區(qū),所以最后選擇第1~13維共12組數(shù)據(jù)[15]。
(6) 最后為了更好體現(xiàn)提取鳥(niǎo)鳴聲時(shí)域特征的上下文連續(xù)性,增加提取特征的豐富度,對(duì)MFCC靜態(tài)特征計(jì)算一階差分zid和二階差分[16]:
式中:v=2,對(duì)獲得的一階差分和二階差分同樣取第1~13維,拼接得到二維的MFCC混合特征向量X∈RN×F,這里N表示總幀數(shù),F(xiàn)=36表示提取的特征個(gè)數(shù)。
對(duì)于從原始鳥(niǎo)聲信號(hào)中生成的STFT語(yǔ)譜圖來(lái)說(shuō),CNN直接采用原始圖像作為輸入,可以從大量圖像數(shù)據(jù)中學(xué)習(xí)得到有效特征,再通過(guò)對(duì)圖像的局部像素點(diǎn)進(jìn)行感知之后在高層對(duì)信息進(jìn)行共享合并,從而使網(wǎng)絡(luò)的每一層通過(guò)共享參數(shù)來(lái)獲得圖像的表征信息,在加強(qiáng)了對(duì)語(yǔ)譜圖局部特征提取能力的同時(shí),又能保證網(wǎng)絡(luò)結(jié)構(gòu)本身的高度不變性。一般的CNN由輸入層、卷積層、池化層、全連接層和輸出層組成,本文使用ResNet50作為網(wǎng)絡(luò)主干,考慮到輸出參數(shù)量較少的同時(shí)加入了殘差模塊,減少了網(wǎng)絡(luò)深度加深之后梯度消失問(wèn)題的影響[17]。網(wǎng)絡(luò)設(shè)置的輸入尺寸大小為256×256,和上文中提取的語(yǔ)譜圖大小一致;第一層卷積層之后輸出大小為128×128;然后通過(guò)四組殘差模塊,最后通過(guò)全連接層得到大小為Ncls×2 048的二維數(shù)組,Ncls為設(shè)定的鳥(niǎo)聲識(shí)別種類(lèi);卷積核大小設(shè)定均為3×3,池化層大小設(shè)定均為2×2×2。
在鳥(niǎo)聲識(shí)別中,不僅需要對(duì)每幀音頻信號(hào)進(jìn)行關(guān)注提取,還需要考慮每一幀信號(hào)在對(duì)應(yīng)位置的重要程度。為此對(duì)于上文中通過(guò)梅爾對(duì)數(shù)轉(zhuǎn)換提取獲得的MFCC混合特征向量,本文加入了Transformer網(wǎng)絡(luò)模型[18],通過(guò)該模型所帶有的多頭注意力(MHA)機(jī)制,尋找定位顯著性的鳥(niǎo)聲音頻表征特征。之前很多時(shí)間序列處理任務(wù)中都有加入注意力機(jī)制[19],但卻只能在每一步中只關(guān)注一個(gè)區(qū)域的特征信息,而Transformer網(wǎng)絡(luò)模型通過(guò)多個(gè)注意力模塊并行處理特征參數(shù),既能利用注意力機(jī)制提取信息,還能加快網(wǎng)絡(luò)的訓(xùn)練速度,得到兼顧上下文的全局序列特征。
Transformer網(wǎng)絡(luò)主要由編碼器和解碼器兩部分組成。本文主要利用Transformer網(wǎng)絡(luò)中的的編碼器部分完成對(duì)MFCC混合特征向量的提取。Transformer網(wǎng)絡(luò)編碼器部分結(jié)構(gòu)如圖3所示,主要由MHA和多層感知機(jī)(MLP)組成,中間加入了殘差連接、層標(biāo)準(zhǔn)化(Layer Norm, LN)和Dropout層。
圖3 Transformer編碼器網(wǎng)絡(luò)結(jié)構(gòu)Fig.3 The structure of Transformer encoder network
對(duì)于輸入的MFCC混合特征向量X∈RN×F,首先需要進(jìn)行位置編碼來(lái)保證音頻幀按照時(shí)序順序正常輸入。本文采用正余弦位置編碼,計(jì)算公式為
式中:p表示每一幀在整段信號(hào)中的絕對(duì)位置,q表示維度,d表示可輸入特征向量的最大維數(shù),目的是保證位置向量長(zhǎng)度和輸入特征向量大小一致,這里d=512,2q和2q+1用于表示位置奇偶性,對(duì)生成的位置編碼與原二維特征向量進(jìn)行相加操作得到新的輸入向量X'∈RN×()F+1。將加入位置標(biāo)記的特征向量導(dǎo)入到后續(xù)的MHA模塊中,本文的MHA使用了注意力機(jī)制:
其中:Att(Q,K,V)函數(shù)可以看作將一個(gè)查詢(query)和一系列鍵值(keys-values)對(duì)映射為一個(gè)輸出的過(guò)程:X'×(WQ,WK,WV)→(Q,K,V),將新的輸入向量X'與權(quán)重矩陣WQ,WK,WV進(jìn)行乘積映射為一個(gè)query向量和一組keys-values向量。通過(guò)計(jì)算query向量和所有keys向量的點(diǎn)乘,之后將結(jié)果除以則是對(duì)每個(gè)輸入的音頻之間相關(guān)性得分進(jìn)行歸一化處理,使訓(xùn)練時(shí)梯度保持穩(wěn)定,其中dk為keys向量的維度。最后通過(guò)softmax函數(shù)將權(quán)重得分轉(zhuǎn)化為0到1之間的概率分布矩陣,乘上values向量后得到最終的輸出矩陣。
但是單一的注意力機(jī)制只是局限于自身內(nèi)部的特征聯(lián)系,交互能力有限。而對(duì)于MHA來(lái)說(shuō),通過(guò)將上述的一組權(quán)重矩陣,擴(kuò)充為并行輸入使用多組權(quán)重,這樣可以使得模型在不同的時(shí)頻位置獲取信息,并通過(guò)上下文信息的交互獲取更豐富的音頻特征,進(jìn)一步增強(qiáng)了注意力機(jī)制中對(duì)突出部分特征信息的利用。這里的處理公式為
其中:對(duì)于hi=Att(QWiQ,KWiK,VWiV),映射的權(quán)重矩陣WiQ∈Rd×dk,WiK∈Rd×dk,WiV∈Rd×dv。本文中設(shè)定注意力頭個(gè)數(shù)i=8,每個(gè)注意力頭滿足dv=di=64;通過(guò)WO作為拼接后的參數(shù)矩陣保證最后拼接得到的輸出矩陣與單一注意力機(jī)制計(jì)算得到的大小基本一致。
通過(guò)MHA得到的輸出矩陣后續(xù)送入前饋網(wǎng)絡(luò)(Feed Forward Network, FFN),這里采用MLP模型作為前饋網(wǎng)絡(luò)的主干為,表達(dá)式為
其中:W1、W2為權(quán)重矩陣,b1、b2為偏置向量,MLP模型整體由兩個(gè)線性層和一個(gè)ReLU激活函數(shù)嵌套組成,輸出與前置LN層通過(guò)殘差連接輸入到最后一個(gè)全連接層,最終得到處理后大小為Ncls×C2的二維數(shù)組,其中Ncls為設(shè)定的鳥(niǎo)聲識(shí)別種類(lèi),C2為總幀數(shù),本文中C2=173。
為了驗(yàn)證所提出模型的有效性,本文選用Birdsdata[20]鳥(niǎo)鳴聲數(shù)據(jù)集和xeno-canto[21]鳥(niǎo)鳴聲數(shù)據(jù)集進(jìn)行實(shí)驗(yàn)。Birdsdata是2020年由北京百鳥(niǎo)數(shù)據(jù)科技公司最新發(fā)布的手工標(biāo)注自然聲音標(biāo)準(zhǔn)數(shù)據(jù)集,在國(guó)外期刊文獻(xiàn)中已被用于鳥(niǎo)聲的識(shí)別檢測(cè)。該數(shù)據(jù)集公開(kāi)收集了共20類(lèi)國(guó)內(nèi)常見(jiàn)的鳥(niǎo)類(lèi)鳴叫聲,共計(jì)14 311份wav音頻文件,且所提供的音頻數(shù)據(jù)均已經(jīng)過(guò)2 s標(biāo)準(zhǔn)化分割以及降噪處理。xenocanto鳥(niǎo)聲數(shù)據(jù)集作為BirdCLEF鳥(niǎo)聲識(shí)別競(jìng)賽的官方數(shù)據(jù)集,其數(shù)據(jù)來(lái)源于全球性野外鳥(niǎo)聲數(shù)據(jù)庫(kù)網(wǎng)站,具有一定的權(quán)威性。該數(shù)據(jù)集包含了44種歐亞地區(qū)且均為自然環(huán)境下錄制的常見(jiàn)鳥(niǎo)類(lèi)音頻,時(shí)長(zhǎng)在30 s~5 min不等且自帶有環(huán)境噪聲。本文需要將音頻文件手動(dòng)分割為2 s,并對(duì)原音頻中的空白部分進(jìn)行刪減,最后得到共計(jì)34 703份處理好的音頻文件。以上數(shù)據(jù)集采樣率均為44.1 kHz,各數(shù)據(jù)集包含的鳥(niǎo)鳴聲種類(lèi)和數(shù)量如表1和2所示。
表1 Birdsdata數(shù)據(jù)集信息Table 1 The information of Birdsdata dataset
表2 xeno-canto數(shù)據(jù)集部分信息Table 2 The partial information of xeno-canto dataset
本文中實(shí)驗(yàn)部分硬件操作系統(tǒng)為Ubuntu 20.04,GPU型號(hào)為GTX 2080Ti,CUDA版本為10.1,網(wǎng)絡(luò)模型的搭建全部采用Pytorch 1.8.0深度學(xué)習(xí)框架。在整體訓(xùn)練過(guò)程中,迭代次數(shù)(epoch)設(shè)置為100,對(duì)輸入數(shù)據(jù)的單次訓(xùn)練步長(zhǎng)(batch_size)設(shè)置為32,優(yōu)化器采用Adam算法更新權(quán)重參數(shù),學(xué)習(xí)率(learning_rate)采用階梯衰減方式,初始學(xué)習(xí)率設(shè)置為10-4,之后經(jīng)過(guò)總迭代數(shù)的56%和78%時(shí),均衰減為前一級(jí)學(xué)習(xí)率的0.1倍,Dropout層設(shè)置為0.2。
本文將準(zhǔn)確率(Accuracy)和F1-score作為評(píng)估自身模型性能和對(duì)比其他模型的評(píng)價(jià)指標(biāo)。F1-score得分由精確率(Precision)和召回率(Recall)兩項(xiàng)指標(biāo)加權(quán)得到,評(píng)估公式為
其中:NTP表示正樣本中分類(lèi)正確樣本數(shù),NFP和NFN分別表示正、負(fù)樣本中分類(lèi)錯(cuò)誤樣本數(shù)。具體實(shí)驗(yàn)中將整體數(shù)據(jù)集按照8∶2的比例劃分為訓(xùn)練集和測(cè)試集,然后采用五折交叉驗(yàn)證的方式分別進(jìn)行五次實(shí)驗(yàn),并記錄每一次訓(xùn)練完后的測(cè)試結(jié)果以及最后的平均結(jié)果。
首先對(duì)本文所提方法進(jìn)行實(shí)驗(yàn),將數(shù)據(jù)集分為A、B、C、D、E五等份,采用五折交叉驗(yàn)證的方式取其中四份作為訓(xùn)練集,一份作為測(cè)試集(例如將A、B、C、D作為訓(xùn)練集,E作為測(cè)試集,以此類(lèi)推),共五組實(shí)驗(yàn)。在Birdsdata數(shù)據(jù)上的識(shí)別準(zhǔn)確率評(píng)估結(jié)果如表3中所示。同時(shí)為避免實(shí)驗(yàn)結(jié)果存在偶然性,每組實(shí)驗(yàn)均在打亂訓(xùn)練集內(nèi)部順序的條件下重復(fù)五次,求出每組實(shí)驗(yàn)識(shí)別準(zhǔn)確率的均值及標(biāo)準(zhǔn)差。
表3 在Birdsdata數(shù)據(jù)集上識(shí)別準(zhǔn)確率評(píng)估結(jié)果Table 3 The evaluation results of recognition accuracy on Birdsdata dataset
對(duì)于Birdsdata數(shù)據(jù)集來(lái)說(shuō),當(dāng)鳥(niǎo)聲數(shù)據(jù)量較夸大、種類(lèi)不是很復(fù)雜的情況下,各組樣本的五次實(shí)驗(yàn)準(zhǔn)確率波動(dòng)不大。本文所提出的網(wǎng)絡(luò)最高準(zhǔn)確率為99.1%,但是在以A,B,C,E作為訓(xùn)練集,D作為測(cè)試集訓(xùn)練時(shí)整體準(zhǔn)確率只有95.5%,說(shuō)明本文考慮的對(duì)每組實(shí)驗(yàn)樣本經(jīng)過(guò)五次實(shí)驗(yàn)求均值和標(biāo)準(zhǔn)差之后再求整體均值的方法是有效的,能在一定程度上減小偶然對(duì)識(shí)別結(jié)果性的影響,在最后得到的識(shí)別結(jié)果中Birdsdata數(shù)據(jù)集平均準(zhǔn)確率可以達(dá)到97.81%。
表4為在xeno-canto數(shù)據(jù)集中識(shí)別準(zhǔn)確率的評(píng)估結(jié)果。對(duì)于xeno-canto數(shù)據(jù)集,由于鳥(niǎo)聲數(shù)據(jù)量分布較為不均勻且種類(lèi)繁多,并且音頻數(shù)據(jù)中帶有噪聲干擾,所以本文所提出的網(wǎng)絡(luò)整體準(zhǔn)確率比Birdsdata數(shù)據(jù)集有所下降,且各組樣本準(zhǔn)確率波動(dòng)相比于表3中結(jié)果也較為明顯,例如其中最高準(zhǔn)確率為93.25%,最低準(zhǔn)確率為83.18%,但最后得到的識(shí)別結(jié)果中xeno-canto數(shù)據(jù)集的平均準(zhǔn)確率也能達(dá)到89.47%。
表4 在xeno-canto數(shù)據(jù)集中識(shí)別準(zhǔn)確率評(píng)估結(jié)果Table 4 The evaluation results of recognition accuracy on xeno-canto dataset
為了體現(xiàn)本文所提出網(wǎng)絡(luò)的整體收斂效果以及損失優(yōu)化情況,從Birdsdata和xeno-canto兩個(gè)數(shù)據(jù)集評(píng)估結(jié)果各隨機(jī)抽取的一組實(shí)驗(yàn)過(guò)程中100次迭代后準(zhǔn)確率以及損失函數(shù)變化的曲線圖,如圖4所示。由圖4可以看出當(dāng)學(xué)習(xí)率為10-4時(shí),網(wǎng)絡(luò)在大約40次迭代后就可以初步收斂;在通過(guò)階梯學(xué)習(xí)率第一次衰減收縮之后(約55次迭代),網(wǎng)絡(luò)本身的識(shí)別準(zhǔn)確率還能有約5個(gè)百分點(diǎn)的提升;而在學(xué)習(xí)率第二次衰減收縮之后(約80次迭代),網(wǎng)絡(luò)的準(zhǔn)確率沒(méi)有明顯提升,也就說(shuō)明網(wǎng)絡(luò)整體已經(jīng)達(dá)到全局收斂。
圖4 兩個(gè)鳥(niǎo)聲數(shù)據(jù)集上訓(xùn)練過(guò)程中識(shí)別準(zhǔn)確率和損失函數(shù)變化曲線Fig.4 Variation curves of the recognition accuracy and loss function in training process on the two bird sound datasets
此外,為了驗(yàn)證本文所提方法的有效性,將本文方法與其他方法進(jìn)行了對(duì)比實(shí)驗(yàn)。
(1) VGGNet方法[9]:提取鳥(niǎo)聲信號(hào)并通過(guò)STFT轉(zhuǎn)化為語(yǔ)譜圖,利用數(shù)據(jù)增強(qiáng)得到擴(kuò)充后的數(shù)據(jù)集,輸入到改進(jìn)后的VGGNet中進(jìn)行訓(xùn)練,最后通過(guò)全連接層得到鳥(niǎo)聲分類(lèi)的結(jié)果。
(2) CRNN方法[10]:對(duì)音頻提取一維靜態(tài)對(duì)數(shù)梅爾(log-mel)頻譜值,升維處理后通過(guò)由CNN和GRU[22]組成的融合網(wǎng)絡(luò)得到鳥(niǎo)聲識(shí)別結(jié)果。
(3) CNN-LSTM方法[11]:通過(guò)音頻得到log-Mel頻譜值轉(zhuǎn)化為MFCC靜態(tài)分量和Mel語(yǔ)譜圖,對(duì)MFCC靜態(tài)分量進(jìn)行升維操作后與語(yǔ)譜圖數(shù)組拼接輸入到CNN和LSTM級(jí)聯(lián)的網(wǎng)絡(luò),自適應(yīng)完成鳥(niǎo)聲識(shí)別。
(4) BiLSTM-DenseNet方法[20]:將音頻中提取的對(duì)數(shù)梅爾(log-Mel)頻譜值轉(zhuǎn)換為梅爾語(yǔ)譜圖,輸入到由雙向LSTM和DesenNet并行拼接組成的神經(jīng)網(wǎng)絡(luò)中完成鳥(niǎo)聲識(shí)別。
本文方法與上述方法進(jìn)行對(duì)比,在兩個(gè)數(shù)據(jù)集中不同方法下的鳥(niǎo)聲識(shí)別準(zhǔn)確率和F1-score得分如表5所示。
表5 在鳥(niǎo)聲數(shù)據(jù)集上不同方法的鳥(niǎo)聲識(shí)別結(jié)果Table 5 Bird sound recognition results of different methods on two bird sound datasets
由表5可知,本文提出的CNN+Transformer網(wǎng)絡(luò)與上述方法相比,在兩個(gè)鳥(niǎo)聲數(shù)據(jù)集中識(shí)別準(zhǔn)確率均有了相應(yīng)的提升。在Birdsdata數(shù)據(jù)集上,CNN+Transformer網(wǎng)絡(luò)的識(shí)別準(zhǔn)確率可達(dá)到97.81%,F(xiàn)1-score得分能達(dá)到97.69%,與VGGNet、CRNN、CNN-LSTM、BiLSTM-DenseNet等方法相比準(zhǔn)確率分別提升了4.57、3.05、2.23、5.61個(gè)百分點(diǎn)。在xeno-canto數(shù)據(jù)集上CNN+Transformer網(wǎng)絡(luò)的準(zhǔn)確率可達(dá)89.47%,F(xiàn)1-score得分可達(dá)到87.32%,與VGGNet、CRNN、CNN-LSTM、BiLSTM-DenseNet等方法相比準(zhǔn)確率分別提升了12.16、3.52、1.28、10.25個(gè)百分點(diǎn)。
此外,為了證明本文中上下兩條分支各自對(duì)特征利用的有效性,實(shí)驗(yàn)中對(duì)CNN(ResNet50)以STFT語(yǔ)譜圖作為輸入、對(duì)Transformer網(wǎng)絡(luò)以MFCC混合特征向量作為輸入分別進(jìn)行實(shí)驗(yàn)。由實(shí)驗(yàn)結(jié)果可知,CNN(ResNet50)在Birdsdata和xenocanto數(shù)據(jù)集上的準(zhǔn)確率分別為95.57%和83.01%,而Transformer網(wǎng)絡(luò)在兩個(gè)數(shù)據(jù)集上的準(zhǔn)確率分別為95.91%和88.45%,均能達(dá)到和文獻(xiàn)[11]中方法接近或更優(yōu)的識(shí)別效果,可見(jiàn)CNN利用對(duì)局部特征的抓取能力以及Transformer網(wǎng)絡(luò)中所用到的多頭注意力機(jī)制,通過(guò)加強(qiáng)對(duì)重要位置的關(guān)注能在一定程度上提高識(shí)別的準(zhǔn)確率。因此,將兩種網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行并聯(lián)得到的CNN+Transformer網(wǎng)絡(luò)最終能得到判別能力更強(qiáng)的融合特征,使得最終通過(guò)softmax分類(lèi)器得到的識(shí)別效果更好。此外,可以看到在兩個(gè)風(fēng)格不同的數(shù)據(jù)集上,本文所提出的方法均取得了較好的識(shí)別效果,說(shuō)明了CNN+Transformer網(wǎng)絡(luò)具有較強(qiáng)的魯棒性。
表6為各文獻(xiàn)方法和本文方法的參數(shù)量對(duì)比,以及在Birdsdata數(shù)據(jù)集上訓(xùn)練時(shí)間(每一個(gè)epoch)的比較。
表6 不同方法網(wǎng)絡(luò)參數(shù)量以及在Birdsdata數(shù)據(jù)集上訓(xùn)練時(shí)間對(duì)比Table 6 Comparison of the network parameters and training times of different methods on Birdsdata dataset
由表6可知,本文所提方法網(wǎng)絡(luò)參數(shù)量略大于文獻(xiàn)[10-11]的網(wǎng)絡(luò),但是準(zhǔn)確率相比之下提高了2~3個(gè)百分點(diǎn)。此外,本文網(wǎng)絡(luò)的訓(xùn)練速度僅略微小于文獻(xiàn)[20]的方法,準(zhǔn)確率卻遠(yuǎn)高于該方法。綜合兩者來(lái)看,本文所提方法能基本做到在不增加較大計(jì)算量的基礎(chǔ)上,高效利用所提取的鳥(niǎo)聲特征,從而顯著提高網(wǎng)絡(luò)的識(shí)別準(zhǔn)確率。
目前對(duì)于基于深度學(xué)習(xí)的鳥(niǎo)聲識(shí)別研究來(lái)說(shuō),如何有效利用從音頻信號(hào)中提取的各種時(shí)頻域特征信息是一個(gè)值得深入研究的問(wèn)題。本文提出的CNN+Transformer網(wǎng)絡(luò),通過(guò)對(duì)STFT語(yǔ)譜圖以及MFCC混合特征向量的提取,利用語(yǔ)譜圖包含的局部特征信息以及MFCC特征所具有的時(shí)頻域相關(guān)信息,結(jié)合網(wǎng)絡(luò)中CNN對(duì)局部細(xì)粒度頻譜特征的關(guān)注以及Transformer解碼器中多頭注意力機(jī)制對(duì)全局上下文時(shí)域信息的加權(quán)計(jì)算,最后篩選出具有較強(qiáng)判別性的鳥(niǎo)聲輸出特征。在Birdsdata數(shù)據(jù)集和xeno-canto數(shù)據(jù)集上進(jìn)行了對(duì)比實(shí)驗(yàn),平均識(shí)別準(zhǔn)確率均高于已有方法的平均識(shí)別準(zhǔn)確率,證明了本文所提出網(wǎng)絡(luò)模型的有效性。