王鵬程,崔 敏,李 劍,王彥博,趙 欣,孔慶珊
(1.中北大學(xué) 信息探測(cè)與處理山西省重點(diǎn)實(shí)驗(yàn)室,太原 030051;2.北方科技信息研究所,北京 100089; 3.山東省軍區(qū)數(shù)據(jù)信息室,濟(jì)南 250099)
聲目標(biāo)分類是實(shí)現(xiàn)聲源識(shí)別的主要方法[1],指的是將聲信號(hào)數(shù)據(jù)與目標(biāo)標(biāo)簽相關(guān)聯(lián),從而實(shí)現(xiàn)聲信號(hào)到聲源類別的識(shí)別。
聲音信號(hào)識(shí)別的經(jīng)典方法有高斯混合模型(GMMs, gaussian mixture model)[2],支持向量機(jī)(SVM, support vector machines)[3],隱馬爾可夫模型(HMM, hidden Markov model)[4]等經(jīng)典機(jī)器學(xué)習(xí)方法,由于采用手工設(shè)計(jì)特征并識(shí)別的方法,通常能取得非常準(zhǔn)確的效果。但這些方法無(wú)法自動(dòng)提取特征,在識(shí)別新信號(hào)時(shí)往往表現(xiàn)較差,仍然需要重新做算法開(kāi)發(fā),存在適用范圍小、泛化能力差的問(wèn)題。
深度學(xué)習(xí)近年來(lái)蓬勃發(fā)展,憑借其在計(jì)算機(jī)視覺(jué)[5]、自然語(yǔ)言[6]、生物信息學(xué)[7]等領(lǐng)域的獨(dú)特優(yōu)勢(shì),成為眾多學(xué)者的研究熱點(diǎn)[8-9],在文字[10],圖像[11]和聲音[7]等數(shù)據(jù)的解析方面有很大的應(yīng)用價(jià)值,能夠?qū)W習(xí)樣本數(shù)據(jù)的內(nèi)在規(guī)律和表示層次,解決了很多復(fù)雜的模式識(shí)別難題。
將其應(yīng)用于聲目標(biāo)分類識(shí)別也取得了很好的效果。或是使用卷積神經(jīng)網(wǎng)絡(luò)技術(shù)(CNN, convolutional neural networks)直接從聲譜圖數(shù)據(jù)中識(shí)別特征[12],或是通過(guò)無(wú)監(jiān)督學(xué)習(xí)技術(shù)根據(jù)數(shù)據(jù)間特征的相似性進(jìn)行分組(聚類算法)[13],又或者將多種CNN網(wǎng)絡(luò)融合后進(jìn)行多時(shí)間分辨率分析和多級(jí)特征提取[14],這些聲目標(biāo)分類方法不需要人工提取特征,且識(shí)別精度可觀。然而,由于模型參數(shù)量巨大,容易過(guò)擬合,這使得在處理低復(fù)雜度樣本時(shí)會(huì)很困難。然而,在具體的聲源識(shí)別應(yīng)用中,往往缺乏大規(guī)模的訓(xùn)練數(shù)據(jù),無(wú)法滿足模型高樣本復(fù)雜度的要求。
基于上述問(wèn)題,本文提出了一種基于深度學(xué)習(xí)的小樣本聲目標(biāo)識(shí)別方法,基于殘差網(wǎng)絡(luò)(ResNet, residual network)設(shè)計(jì)了聲目標(biāo)分類模型(MDF-ResNet, handmade design features ResNet)。模型采用了對(duì)數(shù)梅爾聲譜圖特征和手工設(shè)計(jì)特征分別對(duì)聲音數(shù)據(jù)進(jìn)行特征預(yù)提取,擴(kuò)充模型可用特征量;通過(guò)ResNet網(wǎng)絡(luò)結(jié)構(gòu)對(duì)兩種預(yù)提取特征進(jìn)行深度提取和分類處理,提高特征利用率,最終實(shí)現(xiàn)聲目標(biāo)的準(zhǔn)確分類。
為完成小樣本條件下的聲信號(hào)準(zhǔn)確分類,結(jié)合聲信號(hào)處理中前端和后端的方法,從信號(hào)采集到信號(hào)識(shí)別做了一系列工作。首先,通過(guò)高靈敏度全指向性聲傳感器組成麥克風(fēng)陣列,收集到不同聲源發(fā)出的聲信號(hào),數(shù)據(jù)預(yù)處理之后,對(duì)聲信號(hào)數(shù)據(jù)進(jìn)行手工設(shè)計(jì)特征和Log-mel spectrogram提取,得到(人工特征數(shù)×幀數(shù)×通道數(shù))形式的手工設(shè)計(jì)分類特征和(frequency,timesteps,channel)形式的Log-mel spectrogram特征。其次,基于ResNet網(wǎng)絡(luò)構(gòu)建適用于聲信號(hào)數(shù)據(jù)的深度學(xué)習(xí)訓(xùn)練網(wǎng)絡(luò)。以手工設(shè)計(jì)分類特征和聲譜圖為輸入,聲源類型為標(biāo)簽輸出,建立聲信號(hào)特征到聲源類型的端到端深度學(xué)習(xí)模型MDF-ResNet。最后,對(duì)網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練,通過(guò)實(shí)驗(yàn)測(cè)試模型性能。
聲音數(shù)據(jù)是一種多通道的波形數(shù)據(jù),轉(zhuǎn)化為張量數(shù)據(jù)時(shí)體現(xiàn)為(timesteps,features)的二維時(shí)間序列信息, 如圖1,但這只考慮到了聲音的時(shí)域信息,未對(duì)其頻域信息進(jìn)行分析,因此需要對(duì)聲音數(shù)據(jù)進(jìn)行時(shí)頻域分析,將數(shù)據(jù)轉(zhuǎn)化為聲譜圖形式,得到包含聲音時(shí)頻域信息的聲譜圖,如圖2,將其當(dāng)做圖像來(lái)處理,就可以在聲譜圖上訓(xùn)練深度卷積神經(jīng)網(wǎng)絡(luò),利用卷積網(wǎng)絡(luò)的特征提取能力對(duì)聲信號(hào)進(jìn)行特征提取。
圖1 聲音波形圖
圖2 對(duì)數(shù)梅爾聲譜圖
在聲信號(hào)處理領(lǐng)域分析音頻,往往從中提取一種稱為梅爾倒譜系數(shù)(MFCC,Mel frequency cepstrum coefficient)的特征參數(shù)作為預(yù)提取特征[4],但在MFCC提取過(guò)程中會(huì)損失大量聲音細(xì)節(jié),深度學(xué)習(xí)興起后,深度神經(jīng)網(wǎng)絡(luò)強(qiáng)大的特征提取能力使得我們只需要將信息更加豐富的對(duì)數(shù)梅爾聲譜[15](如圖2)信息直接送入神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,讓神經(jīng)網(wǎng)絡(luò)提取更加魯棒的特征。
從聲信號(hào)數(shù)據(jù)中提取得到Log-mel聲譜圖的過(guò)程如圖3所示。
圖3 對(duì)數(shù)梅爾聲譜特征提取
手工設(shè)計(jì)特征基于特征工程方法[16],即預(yù)先經(jīng)過(guò)人工設(shè)計(jì)并從音頻信號(hào)中提取的特征。手工設(shè)計(jì)特征偏重于對(duì)聲音信號(hào)的整體認(rèn)識(shí)如聲高、音調(diào)以及沉默率,通過(guò)手工工設(shè)計(jì)特征從數(shù)據(jù)中得到有意義的數(shù)據(jù)特征,高質(zhì)量的特征有助于提高模型整體的性能和準(zhǔn)確性。特征在很大程度上與基本問(wèn)題相關(guān)聯(lián),需要設(shè)計(jì)與場(chǎng)景、問(wèn)題和領(lǐng)域相關(guān)的特征。
用音頻分析開(kāi)源軟件Essentia的特征提取器Freesound對(duì)聲音數(shù)據(jù)抽取手工特征,Essentia提供了用于TensorFlow深度學(xué)習(xí)模型的接口,便于嵌入深度學(xué)習(xí)中使用。首先對(duì)音頻文件作分幀處理,將10 s的聲音信號(hào)分為500幀,每一幀信號(hào)40 ms,相鄰幀間有20 ms重疊。
然后進(jìn)行Freesound特征提?。簩?duì)于單通道內(nèi)每一幀信號(hào)用Freesound特征提取(參數(shù)設(shè)置為默認(rèn)值)抽取400個(gè)特征如表1所示。每個(gè)聲音樣本可得到(手工特征數(shù)×幀數(shù)×通道數(shù))形式的Freesound手工設(shè)計(jì)聲源分類特征。
表1 Freesound特征提取器提取到的特征
卷積神經(jīng)網(wǎng)絡(luò)是一類包含卷積計(jì)算且具有深度結(jié)構(gòu)的前饋神經(jīng)網(wǎng)絡(luò),是深度學(xué)習(xí)的代表算法之一。卷積神經(jīng)網(wǎng)絡(luò)具有表征學(xué)習(xí)能力,能夠按其階層結(jié)構(gòu)對(duì)輸入信息進(jìn)行平移不變分類。
由于孔子所處時(shí)代的影響,孔子提出的禮更加注重實(shí)踐價(jià)值和可操作性。首先來(lái)說(shuō),禮是人倫關(guān)系的規(guī)定??鬃铀浦Y以現(xiàn)實(shí)生活的內(nèi)容為基,把周禮神秘的內(nèi)容轉(zhuǎn)為世俗性的,人倫性質(zhì)的關(guān)系。周禮的主要內(nèi)容都是關(guān)于祭祀的?!皣?guó)之大事,在祀與戎。祀有執(zhí)脂,戎有受服,神之大節(jié)也?!盵4](《左傳》成公十三年)之所以周人注重祭祀,并不僅僅是因?yàn)榧漓氡旧硎且患袷サ氖录?,更為重要的是通過(guò)祭祀神圣連接主宰事物的神以說(shuō)明統(tǒng)治的合法性。
卷積是一種線性運(yùn)算。卷積網(wǎng)絡(luò)是使用卷積運(yùn)算代替矩陣乘法運(yùn)算的神經(jīng)網(wǎng)絡(luò)。例如,它被定義為:
其中是輸入nin矩陣的個(gè)數(shù)或者是張量的最后一個(gè)維度。Xk表示第k個(gè)輸入矩陣。Wk表示卷積核的第k個(gè)子卷積核矩陣。S(i,j)對(duì)應(yīng)位置的值是輸出矩陣的元素對(duì)應(yīng)于卷積內(nèi)核W。對(duì)于卷積后的輸出,通常用經(jīng)過(guò)激活函數(shù)——整流線性單元Relu將輸出張量中小于0的元素值整形為0值。通過(guò)卷積神經(jīng)網(wǎng)絡(luò)的不斷堆疊,網(wǎng)絡(luò)越來(lái)越深,不僅可以實(shí)現(xiàn)卷積網(wǎng)絡(luò)強(qiáng)大的表征能力,而且隨著網(wǎng)絡(luò)深度增加,過(guò)擬合的問(wèn)題也得到了改善。
一般來(lái)說(shuō),通過(guò)不斷堆疊網(wǎng)絡(luò)層來(lái)加深、加寬神經(jīng)網(wǎng)絡(luò),深度學(xué)習(xí)會(huì)有更強(qiáng)的表達(dá)能力,模型性能也會(huì)提高。但實(shí)驗(yàn)發(fā)現(xiàn)一味地增加網(wǎng)絡(luò)層數(shù)并不能帶來(lái)分類性能的進(jìn)一步提高,而且參數(shù)量的不斷增加會(huì)導(dǎo)致在小樣本條件下,網(wǎng)絡(luò)收斂變得更慢,分類準(zhǔn)確率也變得更差。因此,本文采用了ResNet網(wǎng)絡(luò):
H(x)=F(x)+x
(1)
將求解x到H(x)的問(wèn)題轉(zhuǎn)化為求解兩者之間差值F(x)的問(wèn)題,這樣網(wǎng)絡(luò)內(nèi)的信號(hào)可以直接通過(guò)捷徑連接到更深的層,這樣在網(wǎng)絡(luò)末端仍保留大量有效特征,數(shù)據(jù)內(nèi)的特征信號(hào)得到充分挖掘和利用,能夠在深度增加的情況下維持強(qiáng)勁的準(zhǔn)確率增長(zhǎng),這使得ResNet分類網(wǎng)絡(luò)成為了當(dāng)前應(yīng)用最為廣泛的CNN特征提取網(wǎng)絡(luò)。
想要將深度學(xué)習(xí)應(yīng)用于小樣本數(shù)據(jù)集,一種常用且非常高效的方法是使用預(yù)訓(xùn)練網(wǎng)絡(luò)。預(yù)訓(xùn)練網(wǎng)絡(luò)(pretrained network)是已在大型數(shù)據(jù)集上訓(xùn)練好的模型,如果這個(gè)原始數(shù)據(jù)集足夠大且足夠通用,那么預(yù)訓(xùn)練網(wǎng)絡(luò)學(xué)到的特征空間層次結(jié)構(gòu)可以有效地作為聲學(xué)分析的通用模型,因此這些特征可用于各種不同的聲信號(hào)分類問(wèn)題,即使這些新問(wèn)題涉及的類別和原始任務(wù)完全不同。
DCASE聲音場(chǎng)景與事件檢測(cè)分類挑戰(zhàn)賽中,任務(wù)A聲學(xué)場(chǎng)景分類的數(shù)據(jù)集是一個(gè)可供聲學(xué)分析的大型數(shù)據(jù)集,ResNet網(wǎng)絡(luò)在該任務(wù)上取得了很好的效果,我們采用在該分類任務(wù)上訓(xùn)練好的ResNet網(wǎng)絡(luò)來(lái)處理我們采集到的聲數(shù)據(jù)。
采用了網(wǎng)絡(luò)微調(diào)fine-tuning的方法使用預(yù)訓(xùn)練網(wǎng)絡(luò),僅保留網(wǎng)絡(luò)的卷積部分用來(lái)做特征提取,將預(yù)訓(xùn)練網(wǎng)絡(luò)的分類器部分丟掉,增加需要訓(xùn)練的新分類器。某個(gè)卷積層特征提取的通用性(以及可復(fù)用性)取決于該層在模型中的深度,模型中越深的層能夠提取到越抽象的概念。由于新數(shù)據(jù)集與模型訓(xùn)練的原始數(shù)據(jù)集有著較大差異,所以只使用模型前一部分層來(lái)做特征提取,而更深的層則與新加的特征分類器一起訓(xùn)練。
基于ResNet網(wǎng)絡(luò)設(shè)計(jì)了MDF-ResNet模型,結(jié)構(gòu)如圖4所示。
圖4 神經(jīng)網(wǎng)絡(luò)模型示意圖
MDF-ResNet模型包含36個(gè)卷積層,Log-mel能譜圖特征與手工設(shè)計(jì)特征的兩個(gè)分支上各有17個(gè)卷積層。這些卷積層的前后層分別是批量標(biāo)準(zhǔn)化層和采用了relu激活函數(shù)的激活層;其中,將批量標(biāo)準(zhǔn)化層scale和center參數(shù)設(shè)為False,起到了正則化的作用,防止模型過(guò)擬合,relu激活層對(duì)卷積層輸出的結(jié)果進(jìn)行非線性變化,修正網(wǎng)絡(luò)中的線性輸出。
兩種特征分支結(jié)束后,通過(guò)Add層的add操作將兩個(gè)分支的輸出數(shù)據(jù)結(jié)合,結(jié)合后的特征經(jīng)過(guò)一個(gè)分類器來(lái)對(duì)特征進(jìn)行最后的分類。分類器由Conv2D層、批量標(biāo)準(zhǔn)化層、全局池化層和激活層組成,這里Conv2D層使用了1×1的卷積核大小,第二個(gè)Conv2D層的卷積核個(gè)數(shù)設(shè)置為聲目標(biāo)分類數(shù)量,再經(jīng)過(guò)全局池化層展開(kāi)成一維向量數(shù)據(jù)后,由采用了Softmax函數(shù)的激活層對(duì)每個(gè)通道的貢獻(xiàn)進(jìn)行加權(quán),實(shí)現(xiàn)聲目標(biāo)的分類。
本實(shí)驗(yàn)所采用的硬件平臺(tái)處理器為Intel (R) Core (TM) i7-7700@2.80 GHz,顯卡為NVIDIA Tesla V100,使用了并行計(jì)算架構(gòu)CUDA對(duì)深度學(xué)習(xí)處理流程進(jìn)行加速。
為了驗(yàn)證所提出的模型,本文中建立了一個(gè)聲學(xué)信號(hào)硬件采集系統(tǒng)[17]來(lái)采集多個(gè)聲源信號(hào)。采集系統(tǒng)由16位分辨率16輸入數(shù)字采集設(shè)備SPECTRUM DN2.592-16、16個(gè)駐極體電容話筒Micw i436組成的球形陣列和定向揚(yáng)聲器組成,采集參數(shù)由筆記本電腦控制程序進(jìn)行調(diào)整。我們采用48 kHz采樣率采集了8個(gè)不同聲源的聲信號(hào)數(shù)據(jù),每個(gè)聲源包含1 000個(gè)樣本,共8 000個(gè)樣本數(shù)據(jù)集。每個(gè)樣本持續(xù)10秒。
利用librosa包中的log-mel方法對(duì)聲音數(shù)據(jù)作特征預(yù)提取,并使用二階差分對(duì)預(yù)提取特征進(jìn)行處理增加聲信號(hào)動(dòng)態(tài)信息。最終,經(jīng)過(guò)預(yù)處理后得到數(shù)據(jù)集為(8 000,128,461,6)。使用2.2中方法對(duì)聲音數(shù)據(jù)提取手工設(shè)計(jì)特征,得到數(shù)據(jù)大小為(8 000,500,400,2)。對(duì)8 000個(gè)樣本對(duì)應(yīng)的分類標(biāo)簽轉(zhuǎn)換成one-hot編碼的形式。數(shù)據(jù)集的訓(xùn)練集和測(cè)試集的劃分比例為7∶3。
在訓(xùn)練中,批處理量為32,損失函數(shù)使用交叉熵?fù)p失函數(shù)categorical_crossentropy,優(yōu)化器使用隨機(jī)梯度下降優(yōu)化器SGD,epoch次數(shù)設(shè)為500次,使用學(xué)習(xí)率重置方法,在3、8、18、38、128和256次迭代后將學(xué)習(xí)率重置為最大值0.1,然后按照余弦函數(shù)方式衰減到0.000 01,這種方法可以提高分類的準(zhǔn)確性。
為了對(duì)比驗(yàn)證MDF-ResNet模型的性能,使用了Densenet121,ResNet101和Inception v4這3種深度學(xué)習(xí)網(wǎng)絡(luò)結(jié)構(gòu)在log-mel聲譜圖上同樣訓(xùn)練了500次迭代。
圖5、6中所示是MDF-ResNet,Densenet121,ResNet101和Inception v4對(duì)應(yīng)的訓(xùn)練準(zhǔn)確性和損失。表2詳細(xì)列出了每個(gè)模型的性能,表中顯示了模型在測(cè)試集上的分類表現(xiàn)??梢钥闯觯琈DF-ResNet首先達(dá)到收斂,可以將其損失降低到非常低,且最終達(dá)到的識(shí)別精度是最高的。
圖5 訓(xùn)練損失值曲線圖
圖6 訓(xùn)練精準(zhǔn)度曲線圖
表2 各模型的訓(xùn)練情況和測(cè)試精度
最后,MDF-ResNet在測(cè)試集上的識(shí)別準(zhǔn)確性為87.6%,如圖7所示,橫軸為網(wǎng)絡(luò)預(yù)測(cè)結(jié)果,縱軸為真實(shí)標(biāo)簽,在各分類上的精度從81.82%~92.93%之間。這表明MDF-ResNet可以完成有效而準(zhǔn)確的聲信號(hào)分類和識(shí)別。
圖7 訓(xùn)練損失值曲線圖
為了研究不同訓(xùn)練數(shù)據(jù)量下的模型性能,本文從8 000個(gè)樣本數(shù)據(jù)集中創(chuàng)建了1 000、1 500,…,4 500、5 000,…,7 500和8 000個(gè)訓(xùn)練樣本的數(shù)據(jù)子集。在不同樣本量上以同樣的訓(xùn)練方式所訓(xùn)練的不同模型的精度如圖8所示。
圖8 不同數(shù)量訓(xùn)練樣本上訓(xùn)練不同模型的對(duì)比實(shí)驗(yàn)
圖8的結(jié)果表明,與其他幾種模型相比,MDF-ResNet在每個(gè)數(shù)據(jù)子集中表現(xiàn)更好,并且在較小的樣本數(shù)據(jù)子集中(例如1 000、2 000、3 000、4 000個(gè)樣本)表現(xiàn)出更好的識(shí)別能力。手工設(shè)計(jì)特征的加入,使得該模型只需少量訓(xùn)練樣本即可實(shí)現(xiàn)較高的識(shí)別精度。
本文針對(duì)聲源目標(biāo)分類中小樣本訓(xùn)練時(shí)分類模型性能不佳的問(wèn)題,提出了一種基于深度學(xué)習(xí)的小樣本聲目標(biāo)識(shí)別方法——MDF-ResNet模型。該模型在log-mel聲譜圖特征提取之外,增加了手工設(shè)計(jì)特征作為模型的特征補(bǔ)充,提高了小樣本數(shù)據(jù)的樣本復(fù)雜性。該模型在搭建的聲信號(hào)采集系統(tǒng)獲取到的8種聲源數(shù)據(jù)集上進(jìn)行了實(shí)驗(yàn)驗(yàn)證,即使在少量訓(xùn)練樣本上,MDF-ResNet仍然能夠?qū)崿F(xiàn)良好的識(shí)別精度。在處理聲信號(hào)分類中樣本復(fù)雜性低的問(wèn)題時(shí),MDF-ResNet在準(zhǔn)確性上有顯著的提高。在聲源探測(cè)領(lǐng)域具有一定的工程應(yīng)用價(jià)值。
該分類模型能夠靈活勝任基于大型和小型數(shù)據(jù)庫(kù)的訓(xùn)練任務(wù)。目前的模型結(jié)合了人工設(shè)計(jì)特征,可在樣本復(fù)雜性低的情況下訓(xùn)練,降低了對(duì)樣本量的要求。作為未來(lái)的工作,該算法還可推廣到其它應(yīng)用領(lǐng)域,如醫(yī)學(xué)圖像識(shí)別、人臉識(shí)別與人臉偽裝、人臉匹配與視頻、人臉?biāo)賹?xiě)與照片匹配等。