倪俊帥,趙 梅,胡長(zhǎng)青
(1.中國(guó)科學(xué)院聲學(xué)研究所東海研究站,上海 201815;2.中國(guó)科學(xué)院大學(xué),北京 100049)
船舶輻射噪聲識(shí)別是被動(dòng)聲吶研究領(lǐng)域的一項(xiàng)難題,一直以來(lái)受到國(guó)內(nèi)外學(xué)者的廣泛關(guān)注。海洋事業(yè)的蓬勃發(fā)展,海上活動(dòng)日益頻繁,海洋權(quán)益保障和國(guó)防建設(shè)等方面對(duì)船舶輻射噪聲識(shí)別提出了更高的要求。隨著深度學(xué)習(xí)和人工智能的發(fā)展及其在各領(lǐng)域取得的顯著成果,將深度學(xué)習(xí)應(yīng)用于船舶輻射噪聲識(shí)別成為了研究的熱點(diǎn)。船舶輻射噪聲中包含著一定的特征信息,特征提取是噪聲識(shí)別不可缺少的重要環(huán)節(jié)。已有的特征提取方法主要有:功率譜估計(jì)、小波變換、短時(shí)傅里葉變換、梅爾倒譜系數(shù)、希爾伯特-黃變換等。在此基礎(chǔ)上將深度學(xué)習(xí)應(yīng)用于船舶輻射噪聲的識(shí)別,取得了一定的研究成果。嚴(yán)韶光等[1]采用Welch 功率譜估計(jì)方法提取特征,并采用深度自編碼網(wǎng)絡(luò)對(duì)船舶輻射噪聲進(jìn)行識(shí)別,得到了比BP 網(wǎng)絡(luò)更好的識(shí)別效果。李俊豪等[2]提取了船舶輻射噪聲的時(shí)頻特征,設(shè)計(jì)卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行識(shí)別,識(shí)別率得到了明顯的提高。朱可卿等[3]提取了船舶輻射噪聲的頻譜、梅爾倒譜系數(shù)、線譜特征,并采用卷積神經(jīng)網(wǎng)絡(luò)對(duì)特征的圖像進(jìn)行識(shí)別。曾賽等[4]提出了水下目標(biāo)多模態(tài)深度學(xué)習(xí)識(shí)別方法,提高了船舶輻射噪聲識(shí)別的正確率。
雖然以上對(duì)船舶輻射噪聲特征提取和識(shí)別算法的研究已經(jīng)取得了一定的成果,但現(xiàn)實(shí)中船舶輻射噪聲識(shí)別是包含未知船舶的開(kāi)集識(shí)別。目前識(shí)別算法多為“監(jiān)督式學(xué)習(xí)”的閉集識(shí)別,即在已有的船舶輻射噪聲樣本上訓(xùn)練網(wǎng)絡(luò)模型并對(duì)模型的識(shí)別性能進(jìn)行評(píng)估,然后用訓(xùn)練好的網(wǎng)絡(luò)模型去識(shí)別船舶輻射噪聲。這樣一來(lái)模型只能夠識(shí)別訓(xùn)練集中包含的類(lèi)別,而對(duì)于訓(xùn)練集中未包含的類(lèi)別,則無(wú)法給出正確的識(shí)別結(jié)果。這一問(wèn)題在一定程度上降低了識(shí)別系統(tǒng)的可靠性和準(zhǔn)確率。張凱等[5]提出了基于相似度分布的開(kāi)集人臉識(shí)別算法,提取樣本的相似度分布特征,然后運(yùn)用線性判別分析算法實(shí)現(xiàn)開(kāi)集識(shí)別。Bendale 等[6]提出了深度學(xué)習(xí)輸出層的Openmax 函數(shù)激活方法,取代Softmax 函數(shù)激活實(shí)現(xiàn)開(kāi)集識(shí)別。Perera 等[7]應(yīng)用生成模型重建已知類(lèi)別樣本,提高已知與未知樣本的類(lèi)間距離,實(shí)現(xiàn)未知樣本的檢測(cè)。郝云飛等[8]將對(duì)抗生成網(wǎng)絡(luò)應(yīng)用于信號(hào)調(diào)制方式的開(kāi)集識(shí)別,取得了較高的識(shí)別正確率。以上開(kāi)集識(shí)別方法在人臉識(shí)別等領(lǐng)域取得了較好的效果,而船舶輻射噪聲隨機(jī)性強(qiáng),提取的可識(shí)別特征少,特征不穩(wěn)定,相似船舶很難區(qū)分。船舶輻射噪聲識(shí)別屬于小樣本識(shí)別,很難滿足生成對(duì)抗網(wǎng)絡(luò)訓(xùn)練樣本需求。實(shí)現(xiàn)船舶輻射噪聲的開(kāi)集識(shí)別,還有待于進(jìn)一步的研究。
為了提高船舶輻射噪聲識(shí)別系統(tǒng)的性能,實(shí)現(xiàn)開(kāi)集識(shí)別,本文提出了基于深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Network,DNN)和改進(jìn)K-means 的船舶輻射噪聲開(kāi)集識(shí)別方法。采用Welch 功率譜估計(jì)方法提取特征,設(shè)計(jì)并運(yùn)用DNN 模型進(jìn)一步提取特征向量,提高數(shù)據(jù)的可分性;改進(jìn)了K-means 算法,選擇更符合數(shù)據(jù)分布的聚類(lèi)中心,并在此基礎(chǔ)上實(shí)現(xiàn)了開(kāi)集識(shí)別。
假定隨機(jī)信號(hào)序列x(n),n=0,1,…,N?1,將其分為L(zhǎng)段,每段長(zhǎng)度為M,相鄰兩段的重疊長(zhǎng)度為M?K,第i段數(shù)據(jù)加窗后可表示為[9]
其中:a(n)為窗函數(shù);K為一整數(shù);L為分段數(shù);它們之間滿足:
第i段數(shù)據(jù)的功率譜估計(jì)為
其中:
式(3)中,U為歸一化因子,作用是保證得到的譜估計(jì)是真實(shí)譜的漸進(jìn)無(wú)偏估計(jì),U表示為
由此得到的平均周期圖法功率譜估計(jì)為
深度神經(jīng)網(wǎng)絡(luò)(DNN)由輸入層、隱藏層和輸出層組成。它具有強(qiáng)大的非線性建模能力,不但可以有效學(xué)習(xí)特征向量中的分類(lèi)信息,抽象出具有更好分類(lèi)性能的特征向量,還能夠達(dá)到數(shù)據(jù)降維和提高運(yùn)算性能的效果。多分類(lèi)深度神經(jīng)網(wǎng)絡(luò)的代價(jià)函數(shù)為
式中:yn和tn分別為網(wǎng)絡(luò)輸出層第n個(gè)神經(jīng)元的實(shí)際值和期望值,c為類(lèi)別數(shù)。
DNN 的期望輸出向量可看作c組單位正交基,具有最好的分類(lèi)特性。損失函數(shù)值衡量的是實(shí)際輸出與期望輸出的差異,因此,網(wǎng)絡(luò)損失值越小,輸出向量的可分性越好。
DNN 的隱藏層采用Relu 函數(shù)激活,Relu 函數(shù)的表達(dá)式為
DNN 的輸出層采用Softmax 函數(shù)激活,Softmax函數(shù)的表達(dá)式為
整個(gè)網(wǎng)絡(luò)采用自適應(yīng)學(xué)習(xí)率的誤差反向傳播算法[10]進(jìn)行迭代,最小化代價(jià)函數(shù)并更新權(quán)值。迭代過(guò)程采用optimizer 優(yōu)化器進(jìn)行參數(shù)優(yōu)化。
DNN通過(guò)Softmax函數(shù)將輸入特征向量映射向c個(gè)單位正交基,代價(jià)函數(shù)越小,映射越逼近。所以,越靠近網(wǎng)絡(luò)輸入層,特征向量包含的目標(biāo)的特征信息越豐富,越靠近輸出層,特征向量包含的目標(biāo)的分類(lèi)信息越多。文獻(xiàn)[6]的研究表明,輸出層Softmax 激活前的特征向量具有更好的開(kāi)集性能。因此,本文選用該層輸出的特征向量進(jìn)行船舶輻射噪聲開(kāi)集識(shí)別。
K-means 算法[11]是典型的無(wú)監(jiān)督學(xué)習(xí)算法。實(shí)際的聚類(lèi)應(yīng)用沒(méi)有任何關(guān)于訓(xùn)練樣本的真實(shí)分類(lèi)信息,因此目標(biāo)是根據(jù)特征的相似性對(duì)樣本進(jìn)行分組。
K-means 算法可以通過(guò)以下4 個(gè)步驟來(lái)實(shí)現(xiàn):
(1)隨機(jī)從樣本中挑選k個(gè)重心作為初始聚類(lèi)中心。
(2)將每個(gè)樣本分配到最近的重心uj,j∈{1,…,k}。
(3)把重心移到已分配樣本的中心。
(4)重復(fù)步驟(2)和(3),直到集群賦值不再改變,或達(dá)到設(shè)置的最大迭代次數(shù)。
傳統(tǒng)的K-means 算法有受初始值和離群點(diǎn)的影響,每次結(jié)果都不穩(wěn)定;容易收斂到局部最優(yōu)解;無(wú)法解決“簇”分布差別比較大的情況等缺點(diǎn)。K-mean++算法[12]在其基礎(chǔ)上對(duì)初始聚類(lèi)中心的選擇進(jìn)行了改進(jìn),提高了模型的收斂速率,降低了誤差。
為有效解決上述問(wèn)題并實(shí)現(xiàn)開(kāi)集識(shí)別,本文以傳統(tǒng)K-means 算法為基礎(chǔ),結(jié)合Kernel K-means[13]的改進(jìn)思想,引入“半監(jiān)督學(xué)習(xí)”機(jī)制,對(duì)K-means聚類(lèi)中心選擇和判決策略進(jìn)行如下改進(jìn):(1)在第一步中采用部分標(biāo)識(shí)樣本以確定初始聚類(lèi)中心。(2)標(biāo)識(shí)樣本在后續(xù)的聚類(lèi)步驟中標(biāo)簽保持不變。(3)分別應(yīng)用余弦系數(shù)、Dice 系數(shù)等相似性度量方法確定聚類(lèi)中心。(4)對(duì)待測(cè)樣本識(shí)別時(shí),設(shè)定閾值,最大相似度小于閾值時(shí)識(shí)別為未知類(lèi)別。
本文所提船舶噪聲開(kāi)集識(shí)別方法具體包括如下兩個(gè)過(guò)程:
(1)運(yùn)用深度神經(jīng)網(wǎng)絡(luò)(DNN)提取船舶輻射噪聲的特征向量。
首先,對(duì)船舶噪聲進(jìn)行Welch 方法的譜估計(jì),獲得歸一化的單邊功率譜。其次,設(shè)計(jì)深度神經(jīng)網(wǎng)絡(luò),將功率譜部分離散的功率值作為特征參數(shù)訓(xùn)練和驗(yàn)證網(wǎng)絡(luò)模型,改變起始頻率和帶寬進(jìn)行重復(fù)訓(xùn)練和驗(yàn)證,選擇網(wǎng)絡(luò)最小損失函數(shù)值對(duì)應(yīng)的起始頻率和帶寬,確定輸入特征向量的提取方法。最后,將訓(xùn)練集樣本輸入已訓(xùn)練的最小損失網(wǎng)絡(luò)進(jìn)行分類(lèi),提取網(wǎng)絡(luò)輸出層softmax 函數(shù)激活前的值作為特征向量。該過(guò)程的流程如圖1 所示。
圖1 DNN 提取特征向量流程圖 Fig.1 Flow chart of feature vector extraction by DNN
(2)針對(duì)過(guò)程(1)中DNN 提取的訓(xùn)練集特征向量,將分類(lèi)正確且置信度大于0.95 的樣本繼續(xù)作為已標(biāo)識(shí)樣本,即正樣本,其余樣本作為未標(biāo)識(shí)樣本,即難負(fù)樣本,訓(xùn)練改進(jìn)策略的K-means 模型,確定聚類(lèi)中心。然后,將DNN 提取的測(cè)試集樣本特征向量輸入訓(xùn)練好的聚類(lèi)模型,設(shè)定閾值進(jìn)行開(kāi)集識(shí)別。改進(jìn)的K-means 開(kāi)集識(shí)別流程如圖2 所示。
圖2 改進(jìn)的K-means 開(kāi)集識(shí)別流程圖 Fig.2 Flow chart of open set recognition by improved K-means
實(shí)驗(yàn)采用2018 年6 月在某湖試中實(shí)測(cè)的船舶輻射噪聲數(shù)據(jù)。該實(shí)驗(yàn)采用Ocean Sonics 生產(chǎn)的icListen-900 自容式水聽(tīng)器,工作頻帶為1 Hz~100 kHz,以潛標(biāo)形式布放湖底采集噪聲數(shù)據(jù)。實(shí)驗(yàn)設(shè)備布放圖如圖3 所示。實(shí)驗(yàn)地點(diǎn)選擇在游船頻繁經(jīng)過(guò)的水域,采集的目標(biāo)船舶輻射噪聲具有通過(guò)特性,受其他船只噪聲干擾較小。
圖3 實(shí)驗(yàn)設(shè)備布放圖 Fig.3 Layout of experimental equipment
實(shí)測(cè)目標(biāo)為10 艘不同的游船,分別記為目標(biāo)Ⅰ~Ⅹ。對(duì)獲取的輻射噪聲信號(hào)預(yù)處理共得到數(shù)據(jù)4 560 段,每段數(shù)據(jù)長(zhǎng)度均為3 s,采樣率為32 kHz。將目標(biāo)Ⅹ記為未知船舶,其他目標(biāo)記為已知船舶,訓(xùn)練集、驗(yàn)證集、測(cè)試集中各類(lèi)樣本組成如表1 所示。
表1 數(shù)據(jù)集樣本組成 Table 1 Sample composition of data sets
對(duì)采集的每一段數(shù)據(jù)均做Welch 方法的功率譜估計(jì),分段數(shù)為5,重疊率為0.5,窗函數(shù)選用漢明(Hamming)窗,頻率采樣間隔為1 Hz。由于高識(shí)別性的線譜主要集中在200 Hz 以?xún)?nèi)的低頻部分,且2 000 Hz 以?xún)?nèi)的連續(xù)譜形態(tài)變化也是重要的識(shí)別因素之一。因此采用不同的方法對(duì)功率譜進(jìn)行截取。起始頻率分別選擇1、21、41、81、101 Hz,點(diǎn)數(shù)分別選擇300、600、900、1 200、1 500。
本文設(shè)計(jì)的深度神經(jīng)網(wǎng)絡(luò)(DNN)具有三個(gè)隱藏層,其輸入層節(jié)點(diǎn)數(shù)n為輸入特征向量的維數(shù),由截取功率譜的點(diǎn)數(shù)決定。網(wǎng)絡(luò)各層的節(jié)點(diǎn)數(shù)和訓(xùn)練的參數(shù)數(shù)量如表2 所示。
表2 層節(jié)點(diǎn)數(shù)和參數(shù)數(shù)量 Table 2 Number of layer nodes and parameters
采用不同的截取方法獲得的特征向量訓(xùn)練和驗(yàn)證本文設(shè)計(jì)的深度神經(jīng)網(wǎng)絡(luò)(DNN)。當(dāng)起始頻率為21 Hz、點(diǎn)數(shù)為1 200 時(shí),即選用頻率21~1 220 Hz 對(duì)應(yīng)的功率值作為特征向量時(shí),DNN 的驗(yàn)證損失最小,最小值收斂于8.29×10-4。在此條件下,網(wǎng)絡(luò)迭代20 次的精度和損失曲線分別如圖4 和圖5所示。迭代完成后,網(wǎng)絡(luò)對(duì)訓(xùn)練集分類(lèi)的平均正確率為99.1%,對(duì)驗(yàn)證集分類(lèi)的平均正確率為97.3%。
圖4 訓(xùn)練和驗(yàn)證精度曲線 Fig.4 Accuracy curves for training and verification
圖5 訓(xùn)練和驗(yàn)證損失曲線 Fig.5 Loss curves for training and verification
接下來(lái),獲取網(wǎng)絡(luò)對(duì)訓(xùn)練集的分類(lèi)結(jié)果、置信度、特征向量,并根據(jù)本文改進(jìn)K-means 策略訓(xùn)練聚類(lèi)模型,確定聚類(lèi)中心。其中分類(lèi)結(jié)果正確且置信度大于0.95 的樣本數(shù)為1 959。將本文方法確定的聚類(lèi)中心和K-means++算法確定的聚類(lèi)中心通過(guò)PCA[14]降維,如圖6 所示。
圖6 本文方法與K-means++算法確定的聚類(lèi)中心 Fig.6 The clustering centers determined by the proposed method and K-means++method
由圖6 可以看出,本文方法確定的聚類(lèi)中心和K-means++算法確定的聚類(lèi)中心有部分較為接近,這是因?yàn)閷?duì)應(yīng)類(lèi)別的數(shù)據(jù)難負(fù)樣本較少,且與其他類(lèi)別的差異較大;本文方法確定的聚類(lèi)中心更能反映實(shí)際數(shù)據(jù)的重心,重心之間的平均相對(duì)距離更遠(yuǎn),更有利于開(kāi)集識(shí)別。
用本文改進(jìn)K-means 方法對(duì)測(cè)試集樣本進(jìn)行開(kāi)集識(shí)別,并與K-means++算法進(jìn)行對(duì)比,在不同閾值下,分別采用歐式距離、余弦距離、Dice 系數(shù)、曼哈頓距離作為相似性度量方法的ROC 曲線分別如圖7 所示。其中RFR為錯(cuò)誤拒絕率(False Rejection Rate,FRR),表示所有正例(已知類(lèi))中被預(yù)測(cè)為負(fù)例(未知類(lèi))的比例,RFA為錯(cuò)誤接受率(False Acceptance Rate,FAR),表示所有負(fù)例(未知類(lèi))中被預(yù)測(cè)為正例(已知類(lèi))的比例。
由圖7 可以看出,采用歐式距離、曼哈頓距離、Dice 系數(shù)且RFA<0.6,以及采用余弦系數(shù)且RFA<0.1時(shí),本文方法的FRR 均小于DNN+K-means++方法的FRR。本文方法對(duì)船舶輻射噪聲進(jìn)行開(kāi)集識(shí)別,具有更小的錯(cuò)誤率。當(dāng)RFA=RFR時(shí),開(kāi)集識(shí)別正確率如表3 所示。
表3 RFR=RFA時(shí)兩種方法對(duì)4 種相似性度量的開(kāi)集識(shí) 別正確率 Table 3 Open set recognition accuracies of the two methods for four different similarity measures when RFR=RFA
圖7 兩種方法對(duì)4 種相似性度量開(kāi)集識(shí)別的ROC 曲線 Fig.7 ROC curves of open set recognition by the two methods for four different similarity measures
采用4 種不同的相似性度量方法,當(dāng)RFR=RFA時(shí),本文方法的開(kāi)集識(shí)別正確率均在90%以上,相比于DNN+K-means++方法平均高出6.2 個(gè)百分點(diǎn)。
接下來(lái),對(duì)獲取的船舶輻射噪聲分別添加信噪比為10、0、?10 dB 的實(shí)驗(yàn)船發(fā)動(dòng)機(jī)噪聲、漁船輻射噪聲,信噪比定義為
式中:Xt為待識(shí)別船舶輻射噪聲信號(hào),Xn為實(shí)驗(yàn)船發(fā)動(dòng)機(jī)輻射噪聲信號(hào),N為信號(hào)長(zhǎng)度。選用余弦系數(shù)進(jìn)行相似性度量,本文方法對(duì)含噪聲的船舶輻射噪聲信號(hào)開(kāi)集識(shí)別正確率如表4 所示。
表4 加噪聲后本文方法開(kāi)集識(shí)別正確率 Table 4 Open set recognition accuracy of the proposed method after adding noise
本文方法具有較好的魯棒性,在實(shí)驗(yàn)船發(fā)動(dòng)機(jī)噪聲和漁船噪聲干擾的情況下,依然能對(duì)目標(biāo)船舶有效地實(shí)現(xiàn)開(kāi)集識(shí)別。當(dāng)信噪比大于0 dB 時(shí),開(kāi)集識(shí)別正確率達(dá)到83%以上。
為實(shí)現(xiàn)船舶輻射噪聲的開(kāi)集識(shí)別,本文提出了一種基于DNN 和改進(jìn)K-means(DNN+K-means++)的開(kāi)集識(shí)別算法。根據(jù)網(wǎng)絡(luò)最小損失原則選取功率譜特征,得到了分類(lèi)性能良好的初始特征向量;應(yīng)用深度神經(jīng)網(wǎng)絡(luò)進(jìn)一步提取特征向量,在降維的同時(shí)提高了數(shù)據(jù)的可分性;采用改進(jìn)的K-means 算法,獲得了更符合數(shù)據(jù)分布的聚類(lèi)中心并實(shí)現(xiàn)了船舶輻射噪聲的開(kāi)集識(shí)別。實(shí)驗(yàn)結(jié)果表明,該方法對(duì)實(shí)測(cè)船舶輻射噪聲數(shù)據(jù)有較好的識(shí)別效果,4 種不同的相似性度量方法下,該方法的開(kāi)集識(shí)別性能均優(yōu)于DNN+K-means++方法。采用余弦系數(shù)進(jìn)行相似性度量時(shí),開(kāi)集識(shí)別正確率最高。對(duì)實(shí)測(cè)信號(hào)添加實(shí)驗(yàn)船發(fā)動(dòng)機(jī)噪聲或漁船噪聲后,本文方法的識(shí)別正確率較高,具有較好的魯棒性。