鄧 晉,潘安迪,肖 川,劉姍琪
1(復(fù)旦大學(xué) 計(jì)算機(jī)科學(xué)技術(shù)學(xué)院,上海 201203)
2(中國電子科技集團(tuán)公司第二十三研究所,上海 200437)
水聲目標(biāo)識別技術(shù)是一種利用聲吶接收的被動目標(biāo)輻射噪聲、主動目標(biāo)回波以及其他傳感器信息提取目標(biāo)特征并判別目標(biāo)類型或艦型的信息處理技術(shù)[1].水聲目標(biāo)識別包括聲吶技術(shù)、環(huán)境感知計(jì)算、監(jiān)聽技術(shù)[2]等.在水聲領(lǐng)域,目標(biāo)分類與識別是國際公認(rèn)的難題,目前尚無有效的方法實(shí)現(xiàn)水聲目標(biāo)的準(zhǔn)確識別.海水是聲音在水下傳播的介質(zhì),但海水的分層特性、時(shí)變特性以及區(qū)域不均勻性,使聲音在船舶過程中受信道畸變、混響和雜波的影響,導(dǎo)致信號強(qiáng)度衰減,特征被掩蓋,進(jìn)而給水聲目標(biāo)特征識別和分類帶來很大的挑戰(zhàn).遠(yuǎn)航、風(fēng)、波、洋湍流提高了海洋環(huán)境中噪聲水平,重要信號被遮蔽,使目標(biāo)信號的探測和識別性能嚴(yán)重下降[3].因此,如何有效探測和估計(jì)長距離低信噪比下的目標(biāo)、以及從船舶輻射噪聲信號中提取特征[4],是水下定位、識別和跟蹤的迫切問題,實(shí)際上,水聲目標(biāo)識別一直是國際公認(rèn)的難題.
本文的組織結(jié)構(gòu)如下:第1 節(jié)介紹基于傳統(tǒng)聲學(xué)特征水聲目標(biāo)識別概況;第2 節(jié)介紹基于遷移學(xué)習(xí)的水聲目標(biāo)識別背景及方法;第3 節(jié)實(shí)驗(yàn)結(jié)果及分析;第4 節(jié)文章總結(jié)及未來工作展望.
水中目標(biāo)輻射噪聲組成復(fù)雜,主要聲源包括:機(jī)械噪聲、螺旋槳噪聲和水動力噪聲[5].一般的水聲目標(biāo)識別都是基于人工特征的,通常包括:時(shí)頻特征[2,6,7]、線譜[4,8–11]、DEMON 譜[5]等等.在人工提取特征后使用統(tǒng)計(jì)學(xué)模型、模式分類或?qū)<蚁到y(tǒng)等方法進(jìn)行分類識別.算法1 為基于傳統(tǒng)聲學(xué)特征的水聲目標(biāo)識別算法.
算法1.基于傳統(tǒng)聲學(xué)特征的水聲目標(biāo)識別算法1)預(yù)處理,將水聽器陣列采集到的聲吶信號通過信號增強(qiáng),提高信噪比.2)特征提取,提取幀級別的時(shí)域或頻域信息,諸如:線譜分布、連續(xù)譜能量譜分布、特定頻段線譜數(shù)量、LOFAR 譜和DEMON 等.3)分類識別,基于水聲目標(biāo)特征的分類識別方法主要有統(tǒng)計(jì)分類、模型匹配、神經(jīng)網(wǎng)絡(luò)和專家系統(tǒng)等方法.
在過去的20年中,通過發(fā)展先進(jìn)的水聲信號處理技術(shù),對艦船輻射噪聲的特征提取方式進(jìn)行了廣泛多樣的探索[12].這些方法里面比較經(jīng)典的有,利用振蕩性質(zhì),Duffing 振子[10]和隨機(jī)共振理論[11]檢測船舶輻射噪聲的線譜.由于音頻信號的非平穩(wěn)特性,時(shí)頻分析技術(shù)更適合于非平穩(wěn)信號,這種方法的優(yōu)點(diǎn)是能結(jié)合時(shí)域中的非平穩(wěn)信息和頻域信息,例如短時(shí)傅立葉變換(STFT)[6,7],小波變換(WT)[6,13,14]和Hilbert-Huang 變換(HHT)[15,16].考慮到船舶輻射噪聲的非線性特性,許多方法被用來提取非線性特征,包括相空間重構(gòu)[17,18],基于信號調(diào)制的DEMON 譜分析[5],基于序貫檢測思想的LOFAR 分析[19],基于分形的方法[20,21],和復(fù)雜性度量[22]等.
在機(jī)器學(xué)習(xí)領(lǐng)域,遷移學(xué)習(xí)[20]被定義為針對一個(gè)有標(biāo)記的源域和目標(biāo)域這兩個(gè)領(lǐng)域的數(shù)據(jù)分布P(xs)和P(xt)不同,即P(xs)≠P(xt),遷移學(xué)習(xí)的目的就是要借助Ds的知識,來學(xué)習(xí)目標(biāo)域Dt的知識(標(biāo)簽).通常有算法2 所示的4 種方法實(shí)現(xiàn)遷移學(xué)習(xí).
算法2.遷移學(xué)習(xí)的4 種基本方法1)基于樣本遷移,根據(jù)一定的權(quán)重生成規(guī)則,對數(shù)據(jù)樣本進(jìn)行重用.2)基于特征遷移,通過特征變幻的方法相互遷移,來減少源域和目標(biāo)域之間的差距;或者將源域和目標(biāo)域的數(shù)據(jù)特征變換到統(tǒng)一特征空間中,然后利用傳統(tǒng)機(jī)器學(xué)習(xí)方法進(jìn)行識別.3)基于關(guān)系遷移,關(guān)注源域和目標(biāo)域的樣本之間的關(guān)系,挖掘不同領(lǐng)域之間的相似性.4)基于模型遷移,從源域和目標(biāo)域中找到他們之間共享的參數(shù),以實(shí)現(xiàn)知識的遷移.
遷移學(xué)習(xí)的常見動機(jī)是目標(biāo)任務(wù)中缺少足夠的訓(xùn)練數(shù)據(jù),當(dāng)使用神經(jīng)網(wǎng)絡(luò)時(shí),通過共享預(yù)訓(xùn)練網(wǎng)絡(luò)的權(quán)重參數(shù),可以顯著減少目標(biāo)任務(wù)模型中需要訓(xùn)練參數(shù)的數(shù)量,從而以較小的數(shù)據(jù)集實(shí)現(xiàn)有效的學(xué)習(xí)[23].一個(gè)流行的例子是在計(jì)算機(jī)視覺中遷移學(xué)習(xí)用于圖像語義的分割,該網(wǎng)絡(luò)可以利用在圖像分類[24]任務(wù)中學(xué)習(xí)到的諸如圖像基本形狀等豐富的信息并進(jìn)一步用于圖像分割任務(wù).
針對圖像任務(wù),Visual Geometry Group (VGG)[25]模型是由Google 開發(fā)和維護(hù)的圖像分類模型,VGG16是最好的圖像分類模型之一,它經(jīng)過1000 種物體的訓(xùn)練,因此可以識別1000 種物體.
針對音頻任務(wù),數(shù)據(jù)集AudioSet[26]是基于人們上傳到Y(jié)ouTube 的大量數(shù)據(jù)及所提供的標(biāo)簽.其包含567 個(gè)不同類型的音頻數(shù)據(jù),總時(shí)長約567 小時(shí).Google已經(jīng)發(fā)布了基于該數(shù)據(jù)集訓(xùn)練的模型VGGish[27],它在網(wǎng)絡(luò)的較低層處理頻譜圖,并在較高層時(shí)使用多個(gè)卷積層和完全連接層獲取深層表征用于后續(xù)分類.
深度學(xué)習(xí)技術(shù)可以從原始數(shù)據(jù)中學(xué)習(xí)特征,在提取信號樣本的固有特征方面具有優(yōu)勢,特別是在復(fù)雜環(huán)境下,這種特征提取上面的優(yōu)勢相比傳統(tǒng)特征提取方法更為突出.遷移學(xué)習(xí)可以將在學(xué)習(xí)一項(xiàng)任務(wù)時(shí)獲得相應(yīng)的知識用來解決相關(guān)的任務(wù),通常可以將源任務(wù)的部分參數(shù)用于目標(biāo)任務(wù).受此啟發(fā),基于頻譜與圖片的二維相似性,我們提出了兩類遷移學(xué)習(xí)方案,一是分別利用基于ImageNet[28]及AudioSet 分別預(yù)訓(xùn)練的模型作為特征提取器,將學(xué)習(xí)到深度特征進(jìn)一步用于分類;二是對上述模型進(jìn)行微調(diào).
圖1是基于遷移學(xué)習(xí)的水下聲源識別算法的整體流程,主要分為3 個(gè)部分:(1)信號預(yù)處理,對輸入信號進(jìn)行分段規(guī)整及傅里葉變換;(2)進(jìn)行深層特征提取并選取相應(yīng)分類器進(jìn)行分類;(3)對相應(yīng)預(yù)訓(xùn)練網(wǎng)絡(luò)進(jìn)行微調(diào).
圖1 算法整體流程
如圖2(a)所示,艦船輻射噪聲能量主要集中分布于8000 Hz 以下的低頻部分[29],基于這種能量分布規(guī)律,為了更好地刻畫低頻成分的分布規(guī)律,我們借鑒了語音識別中的梅爾頻譜.其中,目標(biāo)音頻信號采樣率為52 734 Hz,使用具有50%重疊的90 ms 漢明窗加窗函數(shù),輸出的梅爾頻譜存儲為3×224×224 的圖片格式,以便后續(xù)操作后續(xù)用于VGG16 網(wǎng)絡(luò)的輸入.此外,VGGish預(yù)訓(xùn)練網(wǎng)絡(luò)的輸入采樣頻率為16 000 Hz,我們對實(shí)驗(yàn)音頻數(shù)據(jù)進(jìn)行了下采樣.窗口長度(STFTlength)為25 ms,重疊長度(Hopsize)為10 ms,輸出頻譜為96×64,嵌入(Embedding)編碼大小為128.如圖2所示,圖2(a)表示音頻信號的功率譜,圖2(b)表示音頻信號的經(jīng)傅里葉變換后的線性功率譜,圖2(c)表示音頻信號的梅爾頻譜.
圖2 VGG 網(wǎng)絡(luò)預(yù)處理及譜示意圖
如圖3為使用預(yù)訓(xùn)練網(wǎng)絡(luò)特征提取器的遷移學(xué)習(xí)框架.本文分別使用基于音頻預(yù)訓(xùn)練的VGGish,以及基于圖像預(yù)訓(xùn)練的VGG16 網(wǎng)絡(luò)分別作為特征提取器.分別將網(wǎng)絡(luò)輸出層的輸出作為特征向量,其特征向量長度分別為128 和4096.
圖3 使用預(yù)訓(xùn)練網(wǎng)絡(luò)作為特征提取器
本文使用scikit-learn[30]的SVM 和kNN 的算法實(shí)現(xiàn),以及開源ELM 的算法實(shí)現(xiàn),分別進(jìn)行實(shí)驗(yàn)并對比VGGish 和VGG16 抽取的深度特征向量在不同分類器(SVM,kNN 和ELM)中的識別性能.
(1)SVM
支持向量機(jī)(Suport Vector Machine,SVM)[31]是在分類與回歸分析中分析數(shù)據(jù)的監(jiān)督式學(xué)習(xí)模型與相關(guān)的學(xué)習(xí)算法.原始數(shù)據(jù)是在有限維空間中分布的,但一般區(qū)分的集合在該空間中往往線性不可分.為此,SVM將原有限維空間映射到維數(shù)高更高的空間中,并在高維或無限維空間中構(gòu)造超平面或超平面集合用以劃分不同的集合.為了保持計(jì)算負(fù)荷合理,人們選擇適合該問題的核函數(shù)k(x,y)來定義SVM 方案使用的映射,以確保用原始空間中的變量可以很容易計(jì)算點(diǎn)積.在本文中,我們分別采用線性核函數(shù)(LinearSVM)和高斯核函數(shù)作為支持向量機(jī)的核函數(shù),高斯核函數(shù)表示如式(1),其中 σ是帶寬.
(2)kNN
k 最近鄰(k-Nearest Neighbor,kNN)[32]分類算法是是一種用于分類和回歸的非參數(shù)統(tǒng)計(jì)方法.在這兩種情況下,輸入包含特征空間(Feature Space)中的k個(gè)最接近的訓(xùn)練樣本.在kNN 分類中,輸出是一個(gè)分類族群.一個(gè)對象的分類由其鄰居的“多數(shù)表決”確定,k個(gè)最近鄰居(k為正整數(shù),通常較小)中最常見的分類決定了賦予該對象的類別.若k=1,則該對象的類別直接由最近的一個(gè)節(jié)點(diǎn)賦予.kNN 是基于實(shí)例(Instancebased)的學(xué)習(xí)方法,kNN 算法沒有訓(xùn)練的步驟,因?yàn)閿?shù)據(jù)集就是模型本身,在有新樣本輸入時(shí),將測量樣本與訓(xùn)練集中每個(gè)點(diǎn)的距離,選擇k個(gè)最接近的點(diǎn)作為k最近鄰,新樣本的類別即為k個(gè)點(diǎn)中數(shù)量最多的類別,可以描述為以下公式:
其中,Ci為K 近鄰點(diǎn)中類別為i的點(diǎn)的個(gè)數(shù),k和點(diǎn)之間的距離度量方式是可選的參數(shù),經(jīng)過實(shí)驗(yàn),本選取歐式距離作為度量,k取值為5.
(3)ELM
極限學(xué)習(xí)機(jī)(Extreme Learning Machine,ELM)[33]實(shí)際上也屬于前饋神經(jīng)網(wǎng)絡(luò),極限學(xué)習(xí)機(jī)的出現(xiàn)主要是為了解決神經(jīng)網(wǎng)絡(luò)訓(xùn)練訓(xùn)練速度慢的問題.傳統(tǒng)的前饋神經(jīng)網(wǎng)絡(luò)(如BP 神經(jīng)網(wǎng)絡(luò))需要人為設(shè)置大量的網(wǎng)絡(luò)訓(xùn)練參數(shù),此算法卻只需要設(shè)定網(wǎng)絡(luò)的結(jié)構(gòu),而不需設(shè)置其他參數(shù),因此具有簡單易用的特點(diǎn).其輸入層到隱藏層的權(quán)值是一次隨機(jī)確定的,算法執(zhí)行過程中不需要再調(diào)整,而隱藏層到輸出層的權(quán)值只需解一個(gè)線性方程組來確定,因此可以提升計(jì)算速度.
極限學(xué)習(xí)機(jī)原理如下:其中W1是輸入向量到隱藏節(jié)點(diǎn)層的權(quán)重矩陣,σ是激活函數(shù),W2是隱藏節(jié)點(diǎn)層到輸出向量的權(quán)重矩陣.
ELM 對超參數(shù)敏感,我們對其進(jìn)行了參數(shù)搜索,并使用ReLU 作為非線性激活函數(shù).其中,ELM 的主要超參數(shù)是隱藏的單元數(shù):100、250、500、1200、1800、2500.本文使用開源ELM 實(shí)現(xiàn),該代碼可從https://github.com/zygmuntz/Python-ELM 獲取.
如圖4所示,實(shí)驗(yàn)選擇了基于VGG 與訓(xùn)練的VGG16網(wǎng)絡(luò)進(jìn)行微調(diào),其中VGG16 網(wǎng)絡(luò)的輸入為[3,224,224],VGGISH 的輸入為[96,64],本文使用Python 的librosa擴(kuò)展包計(jì)算音頻的梅爾頻譜圖作為網(wǎng)絡(luò)的輸入.考慮到實(shí)驗(yàn)所用數(shù)據(jù)集音頻時(shí)長,我們無法微調(diào)整個(gè)網(wǎng)絡(luò),因此在實(shí)驗(yàn)中只微調(diào)了嵌入層(Embeddinglayers),并使用一些正則化技術(shù)訓(xùn)練一個(gè)簡單的多層感知機(jī)(MLP,Multiayer Perceptron),使用ReLU 激活函數(shù),Batch Norm 正則化和Dropout 的前連接隱藏層,最終輸出為5 類.
圖4 使用音頻頻譜對VGG16 預(yù)訓(xùn)練網(wǎng)絡(luò)進(jìn)行微調(diào)
圖5 A~E 五類音頻波形及梅爾頻譜
本文使用的船只噪聲數(shù)據(jù)來自2012年至2013年間在西班牙海岸不同地區(qū)錄制的ShipsEar[29]數(shù)據(jù)集.該數(shù)據(jù)集共有在15 s 到10 分鐘以內(nèi)的11 種艦船類型共計(jì)90 條記錄,按照數(shù)據(jù)集原文的標(biāo)注,根據(jù)艦船種類的可以將它們合并為A、B、C、D 各4 個(gè)大類,以及E 類1 個(gè)背景噪聲,如圖5所示為選取5 個(gè)類的音頻波形及其梅爾頻譜實(shí)例,其中,橫軸為時(shí)間,縱軸分別為振幅和梅爾頻率.詳細(xì)劃分如表1所示.
表1 ShipsEar 數(shù)據(jù)集詳情
我們將模型預(yù)測值與真實(shí)標(biāo)簽進(jìn)行比較,獲取測試中所有樣例的真正例(TP),假正例(FP),真負(fù)例(TN)和假負(fù)例(FN)個(gè)數(shù).并針對每一個(gè)實(shí)驗(yàn)結(jié)果分別計(jì)算準(zhǔn)確率、召回率及F1 函數(shù),用以全面而準(zhǔn)確地度量來實(shí)驗(yàn)結(jié)果.其中,準(zhǔn)確率是所有正確被檢索的結(jié)果(TP)占所有實(shí)際被檢索到的(TP+FP)的比例;召回率是所有正確被檢索的結(jié)果(TP)占所有應(yīng)該檢索到的結(jié)果(TP+FN)的比例;F1 是準(zhǔn)確率和召回率的調(diào)和平均數(shù).這些指標(biāo)可以用以下公式表示:
本文選取當(dāng)前在ShipEar 數(shù)據(jù)上使用神經(jīng)網(wǎng)絡(luò)取得的最好分類結(jié)果的論文:基于深度玻爾茲曼機(jī)的水聲目標(biāo)識別[3]作為對照文章.該方法是一種可通過輸入數(shù)據(jù)集學(xué)習(xí)概率分布的隨機(jī)生成神經(jīng)網(wǎng)絡(luò).
(1)基于預(yù)訓(xùn)練網(wǎng)絡(luò)特征提取的識別效果
如表2所示,將VGGish 及VGG16 分別直接作為特征提取器,得到的特征向量分別作為不同分類器的輸入.在使用VGG16 的特征向量與最近鄰分類算法kNN 組合時(shí),取得了最好的分類結(jié)果,平均最優(yōu)準(zhǔn)確率為90.26%,與當(dāng)前最好的結(jié)果DBM[3]只差了不到0.5 個(gè)百分點(diǎn).此外,VGGish 特征向量在與支持向量機(jī)SVM組合時(shí)也取得了準(zhǔn)確率為87.78%比較理想的分類結(jié)果.
表2 不同訓(xùn)練網(wǎng)絡(luò)特征向量與不同分類器的性能指標(biāo)
(2)基于微調(diào)預(yù)訓(xùn)練網(wǎng)絡(luò)的識別效果
本文將基于音頻數(shù)據(jù)集預(yù)訓(xùn)練的VGGish 及基于圖片數(shù)據(jù)集預(yù)訓(xùn)練的VGG16 分別去掉原始Softmax層之后,加入不同的全連接層和新的Softmax 輸出層,如表3所示,在VGGish 上取得的最優(yōu)準(zhǔn)確率為89.22%,在VGG16 上最優(yōu)準(zhǔn)確率為92.48%.相對當(dāng)前最優(yōu)的DBM 網(wǎng)絡(luò)的90.70%,本文提出的算法有比較明顯的性能提升.
表3 微調(diào)VGGISH、VGG16 及DBM 網(wǎng)絡(luò)性能指標(biāo)
如圖6所示,對于添加一個(gè)神經(jīng)元個(gè)數(shù)為1024 隱層的VGG16 網(wǎng)絡(luò),當(dāng)使用對數(shù)損失函數(shù)時(shí),損失函數(shù)隨訓(xùn)練次數(shù)的變化,在大約200 次迭代后即收斂,相比DBM[3]的收斂速度大約提升了5 倍.
圖6 VGG16 在訓(xùn)練集上的錯誤率
如圖7所示,橫軸為真實(shí)值,縱軸為預(yù)測值,可以看出,針對類別E,即環(huán)境噪聲的平均預(yù)測準(zhǔn)確率為98%左右,且不存在漏判,即沒有識別出將艦船噪聲并當(dāng)做環(huán)境音;算法對于針對A、B、C、D 四類艦船噪聲的識別準(zhǔn)確率分別為90%、83%、92%、93%.其中,針對B 類相對較低的準(zhǔn)確率,僅為83%,通過對ShipsEar 數(shù)據(jù)集的分析,我們認(rèn)為是B 類數(shù)據(jù)的量相對于A、C、D 類原始數(shù)據(jù)的相對不均衡,這個(gè)問題可以通過進(jìn)一步擴(kuò)充數(shù)據(jù)集得到避免.總的來說,我們提出的基于遷移學(xué)習(xí)的水聲目標(biāo)識別算法,多次試驗(yàn)平均最優(yōu)準(zhǔn)確率為92.48%,取得了當(dāng)前最好的分類效果,在算法訓(xùn)練和數(shù)據(jù)處理上也有比較明顯的優(yōu)勢.
在水聲目標(biāo)識別受限于海洋環(huán)境的復(fù)雜性,而難以提取有效的目標(biāo)特征并進(jìn)行分類的背景下,本文首次采用基于遷移學(xué)習(xí)的水聲目標(biāo)識別方法,分別采用預(yù)訓(xùn)練網(wǎng)絡(luò)特征提取和微調(diào)兩種遷移學(xué)習(xí)方法,并應(yīng)用ShipsEar 數(shù)據(jù)集,進(jìn)行了算法驗(yàn)證.結(jié)果表明,與當(dāng)前最好的DBM 分類算法相比,我們?nèi)〉昧?2.48%的最好平均準(zhǔn)確率.總的來說,通過實(shí)驗(yàn)我們驗(yàn)證了遷移學(xué)習(xí)應(yīng)用于水聲目標(biāo)分類中的可行性,并且遷移學(xué)習(xí)可以解決在音頻領(lǐng)域的數(shù)據(jù)稀疏問題.此外,這種思路也許可以被用于很多不同的音頻任務(wù),具有廣闊的應(yīng)用前景.
圖7 5 個(gè)類的分類混淆矩陣