本發(fā)明涉及一種水聲目標(biāo)識別方法,這個方法是基于多模型融合的單類水聲目標(biāo)識別方法,是一種準(zhǔn)確度高和泛化性好的單類水聲目標(biāo)識別方法。
背景技術(shù):
在水聲目標(biāo)識別領(lǐng)域,單類目標(biāo)識別是指只能獲得一類樣本(即目標(biāo)類樣本)用于訓(xùn)練分類器,訓(xùn)練好的分類器要能夠判斷測試樣本是目標(biāo)類樣本或者非目標(biāo)類樣本。由于獲取水聲數(shù)據(jù)樣本成本高,代價大,水聲目標(biāo)數(shù)據(jù)是小樣本數(shù)據(jù),單類目標(biāo)識別常常出現(xiàn)欠學(xué)習(xí)或過學(xué)習(xí)的問題。因此單類目標(biāo)識別的正確率和泛化性能較低的問題一直難以解決。
現(xiàn)有的水聲目標(biāo)識別方法主要是用于多類目標(biāo)識別的方法,這些方法主要分為多類目標(biāo)的特征提取和多類目標(biāo)分類器這兩大部分?,F(xiàn)有的水聲目標(biāo)特征提取方法多依賴先驗(yàn)知識和專家知識,但是在單類水聲目標(biāo)識別應(yīng)用中常常無法獲得有關(guān)目標(biāo)類和非目標(biāo)類區(qū)別的先驗(yàn)知識和專家知識,因此現(xiàn)有多類水聲目標(biāo)特征提取方法無法滿足單類水聲目標(biāo)識別的要求。單類目標(biāo)識別的訓(xùn)練樣本只有一個類別,因此用于多類水聲目標(biāo)識別的分類器無法實(shí)現(xiàn)單類目標(biāo)識別。在中國知網(wǎng)、萬方、IEEE和Springerlink等國內(nèi)外數(shù)據(jù)庫上,沒有檢索到應(yīng)用于單類水聲目標(biāo)識別的特征提取方法和分類器設(shè)計方法。而現(xiàn)有的用于其它應(yīng)用領(lǐng)域的單類目標(biāo)識別方法,沒有針對單類水聲目標(biāo)小樣本識別問題,無法解決由此產(chǎn)生的單類水聲目標(biāo)識別的準(zhǔn)確度低和泛化性能較低的問題。
技術(shù)實(shí)現(xiàn)要素:
為了解決單類水聲目標(biāo)識別的正確率和泛化性能較低的問題,本發(fā)明提出一種基于多模型融合的單類水聲目標(biāo)識別方法,這個方法集成了以下模型:基于深度自編碼網(wǎng)絡(luò)的單類水聲目標(biāo)特征提取模型、用于單類分類器的集成學(xué)習(xí)模型和支持向量數(shù)據(jù)域描述單類分類器(Support Vector Data Description,SVDD)?;诙嗄P腿诤系膯晤愃暷繕?biāo)識別方法為解決訓(xùn)練樣本只有一類,小樣本的單類水聲目標(biāo)識別的準(zhǔn)確度低和泛化性能較低的問題提供一種新的技術(shù)途徑和方法。
技術(shù)方案
所述一種基于多模型融合的單類水聲目標(biāo)識別方法,其特征在于:包括以下步驟:
步驟1:獲取N個單類水聲目標(biāo)類信號作為樣本信號,對樣本信號進(jìn)行FFT變換,得到每個樣本信號頻譜的幅度譜,所有樣本信號頻譜的幅度譜組成訓(xùn)練樣本矩陣;利用訓(xùn)練樣本矩陣訓(xùn)練深度自編碼神經(jīng)網(wǎng)絡(luò);
步驟2:利用步驟1訓(xùn)練好的深度自編碼神經(jīng)網(wǎng)絡(luò),提取單類水聲目標(biāo)的特征,構(gòu)成初始訓(xùn)練樣本集
步驟3:根據(jù)訓(xùn)練樣本個數(shù)N,初始化樣本權(quán)值
步驟4:設(shè)置循環(huán)代數(shù)T,并令迭代標(biāo)記t=1;
步驟5:按照概率pt(i)從初始訓(xùn)練樣本集X中抽N個樣本組成訓(xùn)練樣本集Xt,其中
步驟6:利用訓(xùn)練樣本集Xt和n折交叉驗(yàn)證法選擇第t代SVDD分類器的核參數(shù)(Ct,σt);
步驟7:利用訓(xùn)練樣本集Xt和核參數(shù)(Ct,σt)訓(xùn)練SVDD單類分類器ht;
步驟8:計算SVDD單類分類器ht的加權(quán)分類錯誤率其中
ht(xi)表示將樣本xi放入分類器ht中得到的分類結(jié)果;
步驟9:更新樣本權(quán)值:
其中
并進(jìn)行歸一化處理
步驟10:判斷t=T是否成立;若成立,則轉(zhuǎn)至步驟11;若不成立,則取t=t+1,轉(zhuǎn)至步驟5;
步驟11:步驟11:利用訓(xùn)練好的深度自編碼神經(jīng)網(wǎng)絡(luò)提取測試信號的特征,構(gòu)成測試樣本y;
步驟12:對測試樣本y進(jìn)行識別,判斷測試樣本y是否是目標(biāo)類,判斷公式如下:
其中分類器權(quán)值為如果H(y)≥0,測試樣本y判為目標(biāo)類;如果H(y)<0,測試樣本y判為非目標(biāo)類。
進(jìn)一步的優(yōu)選方案,所述一種基于多模型融合的單類水聲目標(biāo)識別方法,其特征在于:步驟8中,計算SVDD單類分類器ht的加權(quán)分類錯誤率后,如果εt≥0.5或者εt=0,判斷t是否等于1,若t等于1,則報錯,否則,取T=t-1,并轉(zhuǎn)至步驟11。
有益效果
本發(fā)明提出了一種基于多模型融合的單類水聲目標(biāo)識別方法。本方法首先利用深度自編碼神經(jīng)網(wǎng)絡(luò)提取水聲目標(biāo)的特征,構(gòu)建水聲目標(biāo)深度特征訓(xùn)練樣本集;然后利用Adaboost算法(體現(xiàn)在步驟5至步驟10)進(jìn)行SVDD單類分類器集成學(xué)習(xí)(Ada-SVDDE),得到單類水聲目標(biāo)識別模型。這個模型可以對測試樣本做出是否是目標(biāo)類的判斷。這個方法打破利用專家知識和先驗(yàn)知識提取水聲目標(biāo)的傳統(tǒng)模式,利用深度自編碼網(wǎng)絡(luò)直接從原始信號提取單類水聲目標(biāo)的特征;通過增加個體分類器之間的差異性和準(zhǔn)確性,利用集成學(xué)習(xí),構(gòu)建準(zhǔn)確度高和泛化性好的單類水聲目標(biāo)識別模型。
本發(fā)明的附加方面和優(yōu)點(diǎn)將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本發(fā)明的實(shí)踐了解到。
附圖說明
本發(fā)明的上述和/或附加的方面和優(yōu)點(diǎn)從結(jié)合下面附圖對實(shí)施例的描述中將變得明顯和容易理解,其中:
圖1:本發(fā)明方法的流程圖。
具體實(shí)施方式
下面詳細(xì)描述本發(fā)明的實(shí)施例,所述實(shí)施例是示例性的,旨在用于解釋本發(fā)明,而不能理解為對本發(fā)明的限制。
本實(shí)施例中的基于多模型融合的單類水聲目標(biāo)識別方法集成了以下模型:基于深度自編碼網(wǎng)絡(luò)的單類水聲目標(biāo)特征提取模型、用于單類分類器的集成學(xué)習(xí)模型和支持向量數(shù)據(jù)域描述單類分類器(Support Vector Data Description,SVDD),包括以下步驟:
步驟1:獲取N個單類水聲目標(biāo)類信號作為樣本信號,對樣本信號進(jìn)行FFT變換,得到每個樣本信號頻譜的幅度譜,所有樣本信號頻譜的幅度譜組成訓(xùn)練樣本矩陣;利用訓(xùn)練樣本矩陣訓(xùn)練深度自編碼神經(jīng)網(wǎng)絡(luò)。
步驟2:利用步驟1訓(xùn)練好的深度自編碼神經(jīng)網(wǎng)絡(luò),提取單類水聲目標(biāo)的特征,構(gòu)成初始訓(xùn)練樣本集
步驟3:根據(jù)訓(xùn)練樣本個數(shù)N,初始化樣本權(quán)值
步驟4:設(shè)置循環(huán)代數(shù)T,并令迭代標(biāo)記t=1。
步驟5:按照概率pt(i)從初始訓(xùn)練樣本集X中抽N個樣本組成訓(xùn)練樣本集Xt,其中即對初始訓(xùn)練樣本集X進(jìn)行N次抽取操作,每次抽取1個樣本放入訓(xùn)練樣本集Xt中,且在X中保留該樣本,X中每個樣本被抽取到的概率為pt(i)。
步驟6:利用訓(xùn)練樣本集Xt和n折交叉驗(yàn)證法選擇第t代SVDD分類器的核參數(shù)(Ct,σt)。
步驟7:利用訓(xùn)練樣本集Xt和核參數(shù)(Ct,σt)訓(xùn)練SVDD單類分類器ht。
步驟8:計算SVDD單類分類器ht的加權(quán)分類錯誤率其中
ht(xi)表示將樣本xi放入分類器ht中得到的分類結(jié)果。
進(jìn)一步的,在計算SVDD單類分類器ht的加權(quán)分類錯誤率后,如果εt≥0.5或者εt=0,判斷t是否等于1,若t等于1,則報錯,否則,取T=t-1,并轉(zhuǎn)至步驟11。如果不滿足εt≥0.5或者εt=0,則進(jìn)入下一步。
步驟9:更新樣本權(quán)值:
其中
并進(jìn)行歸一化處理
步驟10:判斷t=T是否成立;若成立,則轉(zhuǎn)至步驟11;若不成立,則取t=t+1,轉(zhuǎn)至步驟5。
步驟11:步驟11:利用訓(xùn)練好的深度自編碼神經(jīng)網(wǎng)絡(luò)提取測試信號的特征,構(gòu)成測試樣本y。
步驟12:對測試樣本y進(jìn)行識別,判斷測試樣本y是否是目標(biāo)類,判斷公式如下:
其中分類器權(quán)值為如果H(y)≥0,測試樣本y判為目標(biāo)類;如果H(y)<0,測試樣本y判為非目標(biāo)類。
基于上述原理,下面給出具體實(shí)施例:
(1)有目標(biāo)類水聲信號480個,非目標(biāo)類信號1440個;隨機(jī)抽取240個目標(biāo)類信號作為訓(xùn)練數(shù)據(jù),其余數(shù)據(jù)全部做測試數(shù)據(jù)。并對每個水聲訓(xùn)練數(shù)據(jù)信號做FFT變換,獲得每個信號頻譜的幅度譜,構(gòu)成(240*2048)的訓(xùn)練樣本矩陣。
(2)利用訓(xùn)練樣本訓(xùn)練五層深度自編碼神經(jīng)網(wǎng)絡(luò),深度自編碼神經(jīng)網(wǎng)絡(luò)每層的神經(jīng)元個數(shù)為2048,500,100,500,2048,當(dāng)訓(xùn)練完成,利用中間隱含層的神經(jīng)元的激活值作為水聲目標(biāo)的特征,得到(240*100)的訓(xùn)練樣本的特征矩陣
(3)訓(xùn)練樣本集為初始化樣本權(quán)值,
(4)設(shè)置循環(huán)代數(shù)T=10,迭代標(biāo)記t=1。
(5)計算第一代樣本抽取概率故
p1(1)=p1(2)=p1(3)=...=p1(240)=0.0042,按照樣本抽取概率p1(i)從X中抽取240個樣本組成樣本集X1。
(6)利用X1,將240個樣本分成5份,每次取其中4份訓(xùn)練,1份測試,用這樣5折交叉驗(yàn)證法選出第1代SVDD分類器的最佳核參數(shù)(C1,σ1)=(0.01,1.6)。
(7)用X1和(6)中得到的最佳核參數(shù)(C1,σ1)=(0.01,1.6)訓(xùn)練SVDD分類器h1。
(8)根據(jù)被錯誤分類樣本的權(quán)值求和計算出h1的加權(quán)分類錯誤率ε1=0.1917,
(9)更新樣本權(quán)值,得到第二代的樣本權(quán)值:
D′2(1)=0.001,D′2(2)=0.001,D′2(3)=0.042,...,D′2(240)=0.001,其中有46個被錯誤分類樣本權(quán)值為0.042。
再歸一化處理,得到
D2(1)=0.0026,D2(2)=0.0026,D2(3)=0.0109,...,D2(240)=0.0026,其中有46個被錯誤分類樣本歸一化后的權(quán)值為0.0109。
(10)t=1+1=2,轉(zhuǎn)至(5)
(11)循環(huán)重復(fù),得到十代SVDD分類器的加權(quán)分類錯誤率
ε1=0.1917,ε2=0.1860,ε3=0.1859....,
計算分類器權(quán)值q1=1.6518,q2=1.6820,q3=1.6825...。
(12)利用訓(xùn)練好的5層深度自編碼網(wǎng)絡(luò)對240個目標(biāo)類水聲信號和1440個非目標(biāo)類信號進(jìn)行特征提取,得到測試樣本的特征矩陣(1680*100)。
(13)將測試樣本的特征矩陣(1680*100)依次計算,得到每個測試樣本的類別屬性矩陣(1680*1)。
(14)根據(jù)類別屬性矩陣的正負(fù)判斷歸屬,得出目標(biāo)類測試數(shù)據(jù)識別正確率是87.3%,非目標(biāo)類測試數(shù)據(jù)識別正確率是90.5%。
盡管上面已經(jīng)示出和描述了本發(fā)明的實(shí)施例,可以理解的是,上述實(shí)施例是示例性的,不能理解為對本發(fā)明的限制,本領(lǐng)域的普通技術(shù)人員在不脫離本發(fā)明的原理和宗旨的情況下在本發(fā)明的范圍內(nèi)可以對上述實(shí)施例進(jìn)行變化、修改、替換和變型。