王晨宇,劉禮文,劉罡,李博,楊云川
(中國船舶集團有限公司 第705 研究所,陜西 西安,710077)
水下高速航行器是目前海戰中水面艦艇、潛艇和飛機用于反潛攻艦的主要裝備之一,其水下目標識別能力直接決定著水下高速航行器的命中概率和攻擊效能,是水下高速航行器綜合性能和智能化水平的重要體現[1]。當前,隨著水聲對抗技術的不斷發展,水聲對抗器材已經由最初僅可以模擬點目標特性的點源式聲誘餌,發展到了近年出現的長線陣誘餌甚至二維平面陣誘餌等,對傳統水下目標識別方法提出了巨大的挑戰,亟需尋求新型特征提取與目標識別的途徑[2]。
深度學習是一種利用大量數據、自動學習有利于分類特征表示的學習方法,是一種具有多層信息處理網絡的機器學習技術,已廣泛應用于計算機視覺[3]、語音識別[4-6]和自然語言處理[7]3 個方面。在人工智能引領的浪潮下,將深度學習方法應用在水下目標識別領域已經成為當前研究的熱點之一。學者們已將人工智能技術應用在水下目標識別領域中,如肖璐等[8]中使用主成分分析(principal component analysis,PCA)對水下目標聲圖像進行了識別,并在不同信噪比下的識別率進行了分析;代宏偉[9]提取干涉圖像的多個特征構成特征向量,使用前饋神經網絡對水下目標進行了識別;朱煒[10]在反向傳播(back propagation,BP)神經網絡的基礎上引入粒子群優化算法提高了網絡的收斂速度和學習能力。然而,在實際科學研究中,由于受環境、時間、成本等多方面因素的限制,水下樣本數據的獲取變得極其困難,樣本總量的不足導致模型的訓練效果不佳[11]。生成對抗網絡(generative adversarial networks,GAN)作為一種新的人工智能技術,在數據增強[12-14]、圖像生成[15-16]、語音降噪等領域具有廣泛的應用。利用GAN 對稀少的水下目標回波信號數據進行數據擴充和增強,可有效提高深度學習在水下識別領域的訓練效果。但是,傳統結構的GAN 模型對水下高速航行器水下回波樣本并不適用,不能直接用于樣本數據生成。因此,如何基于水下回波樣本對GAN 模型進行改進是一個重大的挑戰。
基于上述水下目標數據不足的問題,提出了小樣本條件下基于改進型GAN 的水下回波信號生成方法,并結合回波信號的特點,設計并搭建了基于卷積單元的GAN 模型。利用水池實驗測試數據進行了回波信號生成仿真實驗,在信號波形和幅度概率分布層面驗證了生成信號的有效性。將該方法應用到水下目標識別領域,對于解決樣本不足的問題具有重要的意義,為水下目標的主動探測、識別提供了新的思路。
GAN 是一種基于博弈論的生成模型[17]。該模型通過對訓練樣本的概率分布進行學習,生成與訓練樣本概率分布相似的新樣本,從而達到數據生成的目的,該方法在很多研究領域中已經取得了不錯的效果。
生成對抗網絡的基本結構如圖1 所示,其主要由2 個深度網絡組成,分別為生成網絡和判別網絡。生成網絡主要用來生成符合一定分布的且與真實數據極為相似的生成數據;判別網絡的主要作用是在同時收到真實數據和生成器生成數據時,準確地將兩者區分開[18-19]。

圖1 生成對抗網絡結構示意圖Fig.1 Structure diagram of GAN
GAN 的學習過程就是判別網絡和生成網絡通過相互對抗,不斷更新迭代各自的參數,相互促進相互提升,最終使得生成網絡能夠生成與真實數據服從相同分布的數據,同時判別網絡也通過不斷對抗,使其具有更強的分辨能力,進一步提高生成數據的質量。
GAN 本質上是一個博弈的過程,目標是收斂到納什均衡(Nash Equilibrium),訓練完成后使得生成器學習到真實數據的分布。
將判別網絡表示為D,生成網絡表示為G,則GAN 的損失函數可以表示為

