劉 波, 杜梓維, 劉 華, 蘇友能, 洪丹陽, 白思雨
(東華理工大學(xué) 測繪工程學(xué)院,江西 南昌 330013)
遙感影像場景分類是將遙感圖像信息進行提取,根據(jù)圖像特征對場景實行分類(章晨等,2020),廣泛應(yīng)用于地質(zhì)調(diào)查(吳志春等,2013)、生態(tài)環(huán)境監(jiān)測(程朋根等,2015)、生態(tài)質(zhì)量評價(李萬鈺等,2020)等領(lǐng)域。
隨著深度學(xué)習(xí)方法與技術(shù)的不斷發(fā)展,其在圖像分類中的應(yīng)用越來越廣泛。相較于傳統(tǒng)線性回歸分類方法(龔循強等,2019),深度學(xué)習(xí)的圖像分類方法能夠很好地發(fā)現(xiàn)隱藏在高維圖像數(shù)據(jù)中的復(fù)雜結(jié)構(gòu)和判別信息。VGG、GoogLeNet、ResNet等深度學(xué)習(xí)網(wǎng)絡(luò)的提出,提高了圖像分類準確度(Szegedy et al.,2015; He et al.,2016)。另外,通過特征融合,改進網(wǎng)絡(luò)結(jié)構(gòu)等方式來完成遙感影像場景分類,也能取得較好的分類效果(張桐等,2020;楊州等,2018;Tombe et al., 2020; Guo et al.,2020)。訓(xùn)練和使用以上現(xiàn)有的高性能網(wǎng)絡(luò)時,往往需要考慮數(shù)據(jù)獲取、數(shù)據(jù)標注、計算資源是否滿足實際需求等問題,這些問題也影響了已有高性能深度學(xué)習(xí)網(wǎng)絡(luò)的進一步應(yīng)用。
遷移學(xué)習(xí)方法從目標任務(wù)相似性出發(fā),充分利用歷史源域數(shù)據(jù)在計算能力強的設(shè)備上訓(xùn)練好的模型信息,解決了目標任務(wù)數(shù)據(jù)稀缺、領(lǐng)域分布異構(gòu)的問題,滿足了實際應(yīng)用中個性化需求(Pan et al.,2010)。該方法恰好能解決使用深度學(xué)習(xí)網(wǎng)絡(luò)時所遇見的問題,因此基于遷移學(xué)習(xí)的深度學(xué)習(xí)方法在遙感影像分類中得到了廣泛的應(yīng)用。李冠東等(2019)利用參數(shù)遷移方法訓(xùn)練了Inception-v3模型,完成了遙感影像分類。喬婷婷等(2020)結(jié)合了數(shù)據(jù)增廣和遷移學(xué)習(xí)方法,訓(xùn)練了幾種常用卷積神經(jīng)網(wǎng)絡(luò),完成了遙感影像分類。余東行等(2020)結(jié)合了遷移學(xué)習(xí)和集成學(xué)習(xí)方法,在只有10%的數(shù)據(jù)作為訓(xùn)練樣本情況下,也取得了很好的分類效果。Zhang等(2020)基于遷移學(xué)習(xí)方法遷移了VGG16網(wǎng)絡(luò)前13層作為主結(jié)構(gòu),并增加6層網(wǎng)絡(luò)結(jié)構(gòu)來提取遙感影像更深層次特征,從而提高了分類精度。Li等(2018)提出了一個高分辨率遙感影像多模型特征提取框架,將不同網(wǎng)絡(luò)模型通過遷移學(xué)習(xí)方法提取的特征進行了融合,從而提高了分類精度。Zhao等(2019)等結(jié)合了遷移學(xué)習(xí)和PCA方法,提出了一種非對稱異構(gòu)模型,解決了源數(shù)據(jù)和目標數(shù)據(jù)之間的不匹配問題,提高了預(yù)訓(xùn)練CNN模型的泛化能力。Yao等(2017)等利用遷移學(xué)習(xí)訓(xùn)練了Inception-v5網(wǎng)絡(luò)模型,結(jié)合視覺詞包和隨機森林方法,得到了廣州市珠海區(qū)的土地利用分類結(jié)果。Limar等(2019)闡述了遙感影像分類中遷移學(xué)習(xí)在不同數(shù)據(jù)集和不同深度學(xué)習(xí)網(wǎng)絡(luò)模型中的應(yīng)用情況,但沒有討論不同遷移方法在不同深度學(xué)習(xí)網(wǎng)絡(luò)上的學(xué)習(xí)性能。
綜上所述,雖然遷移學(xué)習(xí)方法在深度學(xué)習(xí)應(yīng)用中取得了較好的成果,但目前關(guān)于不同遷移方法在不同深度學(xué)習(xí)網(wǎng)絡(luò)上學(xué)習(xí)的特性、遷移源域的差異等方面研究較少。為了更好地了解遷移學(xué)習(xí)在深度學(xué)習(xí)中的應(yīng)用情況,本研究對比分析了不同的模型遷移方法在不同深度的ResNet網(wǎng)絡(luò)上的遷移特性,以及遷移源域的差異對于遷移學(xué)習(xí)結(jié)果的影響,探討如何利用遷移學(xué)習(xí)的方法更好地完成遙感影像的場景分類,為遙感影像場景分類在方法、模型、數(shù)據(jù)集等方面的選擇上提供參考。
殘差網(wǎng)絡(luò)是由微軟實驗室提出的卷積神經(jīng)網(wǎng)絡(luò),其運用了批量標準化解決了網(wǎng)絡(luò)訓(xùn)練時間長,收斂慢甚至不收斂問題。利用如圖1所示殘差模塊完成了淺層和深層殘差網(wǎng)絡(luò)搭建,有效解決了隨著訓(xùn)練進行,網(wǎng)絡(luò)性能趨于飽和甚至下降的深度網(wǎng)絡(luò)退化問題(He et al.,2016)。
遷移學(xué)習(xí)是一種運用已有知識對不同但相關(guān)的領(lǐng)域問題進行求解的機器學(xué)習(xí)方法(Pan et al.,2010)。實現(xiàn)遷移學(xué)習(xí)方法有樣本遷移、特征遷移、參數(shù)遷移、關(guān)系遷移和混合遷移等5種。其中參數(shù)遷移為本研究采用的方法。通過深度學(xué)習(xí)網(wǎng)絡(luò)利用參數(shù)遷移方法能夠更快、更好地完成模型訓(xùn)練。在遙感影像場景分類中,即先采用預(yù)訓(xùn)練CNN模型參數(shù)遷移,后對遙感影像進行特征提取,再利用全連接層和分類器完成場景分類任務(wù)。
本實驗在Pytorch深度學(xué)習(xí)框架下實現(xiàn)。Pytorch框架提供了微調(diào)網(wǎng)絡(luò)和凍結(jié)網(wǎng)絡(luò)參數(shù)遷移方法。這2種模型遷移方法過程如圖2所示,均使用了預(yù)訓(xùn)練模型參數(shù)作為網(wǎng)絡(luò)的初始權(quán)重參數(shù),而不是通過隨機初始化來得到網(wǎng)絡(luò)權(quán)重參數(shù)。微調(diào)網(wǎng)絡(luò)方法(圖2A)會在導(dǎo)入預(yù)訓(xùn)練網(wǎng)絡(luò)模型參數(shù)的基礎(chǔ)上進行網(wǎng)絡(luò)訓(xùn)練。凍結(jié)網(wǎng)絡(luò)參數(shù)方法(圖2B)會凍結(jié)神經(jīng)網(wǎng)絡(luò)特征提取部分,將神經(jīng)網(wǎng)絡(luò)作為一個固定的特征提取器,只訓(xùn)練最后用于分類的全連接層部分。深度學(xué)習(xí)訓(xùn)練大量數(shù)據(jù)需要極強的計算能力,耗費大量時間,但使用預(yù)訓(xùn)練模型遷移能夠在普通筆記本電腦上花費很短的時間得到很好的訓(xùn)練結(jié)果。
本實驗采用Python編程語言,在Pytorch深度學(xué)習(xí)框架下實現(xiàn),實驗基本配置如表1所示。
表1 實驗基本配置
本實驗采用3類公開的高分辨率遙感影像數(shù)據(jù)集,數(shù)據(jù)集的分布特點如下。
(1)UC Merced Land-Use數(shù)據(jù)集(Yang et al.,2010)是用于研究21級土地利用的遙感影像數(shù)據(jù)。該數(shù)據(jù)選自美國USGS國家城市地圖圖像中不同地區(qū)的航空遙感影像,包含了農(nóng)田、機場、棒球場、沙灘、建筑物等21類圖像,每類有100張圖片,共有2 100張。每張圖片分辨率為0.3 m,圖像大小為256像素×256像素,其部分數(shù)據(jù)圖像如圖3A所示。
(2)RSSCN7數(shù)據(jù)集(Zou et al.,2015)是武漢大學(xué)2015年發(fā)布的遙感影像數(shù)據(jù)?;?個不同的尺度采集了7個類別的場景圖像,包括草地、森林、農(nóng)田、停車場、住宅區(qū)、工業(yè)區(qū)和河流湖泊。其中每個類別有400張圖片,共有2 800張。每張圖像大小為400像素×400像素,其部分數(shù)據(jù)圖像如圖3B所示。
(3)NWPU-RESISC45數(shù)據(jù)集(Cheng et al.,2017)是西北工業(yè)大學(xué)發(fā)布的遙感影像數(shù)據(jù)集。包含了飛機、機場、棒球場、籃球場等45個類別的遙感影像,其中每個類別有700張圖片,共有31 500張圖片,圖像大小為256像素×256像素,其部分數(shù)據(jù)圖像如圖3C所示。
2.2.1 基于ImageNet數(shù)據(jù)集訓(xùn)練的ResNet網(wǎng)絡(luò)模型遷移對比實驗
將UC Merced Land-Use數(shù)據(jù)集按8∶1∶1的比例劃分為訓(xùn)練集、驗證集和測試集。根據(jù)ResNet網(wǎng)絡(luò)結(jié)構(gòu)的深度設(shè)置不同的batch_size,整個數(shù)據(jù)集迭代30個epoch。以ResNet18為例,batch_size=64,訓(xùn)練集圖片共有1 680張,1個數(shù)據(jù)集需要迭代27次,30個epoch共迭代810次。實驗對比微調(diào)網(wǎng)絡(luò)、凍結(jié)網(wǎng)絡(luò)參數(shù)2種參數(shù)遷移方法,以及隨機初始化權(quán)重參數(shù)重新訓(xùn)練網(wǎng)絡(luò)的結(jié)果。2種模型遷移方式都是利用Pytorch框架提供的在ImageNet數(shù)據(jù)集上訓(xùn)練的ResNet18/34/50/101網(wǎng)絡(luò)模型進行參數(shù)遷移,訓(xùn)練時訓(xùn)練集損失值和驗證集精度變化如圖4所示。在驗證集準確率變化圖中(圖4B,D,F,H)圓圈表示在30個epoch以下驗證集分類準確率最高時對應(yīng)的epoch。網(wǎng)絡(luò)模型在UC Merced Land-Use數(shù)據(jù)集分類精度和訓(xùn)練過程統(tǒng)計結(jié)果如表2和表3所示。以ResNet18為例,微調(diào)網(wǎng)絡(luò)和凍結(jié)網(wǎng)絡(luò)參數(shù)方法在UC Merced Land-Use數(shù)據(jù)集上分類精度為99.3%和85.2%。其類別分類準確率如表4所示,數(shù)據(jù)集混淆矩陣如圖5所示。
2.2.2 數(shù)據(jù)集ImageNet和Places365源域遷移對比實驗
Places365數(shù)據(jù)集(Zhou et al.,2018)是由MIT發(fā)布的場景圖像數(shù)據(jù)集,該數(shù)據(jù)集總共包含了1 000萬張圖像,400多個不同類型的場景環(huán)境,范圍廣泛,數(shù)據(jù)龐大,對于場景分類模型的訓(xùn)練具有很強的幫助性??紤]到Places365數(shù)據(jù)集的圖像紋理、線條、色彩、結(jié)構(gòu)、空間上的特征與目標域的遙感影像有更多的相同之處,因此實驗遷移基于Places365數(shù)據(jù)集訓(xùn)練的ResNet18/50模型,對比這2種遷移方法在不同源域數(shù)據(jù)集上的遷移結(jié)果。
實驗數(shù)據(jù)集為2.1節(jié)所示數(shù)據(jù)集,其中RSSCN7和NWPU-RESISC45數(shù)據(jù)集也按照8∶1∶1的比例劃分數(shù)據(jù)集。實驗使用ResNet18/50網(wǎng)絡(luò)結(jié)構(gòu)進行參數(shù)遷移,將數(shù)據(jù)集迭代20個epoch。以RSSCN7數(shù)據(jù)集為例,ResNet18/50網(wǎng)絡(luò)上在不同源域驗證集分類準確率變化如圖6所示,數(shù)據(jù)集基于ImageNet和Places365源域進行遷移后,ResNet18微調(diào)網(wǎng)絡(luò)的方式在RSSCN7數(shù)據(jù)集準確度能夠達到97.1%和98.6%,其數(shù)據(jù)集混淆矩陣如圖7所示。UC Merced Land-Use、RSSCN7和NWPU-RESISC45數(shù)據(jù)集遷移學(xué)習(xí)分類準確率統(tǒng)計結(jié)果如表5所示。
表2 ResNet網(wǎng)絡(luò)模型分類準確率
表3 ResNet網(wǎng)絡(luò)訓(xùn)練過程統(tǒng)計表
表4 ResNet18網(wǎng)絡(luò)在UC Merced Land-Use數(shù)據(jù)集上各類別準確率
(1)與凍結(jié)網(wǎng)絡(luò)參數(shù)、重新訓(xùn)練網(wǎng)絡(luò)方式相比(圖4,表3),微調(diào)網(wǎng)絡(luò)訓(xùn)練的網(wǎng)絡(luò)模型魯棒性更好,能在很少的epoch迭代下獲得一個泛化能力更好的網(wǎng)絡(luò)模型,但耗時與重新訓(xùn)練一個完整的神經(jīng)網(wǎng)絡(luò)時間一致。若網(wǎng)絡(luò)模型參數(shù)較多、深度較深,需要耗費很多計算資源和訓(xùn)練時間。
與微調(diào)網(wǎng)絡(luò)、重新訓(xùn)練網(wǎng)絡(luò)方式相比,凍結(jié)網(wǎng)絡(luò)參數(shù)方式節(jié)省了計算資源和訓(xùn)練時間,但模型的泛化能力不如微調(diào)網(wǎng)絡(luò)。隨著網(wǎng)絡(luò)深度加深,ResNet50/101損失函數(shù)的損失值會比ResNet18/34下降得更快,且神經(jīng)網(wǎng)絡(luò)的特征提取部分表現(xiàn)得更好,使得只訓(xùn)練全連接層的網(wǎng)絡(luò)模型也能取得很好的分類效果。
(2)凍結(jié)網(wǎng)絡(luò)參數(shù)方式在類間相似的類別(表4,圖5),如密集住宅區(qū)、中等住宅區(qū)分類準確度較差,而微調(diào)網(wǎng)絡(luò)方式能很好地改善這一問題,提高了分類準確度。
(3)2種參數(shù)遷移方式整體上優(yōu)于重新訓(xùn)練一個神經(jīng)網(wǎng)絡(luò),且隨著網(wǎng)絡(luò)深度加深,在ResNet50/101上表現(xiàn)更為明顯,訓(xùn)練時損失值會降得更低,驗證集分類準確率會更高。另外,遷移學(xué)習(xí)省去了煩瑣的調(diào)參過程,能夠更快、更好地訓(xùn)練一個符合應(yīng)用需求的神經(jīng)網(wǎng)絡(luò)模型。
(1)不同源域遷移在驗證集上精確度變化相差不大(圖6),與目標域相關(guān)性更高的Places365源域微調(diào)網(wǎng)絡(luò)訓(xùn)練的模型,泛化能力更好,在數(shù)據(jù)集上的分類準確度要高于ImageNet訓(xùn)練的模型。從RSSCN7數(shù)據(jù)集混淆矩陣(圖7)可以看出,相關(guān)度越高的模型,能進一步減少類間相似分類錯誤問題。凍結(jié)網(wǎng)絡(luò)參數(shù)訓(xùn)練的模型,雖然能更快收斂提升驗證集的精度,但模型在數(shù)據(jù)集泛化能力上不如ImageNet訓(xùn)練的網(wǎng)絡(luò)模型,整體表現(xiàn)較差。
(2)從不同數(shù)據(jù)集分類準確率統(tǒng)計表(表5)可以看出,訓(xùn)練的ResNet網(wǎng)絡(luò)在UC Merced Land-Use、RSSCN7、NWPU-RESISC45數(shù)據(jù)集上分類準確率最高分別為99.5%、98.6%、97.8%,表明基于模型遷移訓(xùn)練的網(wǎng)絡(luò)模型很好地完成了遙感影像場景分類任務(wù),且很好地解決了遙感領(lǐng)域高質(zhì)量標簽數(shù)據(jù)缺乏的問題。
(3)從實驗可以看出,深度學(xué)習(xí)框架提供的預(yù)訓(xùn)練模型不能適用所有情況下的模型訓(xùn)練,為了滿足實際應(yīng)用個性化需求,可以使用與目標域相關(guān)性很高的開源模型進行參數(shù)遷移,將其模型參數(shù)作為網(wǎng)絡(luò)初始化權(quán)重參數(shù),能更快地完成實際應(yīng)用模型的訓(xùn)練。
(1)參數(shù)遷移訓(xùn)練的ResNet網(wǎng)絡(luò)在UC Merced Land-Use、RSSCN7、NWPU-RESISC45數(shù)據(jù)集上分類準確率最高分別為99.5%、98.6%、97.8%,說明參數(shù)遷移方法很好地完成了遙感影像的場景分類。
(2)當計算機硬件設(shè)備滿足需求時,使用微調(diào)網(wǎng)絡(luò)的方法能夠訓(xùn)練出一個魯棒性、泛化能力更好的網(wǎng)絡(luò)模型。凍結(jié)網(wǎng)絡(luò)參數(shù)的方法能夠更快地訓(xùn)練好一個神經(jīng)網(wǎng)絡(luò)模型,雖然其魯棒性不如微調(diào)網(wǎng)絡(luò)訓(xùn)練的模型,但當遷移的網(wǎng)絡(luò)模型具有足夠的深度和特征提取能力時,也能訓(xùn)練出一個比較好的網(wǎng)絡(luò)模型。
(3)當深度學(xué)習(xí)框架提供的預(yù)訓(xùn)練模型不能滿足實際應(yīng)用時,可以選擇與目標任務(wù)相關(guān)性更高的源域訓(xùn)練的模型進行參數(shù)遷移,以此滿足實際的應(yīng)用需求。
表5 ResNet18/50不同數(shù)據(jù)集模型遷移分類準確率統(tǒng)計表