沈希忠,陳 菱
(上海應(yīng)用技術(shù)大學(xué) 電氣與電子工程學(xué)院,上海 201418)
鳥類作為環(huán)境生態(tài)系統(tǒng)不可或缺的指示生物之一,其種類的確定對生物多樣性保護(hù)和生態(tài)平衡優(yōu)化等起著十分重要的作用。鳥鳴聲蘊(yùn)含了豐富的鳥類生態(tài)學(xué)信息,其相關(guān)的研究成果可應(yīng)用于鳥類行為分析與監(jiān)護(hù)和生態(tài)環(huán)境狀態(tài)監(jiān)測等領(lǐng)域[1]。20 世紀(jì)50 年代開始國內(nèi)外學(xué)者不斷提出特征提取算法[2-3]和各個(gè)分類模型[4-5]來實(shí)現(xiàn)特定聲音的識別和分類。各種語音信號處理方法也被應(yīng)用于鳥類聲音特征的提取和分類中[6],并不斷有學(xué)者提出新的優(yōu)化算法來提高分類準(zhǔn)確率。早在1997 年,McIlraith 等[7]利用反向傳播和多元統(tǒng)計(jì)數(shù)據(jù)分析6 種原產(chǎn)于曼尼托巴的鳥類鳥鳴特點(diǎn),并獲得了82%~93%的泛化性能的正確識別率。Lucio 等[8]用支持向量機(jī)(support vector machines,SVM)分類器對鳥類鳴聲頻譜圖提取出的3 種紋理特征進(jìn)行分類識別,實(shí)現(xiàn)最佳識別率77.56%。魏靜明等[9]在提取紋理特征的算法上增加和差統(tǒng)計(jì)法,驗(yàn)證了對鳥鳴聲識別的有效性。程龍等[10]在Mel 頻率倒譜系數(shù)(Mel frequency cepstral coefficient,MFCC)算法對鳥鳴信號進(jìn)行快速傅里葉變換之前,增加經(jīng)驗(yàn)?zāi)B(tài)分解算法,改進(jìn)后的MFCC 算法算對7 種鳥聲的識別率達(dá)到70.09%。謝云澄[11]在基于圖像識別的傳統(tǒng)驅(qū)鳥設(shè)備中加入基于深度學(xué)習(xí)的聲音檢測模塊,對包含3 種鳥類和3 種環(huán)境聲音的6 種聲音進(jìn)行識別,最后得到最高93.9%的識別準(zhǔn)確率。
極限學(xué)習(xí)機(jī)(extreme learning machine,ELM)是一種自提出以來一直被很多學(xué)者,用來解決生活中的很多回歸和分類問題的單隱層前向神經(jīng)網(wǎng)絡(luò)訓(xùn)練算法。Yang 等[12]采用局部三元模式提取面部圖像特征,并構(gòu)建面部圖像的性別識別極限分類系統(tǒng),識別準(zhǔn)確率達(dá)到87.13%。林偉銘等[13]將ELM應(yīng)用于阿爾茨海默病的診斷,準(zhǔn)確率達(dá)到87.62%。張婷慧等[14]使用粒子群算法(particle swarm optimization,PSO)優(yōu)化混合核極限學(xué)習(xí)機(jī)(kernel extreme learning machine,KELM)參數(shù),構(gòu)建遙感影像信息分類模型,可達(dá)到92.67%的分類準(zhǔn)確率。
鳥類對環(huán)境質(zhì)量的變化很敏感,通過戶外放置拾音器采集飛過的鳥類聲音并識別其種類,分析鳥類種類的變化從而反饋環(huán)境質(zhì)量的變化,并對變化做出相應(yīng)措施,更好保護(hù)生態(tài)環(huán)境。為了驗(yàn)證KELM 在鳥類聲音識別方面的效果,本文在ELM理論的研究基礎(chǔ)上,結(jié)合核函數(shù)理論和磷蝦群算法(krill herd algorithm,KHA)對使用MFCC 算法特征提取的上海常出現(xiàn)的30 種鳥類鳥鳴信號進(jìn)行識別和分類,最后與ELM、反向傳播神經(jīng)網(wǎng)絡(luò)(back propagation,BP)、SVM、KELM 分類模型進(jìn)行對比研究,通過識別的準(zhǔn)確率來確定其結(jié)果的可靠性。
ELM 是Huang 等[15]提出的一種單隱層前向神經(jīng)網(wǎng)絡(luò)(single-hidden layer feed forward network,SLFN)的訓(xùn)練算法,它隨機(jī)分配隱藏層并分析確定SLFN 的輸出權(quán)重。ELM 訓(xùn)練指對輸入數(shù)據(jù)先進(jìn)行隨機(jī)特征映射,再進(jìn)行線性參數(shù)求解從而得出分類或預(yù)測結(jié)果。相比于傳統(tǒng)的很多模型訓(xùn)練算法,ELM 是一種具有競爭力的機(jī)器學(xué)習(xí)技術(shù),ELM 理論簡單,實(shí)現(xiàn)速度快,有較強(qiáng)的泛化性能和魯棒性,提出的框架可以使用多種特征映射函數(shù)或內(nèi)核,而且所提出的方法可以直接應(yīng)用于多分類任務(wù)。SLFN 網(wǎng)絡(luò)結(jié)構(gòu)如圖1 所示。
圖1 SLFN 網(wǎng)絡(luò)結(jié)構(gòu)Fig. 1 Network structure of SLFN
對于N個(gè)不同的訓(xùn)練數(shù)據(jù){xi,ti},i=1,2,···,N,xi是一個(gè) 1×n(n為輸入數(shù)據(jù)的維度)輸入向量,ti是一個(gè)1×m(m為類的數(shù)量)的條目等于1 的輸出向量。含有?個(gè)隱藏節(jié)點(diǎn)且激活函數(shù)為g(x)的數(shù)學(xué)模型可表示為:
式中:βi為第i個(gè)隱藏節(jié)點(diǎn)的權(quán)值;(ωi,bi)是隨機(jī)產(chǎn)生的隱藏節(jié)點(diǎn)參數(shù)。式(1)也可表達(dá)為:Hβ=T。
其中:
式中:H為隱藏層輸出矩陣;g(ωi,bi,xi)是激活函數(shù),通常用Sigmoid 函數(shù);T是訓(xùn)練數(shù)據(jù)的目標(biāo)矩陣。
ELM 明顯不同于傳統(tǒng)的前饋神經(jīng)網(wǎng)絡(luò)的是,訓(xùn)練過程中唯一需要優(yōu)化的參數(shù)是隱藏節(jié)點(diǎn)和輸出節(jié)點(diǎn)之間的輸出權(quán)重β。在數(shù)學(xué)上,通過ELM 訓(xùn)練SLFN 可以轉(zhuǎn)化為解決正則化最小二乘問題,不需要額外的迭代步驟來調(diào)整SLFN 的參數(shù),這比BP 類算法更有效。
ELM 通過最小化以下?lián)p失函數(shù)來確定輸出權(quán)重:
推導(dǎo)可得式(3)的最優(yōu)解為:
式中,H-1為H的逆矩陣。
實(shí)際問題中,訓(xùn)練樣本的數(shù)量N明顯大于隱藏節(jié)點(diǎn)的數(shù)量?,這種情況下,不存在H方陣,故也不存在H的逆矩陣。Huang 等[16]提供了另一種尋找最小范數(shù)最小二乘解的方法:
由于ELM 在訓(xùn)練前隨機(jī)選擇參數(shù),難以保證其穩(wěn)定性和持續(xù)性,此時(shí)可以定義1 個(gè)核函數(shù):
式中:K(xi,xj)為 核函數(shù);h(·)為隱藏層神經(jīng)元輸出函數(shù)。
KELM 的分類模型的輸出可表達(dá)為:
KELM 模型無需使用隨機(jī)參數(shù),即不需要知道隱藏層輸出矩陣H,可有效增加模型的魯棒性和穩(wěn)定性。
針對鳥類聲音識別問題,核函數(shù)的選取很重要,對比多項(xiàng)式核函數(shù)、徑向基(radial basis function,RBF)核函數(shù)、線性核函數(shù)和Sigmoid 核函數(shù),發(fā)現(xiàn)RBF 核函數(shù)的ELM 的分類模型對鳥類識別有更好表現(xiàn)。RBF 核函數(shù)是一種學(xué)習(xí)能力強(qiáng)、所需確定的參數(shù)比較少的局部性核函數(shù)[17],其定義如下:
式中:xi為核函數(shù)中心;γ為函數(shù)寬度參數(shù)。
KHA 是Gandomi 等[18]提出的一種優(yōu)化算法,以磷蝦群中每只磷蝦覓食過程中的活動(dòng)和狀態(tài)的更新創(chuàng)建KHA 的尋優(yōu)過程。KHA 中,磷蝦個(gè)體i的第k次移動(dòng)速度Mi(k)由 誘導(dǎo)運(yùn)動(dòng)Ni(k)、覓食運(yùn)動(dòng)Fi(k)以 及隨機(jī)擴(kuò)散Ri(k)組成,可以表示為:
(1)磷蝦個(gè)體i的 誘導(dǎo)運(yùn)動(dòng)Ni(k)定義為:
(2)磷蝦個(gè)體i的 覓食運(yùn)動(dòng)Fi(k)定義為:
(3)磷蝦個(gè)體i的 隨機(jī)擴(kuò)散過程:
式中:Rmax為最大擴(kuò)散速度;δi(k)為隨機(jī)方向向量,是區(qū)間[ -1,1]的 隨機(jī)數(shù);Imax為最大迭代次數(shù)。
(4)磷蝦i從t時(shí)刻經(jīng) ?t時(shí) 間后的狀態(tài)更新:
式中:?t為 速度矢量比例因子;Mi為磷蝦i的移動(dòng)速度。
磷蝦在附近磷蝦和食物位置影響下不斷更新位置,直到移動(dòng)到最優(yōu)位置或者達(dá)到算法中設(shè)置的最大迭代次數(shù)后尋優(yōu)停止。將KHA 優(yōu)化后得到的食物位置對應(yīng)的最優(yōu)值設(shè)置為KELM 分類器的參數(shù),達(dá)到分類模型最優(yōu)的識別效果。
由于氣候差異,不同地區(qū)有各自的生物群落,鳥的種類也有差異,由于鳥鳴采集在上海進(jìn)行,故選擇上海具有代表性的30 種鳥類作為研究對象,30 種鳥的鳥鳴聲音音頻來自實(shí)地錄制的部分鳥類音頻和鳥類鳴聲數(shù)據(jù)網(wǎng)xeno-canto 上下載的鳥鳴音頻,使用GoldWave 音頻處理軟件初步篩選各個(gè)鳥鳴樣本,并對噪聲雜音大、鳥鳴音頻音量小、多鳥鳴雜音干擾大的樣本進(jìn)行預(yù)處理,構(gòu)建鳴聲特征明顯的有效鳥鳴信號樣本音頻數(shù)據(jù)庫。預(yù)處理后的樣本,再裁剪無聲區(qū)較長的音頻樣本,只保留有效鳴聲信號區(qū)域,以便提取MFCC 特征。四聲杜鵑的一段鳴聲信號處理前后樣本狀態(tài),如圖2 所示。
圖2 一段四聲杜鵑鳴聲信號樣本Fig. 2 Birdsong signal sample of a cuculus micropteru
使用MFCC 特征提取函數(shù)提取信號的特征參數(shù),輸入需要分析的語音信號的音頻幀和采樣頻率,選擇輸出12、24 或36 階MFCC 參數(shù)。如圖3 所示,將鳥鳴信號進(jìn)行預(yù)加重和分幀,再進(jìn)行快速傅里葉變換(fast fourier transform,FFT)得到信號的幅度譜,然后將變換得到的譜信號通過一組Mel濾波器組,之后將Mel 濾波器輸出的能量取對數(shù)得到對數(shù)能量譜,最后將對數(shù)能量譜進(jìn)行離散余弦變換(discrete cosine transformation,DCT),得 到MFCC 參數(shù):
圖3 MFCC 特征提取過程Fig. 3 Feature extraction process of MFCC
式中:i為第i幀;n為離散余弦變換后的譜線;M為Mel 濾波器組中濾波器的數(shù)量;S(i,m)為通過Mel 濾波器后的對數(shù)能量,m為第幾個(gè)濾波器。
建立30 種鳥類鳴聲樣本集,使用MFCC 算法提取各類鳥類聲音信號的特征參數(shù),圖4 為本文采集的30 種鳥類聲音信號集某個(gè)樣本中一幀的MFCC 特征參數(shù)。提取30 類鳥鳴信號的12 維靜態(tài)MFCC 參數(shù),再提取30 類鳥鳴信號包含12 維靜態(tài)和其一階差分后得到的12 維動(dòng)態(tài)的24 階MFCC 參數(shù),對比2 次提取到的參數(shù)可知,12 維靜態(tài)MFCC 參數(shù)差異比較明顯,12 維動(dòng)態(tài)MFCC 參數(shù)差異很小,特征很難分辨。故選取12 維靜態(tài)MFCC 參數(shù)表示30 類鳥類聲音信號的特征參數(shù)。
圖4 30 種鳥鳴信號的MFCC 特征參數(shù)Fig. 4 MFCC characteristic parameters of 30 birdsong signals
鳥類鳴聲分類識別流程如圖5 所示,將各類鳥鳴樣本提取的特征參數(shù)作為每類鳥鳴樣本特征數(shù)據(jù)集,特征數(shù)據(jù)集隨機(jī)選取70%樣本數(shù)據(jù)構(gòu)成訓(xùn)練樣本數(shù)據(jù)集,剩余30%數(shù)據(jù)構(gòu)成測試樣本數(shù)據(jù)集。核函數(shù)ELM 模型對訓(xùn)練樣本數(shù)據(jù)集進(jìn)行訓(xùn)練,運(yùn)用KHA 有限次迭代尋找最佳適應(yīng)度優(yōu)化核函數(shù)ELM 的參數(shù)C和γ,并將最優(yōu)參數(shù)更新到模型中,對測試數(shù)據(jù)樣本進(jìn)行分類。
圖5 鳥鳴信號分類識別流程Fig. 5 Birdsong signals recognition process
選取的上海周邊30 種鳥類名稱、各種鳥類的語音段、特征提取后的訓(xùn)練數(shù)據(jù)和測試數(shù)據(jù)如表1所示。
表1 鳥類樣本數(shù)據(jù)集Tab.1 Bird sample datasets
基于鳥鳴信號識別與分類實(shí)驗(yàn),對比10 種鳥類的測試數(shù)據(jù)集識別分類中Polynomial 核函數(shù)、RBF 核函數(shù)、Linear 核函數(shù)和Sigmoid 核函數(shù)的分類準(zhǔn)確率,如圖6 所示,RBF 核函數(shù)的識別準(zhǔn)確率最高。
圖6 鳥鳴信號ELM 分類器不同核函數(shù)比較Fig. 6 Comparison of different kernel functions of ELM classifiers for Birdsong signals
對KH-KELM 分類模型使用訓(xùn)練樣本數(shù)據(jù)集進(jìn)行模型訓(xùn)練,使用測試樣本數(shù)據(jù)集驗(yàn)證模型的分類效果。其中,磷蝦群優(yōu)化算法的迭代次數(shù)設(shè)置為迭代100 次,磷蝦種群數(shù)量設(shè)置為30 個(gè),參數(shù)C和γ搜索區(qū)間為[ 1,100]。由于ELM 模型的參數(shù)具有隨機(jī)性,所以ELM 相關(guān)分類模型分類準(zhǔn)確率取20 次實(shí)驗(yàn)的準(zhǔn)確率平均值。為驗(yàn)證KH-KELM 分類模型分類性能,將其與ELM、BP、SVM、KELM 分類模型比較,并與用遺傳算法(genetic algorithm,GA)、PSO、蟻群算法(ant colony optimization,ACO)分別優(yōu)化KELM 的分類模型比較,分析分類效果。
表2 為 ELM、BP、SVM、KELM 和 KHKELM 分別對鳥類進(jìn)行分類識別測試的準(zhǔn)確率結(jié)果。由表2 可知,KH-KELM 對5、10、20 和30 種鳥類分類測試的準(zhǔn)確率分別達(dá)到99.65%,97.79%,94.48%和89.21%,20 次的實(shí)驗(yàn)結(jié)果范圍為±0.5%;分類準(zhǔn)確率比ELM、BP、SVM 和KELM 分類模型的分類準(zhǔn)確率都高,從分類5 類擴(kuò)展到分類30類鳥,分類效果穩(wěn)定且分類性能較好。
表2 KH-KELM 和其他分類模型識別準(zhǔn)確率比較Tab.2 Comparison of recognition accuracy between KH-KELM and other classification models
表3 為GA、PSO、ACO 和KH分別優(yōu)化KELM 模型對鳥鳴信號識別的準(zhǔn)確率結(jié)果。由表3可知,從分類5 類擴(kuò)展到分類30 類鳥,KH 優(yōu)化的KELM 分類模型的識別準(zhǔn)確率最高。
表3 KH-KELM 和其他優(yōu)化算法識別準(zhǔn)確率比較Tab.3 Comparison of recognition accuracy between KHKELM and other optimization algorithms
本文在KELM 的基礎(chǔ)上提出基于磷蝦群優(yōu)化的KELM 模型對鳥類聲音進(jìn)行識別與分類。通過MFCC 算法提取30 種上海周邊常棲息鳥類的聲音信號的差異較明顯的12 階特征參數(shù)作為待分類識別的鳥類特征參數(shù),建立KH-KELM 分類模型,即通過KHA 迭代優(yōu)化核函數(shù)極限學(xué)習(xí)機(jī)的懲罰系數(shù)和核函數(shù)寬度參數(shù),提高模型泛化性能和分類準(zhǔn)確率。分析實(shí)驗(yàn)結(jié)果可知:與ELM、BP、SVM 和KELM 分類模型相比,KH-KELM 分類模型能夠快速完成學(xué)習(xí)任務(wù),且分類效果最好,準(zhǔn)確率最高;與基于GA、PSO、ACO 優(yōu)化KELM 分類模型相比,KH-KELM 分類模型的優(yōu)化效果最好。從5 類擴(kuò)展到30 類,KH-KELM 模型具有較明顯的優(yōu)越性和穩(wěn)定性,其分類效果能滿足對鳥類聲音識別分類的預(yù)期效果。在今后的研究中,會對鳥類聲音的特征因素更多的研究和提取,并繼續(xù)優(yōu)化分類模型的識別效果和算法的穩(wěn)定性,使得更好的應(yīng)用于大自然生物多樣性監(jiān)測。