,,,,
長沙理工大學 電氣與信息工程學院,長沙 410114
合成孔徑雷達(Synthetic Aperture Radar,SAR)系統具有全天時、全天候的特點,能夠在任何天氣狀況下,全天時不間斷的有效獲取地面信息。星載SAR作為對地觀測的重要手段,已廣泛應用于農業、工業等領域。隨著星載SAR成像技術的不斷完善,海量的SAR數據需要處理,因此從大量基于復雜場景的數據集中獲取信息并完成識別、分割等任務成為了當前的研究熱點[1-3]。圖像目標識別的研究主要包含圖像預處理、特征提取、識別與分類三個方面。傳統的圖像目標識別研究主要基于特征提取,如文獻[4]將應用于人臉識別的非負矩陣分解(Non-negative Matrix Factorization,NMF)特征應用于SAR目標識別;文獻[5]將SAR圖像映射到流形空間,提取局部判別嵌入(Local Discriminant Embedding,LDE)特征,然后用于圖像目標識別;基于特征提取的方法有主成份分析(Principal Component Analysis,PCA)[6]、單演信號描述[7]、支持向量機(Support Vector Machine,SVM)[8]等。以上方法提取的特征均基于人工設計,需要大量的試驗基礎和專業領域知識,并且由于這些特征都是基于目標的底層視覺特征,無法充分表征目標的本質屬性,因此在很多情況下無法獲得有用的特征,導致目標識別效果不佳。2006年,文獻[9]揭開了深度學習(Deep Learning)發展的序幕。近年來,深度學習的模型在圖像識別領域展現出了強大的學習能力,文獻[10]提出一種深度卷積神經網絡將ImageNet數據的分類正確率提升了9%。隨后許多學者在不同的應用背景下提出了多種深度學習模型如棧式消噪自動編碼機[11]、深度置信網絡和卷積神經網絡(Convolutional Neural Network,CNN)等。卷積神經網絡作為一種深度學習模型,由于其權值共享網絡結構使得圖像可直接作為網絡的輸入,卷積神經網絡在圖像識別領域取得了廣泛的應用,如人臉識別[12]、行為識別[13]、醫學圖像識別[14]等。
卷積神經網絡源于人工神經網絡的研究,是一種包含多隱層的多層感知器深度學習結構,這種多層的結構通過組合低層特征形成更加抽象的高層表示屬性類別或特征,以發現數據的分布式特征表示。本文針對SAR圖像數據的目標識別問題,提出一種基于遷移學習監督式預訓練的卷積神經網絡,試驗結果表明該算法有效地改善和提升了網絡誤差收斂和識別精度。
卷積神經網絡是一種多層的監督學習神經網絡,每層由多個二維平面組成,每個平面又包含多個獨立的神經元。典型的卷積神經網絡由卷積層、池化層和全連接層3種類型的二維平面層構成。卷積層通過卷積運算,增強了原信號的特征;池化層也叫下采樣層,利用圖像局部相關性的原理,對輸入圖像進行下采樣,在減少數據處理量的同時保留了特征信息;輸出層通過整合具有類別區分性的特征信息,實現分類器的效果。
(1)卷積層
在卷積層,將輸入圖像或上一層的特征圖與該層的卷積濾波器進行卷積加偏置,通過一個非線性激活函數輸出卷積層的特征圖(feature map)。具體計算如下:
*xl-1+bi
(1)
cl=f(z)
(2)
式中:xl-1為上一層的輸出特征圖;z為經卷積操作后的特征圖輸出;cl為通過非線性激活函數得到的卷積層最終特征圖輸出;k為卷積核;b為偏置;“*”為卷積計算(步長為1);f(·)為非線性激活函數。在該算法中選擇ReLU函數作為非線性激活函數。常用的非線性激活函數如sigmoid和tanh由于其正負飽和區的梯度都接近于0,會出現梯度彌散,而ReLU函數在大于0的部分梯度為常數,因此避免了梯度彌散的問題。同時,采用ReLU函數作為非線性激活函數,由于只有在輸入值為正時有輸出,其余均為零,使得網絡具有了適度的稀疏性,對于卷積層而言,提高了網絡對數據的表征能力,加快了網絡訓練過程的收斂。
(2)池化層
在池化層,對卷積層的輸出特征圖進行下采樣,實現數據的降維。最大值池化采用池化區域中的最大值作為下采樣輸出,避免了零元素對區域中數值較大元素的削弱。
rl=max(rl-1)
(3)
式中:rl-1為上一層的輸出特征圖中對應的一個池化區域;rl為對應池化區域的最大值池化輸出,多個區域輸出組合成最終的池化層輸出特征圖。
(3)輸出層
傳統的CNN采用全連接層作為網絡輸出層輸出分類結果,而CNN中大部分訓練參數集中于全連接層,過多的網絡參數往往帶來過擬合的問題。在本算法中,采用卷積層替代全連接層作為CNN的輸出層,卷積層輸出為個數為N的特征圖(分別對應樣本的N個類別),然后采用Softmax進行歸一化。Softmax回歸模型是logistic回歸模型在多分類問題上的推廣,對于給定的輸入x,Softmax的假設函數定義如下:
(4)
式中:zk為第k個神經元的輸出;wT和b分別為權重和偏置。由式(4)可以看出,Softmax回歸模型把神經元的輸出構造成概率分布,同時起到了歸一化的作用。該算法中損失函數定義為交叉熵損失函數:
C=-∑kyklnzk
(5)
式中:yk為對應于第k類的真實值,取值為0或1。
卷積神經網絡中包含大量的待訓練參數,在訓練開始階段這些參數通常采用隨機初始化的方式,這使得網絡的初始誤差會處于一個數值相對較大的位置,容易導致網絡收斂效果差和過擬合的問題。針對這一問題,提出一種基于特征選擇的遷移學習監督式預訓練方式,目的是為了獲得源域和目標域中共有的特征表示,然后基于這些特征表示來實現知識遷移。
遷移學習是一種運用已有的知識對不同但相關的領域進行求解的機器學習方法,它放寬了傳統機器學習中的兩個基本假設:1)用于學習的訓練樣本和新的測試樣本應滿足獨立且同分布的條件;2)必須有足夠多的訓練樣本才能得到一個好的模型。遷移學習中包含源域(Source Domain)和目標域(Target Domain),定義[15]如下:
D(s)={x,P(x)}
(6)
D(t)={x,P(x)}
(7)
式中:D(s)和D(t)分別為源域和目標域;x和P(x)分別為1個域中的特征空間及其對應的邊際概率分布。針對移動與靜止目標搜索識別(Moving and Stationary Target Acquisition and Recognition,MSTAR)數據集目標識別任務,為了建立一種小規模數據到大規模數據的特征遷移學習,源域的源任務T(s)定義為三類目標識別,目標域的目標任務T(t)定義為十類目標識別。由于源域與目標域的數據具有同分布特性,通過源任務獲得的預訓練模型來初始化目標任務中的網絡參數,從而實現了源域到目標域的特征信息遷移。
圖1為基于遷移學習監督式預訓練的卷積神經網絡目標識別算法流程。算法具體步驟如下:
(1)源域預訓練
將MSTAR中三類目標數據集作為源域訓練樣本,針對三類目標識別任務進行有監督地訓練卷積神經網絡,得到預訓練模型。
(2)特征信息遷移
構建與預訓練模型具有相同結構的卷積神經網絡,將十類目標識別作為目標域的目標任務,將上一步獲得的預訓練模型作為該網絡的初始參數,采用十類目標數據作為訓練樣本對網絡進行微調:
1)前饋網絡:
①根據式(1)計算卷積,卷積結果通過式(2)的非線性激活函數得到卷積層的輸出特征圖cl;
②根據式(3)對特征圖cl進行最大值池化,得到池化層的輸出特征圖;
③將先前層提取到的特征圖通過卷積層輸出對應各類的特征圖,最后利用Softmax回歸模型,根據式(4)得到識別結果。
2)誤差反向傳播:
根據式(5)交叉熵損失函數計算梯度,采用誤差反向傳播的方法調整網絡的權值和偏置參數,直到誤差收斂。
為了驗證算法的有效性,采用美國國防高等研究計劃署支持的MSTAR公開數據集進行試驗,MSTAR數據集是通過高分辨率的聚束式合成孔徑雷達采集到的靜止車輛的SAR切片圖像,包括多類目標的SAR圖像數據。算法基于caffe平臺構建卷積神經網絡實現,試驗環境為:i7-6700(主頻3.4 GHz,四核),16 GB內存,訓練過程采用GPU加速。
本文算法采用一個包含5個卷積層和4個池化層的卷積神經網絡。MSTAR數據集訓練樣本可直接作為網絡的輸入,圖像尺寸縮放為88×88,最終輸出層輸出一個N維的向量,對應于N個類別的概率分布。CNN網絡參數配置如表1所示。
算法基于遷移學習的監督式預訓練獲得預訓練模型,采用MSTAR中數據規模較小的三類目標數據作為源域訓練樣本。三類目標數據如表2所示,訓練樣本為方位角17°下BMP2_SN9563、BTR70_C71、T72_SN132的SAR圖像數據。三類目標識別框架如表1所示,其中N設置為3。

