張博軒,趙天白,常振興,蔣翔宇,王少博
(1.中國電子科技集團(tuán)公司 第54研究所,石家莊 050081;2.國網(wǎng)電力空間技術(shù)有限公司,北京 102213;3.電子科技大學(xué) 信息與通信工程學(xué)院,成都 610731)
水聲目標(biāo)識別技術(shù)是當(dāng)今世界各國研究的熱點和難點,隨著新型低噪聲推進(jìn)器的研發(fā)和應(yīng)用,如何在復(fù)雜的海洋環(huán)境中精確發(fā)現(xiàn)、定位和識別水聲目標(biāo)是各國海軍部門都高度重視的問題。傳統(tǒng)的水聲目標(biāo)識別方法主要利用經(jīng)典信號處理方法提取目標(biāo)特征并進(jìn)行匹配,以此為依據(jù)對目標(biāo)身份進(jìn)行分類[1]。這類方法受人為經(jīng)驗影響較大,自適應(yīng)能力差,在復(fù)雜多變的海洋環(huán)境中識別準(zhǔn)確率較低。因此,針對水中艦船目標(biāo)機械輻射噪聲信號的人不在回路的識別成為水聲信號處理發(fā)展的熱點,尤其是如何將基于人工智能方法研發(fā)的目標(biāo)識別算法模型從實驗室擴展至實際環(huán)境中并依舊取得良好、穩(wěn)定的性能,是此類方法研究過程中的重中之重。
將人工智能技術(shù)引入水聲目標(biāo)識別系統(tǒng)這一思路尚未取得突破性進(jìn)展,無法在海洋實戰(zhàn)中實現(xiàn)應(yīng)用賦能,其根本原因是深度神經(jīng)網(wǎng)絡(luò)模型若想達(dá)到對數(shù)據(jù)的高效、準(zhǔn)確的智能化處理,絕離不開用大量的數(shù)據(jù)來訓(xùn)練模型參數(shù)。但是,由于絕大部分高價值水聲目標(biāo)現(xiàn)存數(shù)據(jù)稀少,敏感目標(biāo)難以采集,導(dǎo)致可供訓(xùn)練的聲學(xué)數(shù)據(jù)樣本數(shù)據(jù)嚴(yán)重不足,從而影響了該方法的識別效率。傳統(tǒng)的水聲目標(biāo)識別方法不需要大量的聲吶信號數(shù)據(jù),如線譜分析法、匹配濾波法等。雖然這些方法在仿真中都取得了較好的識別效果,但它們對聲吶的信噪比或先驗因素要求較高,對不同類型的聲信號的辨析能力相差較大且檢測速度較慢,難以應(yīng)用于實時且噪聲較復(fù)雜的場景。
在有限樣本閉集的前提下,文獻(xiàn)[2]等采用支持向量機(SVM,support vector machine)對鯨魚聲數(shù)據(jù)集進(jìn)行處理,達(dá)到了94.5%的多類識別準(zhǔn)確率;文獻(xiàn)[3]基于SVM提出差分進(jìn)化粒子群混合算法,調(diào)優(yōu)了核函數(shù)和懲罰項參數(shù),以識別不同水下目標(biāo)的輻射噪聲;文獻(xiàn)[4]團(tuán)隊提出梯度提升機(AdaBoost)和SVM混合模型,對水面艦船輻射噪聲目標(biāo)信號進(jìn)行識別,在樣本和特征數(shù)量減少50%的情況下,取得相同的識別準(zhǔn)確率;然而,這些方法在面對樣本分布不均衡或總體樣本較少的情況時,性能下降嚴(yán)重,而這兩點是在真實的海洋艦船機械輻射噪聲信號偵收過程中普遍存在的問題。因此,在有效信號采集較少的情況下,如何讓水聲目標(biāo)探測與識別裝備保持較高的分類準(zhǔn)確率仍是一個極具挑戰(zhàn)性的問題。
針對這一問題,在深度學(xué)習(xí)領(lǐng)域已有相關(guān)思路,系主要通過對數(shù)據(jù)進(jìn)行變換、生成等操作來解決樣本缺失問題。文獻(xiàn)[5]提出了生成對抗網(wǎng)絡(luò)(GAN,generative adversarial network),將源域映射到目標(biāo)域;文獻(xiàn)[6]將特征提取器和分類器分別作為標(biāo)準(zhǔn)GAN(standard generative adversarial network)[7]、最小二乘GAN[8](least-squares generative adversarial network)和相對GAN[9](relativistic generative adversarial networks)中的生成器和判別器,并用GAN的基本訓(xùn)練方式引導(dǎo)其交替更新參數(shù),從而使各個GAN變體模型學(xué)習(xí)到源域目標(biāo)域指定特征;文獻(xiàn)[10]設(shè)計了部分共享參數(shù)的特征提取器,以獲得聲紋特性的更好表征。文獻(xiàn)[11]則采用循環(huán)一致對抗生成對抗網(wǎng)絡(luò)(CycleGAN,cycle generative adversarial networks)學(xué)習(xí)源域與目標(biāo)域無標(biāo)簽數(shù)據(jù)特征之間的映射,將源域帶標(biāo)簽數(shù)據(jù)轉(zhuǎn)化至目標(biāo)域進(jìn)行模型訓(xùn)練,從而保證目標(biāo)域聲紋數(shù)據(jù)能夠被準(zhǔn)確識別[12]。
基于上述分析,在目標(biāo)的數(shù)據(jù)樣本集總量不足或分布不均時,如何利用先驗信息或現(xiàn)有的少量樣本生成大量的、有效的充足樣本集以輔助模型訓(xùn)練,從而提升識別模型的穩(wěn)定和泛化性能,是制約深度學(xué)習(xí)賦能于水聲目標(biāo)識別系統(tǒng)的瓶頸問題,也是深度神經(jīng)網(wǎng)絡(luò)模型在水聲目標(biāo)識別問題中邁向?qū)嶋H應(yīng)用的必經(jīng)之路。
為解決該問題,本文提出一種基于樣本擴充網(wǎng)絡(luò)的水聲目標(biāo)分類模型優(yōu)化算法。該方法首先對實際偵收的水聲信號進(jìn)行預(yù)處理,提取其梅爾倒譜系數(shù)和時頻譜圖后,利用基于CycleGAN的樣本擴充網(wǎng)絡(luò)和少量的真實數(shù)據(jù)實現(xiàn)樣本生成,加入后續(xù)的深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練中,從而降低后續(xù)訓(xùn)練的迭代次數(shù)和收斂難度,并提升模型分類識別的準(zhǔn)確率、穩(wěn)定性與泛化能力。實驗表明該方法在聲吶信號樣本較少的情況下,通過網(wǎng)絡(luò)進(jìn)行樣本擴充,有效提高了神經(jīng)網(wǎng)絡(luò)模型的識別準(zhǔn)確度,收斂速度和穩(wěn)定性[13]。
CycleGAN是GAN網(wǎng)絡(luò)的一個重要分支,通過在源域目標(biāo)域互相映射,生成更符合需求的樣本。CycleGAN的原理從本質(zhì)上分析是利用兩個相互鏡像對稱的環(huán)形生成對抗網(wǎng)絡(luò)結(jié)構(gòu),通過在源域、目標(biāo)域的4個判別器和兩個生成器中建立映射,以實現(xiàn)樣本的傳遞和循環(huán)。并對判別器進(jìn)行針對性設(shè)計,以適應(yīng)環(huán)形結(jié)構(gòu)帶來的改變。
具體地,該網(wǎng)絡(luò)由兩個生成器和4個判別器組成,多個模塊需要不同的約束條件來訓(xùn)練參數(shù)。其損失函數(shù)如下:
(1)
其中:前兩項是不同的對抗損失,第三項為身份映射損失,而第四項為循環(huán)一致?lián)p失。對抗損失是基礎(chǔ)的GAN損失,在對損失值進(jìn)行極大極小化的博弈過程中提升生成器的生成能力,以得到符合需要的生成樣本。循環(huán)一致性損失使網(wǎng)絡(luò)循環(huán)生成樣本與原始輸入樣本的特征保持一致,從而保證在兩個生成器的計算過程中保留全部海況信息以及船只信息。身份保持損失與循環(huán)一致性損失相似,均用以訓(xùn)練生成器。在訓(xùn)練過程中,需將這四類損失按權(quán)重相結(jié)合作為最終優(yōu)化函數(shù),確保模型向目標(biāo)方向?qū)W習(xí)并逐步收斂。
為保證生成樣本的多樣性和更好的訓(xùn)練網(wǎng)絡(luò),本文通過加入掩碼來訓(xùn)練CycleGAN。在加入掩碼后,CycleGAN的損失函數(shù)需要更新為:
(2)
(3)
(4)
(5)
以上損失函數(shù)均為原樣本與掩碼m點乘得到。
本文基于CycleGAN搭建了如圖1所示的樣本擴充網(wǎng)絡(luò),其主要包括預(yù)處理、擴充網(wǎng)絡(luò)和分類器3個部分。接下來將對模型的每一部分進(jìn)行詳盡的闡述。
圖1 樣本擴充網(wǎng)絡(luò)框架
聲信號識別中,音頻信號中的頻率成分是隨著時間推移而變化的,無法直接對整段音頻提取特征。因此,本文需要首先對長時間的音頻信號進(jìn)行分幀處理,利用短時傅里葉變換(STFT,short-time Fourier transform)等分析手段對信號進(jìn)行解析,以兼顧在不同維度下短幀信號的時頻分辨率。
將長時間信號進(jìn)行分幀,本文利用滑動窗加權(quán)的方式實現(xiàn)。常用的窗口包括Kaiser窗、Blackman窗、Hanning窗、Hamming窗、矩形窗等,本文采用的窗函數(shù)是Hamming窗。
窗函數(shù)的數(shù)學(xué)表達(dá)式為:
(6)
針對時域信號,進(jìn)行了加窗之后的信號輸出為:
Oi=xi(n)*w(n)
(7)
考慮到水聲信號為單通道音頻,可以通過諧波分量和沖激分量分解(HPSS,Harmonic and percussive source separation),將單通道音頻轉(zhuǎn)換為雙通道立體聲,其中兩個通道分別為諧波分量與沖激分量,作為新的音頻輸入供后續(xù)特征提取使用。HPSS的具體步驟如圖2所示。
圖2 HPSS提取步驟
(8)
而在使用中值濾波時,我們使用了01掩蔽矩陣(binary masking)的方式,對譜圖進(jìn)行處理,掩蔽矩陣Mh和Mp的構(gòu)建方式如下:
(9)
使用掩蔽矩陣Mh和Mp將STFT中所有的時域-頻域容器劃分到為諧波分量或沖激分量中,進(jìn)而從原始的STFT結(jié)果劃分出諧波分量Xh和沖激分量Xp:
χh=(χ⊙Mh)
χp=(χ⊙Mp)
(10)
最后,通過逆快速傅里葉變換(iSTFT)將修改后的頻譜圖Xhχh和χp反變換回時域,產(chǎn)生分離的諧波和沖激信號。
利用深度學(xué)習(xí)進(jìn)行信號處理時,直接對經(jīng)過預(yù)處理之后的水聲信號進(jìn)行采樣,再將數(shù)據(jù)合成一維向量作為深度學(xué)習(xí)模型的輸入的方法不但難以深度挖掘頻域信息,而且采樣數(shù)據(jù)往往受水下噪聲的影響較大,不利于分類器對水中目標(biāo)的精確分類和識別。
而時頻圖像包含了水中目標(biāo)的時域、頻域、幅度的三維信息,更能從多個維度表示出水中目標(biāo)的特征,包含的信息量更加豐富,同時,作為二維圖像,適合利用卷積神經(jīng)網(wǎng)絡(luò)(CNN,convolutional neural network)進(jìn)行特征的提取和分類,故本文將時頻圖像和梅爾頻率域的倒譜系數(shù)譜圖作為表征水中目標(biāo)的數(shù)據(jù)作為深度學(xué)習(xí)網(wǎng)絡(luò)的輸入。
對初步處理后的一維時域音頻信號求取其梅爾倒譜系數(shù)(MFCC,mel-scale frequency cepstral coefficients)。MFCC參數(shù)是參照人體聽覺的臨界帶效應(yīng)設(shè)計而成,目前在語音領(lǐng)域被廣泛應(yīng)用,具有良好實踐效果[14]。
MFCC譜圖的提取流程圖如下,首先對信號進(jìn)行分幀加窗,從而使信號局部平穩(wěn),而后通過離散傅里葉變換獲得能量譜。在獲得音頻的能量譜的同時,還需要構(gòu)造一個梅爾濾波器組,并與能量譜進(jìn)行點積運算得到梅爾頻譜圖。梅爾濾波器組的作用是將能量譜轉(zhuǎn)換為更接近人耳機理的梅爾頻率,本文中設(shè)置梅爾濾波器的個數(shù)為128。濾波過程的公式如下:
(11)
其中:N表示每一幀的總點數(shù),Hm(f)為梅爾濾波器組系數(shù)。
MFCC與時頻圖類似,區(qū)別在于時頻圖為線性譜圖,而MFCC的頻域軸為非等間距劃分,達(dá)到了展現(xiàn)更多低頻細(xì)節(jié)的目的。同時MFCC的濾波器組構(gòu)建也不同于時頻圖的正弦波,而是三角濾波器。MFCC的計算公式如下:
E′(m)=lgE(m)
(12)
為了適配模型的圖像處理性能并提升對比模型的易適配度,本文選取了包含大量目標(biāo)時頻域信息的LOFAR譜作為模型的輸入樣本[15]。信號的預(yù)處理和特征提取流程如下:首先對水聽器陣列采集的多陣元時域信號進(jìn)行空域[16]、頻域濾波,隨后對得到的一維聲波序列信號進(jìn)行濾波得到一組幀序列{L1(n),L2(n) ,…,Lk(n)},對每一幀Lk(n)進(jìn)行標(biāo)準(zhǔn)化和中心化處理:
(13)
(14)
其中:yk(n)代表標(biāo)準(zhǔn)化后的信號,N代表幀長度,xk(n)代表中心化后的信號。將信號的采樣序列分為連續(xù)的若干幀,每幀N個采樣點。接著對每幀信號做歸一化和中心化處理,最后對處理后的每幀信號加窗做短時傅里葉變換得到時頻譜圖。
擴充網(wǎng)絡(luò)由2個生成器、4個判別器組成。生成器可分為3個模塊:下采樣模塊、殘差提取模塊和上采樣模塊,如圖3所示。
圖3 生成器結(jié)構(gòu)示意圖
在上采樣模塊中,經(jīng)過掩碼處理的特征向量通過兩層卷積層進(jìn)行特征提取。模塊再經(jīng)過一層1*1的卷積層將二維特征轉(zhuǎn)化為一維特征。在殘差提取模塊中,網(wǎng)絡(luò)利用六個相同的殘差模塊對源域的一維特征進(jìn)行轉(zhuǎn)化,保留源域海況信息的同時將源域特征轉(zhuǎn)化為目標(biāo)域特征。下采樣模塊通過一層1*1的卷積層和三層二維卷積層將一維特征轉(zhuǎn)化為二維的具有目標(biāo)域特征的特征向量,其二維尺寸大小與輸入的源域合成特征向量一致。具體網(wǎng)絡(luò)參數(shù)見表1,其中n代表每個批次的樣本數(shù)量。
表1 生成器網(wǎng)絡(luò)結(jié)構(gòu)參數(shù)
4個判別器結(jié)構(gòu)如圖4所示。通過一層卷積以及4個卷積下采樣模塊對其進(jìn)行特征提取,最后送入一個大小為1的輸出卷積層,進(jìn)行判別。判別器的具體參數(shù)見表2。
表2 判別器網(wǎng)絡(luò)結(jié)構(gòu)參數(shù)
圖4 判別器結(jié)構(gòu)示意圖
2.3.1 分類器模型
本文使用KNN[15]、CNN[16]和殘差網(wǎng)絡(luò)[17](ResNet,resident network)3種基礎(chǔ)網(wǎng)絡(luò)搭建不同分類器。其中KNN超參數(shù)n_neighbors為9,p為1;CNN共4層卷積層,kernel_size為3;ResNet18由4個block和一個前置卷積層組成,kernel_size為5。
在選取模型配置時,綜合了水聲目標(biāo)分類領(lǐng)域的數(shù)據(jù)集規(guī)模和樣本特征等因素,從而選擇ResNet框架來搭建模型。
與其他卷積神經(jīng)網(wǎng)絡(luò)不同,ResNet的提出是為了解決梯度爆炸和消失問題。隨著神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)層深度不斷增加,但是網(wǎng)絡(luò)的性能和模型的參數(shù)并非線性關(guān)系。而在模型層數(shù)太深時,反向傳播的梯度信息并不能更新到淺層的參數(shù),或者梯度太大導(dǎo)致參數(shù)不斷跳變,模型失效。
ResNet的解決方法是引入了“殘差學(xué)習(xí)”(RL,residual learning)的思想。所謂殘差學(xué)習(xí),是指將輸入與輸出的差值(即“殘差”)學(xué)習(xí)到,然后將該殘差加到輸入上,從而得到輸出。這樣做的好處是可以讓網(wǎng)絡(luò)更容易地學(xué)習(xí)到恒等映射(Identity Mapping),從而避免了梯度消失和爆炸的問題。
具體來說,ResNet通過在網(wǎng)絡(luò)中添加“殘差塊”(Residual Block)來實現(xiàn)殘差學(xué)習(xí)。它包含了兩個卷積層和跨層連接,負(fù)責(zé)從輸入數(shù)據(jù)中學(xué)習(xí)和提取特征。通過兩個卷積層來保持輸入輸出的維度不改變,然后通過跨層連接來規(guī)避模型在遇到簡單任務(wù)時擬合難的問題。通過這種結(jié)構(gòu),既能讓模型的梯度傳播到淺層網(wǎng)絡(luò),也能在更低的維度空間中持續(xù)提高模型的學(xué)習(xí)能力。
ResNet18是ResNet系列的一個變體。與其他變體相比,ResNet18的架構(gòu)較淺,有18層。雖然它的層數(shù)較少,但仍然具有強大的特征提取能力。
在訓(xùn)練數(shù)據(jù)有限的情況下。ResNet18具有較淺的結(jié)構(gòu),可以幫助減少過度擬合,提高泛化性能。并且ResNet18在模型容量(捕捉復(fù)雜模式和特征的能力)和模型復(fù)雜性(參數(shù)和層的數(shù)量)之間取得了平衡。它提供了一個合理的深度架構(gòu),能夠有效地捕捉和學(xué)習(xí)有用的特征,而不會變得過于復(fù)雜或容易過度擬合。
2.3.2 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)參數(shù)的確定
鑒于本文將經(jīng)過預(yù)處理和特征提取的信號譜圖作為多模態(tài)深度神經(jīng)網(wǎng)絡(luò)模型的輸入,將根據(jù)獲得的信號數(shù)據(jù)決定網(wǎng)絡(luò)結(jié)構(gòu)的具體參數(shù)。
對于CNN和ResNet來說,其搭建過程中有關(guān)的主要參數(shù)如下:
1)卷積層的卷積核大小、卷積核個數(shù);
2)激活函數(shù)的種類(常用的如Sigmoid,tanh,relu,leaky relu);
3)網(wǎng)絡(luò)的層結(jié)構(gòu)(卷積層的個數(shù)/全連接層的個數(shù));
4)池化方法的種類;
5)Dropout的概率;
6)有無歸一化。
通過神經(jīng)網(wǎng)絡(luò)使用的經(jīng)驗可以得到,在調(diào)整參數(shù)時,重要的是先調(diào)整網(wǎng)絡(luò)的層結(jié)構(gòu)、卷積層的卷積核個數(shù)以及激活函數(shù)的種類,其他參數(shù)雖然也會對性能或多或少地產(chǎn)生影響,但是差異不大,所以首先確定重要參數(shù),然后再對其他參數(shù)進(jìn)行微調(diào)即可。
我們根據(jù)信號包含信息的豐富程度來調(diào)整CNN的結(jié)構(gòu)以及每一層的卷積核個數(shù)。由于提取的LOFAR和MFCC譜圖具有概括性的特點,CNN的層數(shù)不宜過多,以三層為初始值根據(jù)實際實驗結(jié)果進(jìn)行微調(diào)。若聲納數(shù)據(jù)中只包含單個識別的目標(biāo),我們將用適當(dāng)?shù)木矸e核數(shù)量,在增強網(wǎng)絡(luò)對于多層次信息的提取能力的同時避免過擬合問題。對于池化層,由于水聲數(shù)據(jù)具有較強噪聲,而可選取最大池化,以突出信號特征。
考慮到該網(wǎng)絡(luò)模型在深層特征提取方面的優(yōu)勢,構(gòu)建多層ResNet。而適當(dāng)增加隱藏層向量的維度有利于增強向量對水聲目標(biāo)特征的表征能力,提高分類識別率。同時為了避免過擬合,在ResNet網(wǎng)絡(luò)中采用了遷移學(xué)習(xí)的思想,即將該模型參數(shù)的初始值設(shè)定為在ImageNet數(shù)據(jù)集經(jīng)過訓(xùn)練的模型參數(shù),有利于模型收斂至最優(yōu)值。對于池化層,選取平均池化,以保留豐富的信號特征。
對于激活函數(shù),常用的激活函數(shù)種類包括Sigmoid,tanh,ReLU,leaky ReLU等。Sigmoid和tanh激活函數(shù)的缺點在于當(dāng)輸入值過大或過小時易出現(xiàn)梯度消失的現(xiàn)象,不利于神經(jīng)網(wǎng)絡(luò)的訓(xùn)練,而相比之下,Leaky ReLU和ReLU可以很好地避免這一現(xiàn)象,因此,采取ReLU作為神經(jīng)網(wǎng)絡(luò)的激活函數(shù)。
再確定以上3個參數(shù)后,對于卷積神經(jīng)網(wǎng)絡(luò)的其他參數(shù)(如卷積核大小,池化方法等)采用實驗微調(diào)的方法,尋找在此問題場景下的最佳參數(shù)值。
2.3.3 神經(jīng)網(wǎng)絡(luò)訓(xùn)練策略及優(yōu)化方式
對于水中目標(biāo)識別問題而言,需要搭建的模型往往較為復(fù)雜,批量梯度下降法計算量過大,消耗的內(nèi)存過多,隨機梯度下降法易陷入局部最優(yōu),從而導(dǎo)致模型過擬合,因此,兩種算法均不適用。Adam算法則將批量梯度下降法和隨機梯度下降法二者相結(jié)合,利用一階矩估計和二階矩估計可以實現(xiàn)學(xué)習(xí)率的自適應(yīng)調(diào)整。Adam算法本質(zhì)上利用梯度的一階矩估計和二階矩估計動態(tài)調(diào)節(jié)每個參數(shù)的學(xué)習(xí)率。在經(jīng)過偏差修正后,每一次迭代都有確定的范圍,使得參數(shù)比較平穩(wěn),善于處理稀疏梯度和非平穩(wěn)目標(biāo)。與此同時,算法對內(nèi)存的需求小,且較適合應(yīng)用于大規(guī)模數(shù)據(jù)及參數(shù)的場景。
本文實驗的運行平臺:操作系統(tǒng)為Ubuntu20.04,GPU為NVIDIA RTX 3090,內(nèi)存大小為16 G。開發(fā)語言和平臺為Python3.8和Pytorch1.19。
本文實驗采用兩個數(shù)據(jù)集,均為艦船噪聲信號,每個樣本持續(xù)3秒,采樣率為5 000。數(shù)據(jù)集A包含6種不同海洋條件下的3類艦船輻射噪聲。如表3所示,數(shù)據(jù)集分為訓(xùn)練集和測試集,訓(xùn)練集共有7 046個樣本,測試集共有1 459個樣本。訓(xùn)練集為第1~5天采集數(shù)據(jù),測試集為第6天采集數(shù)據(jù)。
表3 數(shù)據(jù)集A詳細(xì)
數(shù)據(jù)集B包含4類船只在不同海況、航行狀態(tài)的輻射噪聲,單個樣本的平均持續(xù)時間為3.3 s??偣灿?1 307個樣本,具體情況如表4所示。各種海洋條件下的樣本均勻分布在整個數(shù)據(jù)集中。每一類樣本按1∶1的比例分為訓(xùn)練集和測試集。
表4 數(shù)據(jù)集B詳細(xì)
實驗通過對比不同參數(shù)設(shè)置下的網(wǎng)絡(luò)性能,得到了最佳參數(shù)配置,具體為:生成器和鑒別器的初始層卷積核大小為5*5,卷積層數(shù)分別為12和5,訓(xùn)練批次大小為64、訓(xùn)練輪次為160、掩碼長度25。
本實驗采用3種評價指標(biāo)來驗證算法的性能,分別為聲紋識別準(zhǔn)確率、損失函數(shù)loss值、余弦相似度。
余弦值匹配算法[18]利用向量空間中兩個向量夾角的余弦值作為衡量兩個個體間差異的大小。余弦值越接近1,就表明夾角越接近0°,也就是兩個身份特征向量越相似,越有可能屬于同一個目標(biāo)個體。公式定義為:
(15)
本文總共兩個獨立實驗,分別使用A、B兩個數(shù)據(jù)集。實驗一旨在驗證擴充網(wǎng)絡(luò)對分類器的整體性能的提升效果。實驗二旨在驗證擴充網(wǎng)絡(luò)對分類器識別小樣本類的提升效果。
首先通過提取艦船噪聲的MFCC譜圖[19]或LOFAR譜圖特征,訓(xùn)練樣本擴充網(wǎng)絡(luò),讓網(wǎng)絡(luò)能夠生成目標(biāo)域樣本的特征譜圖,再通過反變換生成一維音頻聲信號。本次實驗在數(shù)據(jù)集A的三類樣本中互相生成對應(yīng)的聲信號樣本,使得三類樣本訓(xùn)練集的數(shù)據(jù)量均為7 046,測試集不做變化。
實驗中,根據(jù)生成器和判別器loss的誤差值判斷網(wǎng)絡(luò)的收斂速度[20]。鑒別器的loss曲線呈現(xiàn)先上升后下降趨勢,在96輪次后基本收斂。生成器的loss曲線總體呈現(xiàn)下降的趨勢,在120輪次后基本收斂。
在樣本擴充網(wǎng)絡(luò)訓(xùn)練完成后,分別對1,2,3類生成樣本,并與目標(biāo)類計算LOFAR譜圖的余弦相似度,如表5所示。
表5 實驗一 余弦相似度
在完成類間余弦相似度的驗證后,通過ResNet18搭建分類器進(jìn)行對比實驗,比較分類器的準(zhǔn)確率曲線,驗證擴充網(wǎng)絡(luò)有效性,分類結(jié)果如圖5所示。
圖5 分類器準(zhǔn)確率對比
分類器共訓(xùn)練70輪次,自上而下第三條曲線是總準(zhǔn)確率。在加入生成樣本后,分類器的總準(zhǔn)確率從76%提升到80%。為確保結(jié)果的準(zhǔn)確性,實驗進(jìn)一步選取了3個不同的分類器進(jìn)行驗證,分別為KNN,CNN(4層卷積),ResNet18,每個實驗重復(fù)5次,并在表6中給出平均統(tǒng)計結(jié)果。
表6 實驗一樣本擴充前后分類準(zhǔn)確率
經(jīng)過對比實驗可以看出,在不同分類器網(wǎng)絡(luò)中,使用樣本擴充網(wǎng)絡(luò)擴充數(shù)據(jù)集,均能提升分類識別效果,相較于在原始數(shù)據(jù)集上最佳準(zhǔn)確率74%,加入生成樣本后,最佳準(zhǔn)確率能提升到82.1%。
實驗二首先通過提取艦船噪聲的MFCC譜圖/LOFAR譜圖特征,訓(xùn)練樣本擴充網(wǎng)絡(luò),使得網(wǎng)絡(luò)能夠生成目標(biāo)域樣本的MFCC/LOFAR譜圖。再通過反變換生成聲信號樣本。與實驗一不同的是,此次實驗采用數(shù)據(jù)集B的一半作為訓(xùn)練集,一半作為測試集,在樣本擴充網(wǎng)絡(luò)訓(xùn)練完成后,只針對第4類進(jìn)行擴充。
實驗中,根據(jù)生成器和判別器loss的誤差值判斷網(wǎng)絡(luò)的收斂速度。由于第4類樣本數(shù)量與其他3類相差過大,訓(xùn)練過程中需要多次調(diào)整學(xué)習(xí)率。判別器的loss曲線訓(xùn)練時呈現(xiàn)先下降后上升的趨勢,在300輪次時基本收斂。生成器的loss曲線呈現(xiàn)先上升后下降趨勢,在450輪次時基本收斂。
在樣本擴充網(wǎng)絡(luò)訓(xùn)練完成后,對第4類原始樣本和生成樣本計算余弦相似度,結(jié)果如表7所示。
表7 實驗二余弦相似度
訓(xùn)練好擴充網(wǎng)絡(luò)后,通過ResNet18搭建分類器進(jìn)行對比實驗,比較分類器的準(zhǔn)確率曲線,驗證擴充網(wǎng)絡(luò)有效性,分類結(jié)果如圖6所示。
圖6 分類器準(zhǔn)確率對比
分類器共訓(xùn)練30輪次,前4條曲線是單類的準(zhǔn)確率,自上而下第四條曲線為總準(zhǔn)確率。在加入生成樣本后,分類器的綜合識別準(zhǔn)確率從88%提升到了96%,且收斂速度加快,模型也更加穩(wěn)定。
為確保結(jié)果的準(zhǔn)確性,進(jìn)一步選取了3個不同的分類器進(jìn)行驗證,分別是KNN,CNN(4層卷積),ResNet18,每個實驗重復(fù)5次,并在表8中給出平均結(jié)果。
表8 實驗二 樣本擴充前后分類準(zhǔn)確率
經(jīng)過對比實驗可以看出,在不同分類器網(wǎng)絡(luò)中,使用樣本擴充網(wǎng)絡(luò)對小樣本類進(jìn)行擴充。相較于在原始數(shù)據(jù)集上最佳準(zhǔn)確率96.5%,加入生成樣本后,最佳準(zhǔn)確率提升到97.5%;針對生成的第4類樣本,最佳準(zhǔn)確率從88%提升到了96%。
在水聲目標(biāo)識別領(lǐng)域中,樣本分布不均衡或有效樣本缺失是一種常見問題。為了解決此問題,深度學(xué)習(xí)領(lǐng)域的研究提出了多種方法,大部分是對模型參數(shù)進(jìn)行配置以實現(xiàn)針對性樣本生成。本文提出了一種樣本擴充網(wǎng)絡(luò),該算法基于CycleGAN網(wǎng)絡(luò)搭建,通過學(xué)習(xí)與目標(biāo)生成水聲數(shù)據(jù)樣本相似環(huán)境采集的頻譜特征和真實分布,生成真實樣本,并加入分類器訓(xùn)練中,提升其性能。
本文設(shè)計了基于兩個不同水聲數(shù)據(jù)集的對比實驗,通過3個分類器對擴充網(wǎng)絡(luò)進(jìn)行評估。實驗表明,擴充網(wǎng)絡(luò)能加速訓(xùn)練和收斂過程,有效提升分類器的整體性能和對小樣本目標(biāo)類的識別能力。