式中:x為判別網絡D的輸入數據;D(x)為判別網絡將輸入數據辨別為真實數據的概率;pdata(x)對應的是輸入真實數據時判別網絡判別為真實的概率;pG(x)對應的是輸入為生成網絡產生的生成數據時判別為真實的概率。在訓練判別網絡的時候需要最大化損失函數V(G,D),即當輸入是訓練集中的真實數據時,使得D(x)取得最大值,當輸入是由生成網絡產生的生成數據時,使得D(x)取得最小值;在訓練生成網絡的時候需要最小化損失函數V(G,D),具體來說就是當輸入是由生成網絡產生的生成數據時,使得D(x)取得最大值。
當GAN 訓練其對應的判別網絡時,需要將生成器中的網絡參數固定,只更新判別器的網絡參數。因此,由式(1)可知需要使得下式取得最大值,即

式(2)為求極值問題,可以通過求導來解決。式(2)對D(x)求導并且令其導數為0,求解可得對應的極大值點

式中:D*表示使得式(2)取得最大值時所對應的點,將其代入到式(1)可得

式中,KL(·)表示KL散度(Kullback-Leibler divergence),主要用來描述2 個分步之間的差異[20];其中JSD(·)表示JS散度(Jensen-Shannon divergence)是KL 散度的一種變形,對不同分布間的差異性具有更強的判別能力。訓練判別器的過程實質上就是最大化JS 散度。
接下來,GAN 訓練其對應的生成網絡時,是在判別器取得最大JS 散度的同時更新生成網絡的網絡參數,使得生成數據的概率分步和判別數據的概率分步之間的JS 散度最小化,即

當上式取最小值時,需要JS D(pdata(x)‖pG(x))達到最小值,即真實數據和生成數據的概率分布之間的差異盡可能小。
針對具體的小樣本水下目標回波信號生成任務,對生成對抗模型的網絡結構進行設計。
不同于傳統的圖像生成任務(訓練樣本為二維矩陣),回波信號生成任務的樣本為一維向量。相應的,其GAN 的基本單元應該選取全連接層或者一維卷積層。卷積結構具有局部感受野、權值共享等特點,在降低網絡模型參數和復雜度的同時還確保了高度的縮放、平移不變性,具備廣泛的實用性,所以文中選擇了一維卷積結構作為GAN 的主要運算單元。生成網絡的詳細結構如圖2 所示,其中deconv 表示反卷積層,stride 表示步長,filters表示卷積核的通道數,BatchNorm 表示批量歸一化處 理(batch normalization),activation 表示激活函數。生成網絡主要由輸入層、輸出層和5 個反卷積單元組成。前4 個反卷積單元的激活函數選取Leaky Relu 函數,以避免梯度消失;第5 個反卷積單元的激活函數選取tanth 函數,使得輸出介于-1~+1 之間。為了提高收斂速率以及防止過擬合,前4 個反卷積單元中加入了Batch Norm進行批量歸一化處理。

圖2 生成網絡詳細結構Fig.2 Detailed structure diagram of generative network
判別網絡的詳細結構如圖3 所示,其中conv表示卷積層,Fully Connected 表示全連接層。判別網絡主要由輸入層、輸出層、3 個卷積單元和一個全連接層組成。3 個卷積單元和全連接層的激活函數選取Leaky Relu 函數,以避免梯度消失;為了提高收斂速率以及防止過擬合3 個卷積單元中加入了Batch Norm 進行批量歸一化處理。

圖3 判別網絡詳細結構Fig.3 Detailed structure diagram of discriminative network
整個GAN 首先將長度為100 個數據點的隨機噪聲輸入到生成網絡中,經過5 個反卷積單元的運算,輸出長度為1024 個數據點的生成信號。然后將生成信號和真實信號分別輸入到判別網絡中,經過3 個卷積單元和1 個神經元個數為128 的全連接層,最終輸出信號的真假信息。
GAN 的訓練過程如圖4 所示。
1) 對生成網絡進行訓練。將判別網絡的參數凍結,只更新生成網絡的參數訓練過程如圖4(a)所示。生成網絡的輸入為隨機噪聲,其對應的標簽為真實(1),輸出為真假信息(0/1)。
2) 對判別網絡進行訓練。將生成網絡的參數凍結,只更新判別網絡的參數訓練過程如圖4(b)所示。判別網絡的輸入有2 種,一種為隨機噪聲通過生成網絡后輸出的生成信號,其對應的標簽為虛假(0);一種為真實信號,其對應的標簽為真實(1)。輸出為真假信息(0/1)。

