劉英旭,蒲春宇,許典坤,楊沂川,黃 鴻*
(1.重慶大學(xué) 光電技術(shù)及系統(tǒng)教育部重點實驗室,重慶 400044;2.重慶大學(xué) 光電工程學(xué)院測控技術(shù)與儀器專業(yè),重慶 400044)
隨著遙感技術(shù)的飛速發(fā)展,所獲取的遙感影像數(shù)量呈爆炸式增長,對遙感影像的解譯工作也隨之成為研究熱點。作為遙感影像解譯領(lǐng)域的重要分支之一,場景分類問題旨在根據(jù)遙感影像中所包含的視覺信息來給每一幅影像分配預(yù)定義的場景標(biāo)簽。場景分類任務(wù)以龐大的遙感影像數(shù)據(jù)量和計算機(jī)高效的計算能力為基礎(chǔ),近年來廣泛地應(yīng)用在城鄉(xiāng)規(guī)劃、環(huán)境監(jiān)測和自然災(zāi)害檢測等領(lǐng)域[1]。
場景分類任務(wù)根據(jù)遙感數(shù)據(jù)的不同可劃分為高分辨率影像場景分類和高光譜影像場景分類。由于高分辨率影像能夠清晰地呈現(xiàn)地物細(xì)節(jié)信息和空間模式,現(xiàn)階段場景分類任務(wù)主要面向高分辨率影像。但當(dāng)前場景分類任務(wù)面臨復(fù)雜背景干擾和地物結(jié)構(gòu)多變等挑戰(zhàn),由RGB 三通道構(gòu)成的高分辨率遙感影像僅包含地物信息與空間結(jié)構(gòu),有限的光譜信息難以分辨紋理、形狀和顏色等視覺感知類似的場景之間的細(xì)小差別,可能造成錯分或混淆現(xiàn)象。因此,在保證場景空間分辨率的基礎(chǔ)上引入豐富的光譜信息,則可以提升對視覺感知類似場景的判別能力。
近年來,人們對基于高光譜影像(Hyperspectral Image,HSI)的場景分類任務(wù)展開了積極研究。與高分辨率影像相比,HSI 具有“圖譜合一”的優(yōu)勢,有利于挖掘地物細(xì)微的光譜差異來實現(xiàn)不同場景的本征表達(dá)。雖然HSI 內(nèi)蘊豐富的空-譜信息,但其非線性強(qiáng)、高度冗余和數(shù)據(jù)量大等特點導(dǎo)致場景分類模型存在特征提取能力有限和計算復(fù)雜度高等問題。由于高光譜影像場景分類的相關(guān)研究仍處于探索階段,現(xiàn)階段面向場景分類的高光譜數(shù)據(jù)集相對匱乏。
特征提取是實現(xiàn)高光譜場景分類的關(guān)鍵步驟。根據(jù)所提取特征的表示能力不同,面向場景分類任務(wù)的方法可分為傳統(tǒng)分類方法和基于深度學(xué)習(xí)的方法兩類。傳統(tǒng)場景分類方法主要是通過目標(biāo)地物的顏色、紋理、光譜等信息手工制作淺層特征,如尺度不變特征變換(Scale-Invariant Feature Transform,SIFT)特征[2],定向梯度(Histogram of Oriented Gradients,HOGs)特征[3]和局部二值(Local Binary Pattern,LBP)特征[4]。將手工特征與特征編碼方法相結(jié)合可以提取遙感影像高階的統(tǒng)計信息,代表方法有視覺詞袋(Bag-of-Visual-Words,BoVW)[5],隱含狄利克雷分布(Latent Dirichlet Allocation,LDA)[6]和概率潛在語義分析(Orobabilistic Latent Semantic Analysis,PLSA)[7]。上述傳統(tǒng)方法雖然易于實現(xiàn),但是高性能特征描述符的構(gòu)造嚴(yán)重依賴領(lǐng)域內(nèi)相關(guān)經(jīng)驗且費時耗力。此外,淺層特征只能對場景信息的特定方面進(jìn)行有限表征,導(dǎo)致上述方法的分類性能難以滿足復(fù)雜的場景分類任務(wù)。
深度學(xué)習(xí)作為機(jī)器學(xué)習(xí)的一種新范式,能通過層級結(jié)構(gòu)自主實現(xiàn)對輸入數(shù)據(jù)從淺層到深層的抽象表示,在遙感場景分類任務(wù)中已得到廣泛應(yīng)用[8]。當(dāng)前,基于深度學(xué)習(xí)的分類方法大致可以分為三類:基于全訓(xùn)練的方法、基于預(yù)訓(xùn)練模型的方法和基于微調(diào)的方法。周勤等[9]基于深度置信網(wǎng)絡(luò)(Deep Belief Network,DBN)提出迭代特征學(xué)習(xí)算法,該方法根據(jù)查詢重構(gòu)權(quán)值來實現(xiàn)判別特征的選擇。為充分利用航拍場景不同層級的特征,Bi 等[10]構(gòu)建了一個多實例密集連接卷積神經(jīng)網(wǎng)絡(luò)。上述兩種模型屬于第一類方法,此類方法根據(jù)目標(biāo)數(shù)據(jù)進(jìn)行建模,因此不受固定網(wǎng)絡(luò)架構(gòu)的限制。由于遙感影像標(biāo)記樣本與模型可訓(xùn)練參數(shù)量之間的不平衡性,從零開始訓(xùn)練高性能模型需要高昂的計算成本。
考慮到圖像的基本元素相同,人們采用在大規(guī)模數(shù)據(jù)集(如ImageNet)上預(yù)訓(xùn)練的模型(如GoogLeNet,VGGNet,ResNet)作為特征提取器,并對輸出的特征映射進(jìn)行編碼,以提高場景分類性能。程塨等[11]利用現(xiàn)有卷積神經(jīng)網(wǎng)絡(luò)提取到的深度特征作為視覺詞進(jìn)行場景分類。為提高預(yù)訓(xùn)練模型的分類性能,李二珠等[12]利用特征編碼方法將多層特征進(jìn)行有效融合。然而,自然圖像與遙感圖像在空間布局、成像角度和背景信息等方面存在巨大差異,預(yù)訓(xùn)練模型直接學(xué)習(xí)到的特征難以準(zhǔn)確描述目標(biāo)場景。
為提高特征鑒別能力,許多方法利用遙感數(shù)據(jù)對預(yù)訓(xùn)練模型進(jìn)行微調(diào)。與基于預(yù)訓(xùn)練模型的方法相比,利用遙感數(shù)據(jù)對預(yù)訓(xùn)練模型進(jìn)行微調(diào)被認(rèn)為是一種提高特征識別能力的有效策略。Chaib 等[13]通過判別相關(guān)分析算法(Discriminant Correlation Analysis,DCA)對預(yù)訓(xùn)練VGGNet 的輸出特征再次進(jìn)行挖掘。雙流特征聚合深度神經(jīng)網(wǎng)絡(luò)(Two-Stream Feature Aggregation Deep Neural Network,TFADNN)[14]通過鑒別特征流和一般特征流來提升場景的表征能力。房杰等[15]采用圓形卷積模塊(Circular Convolutional Module,CCM)對來自空間域的鑒別特征和頻率域的位置特征進(jìn)行有效融合。雖然上述方法在一定程度上提高了場景的分類精度,但針對遙感圖像復(fù)雜的空間布局,關(guān)鍵的地物遠(yuǎn)程依賴性卻被忽略。
Transformer[16]具有學(xué)習(xí)遠(yuǎn)程上下文關(guān)系的能力,這在遙感領(lǐng)域得到了充分驗證。Bazi 等[17]采用Transformer 對遠(yuǎn)程信息進(jìn)行提取,并引入多種數(shù)據(jù)增強(qiáng)方法來提升模型判別能力。遙感Transformer(Remote Sensing Transformer,TRS)[18]集成了卷積神經(jīng)網(wǎng)絡(luò)和Transformer 兩種架構(gòu)的優(yōu)勢,并在公開數(shù)據(jù)集上取得了具有競爭力的分類結(jié)果。然而,Transformer 在對空-譜信息高度冗余的HSI 進(jìn)行分析處理時,具有較高的計算復(fù)雜度和時間成本,這極大地限制了基于Transformer 的方法在高光譜影像場景分類任務(wù)上的應(yīng)用。知識蒸餾(Knowledge Distillation,KD)在保持良好性能的同時可降低模型的復(fù)雜度,因此它是實現(xiàn)模型壓縮的較優(yōu)策略。KD 可以將教師網(wǎng)絡(luò)學(xué)到的知識有效轉(zhuǎn)移到學(xué)生網(wǎng)絡(luò),即將原始訓(xùn)練集與提煉出來的知識進(jìn)行融合,以實現(xiàn)對學(xué)生網(wǎng)絡(luò)的訓(xùn)練。石程等[19]設(shè)計了尺度蒸餾網(wǎng)絡(luò),該框架利用多尺度教師模型探索鑒別信息。Hu 等[20]通過變分估計以概率的方式進(jìn)行KD,實現(xiàn)交互信息的端到端優(yōu)化。不過,基于KD 的方法目前面臨以下問題:(1)通常以卷積神經(jīng)網(wǎng)絡(luò)為教師模型,不能有效探索數(shù)據(jù)內(nèi)蘊的長距離上下文信息;(2)教師和學(xué)生模型被視為兩個獨立的環(huán)節(jié)進(jìn)行訓(xùn)練,難以實現(xiàn)協(xié)同優(yōu)化;(3)為獲取較低的計算復(fù)雜度,學(xué)生模型架構(gòu)過于簡單,教師模型的性能遠(yuǎn)優(yōu)于學(xué)生模型。
針對上述問題,本文提出了輕量化深度全局-局部知識蒸餾(Lightweight Deep Global-Local Knowledge Distillation,LDGLKD)網(wǎng)絡(luò),以提升高光譜影像場景分類性能,降低模型的計算復(fù)雜度。由于HSI 的高維特性強(qiáng)且空-譜信息冗余,部署ViT 作為教師模型,通過多頭注意力機(jī)制實現(xiàn)遠(yuǎn)程上下文關(guān)系的學(xué)習(xí)。預(yù)訓(xùn)練的學(xué)生模型VGG16 用來提取數(shù)據(jù)中的局部細(xì)節(jié)信息。在LDGLKD 中,改進(jìn)的知識蒸餾架構(gòu)通過有效控制學(xué)習(xí)率來實現(xiàn)學(xué)生模型與教師模型的協(xié)同優(yōu)化,促使輕量化的學(xué)生模型能更有效地學(xué)習(xí)來自教師模型的鑒別信息。結(jié)合兩種模型優(yōu)點的學(xué)生模型單獨進(jìn)行測試,在保證分類精度的同時,降低了模型的計算復(fù)雜度。
高光譜影像具有復(fù)雜的空間布局和豐富的空-譜信息,探索遠(yuǎn)距離上下文關(guān)系可以進(jìn)一步提高分類性能。LDGLKD 方法通過改進(jìn)的知識蒸餾充分探索高光譜影像的遠(yuǎn)距離上下文信息和局部結(jié)構(gòu)特征,其總體結(jié)構(gòu)如圖1 所示。LDGLKD 網(wǎng)絡(luò)主要包括教師模型與學(xué)生模型兩個部分。其中,教師模型ViT 旨在提取輸入樣本塊間的長距離上下文聯(lián)系。結(jié)構(gòu)相對簡單的學(xué)生模型VGG16 用來學(xué)習(xí)影像的局部細(xì)節(jié)信息。針對訓(xùn)練階段和測試階段損失函數(shù)的特定構(gòu)造,兩種模型在訓(xùn)練階段可進(jìn)行協(xié)同優(yōu)化,以保證ViT 將所學(xué)習(xí)到的判別信息有效轉(zhuǎn)移到VGG16中。值得注意的是,僅有完成了知識蒸餾的學(xué)生模型進(jìn)入測試階段,旨在提高分類性能的同時減少模型的計算成本。
圖1 輕量化深度全局-局部知識蒸餾網(wǎng)絡(luò)Fig.1 Framework of proposed Lightweight Deep Globle-local Knowledge Distillation(LDGLKD)network
ViT 在影像分類任務(wù)上具有出色的性能,它可以通過多頭注意力機(jī)制來提取序列之間的長距離依賴關(guān)系。因此,在LDGLKD 網(wǎng)絡(luò)中,ViT充當(dāng)教師模型來向?qū)W生模型傳遞樣本間的遠(yuǎn)程聯(lián)系。
以本文所構(gòu)造的32 通道高光譜數(shù)據(jù)集為例,將每一幅高光譜影像的尺寸設(shè)為H×W×32,其中H和W為影像的長和寬。將影像裁剪成N個尺寸為P×P×32 的樣本,其中N=H×W/P2為樣本總數(shù),P為樣本的邊長,將所有樣本拉伸從而得到一個尺寸為N×(P2×32)的序列S。然后,采用一個尺寸為(P2×32)×D的嵌入矩陣M將序列S線性映射到D維空間中。其次,利用一個可學(xué)習(xí)的向量Cemb與已經(jīng)完成嵌入的樣本進(jìn)行級聯(lián),該向量用作教師模型最后對影像分類的預(yù)測。考慮到記錄每個樣本所在位置的重要性,將一個維度為(N+1)×D的位置向量Pemb與嵌入后的樣本執(zhí)行元素級加法。因此,教師模型的輸入R0可以表示為:
Transformer 編碼器作為ViT 模型中最關(guān)鍵的部分,由L層相同結(jié)構(gòu)堆疊而成,即由多頭注意力機(jī)制(Multihead Self-attention,MSA)和多層感知器(Multilayer Perception,MLP)模塊交替構(gòu)成,這里將L設(shè)置為12。在每一個模塊之前均進(jìn)行層標(biāo)準(zhǔn)化(Layer Norm,LN),并采用殘差連接來傳遞影像中的信息。輸入R0被編碼器處理后,MSA 會強(qiáng)調(diào)輸入影像的長距離依賴信息。如圖2 所示,對于第l層,中間變量和輸出Rl可以表示為:
圖2 ViT 模型中第l 層的詳細(xì)結(jié)構(gòu)Fig.2 Detail structure of layer l in ViT model
作為編碼器中最重要的模塊,MSA 由線性映射、自注意力機(jī)制、級聯(lián)操作以及最后的線性映射四層組成。不同于傳統(tǒng)的注意力機(jī)制,這里所采用的自注意力機(jī)制采取了一系列的查詢向量Q、鍵向量K和值向量V來計算輸出向量,這3 個可學(xué)習(xí)的向量維度分別為dq,dk,dv。對于每一個在輸入序列R中的元素,Q,K,V可以通過將R與3 個可學(xué)習(xí)的矩陣UQ,UK,UV相乘得到,UQ,UK,UV的維度均為D×dk,其計算公式為:
為確定輸入樣本間的遠(yuǎn)距離聯(lián)系,將每一個查詢向量與所有鍵向量進(jìn)行點積運算來生成注意力權(quán)重。注意力權(quán)重Watt的計算公式如下:
為了提高自注意力機(jī)制的性能并減少計算復(fù)雜度,Q,K,V向量通過不同的線性映射重復(fù)計算t次,然后并行執(zhí)行式(6)。隨后,將生成的t個權(quán)重矩陣級聯(lián),其中每一個權(quán)重矩陣均稱為一個“頭”。MSA 模塊的結(jié)果可以表示為:
其中:W為維度是t×dv×D的可學(xué)習(xí)矩陣,[·,·]表示級聯(lián)操作。需要說明的是,dk=dv=D/t且t=12,D=768。
當(dāng)MSA 模塊的輸出生成之后,使用MLP 模塊來產(chǎn)生Transformer 編碼器中的輸出,MLP 模塊由兩層全連接層組成,中間由高斯誤差線性單元(Gaussian Error Linear Units,GELU)作為激活函數(shù)將其連接。GELU 的計算公式如下:
其中φ(x)代表標(biāo)準(zhǔn)高斯分布。在Transformer編碼器中LN 的計算公式如下:
式中:μf代表第f層的均值,σf代表第f層的標(biāo)準(zhǔn)差,B代表一層中隱藏單元的個數(shù),代表第f層中第i個隱藏單元的輸入總和,每層中的所有隱藏單元采用相同的歸一化項μ和σ。歸一化隱藏單元的計算公式如下:
式中ε是為了計算穩(wěn)定性而加上的一個常數(shù)。
卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNNs)根據(jù)其層級結(jié)構(gòu),可以逐步地從數(shù)據(jù)中提取到深層特征。近年來,各種各樣的CNNs 相繼被提出,VGG16 作為一種典型模型,具有特征提取能力強(qiáng)、結(jié)構(gòu)相對簡單、參數(shù)量較多等特點。學(xué)生模型利用一個全局平均池化層(Global Average Pooling,GAP)和一個全連接層來替代 VGG16 的三個全連接層,以進(jìn)一步簡化VGG16 的網(wǎng)絡(luò)架構(gòu)并減少可訓(xùn)練的參數(shù)量。因此,本文選取 VGG16 作為知識蒸餾中輕量化的學(xué)生模型。
全局平均池化層可以將一個大小為Y×Z×C的特征圖U轉(zhuǎn)化為一個C維的特征向量,具體公式如下:
式中Y,Z,C分別代表特征圖的長、寬和通道數(shù)。
知識蒸餾是一種可以將知識從復(fù)雜神經(jīng)網(wǎng)絡(luò)(教師模型)轉(zhuǎn)移到簡單神經(jīng)網(wǎng)絡(luò)(學(xué)生模型)的特征壓縮融合技術(shù),它在保持高精度的同時還降低了計算復(fù)雜度。學(xué)生模型通過學(xué)習(xí)教師模型輸出的“軟標(biāo)簽”來獲得更加豐富的信息,這其中不僅包括了正標(biāo)簽信息,也包括了負(fù)標(biāo)簽中的海量信息。同時,學(xué)生模型還對來自于地面真值的硬標(biāo)簽進(jìn)行學(xué)習(xí),以此來增強(qiáng)學(xué)生模型的穩(wěn)定性。
在LDGLKD 方法中,通過共同優(yōu)化教師模型ViT 和學(xué)生模型VGG16,將教師模型所提取的遠(yuǎn)距離上下文聯(lián)系轉(zhuǎn)移到學(xué)生模型。本文所提出的知識蒸餾策略共分為兩個步驟。
在第一階段,教師模型和學(xué)生模型通過最小化損失函數(shù)Lfir進(jìn)行共同優(yōu)化。然后,教師模型的學(xué)習(xí)率逐漸減小到0,學(xué)生模型單獨進(jìn)入到第二階段,并以損失函數(shù)Lsec進(jìn)行優(yōu)化。其中,損失函數(shù)Lfir和Lsec分別為:
式中:LKD為知識蒸餾損失函數(shù),為教師模型與地面真值的交叉熵?fù)p失函數(shù),為學(xué)生模型與地面真值的交叉熵?fù)p失函數(shù),α代表知識蒸餾系數(shù),用來平衡知識蒸餾損失函數(shù)LKD與交叉熵?fù)p失函數(shù)LC之間的重要程度。其中,LKD是讓學(xué)生模型VGG16 去模仿教師模型ViT 概率分布的關(guān)鍵,其定義如下:
式中:T代表知識蒸餾的溫度,確定了模型輸出預(yù)測標(biāo)簽的平滑程度;KLdiv 表示Kullback-Leibler(KL)散度,可以測量兩個分布之間的距離,其計算公式如下:
式中p(x)和q(x)是兩個分離隨機(jī)變量的概率分布。
在式(16)中,與傳統(tǒng)的Softmax(T=1)計算概率分布不同,是通過高溫Softmax 函數(shù)計算出的學(xué)生模型和教師模型輸出結(jié)果的各類概率分布。蒸餾溫度T越高,則計算得到的各類概率分布越平緩。中第j類的計算公式如下:
在LDGLKD 網(wǎng)絡(luò)中,LKD是將教師模型中的長距離上下文聯(lián)系向?qū)W生模型轉(zhuǎn)移的橋梁,LC提供了硬標(biāo)簽信息并與LKD形成互補。因此,LDGLKD 網(wǎng)絡(luò)在模型收斂后,學(xué)生模型可以同時提取輸入數(shù)據(jù)中長距離上下文聯(lián)系和局部細(xì)節(jié)信息。表1 是LDGLKD 網(wǎng)絡(luò)的運算過程。
表1 LDGLKD 算法步驟Tab.1 Steps of LDGLKD algorithm
為驗證LDGLKD 網(wǎng)絡(luò)的分類性能,本文采用所構(gòu)建的歐比特高光譜遙感影像場景分類數(shù)據(jù)集(Orbita Hyperspectral Image Scene Classification Dataset,OHID-SC)和公開的高光譜遙感圖像數(shù)據(jù)集(Hyperspectral Remote Sensing Dataset for Scene Classification,HSRS-SC)進(jìn) 行驗證。
3.1.1 OHID-SC 數(shù)據(jù)集
為實現(xiàn)高光譜數(shù)據(jù)在場景分類任務(wù)上的應(yīng)用,劉康[21]和徐科杰[22]等分別構(gòu)建了天宮一號高光譜遙感場景分類數(shù)據(jù)集(TianGong-1 Hyperspectral Remote Sensing Scene Classification Dataset,TG1HRSSC)和HSRS-SC。然而,上述數(shù)據(jù)集的場景覆蓋相對單一且規(guī)模較小,難以有效反映各種典型的地表覆蓋情況。因此,本文根據(jù)歐比特珠海一號遙感數(shù)據(jù)服務(wù)平臺所提供的HSI 數(shù)據(jù),構(gòu)建了歐比特高光譜遙感影像場景分類數(shù)據(jù)集。首先,利用ENVI 平臺對原始32 張?zhí)N含著不同波段信息的遙感影像進(jìn)行波段融合。其次,在該遙感影像上進(jìn)行感興趣區(qū)域(Regions of Interest,ROI)裁剪,該步驟是構(gòu)建本數(shù)據(jù)集最重要的環(huán)節(jié)之一。最后,在高光譜遙感影像中剪裁出64×64 的地物級別場景影像,并利用谷歌地球高清衛(wèi)星地圖對所裁剪區(qū)域進(jìn)行人工目視標(biāo)注,同時根據(jù)中華人民共和國土地利用現(xiàn)狀分類國家標(biāo)準(zhǔn)為其分配場景語義標(biāo)簽,最終形成OHID-SC 數(shù)據(jù)集。數(shù)據(jù)集的總體構(gòu)建流程如圖3 所示。
圖3 OHID-SC 數(shù)據(jù)集的總體構(gòu)建流程Fig.3 Overall build process for OHID-SC dataset
珠海一號OHS 系列衛(wèi)星運行軌道覆蓋我國境內(nèi)大多數(shù)地區(qū),OHID-SC 數(shù)據(jù)集選取其中最具有代表性的6 類場景(城鄉(xiāng)建筑、耕地、森林、山體、未利用土地、水體)作為語義類別,共計2 280張影像。該數(shù)據(jù)集影像的空間尺寸均為64×64,波段數(shù)均為32,每個語義類別的影像數(shù)量從284到439 幅不等。圖4 提供了每個語義類別的示例影像和樣本數(shù)量。
圖4 OHID-SC 數(shù)據(jù)集各類別的示例圖像Fig.4 Examples of scene in constructed OHID-SC dataset
3.1.2 HSRS-SC 數(shù)據(jù)集
該數(shù)據(jù)集源自黑河生態(tài)水文遙感試驗航空數(shù)據(jù)。圖像尺寸為256×256 像素,波段數(shù)為48,共計1 385 幅高光譜場景圖像,該數(shù)據(jù)集被劃分為農(nóng)田、建筑、城市建筑、未利用土地和水體5個語義類別。HSRS-SC 數(shù)據(jù)集各類別示例圖像和數(shù)量如圖5 所示。
圖5 HSRS-SC 數(shù)據(jù)集各類別示例圖像及數(shù)量Fig.5 Examples and numbers of scene in HSRS-SC dataset
3.2.1 實驗環(huán)境
運行本實驗的電腦硬件配置如下:操作系統(tǒng)為Windows 10 專業(yè)版,內(nèi)存為36 G,處理器為Intel(R)Core(TM)i7-7800X CPU,顯卡型號為NVIDIA TITAN Xp。運行本實驗的電腦軟件環(huán)境配置如下:Python 版本為python3.7.3,Pytorch 版本為1.7.0。
3.2.2 參數(shù)設(shè)置
本實驗所采用的ViT 和VGG16 模型均經(jīng)過預(yù)訓(xùn)練。由于GPU 顯存的限制,batch size 設(shè)置為12。教師模型(ViT)輸入切割樣本的空間尺寸為16×16。對于教師模型,采用SGD 優(yōu)化器對ViT 進(jìn)行微調(diào),相關(guān)的動量設(shè)置為0.9,權(quán)重衰減設(shè)置為0.000 1。學(xué)生模型VGG16 選用Adam作為優(yōu)化器,權(quán)重衰減參數(shù)設(shè)置為0.000 1。教師模型中每層學(xué)習(xí)率為0.001,學(xué)生模型中的全連接層學(xué)習(xí)率設(shè)置為0.001,其余每層的學(xué)習(xí)率為0.000 1。在模型訓(xùn)練階段,每經(jīng)過12 個輪次,學(xué)習(xí)率就會衰減為自身的0.1 倍。
3.2.3 數(shù)據(jù)處理和評價指標(biāo)
本實驗采取兩種數(shù)據(jù)增強(qiáng)的方法,分別為隨機(jī)翻轉(zhuǎn)和隨機(jī)旋轉(zhuǎn)。在所構(gòu)建的OHID-SC 數(shù)據(jù)集和公開數(shù)據(jù)集HSRS-SC 中,標(biāo)記樣本的20%和80%被隨機(jī)分配給訓(xùn)練集與測試集,以充分驗證所提出LDGLKD 的分類性能。為確保實驗結(jié)果的公平性,所有實驗均重復(fù)5 次。此外,總體準(zhǔn)確度(Overall Accuracy,OA)、標(biāo)準(zhǔn)差(Standard Deviation,STD)和混淆矩陣用來對分類結(jié)果進(jìn)行有效評估。
3.2.4 參數(shù)敏感性分析
為驗證蒸餾溫度T不同取值對LDGLKD 網(wǎng)絡(luò)分類結(jié)果的影響,本文根據(jù)先驗知識采用網(wǎng)格搜索方法從{1,5,15,25,35,45,55}中找到T的最佳取值。由圖6 可知,LDGLKD 網(wǎng)絡(luò)在OHIDSC 數(shù)據(jù)集的OA 隨著T=1 到T=5 時迅速增加,并在T=5 到T=55 階段保持穩(wěn)定。這是因為當(dāng)T=1 時,學(xué)生模型使用硬標(biāo)簽進(jìn)行訓(xùn)練,無法有效獲取教師模型中的長距離依賴關(guān)系;而當(dāng)T大于1 時,教師模型利用軟標(biāo)簽對學(xué)生模型進(jìn)行指導(dǎo),學(xué)生模型可以同時提取到正標(biāo)簽信息和負(fù)標(biāo)簽信息;此外,LDGLKD 網(wǎng)絡(luò)在T=35 時取得最佳分類精度。
圖6 不同溫度的總體分類精度Fig.6 OAs with respect to different temperatures
在LDGLKD 網(wǎng)絡(luò)的兩個訓(xùn)練階段中,知識蒸餾系數(shù)α用來平衡總損失函數(shù)中知識蒸餾損失和交叉熵?fù)p失的重要程度。為獲取最佳知識蒸餾系數(shù)α,α分別選?。?.1,0.15,0.2,0.25,0.3,0.35,0.4}進(jìn)行實驗。由圖7 可知,當(dāng)α比較?。é?0.1)和比較大時(α=0.4),所得到的OAs 較低,當(dāng)α在0.1~0.4 時,OAs 較高且保持穩(wěn)定。當(dāng)α=0.3 時,LDGLKD 網(wǎng)絡(luò)取得最高分類精度,這是因為合適的α可以有效平衡從教師模型處獲得的軟標(biāo)簽和從地面真值處獲得的硬標(biāo)簽的重要性,并促進(jìn)鑒別知識從教師模型向?qū)W生模型轉(zhuǎn)移。具體來說,較小的α難以使學(xué)生模型充分學(xué)習(xí)來自于教師模型的遠(yuǎn)程上下文信息;當(dāng)α太大時,學(xué)生模型又無法有效利用地面真值信息。綜上所述,LDGLKD 在OHID-SC 和HSRSC-SC 數(shù)據(jù)集均選取T=35 和α=0.3 進(jìn)行實驗。
圖7 知識蒸餾系數(shù)α 對總體分類精度的影響Fig.7 Effect of KD coefficient α on OAs
3.3.1 消融實驗
為評估所提出方法中各個組成部分的有效性,選取教師模型(預(yù)訓(xùn)練ViT)、未經(jīng)知識蒸餾的學(xué)生模型(預(yù)訓(xùn)練VGG16)和知識蒸餾后的學(xué)生模型(LDGLKD)在OHID-SC 和HSRS-SC 數(shù)據(jù)集上進(jìn)行消融實驗。
如圖8 所示,因為ViT 通過自注意力架構(gòu)能學(xué)習(xí)到更具鑒別性的上下文特征,教師模型(預(yù)訓(xùn)練ViT)的分類結(jié)果比預(yù)訓(xùn)練VGG16 更佳。在OHID-SC 和HSRS-SC 數(shù)據(jù)集上,LDGLKD比預(yù)訓(xùn)練VGG16 的分類精度分別提高9.84%和2.83%,這是因為LDGLKD 網(wǎng)絡(luò)通過知識蒸餾充分接收來自教師模型ViT 的遠(yuǎn)程依賴關(guān)系,從而進(jìn)一步提高了分類精度。由于LDGLKD 網(wǎng)絡(luò)通過融合長距離上下文信息和局部細(xì)節(jié)特征顯著提升了對特征的判別能力,它在兩個數(shù)據(jù)集上的分類性能甚至超過了教師模型。
圖8 消融實驗結(jié)果Fig.8 Ablation experiment results
3.3.2 對比實驗
為驗證LDGLKD 的分類性能,這里選取EffcientNet-B3,VGG16,GoogleNet,ResNet18 和ResNet101 五種常用的CNNs,且上述網(wǎng)絡(luò)結(jié)構(gòu)均經(jīng)過預(yù)訓(xùn)練。SKAL[23]和ARCNet[24]為兩種先進(jìn)的場景分類網(wǎng)絡(luò)。其中,SKAL 是一種弱監(jiān)督雙流多尺度場景分類方法,SKAL-R,SKAL-V的骨干網(wǎng)絡(luò)分別為ResNet 18 與 VGG16。ARCNet 通過循環(huán)注意結(jié)構(gòu)聚焦于關(guān)鍵區(qū)域,根據(jù)不同的特征提取器ResNet18,MobileNetV2,ARCNet 可進(jìn)一步分為ARCNet-R 和ARCNet-M。
如表2 所示,LDGLKD 網(wǎng)絡(luò)在OHID-SC 和HSRS-SC 數(shù)據(jù)集上均獲得的最佳分類精度。與5 種常用的CNNs 相比,LDGLKD 來自于教師模型的遠(yuǎn)程依賴關(guān)系蒸餾到學(xué)生模型中,與學(xué)生模型提取到的局部細(xì)節(jié)信息形成有效互補,所以LDGLKD 網(wǎng)絡(luò)的分類結(jié)果更具競爭性。值得說明的是,為盡可能模擬實際應(yīng)用任務(wù),所構(gòu)建數(shù)據(jù)集OHID-SC 相較于公開數(shù)據(jù)集HSRS-SC 具有空間尺寸更小、觀測范圍廣、地表覆蓋狀況更加豐富等特點,因此 OHID-SC 數(shù)據(jù)集包含的地物信息更加有限,空間布局也更為復(fù)雜。SKAL和ARCNet 均為基于高分辨率影像的場景分類網(wǎng)絡(luò),這兩種模型無法通過光譜信息來有效區(qū)分視覺感知相似的地物,導(dǎo)致對不同場景類別易造成錯分或混淆,所以在OHID-SC 數(shù)據(jù)集上兩種模型的分類性能有限。
表2 對比算法實驗結(jié)果[總體分類精度±標(biāo)準(zhǔn)差]Tab.2 Results of comparison algorithm[OA±STD](%)
為更加直觀地評估LDGLKD 網(wǎng)絡(luò)分類結(jié)果的類間誤差,其在兩個數(shù)據(jù)集上的混淆矩陣如圖9 所示。由于LDGLKD 網(wǎng)絡(luò)有效融合了長距離依賴關(guān)系和局部細(xì)節(jié)特征,LDGLKD 網(wǎng)絡(luò)對HSRS-SC 數(shù)據(jù)集中的4 類場景的分類精度均超過98%,對“農(nóng)田”的分類準(zhǔn)確度更達(dá)到了100%。在OHID-SC 數(shù)據(jù)集上,LDGLKD 對“城鄉(xiāng)建筑”“耕地”“未利用土地”和“水體”四類場景的分類精度超過94%。雖然“森林”和“山體”中目標(biāo)地物在顏色、光譜曲線等方面存在相似性,但LDGLKD 可通過從ViT 學(xué)習(xí)到的遠(yuǎn)程依賴關(guān)系對場景空間結(jié)構(gòu)進(jìn)一步探索挖掘,在兩類場景上的分類精度達(dá)到88%和83%,在很大程度上緩解了錯分和混淆現(xiàn)象。
圖9 LDGLKD 網(wǎng)絡(luò)的混淆矩陣結(jié)果Fig.9 Confusion matrix results of LDGLKD network
在兩個高光譜場景分類數(shù)據(jù)集中,本文隨機(jī)選?。?%,10%,15%,20%,25%,30%}的標(biāo)記樣本作為訓(xùn)練數(shù)據(jù),以驗證所提出方法的魯棒性和泛化能力。如圖10 所示,隨著訓(xùn)練樣本百分比的增加,各方法的分類精度均明顯提高。此外,現(xiàn)有的場景分類模型通常針對高分辨率遙感影像所設(shè)計,如SKAL,ARCNet 等,難以有效學(xué)習(xí)到高光譜影像豐富的空-譜信息。在不同數(shù)量的訓(xùn)練樣本情況下,LDGLKD 網(wǎng)絡(luò)與其他方法相比,其分類結(jié)果具有較大優(yōu)勢。因為LDGLKD網(wǎng)絡(luò)能夠有效利用知識蒸餾,促使學(xué)生模型同時提取到場景圖像中的遠(yuǎn)程依賴關(guān)系和局部細(xì)節(jié)特征。由于LDGLKD 網(wǎng)絡(luò)的學(xué)生模型單獨進(jìn)入測試階段,并不會額外增加計算復(fù)雜度,可進(jìn)一步緩解過擬合現(xiàn)象。
圖10 在不同比例的訓(xùn)練樣本下對比算法的OAsFig.10 OAs with different training data percentages for comparison methods
為定量分析LDGLKD 網(wǎng)絡(luò)的運算效率,不同方法在OHID-SC 和HSRS-SC 數(shù)據(jù)集上的運行時間如表3 所示。需要說明的是,所有方法均在同一臺計算機(jī)上進(jìn)行計算。基于高分辨率遙感影像的SKAL 和ARCNet 難以充分利用高光譜影像中豐富的空-譜信息,所以這兩種模型的運行時間較短。EfficientNet-B3 的矩陣計算復(fù)雜,它在OHID-SC 數(shù)據(jù)集上的運行時間最長。在HSRS-SC 數(shù)據(jù)集上,VGG16 包含的大量可訓(xùn)練參數(shù)導(dǎo)致其運算時間較長。此外,ResNet18和ResNet101 的運行時間隨著網(wǎng)絡(luò)深度的加深而增加。綜合考慮時間成本和分類精度,本文選擇去除全連接層的VGG16 作為LDGLKD 網(wǎng)絡(luò)的學(xué)生模型,在經(jīng)過知識蒸餾后單獨進(jìn)入測試階段。由表3 可知,LDGLKD 網(wǎng)絡(luò)具有較高的計算效率,在時間和硬件方面節(jié)省了計算資源。
表3 對比算法的運行時間Tab.3 Running time of comparison algorithms(s)
本文提出了一種端到端基于高光譜影像的場景分類方法LDGLKD。在LDGLKD 方法中,將教師模型ViT 所提取的遠(yuǎn)程上下文信息通過知識蒸餾轉(zhuǎn)移到學(xué)生模型(預(yù)訓(xùn)練VGG16)。上述兩個模型在訓(xùn)練階段實現(xiàn)協(xié)同優(yōu)化后,逐漸減小教師模型的學(xué)習(xí)率直至為零,并增加知識蒸餾損失函數(shù)的權(quán)重系數(shù)。因此,LDGLKD 方法中的學(xué)生模型能同時提取高光譜影像中遠(yuǎn)距離依賴關(guān)系和局部幾何結(jié)構(gòu)。
由于高光譜場景分類研究當(dāng)前仍處于前期探索階段,并且現(xiàn)有高光譜場景分類數(shù)據(jù)集存在波段未統(tǒng)一、規(guī)模較小和觀測范圍有限等問題,本文基于歐比特珠海一號高光譜衛(wèi)星數(shù)據(jù)構(gòu)建了歐比特高光譜遙感場景分類數(shù)據(jù)集(OHIDSC)。在OHID-SC 數(shù)據(jù)集和公開數(shù)據(jù)集HSRSSC 上的實驗表明,與一些先進(jìn)方法相比,LDGLKD 方法的分類精度更具競爭性,泛化性能也更佳。后續(xù),將進(jìn)一步減少LDGLKD 網(wǎng)絡(luò)的訓(xùn)練時間成本,并且從語義類別及樣本數(shù)上對所構(gòu)建數(shù)據(jù)集進(jìn)行擴(kuò)展。