表2 三類目標訓練數據分布
針對源域的三類目標識別任務,采用小批量隨機梯度下降法(Mini-batch Stochastic Gradient Descent,MSGD)訓練源域目標網絡,批處理數量(batchsize)設置為25,學習率設置為0.01。保存訓練迭代60 000次時的網絡參數作為預訓練模型。
為了實現源域到目標域的特征信息遷移,在目標域中構建與源域相同的卷積神經網絡框架,如表1(其中N=10)所示,網絡初始參數由源域獲得的預訓練模型得到。目標域中采用十類目標識別樣本對網絡進行微調。在十類目標數據包括BMP2、BTR70、T72、2S1、BRDM2、ZSU234、BTR60、D7、T62、ZIL131十類目標數據,訓練樣本為方位角17°下的十類目標SAR圖像數據,測試樣本為方位角15°的十類目標SAR圖像數據。十類目標測試與訓練數據分布如表3所示。

表3 十類目標測試與訓練數據分布
針對目標域的十類目標識別任務,采用小批量隨機梯度下降法訓練網絡,batchsize設置為25;由于采用預訓練模型初始化網絡參數,學習率設置為源任務的1/10,即0.001,最大迭代次數為60 000次,每迭代200次進行一次測試。訓練過程在迭代34 200次時測試正確率達到了99.13%,十類目標的識別結果如圖2所示,其中對角線上以黑灰色框出的數字表示目標識別正確的數目,其余表示識別錯誤的數目及對應錯分類別。
為了更好地評測本文算法針對目標域十類目標識別的性能,構建一個采用參數隨機初始化的卷積神經網絡進行對比。兩個網絡具有相同的卷積層和池化層,同樣采用卷積層作為網絡輸出層,訓練過程采用相同的學習率和batchsize。兩個算法的十類目標識別測試正確率對比如表4所示,由正確率對比可以看出本文算法的基于三類目標監督式預訓練CNN比網絡參數隨機初始化的CNN識別精度提升了0.88%。