圖4 生成對抗網絡訓練過程示意圖Fig.4 Schematic diagram of GAN training process
3) 順序重復以上2 步,直至收斂。通過生成網絡和判別網絡的不斷對抗使得生成信號越來越逼近真實信號。
文中所使用的水下回波數據均來自消聲水池的實驗測試數據。
通過利用水下高速航行器自導系統原理樣機實物,按照水下高速航行器實際應用場景和態勢,針對水下目標構建半實物仿真環境。水池實驗如圖5 所示,水下高速航行器向水下目標所在方向行進的同時發射探測信號,探測信號經目標反射形成回波信號被水下高速航行器探測系統接收。

圖5 水池實驗側視示意圖Fig.5 Side view of pool experiment
文中以水池實驗測試數據中水下高速航行器主動探測系統接收的水下目標回波的波束輸出信號作為基礎,對其進行處理之后作為訓練樣本輸入。不直接使用原始波束的輸出數據作為神經網絡的輸入主要有以下兩方面的考慮:其一,原始信號的目標特征微弱會導致網絡的訓練難度增大;其二,原始信號的樣本維度過高,使得網絡的訓練參數太多計算量呈指數增長,極大的增長加計算機壓力,產生維度災難[21]。對原始回波數據進行數據標準化、數據截取和副本相關的處理工作,以降低數據維度、增強目標特征,使其適用于神經網絡模型,信號處理流程如圖6 所示。

圖6 數據處理流程Fig.6 Data processing flow
首先對數據進行標準化。由于實驗條件不盡相同,各個樣本之間的分布范圍都有差異,所以需要對數據進行標準化處理。采用Z-score 標準化方法實現數據標準化[22],先對數據去均值,再除以標準差,將數據變換為相同尺度,即

式中:μ為該特征的平均值;σ為標準差,則標準化后的樣本數據均值為0,方差為1,且為無量綱。
接著進行數據截取。由于水下高速航行器主動聲探測系統的1 個周期內接收的回波數據可長達數萬或數十萬個點,而且由于各個探測周期下目標距離不斷發生改變,各周期接收信號長度也會發生變化,回波數據一般長短不一。因此要對原始回波進行信號截取,重點分析目標回波中能量聚集區的數據,以降低輸入數據維度,提高模型的訓練效率。
最后對數據進行副本相關處理。由于截取數據樣本受背景干擾影響較大,特征不夠突出,且各類樣本之間差別較小,因此需要對數據進行副本相關處理。副本相關主要由互相關接收器實現,該方法可以有效提高回波數據的信噪比,使目標特征更加明顯,其原理如圖7 所示。

圖7 相關接收機原理Fig.7 Principle of correlation receiving machine
圖中:x(t)為聲吶接收信號;s(t)為參考信號,一般取聲吶發射信號副本;τ為信號延遲時間;輸出Rxs(τ)為 互相關函數。當 τ等于目標回波的時間延遲時,互相關函數可以取得最大值,即副本相關峰值。
根據實際工程經驗對歸一化后的水池實驗測試原始數據進行數據截取和副本相關處理,得到長度為1024 個數據點的樣本。隨機選取某個段回波信號,對比其數據處理前后的時域波形,如圖8 所示。對比可知,相比于原始回波信號而言,處理后的回波信號數據維度大幅降低,信混比大幅度提高,數據質量有明顯的提升。經過處理后數據集包含288 個樣本,每個樣本的長度都為1024個數據點。

