鄭凱東,李阿瑩
(西安石油大學(xué) 計(jì)算機(jī)學(xué)院,西安 710065)
高光譜遙感是指用大量狹窄的電磁波通道獲取地物的空間、輻射和光譜三重信息的技術(shù)[1]。高光譜成像遙感技術(shù)可以獲取地物的光譜、輻射和空間信息,是通過電磁波譜中可見光、紅外線的波段范圍獲取地物的數(shù)據(jù)信息,構(gòu)成圖像數(shù)據(jù)立方體[2]。
在研究早期,科研人員主要把關(guān)注點(diǎn)放在光譜特征的提取上,相關(guān)的方法包括主成分分析、獨(dú)立成分分析、線性判別式分析等,利用這些方法來提取高光譜圖像的光譜特征,并使用分類器進(jìn)行分類,比較常用的有支持向量機(jī)(Support Vector Machine,SVM)[3]、隨機(jī)森林[4]、多項(xiàng)式邏輯回歸分類[5]等方法。
卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)是深度學(xué)習(xí)的代表算法之一,已有眾多學(xué)者在應(yīng)用CNN 及改良的網(wǎng)絡(luò)結(jié)構(gòu)對高光譜圖像分類進(jìn)行研究,如Chen 等人[6]利用高光譜圖像的像素信息作為輸入,顯著提高了結(jié)果精度。然而由于高光譜圖像具有二維空間信息和一維光譜信息,因此在利用CNN 模型對高光譜圖像分類時(shí)會(huì)因?yàn)檫@些冗余信息而對精度造成影響[7]。在此基礎(chǔ)上,Xu 等人[8]提出了3D Octave 卷積模型,能夠從高光譜圖像中提取空間-光譜特征,并引入注意力機(jī)制來加強(qiáng)重要區(qū)域的空間-光譜信息的提取,但該模型在網(wǎng)絡(luò)訓(xùn)練方面耗費(fèi)了更多的時(shí)間成本。由于高光譜圖像的光譜數(shù)據(jù)本質(zhì)上是一類序列數(shù)據(jù)[9],Venkatesan 等人[10]首次把循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)引入到高光譜圖像分類中,并提出了一種激活函數(shù)和參數(shù)校正函數(shù),用于分析高光譜圖像中的數(shù)據(jù)序列。Zhou 等人[11]提出了一種基于光譜-空間長短時(shí)記憶網(wǎng)絡(luò)的高光譜圖像分類方法,大大減少了網(wǎng)絡(luò)模型的訓(xùn)練時(shí)間,但精度略遜于改良后的CNN 模型。
基于以上研究,本文提出了一種基于RNN 及多重注意力機(jī)制融合網(wǎng)絡(luò)(LZ-Bidirectional Recurrent Neural Network,LZ-BRNN),用雙向循環(huán)神經(jīng)網(wǎng)絡(luò)BRNN 來處理高光譜圖像的序列數(shù)據(jù),減少時(shí)間成本,并引入三重注意力機(jī)制來提升網(wǎng)絡(luò)模型的精確度。
本文提出一種基于RNN 及多重注意力機(jī)制融合的網(wǎng)絡(luò)模型(LZ-BRNN),網(wǎng)絡(luò)框架流程如圖1 所示。圖1 中,模型用雙向循環(huán)神經(jīng)網(wǎng)絡(luò)(BRNN)來處理高光譜圖像的序列數(shù)據(jù),減少時(shí)間成本,同時(shí)引入三重注意力機(jī)制,通過三分支結(jié)構(gòu)捕獲跨維度交互來計(jì)算注意力權(quán)重,用來提高整個(gè)網(wǎng)絡(luò)模型分類的精確度。
圖1 LZ-BRNN 網(wǎng)絡(luò)框架流程圖Fig. 1 LZ-BRNN network framework flowchart
BRNN 的基本思想是提出每一個(gè)訓(xùn)練序列向前和向后分別是2 個(gè)循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN),而且這2個(gè)都連接著一個(gè)輸出層。該結(jié)構(gòu)給輸出層輸入序列中提供每一個(gè)點(diǎn)的完整的過去和未來的上下文信息。文中給出BRNN 隱藏層和輸出層的計(jì)算公式分別如下:
深度學(xué)習(xí)中的注意力機(jī)制(Attention Mechanism,AM)是根據(jù)重要性給圖像不同部分分配不同的權(quán)重,有助于忽略掉不重要的特征信息。本文引用三重注意力機(jī)制(Triplet Attention,TA),由3 個(gè)分支組成。其中,2 個(gè)用于捕獲通道C和空間H或W之間的跨維交互,第3 個(gè)分支發(fā)揮著類似卷積注意力模塊(CBAM)的作用。TA 模型設(shè)計(jì)原理如圖2 所示。
圖2 Triplet Attention 模型原理圖Fig. 2 Schematic diagram of the Triplet Attention model
所有實(shí)驗(yàn)的硬件設(shè)備均在Intel(R)Core(TM)i7-10870H CPU @ 2.20 GHz 2.21 GHz 處理器,Nvidia GeForce RTX 2070MQ 顯卡的系統(tǒng)上運(yùn)行的。同時(shí),主機(jī)選用Windows10 操作系統(tǒng),運(yùn)行環(huán)境為Python3.6,Torch1.10.0+CU102。
為了驗(yàn)證本文方法的有效性,在高光譜圖像的2 個(gè)公開數(shù)據(jù)集、即Botswana 和PaviaC 上進(jìn)行實(shí)驗(yàn)。其中,Botswana 數(shù)據(jù)集像素分辨率為30 m,包含145 個(gè)可用于高光譜圖像分類的波段,數(shù)據(jù)涵蓋了14 種地物類別,分別是Water、Hippo grass、Floodplain grasses1 等。PaviaC 數(shù)據(jù)集經(jīng)過處理后共有102 個(gè)可用波段,數(shù)據(jù)包含了9 種地物類別,分別是Water、Trees、Asphalt 等。
本次實(shí)驗(yàn)的主要評價(jià)指標(biāo)有:迭代次數(shù)(epoch)、訓(xùn)練集劃分(training_sample)以及學(xué)習(xí)率(learning_rate),經(jīng)過多次實(shí)驗(yàn),最終將測試集和訓(xùn)練集各取樣本數(shù)據(jù)的50%,epoch取200,learning_rate設(shè)置為0.001,在實(shí)驗(yàn)中能取得更好的結(jié)果。
本文實(shí)驗(yàn)主要與傳統(tǒng)分類方法、如SVM[12],以及近年來在高光譜圖像分類問題中常用的算法進(jìn)行比較,如RNN[13]、3D-FCN[14]、3D-CNN[15]。根據(jù)高光譜常用的衡量精度指標(biāo):總體分類精度(Overall Accuracy,OA)以及Kappa系數(shù)進(jìn)行分類精度比較[16],同時(shí)還要計(jì)算每次分類所用時(shí)間,用來驗(yàn)證分類的實(shí)時(shí)性。
在參數(shù)設(shè)定的基礎(chǔ)上,分別在Botswana、PaviaC數(shù)據(jù)集上各進(jìn)行10 次實(shí)驗(yàn),最終實(shí)驗(yàn)結(jié)果取平均值,表1 為Botswana 數(shù)據(jù)集實(shí)驗(yàn)分類結(jié)果。
表1 Botswana 數(shù)據(jù)集分類結(jié)果Tab.1 Classification results of the Botswana dataset
由表1 可以得出,在Botswana 數(shù)據(jù)集上,本文所提出的方法在精度上高于SVM 和普通的循環(huán)神經(jīng)網(wǎng)絡(luò)以及3D-FCN 網(wǎng)絡(luò)模型,在OA和Kappa值上高于三者,比改進(jìn)后的3D-CNN 略高一點(diǎn)。在分類耗費(fèi)時(shí)間成本上,RNN 用時(shí)最短,也表現(xiàn)出了RNN處理時(shí)序數(shù)據(jù)的優(yōu)越性,隨著網(wǎng)絡(luò)層數(shù)的增加,3DCNN 雖然在精度上要高于3D-FCN、但用時(shí)更長,LZ-RNN 在RNN 基礎(chǔ)上進(jìn)行改良,使得整體時(shí)間成本仍在可接受范圍內(nèi)。圖3 為不同模型在Botswana數(shù)據(jù)集上的分類結(jié)果。
圖3 不同模型在Botswana 數(shù)據(jù)集分類結(jié)果圖Fig. 3 Classification results graph of different models in the Botswana dataset
圖3(a)是在Botswana 數(shù)據(jù)集取波段為(75,33,15)得到的真值圖。用紅色選框標(biāo)注的是通過模型分類與真值有偏差的區(qū)域,隨著模型的不斷優(yōu)化,出錯(cuò)區(qū)域明顯越來越少,這也與表1 得出的數(shù)據(jù)相吻合。
第二組實(shí)驗(yàn)是在Pavia Center 數(shù)據(jù)集上進(jìn)行,由于該數(shù)據(jù)集像素點(diǎn)遠(yuǎn)高于Botswana 數(shù)據(jù)集,分類所需時(shí)間也有所增加,在本次實(shí)驗(yàn)中將迭代次數(shù)epoch設(shè)為100,其他參數(shù)不變,表2 為PaviaC 數(shù)據(jù)集實(shí)驗(yàn)分類結(jié)果。
表2 PaviaC 數(shù)據(jù)集分類結(jié)果Tab.2 Classification results of the PaviaC dataset
從表2 可以得出,在PaviaC 數(shù)據(jù)集上,本文提出的LZ-RNN 模型在OA值和Kappa值上高于其他算法。由于PaviaC 圖像的像素點(diǎn)遠(yuǎn)高于Botswana數(shù)據(jù),但RNN 模型仍能在較短的時(shí)間內(nèi)進(jìn)行分類,且在精度上略高于CNN 模型。而通過改良得到的LZ-RNN 提升了原模型的精度。圖4 為不同模型在PaviaC 數(shù)據(jù)集上的分類結(jié)果。
圖4(a)是在PaviaC 數(shù)據(jù)集取波段為(55,41,12)得到的真值圖。用紅色選框標(biāo)注的是通過模型分類與真值有偏差的區(qū)域。隨著模型的不斷優(yōu)化,出錯(cuò)區(qū)域明顯越來越少,圖像上冗余斑點(diǎn)也越來越少。實(shí)驗(yàn)證明,本文提出的LZ-RNN 模型對于大部分地物類別的分類均取得了良好的效果,有多個(gè)地物類別的效果達(dá)到99.9%,既保證了精度,又將時(shí)間成本控制在可接受的范圍內(nèi)。
圖4 不同模型在PaviaC 數(shù)據(jù)集分類結(jié)果圖Fig. 4 Classification results graph of different models in the PaviaC dataset
本文提出了一種基于循環(huán)神經(jīng)網(wǎng)絡(luò)和多重注意力機(jī)制的高光譜圖像分類模型,網(wǎng)絡(luò)結(jié)構(gòu)簡單且有效,模型用雙向循環(huán)神經(jīng)網(wǎng)絡(luò)(BRNN)來處理高光譜圖像的序列數(shù)據(jù),降低了時(shí)間成本,引入多重注意力機(jī)制來提升分類精度,通過實(shí)驗(yàn)對比,證明本文提出的方法能夠在較短的時(shí)間內(nèi)完成高光譜圖像分類任務(wù),且展現(xiàn)出優(yōu)秀的分類性能。