表4 測試正確率對比
由于兩個卷積神經網絡在訓練迭代10 000次以后已基本達到收斂,所以截取了訓練迭代前10 000次兩個算法誤差收斂情況如圖3所示,由對比曲線可以看出基于監督式預訓練的CNN由于初始誤差較小,誤差的收斂速度和整體收斂情況均優于參數隨機初始化的CNN。測試正確率截取了訓練迭代前15 000次得到對比曲線如圖4所示,由對比曲線可以看出基于監督式預訓練的CNN在整個訓練階段的測試正確率均高于參數隨機初始化的CNN,具有更高的識別精度。
本文算法是基于小規模數據到大規模數據特征信息遷移的思想,為了評測源任務中數據規模大小對目標任務的影響,構建了一個六類目標識別作為源任務實現監督式預訓練的CNN,最終十類目標識別的正確率如表4所示。由表4可得六類目標預訓練的最終識別精度高于網絡參數隨機初始化的CNN,但略低于三類目標預訓練的CNN,可能的原因是,與三類目標預訓練相比,六類目標預訓練的訓練樣本數據分布及CNN輸出層結構與十類目標識別目標任務的相似程度較高,使得這種特征信息遷移對目標任務的影響較小。考慮一種極端情況,若采用十類目標做預訓練,而目標任務也為十類目標識別,這種預訓練實際上起到的效果只是訓練迭代次數的增加而已。由以上分析可得,基于小規模數據到大規模數據特征信息遷移的預訓練方法,在確定預訓練數據的分布與規模大小時,不宜與目標任務的訓練數據具有過高的相似程度。
本文針對MSTAR數據集中的SAR圖像多類目標識別問題,提出了一種基于遷移學習監督式預訓練的卷積神經網絡。首先,建立一種以三類目標識別作為源域、十類目標識別作為目標域的遷移學習模型;然后基于源域預訓練模型進行目標域卷積神經網絡的微調,最終實現了源域到目標域的特征信息遷移。通過這種遷移學習的方式,使得目標域充分利用了源域預訓練模型的特征信息,加快了卷積神經網絡在訓練過程的誤差收斂速度,在目標域的十類目標識別精度達到了99.13%,相比于參數隨機初始化的卷積神經網絡,識別精度提升了0.88%。由于本文算法是從大規模數據中抽取部分數據構建源域樣本,從而實現特征遷移,故該方法不適用于小規模數據的卷積神經網絡訓練。今后的研究方向可在源域數據樣本分布與規模大小的標準定義上展開。