圖8 處理前后的回波信號Fig.8 Echo signal before and after processing
為了驗證所提基于GAN 的目標回波信號生成模型的有效性,利用處理后的目標回波信號作為真實信號進行回波信號生成實驗。生成模型訓練時所使用的超參數如表1 所示。

表1 訓練超參數選擇Table 1 Training hyper-parameter selection
網絡模型訓練時選用的優化器為深度學習中收斂速度較快的Adam 函數。為了防止網絡出現擬合,在網絡中加入了L2 正則化,正則化系數為0.001。由于訓練集數據量較小,選擇小批次訓練,批次大小設為4,進而每回合網絡參數更新次數為72 次。
網絡訓練的回合數會影響生成信號的質量,回合數太少會導致欠擬合,使得生成信號和水池測試信號差異較大;回合數太多會導致過擬合,使得生成信號和水池測試信號完全一樣,喪失了生成信號的意義。下面分別給出訓練100,150,200,250 回合時的生成信號及其幅度概率分布對比。
圖9 所示為訓練100 回合后生成信號與水池測試信號的對比。圖9(a)為隨機選取的16 個水池測試信號的波形圖;圖9(b)為隨機選取的16 個生成信號的波形圖;圖9(c)為288 個水池測試信號與生成信號的幅度概率分布對比。通過對比可以看出,從信號波形層面看,生成信號的亮點等間隔分布基本與水池測試信號一致;從信號幅度概率密度分布來看,水池測試信號的概率分布更加尖銳一些。

圖9 訓練100 回合后生成信號與水池測試信號對比Fig.9 Comparison between generated signal and pool test signal after 100 epoch of training
圖10 所示為訓練150 回合后生成信號與水池測試信號的對比。從信號波形層面看,生成信號的亮點分布相對較為雜亂且亮點個數相對較多;從信號幅度概率密度分布來看,較訓練150 回合后生成信號更加尖銳一點,但是與水池測試信號還有差距。

圖10 訓練150 回合后生成信號與水池測試信號對比Fig.10 Comparison between generated signal and pool test signal after 150 epoch of training
圖11 所示為訓練200 回合后生成信號與水池測試信號的對比。從信號波形層面看,生成信號的亮點等間隔分布與水池測試信號基本一致,且亮點個數與水池測試信號基本一致,都在3~6 之間;從信號幅度概率密度分布來看,生成信號與水池測試信號的幅度概率密度分布走勢基本一致。

圖11 訓練200 回合后生成信號與水池測試信號對比Fig.11 Comparison between generated signal and real signal after 200 epoch of training
圖12 所示為訓練250 回合后生成信號與水池測試信號的對比。從信號波形層面看,生成信號的亮點等間隔分布與水池測試信號基本一致,且亮點個數與水池測試信號基本一致都在3~6 之間;然而,從信號幅度概率密度分布來看,生成信號與水池測試信號差距開始變大,說明訓練回合數太多會導致過擬合,喪失了生成信號的意義。

圖12 訓練250 回合后生成信號與水池測試信號對比Fig.12 Comparison between generated signal and real signal after 250 epoch of training
綜合上述實驗結果可知,文中提出的基于生成對抗網絡的回波信號生成模型,在訓練200 個回合后能夠有效生成高度逼真的水下目標回波信號,且生成的回波信號在信號波形和幅度概率密度分布層面與水池測試信號基本一致。
針對水下目標回波信號數據量稀少且獲取成本較高的問題,提出了一種小樣本條件下基于GAN 的水下回波信號生成方法。結合回波信號的特點,設計并搭建了基于卷積單元的GAN 模型,并且利用水池實驗測試數據進行了回波信號生成仿真實驗。最后在信號波形和幅度概率分布層面驗證了生成信號的有效性。實驗結果表明,文中提出模型可以在小樣本的情況下,有效的生成高度逼真的回波信號,為水下目標的主動探測、識別提供了新的思路。文中所提出的改進型GAN 是基于小樣本條件下的水下回波信號,所生成的數據并不包含分類信息,因此該網絡并不能進行識別訓練。后續會繼續對GAN 進行改進,加入類別信息,為水下目標識別提供新的方法。