周 鵬,楊 軍
(1.蘭州交通大學(xué) 電子與信息工程學(xué)院,甘肅 蘭州 730070;2.蘭州交通大學(xué) 測(cè)繪與地理信息學(xué)院,甘肅 蘭州 730070)
由于高分辨率遙感影像包含豐富的場(chǎng)景語義信息和精細(xì)的空間尺度,可清晰地呈現(xiàn)地物的細(xì)節(jié)特征、幾何結(jié)構(gòu)以及紋理特征,在一定程度消除了混合像元所引起像素類屬的不確定性,在地物目標(biāo)的精準(zhǔn)分割中表現(xiàn)出巨大的潛力與優(yōu)勢(shì),被廣泛應(yīng)用于農(nóng)業(yè)、林業(yè)、國(guó)土規(guī)劃、搶險(xiǎn)救災(zāi)、軍事偵察和環(huán)境保護(hù)等領(lǐng)域。高分辨率遙感影像存在像素光譜測(cè)度空間相關(guān)性復(fù)雜的問題,使對(duì)同一地物目標(biāo)內(nèi)像素光譜測(cè)度相似性減弱,不同地物目標(biāo)間像素光譜測(cè)度相似性增強(qiáng),導(dǎo)致相同地物目標(biāo)出現(xiàn)更多的異質(zhì)性和空間破碎性(影像分割結(jié)果中同質(zhì)區(qū)域內(nèi)幾何噪聲和空間不連續(xù)性增加)[1]??紤]到高分辨率遙感影像地物信息多樣性及空間分布復(fù)雜性,如何準(zhǔn)確地從高分辨率遙感影像中提取感興趣的目標(biāo)具有非常重要的意義[2]。
影像分割是計(jì)算機(jī)視覺領(lǐng)域一項(xiàng)關(guān)鍵的技術(shù),是影像處理到影像分析的核心步驟。其根據(jù)同質(zhì)性或異質(zhì)性標(biāo)準(zhǔn),將完整影像分成若干特定的、具有獨(dú)特性質(zhì)的子區(qū)域,并提出感興趣目標(biāo)。目的是使任何相鄰的不同子區(qū)域互不重疊,簡(jiǎn)化并改變影像表示形式,使得影像更容易解譯。常見的影像分割算法有:基于閾值的影像分割算法,基于區(qū)域的影像分割算法和基于邊緣的影像分割算法[3]。由于高分辨率遙感影像帶標(biāo)簽數(shù)據(jù)匱乏,導(dǎo)致分割的泛化能力較弱,決策具有不確定性,因此對(duì)高分辨率遙感影像的分割已成為該領(lǐng)域極具挑戰(zhàn)的課題。
遙感影像具有海量數(shù)據(jù)、尺度依賴、空間相關(guān)性強(qiáng)等特點(diǎn),能夠很好地用語義分割的方法來提取地物。遙感影像分割結(jié)果直接影響到后期信息提取、影像解譯及地物識(shí)別等過程的精度,因此,針對(duì)分割算法的研究意義重大。傳統(tǒng)的分割算法主要通過全局統(tǒng)計(jì)信息,如像素級(jí)紋理、顏色直方圖、結(jié)構(gòu)和形狀特征等方法對(duì)場(chǎng)景進(jìn)行表達(dá)。該類方法主要基于低層特征,精度不高且使用范圍小,已不能適用于高分辨率遙感影像分割。隨著機(jī)器學(xué)習(xí)方法的快速發(fā)展,許多學(xué)者從不同角度對(duì)遙感影像分割算法進(jìn)行了研究[4-6],其中基于深度學(xué)習(xí)的方法備受青睞。卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNNs)將遙感影像分割方法帶到了一個(gè)新的時(shí)代,在ImageNet上對(duì)卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行預(yù)訓(xùn)練的方法能有效提取圖像場(chǎng)景全局信息,在高分辨率遙感影像特征提取中有著突出表現(xiàn),但對(duì)局部信息提取不足。不同于自然圖像,遙感影像地物復(fù)雜,分布離散,局部特征對(duì)全局遙感影像場(chǎng)景表達(dá)意義重大,預(yù)訓(xùn)練模型特征提取的方法側(cè)重于全局特征提取而忽略了局部特征信息,導(dǎo)致對(duì)全局場(chǎng)景特征信息提取不全。全卷積網(wǎng)絡(luò)(Fully Convolutional Network,F(xiàn)CN)通過反卷積濾波器對(duì)影像特征圖進(jìn)行上采樣,可同時(shí)提高算法的精確度與魯棒性,實(shí)現(xiàn)了對(duì)影像進(jìn)行像素級(jí)的區(qū)分,解決了語義級(jí)別的圖像分割問題。然而,這些網(wǎng)絡(luò)由專家人工設(shè)計(jì),存在過分依賴專家經(jīng)驗(yàn)、網(wǎng)絡(luò)設(shè)計(jì)耗時(shí)費(fèi)力等問題,尤其是面對(duì)新任務(wù)時(shí),網(wǎng)絡(luò)的泛化能力較差。
針對(duì)高分辨率遙感影像標(biāo)簽樣本數(shù)據(jù)少、特征提取不足及架構(gòu)設(shè)計(jì)效率低的問題,為提升高分辨率遙感影像場(chǎng)景表達(dá)的能力,筆者提出采用神經(jīng)網(wǎng)絡(luò)架構(gòu)搜索的高分辨率遙感影像分割方法,高效地搜索出面向遙感影像分割的網(wǎng)絡(luò)架構(gòu)。主要?jiǎng)?chuàng)新和貢獻(xiàn)有:① 將網(wǎng)絡(luò)架構(gòu)搜索方法用于高分辨率遙感影像分割,提出資源平衡型部分通道采樣的神經(jīng)網(wǎng)絡(luò)架構(gòu)搜索框架;② 選擇部分通道進(jìn)行搜索空間的混合操作,以提高正則化效果,緩解網(wǎng)絡(luò)過擬合;③ 采用Gumbel-Softmax Trick從離散概率分布的樣本采樣。
基于深度學(xué)習(xí)的高分遙感影像分割方法提高了分割效率和精確度,而魯棒性較好的網(wǎng)絡(luò)模型通常需要專家耗費(fèi)大量精力來設(shè)計(jì)和測(cè)試。不同的數(shù)據(jù)集,特征提取和融合的方式也不同,需要專家重新設(shè)計(jì)新的架構(gòu)。為簡(jiǎn)化網(wǎng)絡(luò)架構(gòu)設(shè)計(jì),減輕對(duì)人工架構(gòu)設(shè)計(jì)的依賴,采用神經(jīng)網(wǎng)絡(luò)架構(gòu)搜索(Neural Architecture Search,NAS)來自動(dòng)搜索出最優(yōu)網(wǎng)絡(luò)架構(gòu)的方法受到越來越多學(xué)者的重視。近年來,神經(jīng)網(wǎng)絡(luò)架構(gòu)搜索方法搜索到的神經(jīng)網(wǎng)絡(luò)架構(gòu)在性能方面已超越了人工設(shè)計(jì)架構(gòu),尤其是在二維圖像分類領(lǐng)域,采用神經(jīng)網(wǎng)絡(luò)架構(gòu)搜索的網(wǎng)絡(luò)架構(gòu)在參數(shù)量、網(wǎng)絡(luò)規(guī)模和設(shè)計(jì)代價(jià)方面均表現(xiàn)優(yōu)異。
神經(jīng)網(wǎng)絡(luò)架構(gòu)搜索對(duì)遙感影像分割流程如圖1所示,該搜索過程持續(xù)循環(huán)執(zhí)行,直到搜索出性能符合要求的神經(jīng)網(wǎng)絡(luò)架構(gòu)。搜索空間、搜索策略和性能評(píng)估是神經(jīng)網(wǎng)絡(luò)架構(gòu)搜索的基本3要素[6]。
圖1 采用神經(jīng)網(wǎng)絡(luò)架構(gòu)搜索的高分遙感影像分割流程
搜索空間預(yù)先定義了能被神經(jīng)網(wǎng)絡(luò)架構(gòu)搜索算法搜索到的神經(jīng)網(wǎng)絡(luò)架構(gòu)。早期的搜索空間以鏈?zhǔn)浇Y(jié)構(gòu)為主,之后出現(xiàn)多分支神經(jīng)網(wǎng)絡(luò)架構(gòu)搜索結(jié)構(gòu),使得神經(jīng)網(wǎng)絡(luò)架構(gòu)搜索更加靈活。隨著研究的進(jìn)一步深入,深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Networks,DNN)中出現(xiàn)了重復(fù)的子結(jié)構(gòu),稱為Cell或Block。基于Cell結(jié)構(gòu)的網(wǎng)絡(luò)架構(gòu)搜索,目標(biāo)網(wǎng)絡(luò)由Cell重疊拼接而成,引入Cell可將神經(jīng)網(wǎng)絡(luò)架構(gòu)中相似的部分抽象到一個(gè)Cell中,使搜索空間簡(jiǎn)化。Cell通常被設(shè)計(jì)為有向無環(huán)圖(Directed Acyclic Graph,DAG),DAG通過減少自由度來實(shí)現(xiàn)縮小搜索空間。
搜索策略定義了如何在搜索空間中進(jìn)行搜索,即從預(yù)定義的搜索空間中選擇網(wǎng)絡(luò)架構(gòu),選擇過程需要權(quán)衡效率與性能兩方面。搜索策略一般分為基于離散空間的搜索策略和基于連續(xù)空間的搜索策略?;陔x散空間的搜索策略直接在離散的搜索空間中設(shè)計(jì),主要包括基于強(qiáng)化學(xué)習(xí)[7]的策略和基于進(jìn)化算法[8]的策略。連續(xù)空間搜索策略將離散搜索空間中的神經(jīng)網(wǎng)絡(luò)架構(gòu)映射到連續(xù)空間,再通過連續(xù)優(yōu)化方法更新架構(gòu)。
性能評(píng)估方法是對(duì)搜索到的網(wǎng)絡(luò)進(jìn)行評(píng)估,包括評(píng)估分割準(zhǔn)確率、錯(cuò)誤率及參數(shù)量等是否達(dá)到了預(yù)定的搜索目標(biāo),評(píng)估結(jié)果返回給搜索策略,以便對(duì)搜索策略進(jìn)行調(diào)整優(yōu)化。性能評(píng)估的理想狀態(tài)是對(duì)當(dāng)前的神經(jīng)網(wǎng)絡(luò)架構(gòu)進(jìn)行完整訓(xùn)練,一般在小規(guī)模代理任務(wù)上評(píng)估或使用加權(quán)共享來加速評(píng)估過程,以提高評(píng)估效率、節(jié)省計(jì)算開銷。
文獻(xiàn)[9]首次提出將搜索空間由離散轉(zhuǎn)換為連續(xù),使用梯度下降法來同時(shí)搜索架構(gòu)和學(xué)習(xí)權(quán)重,該算法加速了訓(xùn)練過程,改變了傳統(tǒng)架構(gòu)搜索的思路,而在處理高分遙感影像時(shí)卻存在一定的局限性,仍在處理高分遙感影像時(shí)卻存在一定的局限性。首先,其優(yōu)化算法建立在對(duì)Hessian矩陣的數(shù)學(xué)近似上,會(huì)產(chǎn)生一定的不可控誤差,存在搜索算法不穩(wěn)定的潛在問題。其次,當(dāng)?shù)螖?shù)過大時(shí),跳躍連接的數(shù)量會(huì)急劇增加,使得網(wǎng)絡(luò)架構(gòu)變淺,整體性能降低。
文獻(xiàn)[10]將早停機(jī)制(Early Stopping)引入到DARTS,減少了搜索時(shí)間,解決了DARTS中迭代次數(shù)過大時(shí)跳躍連接突增導(dǎo)致性能降低的問題,提高了網(wǎng)絡(luò)性能,但不能保證所裁剪的邊權(quán)值最小,存在一定的離散化誤差。文獻(xiàn)[11]采用輔助跳躍連接分支的方法,優(yōu)化候選跳躍連接操作,有利于雙層優(yōu)化以更公平的方式進(jìn)行,能更好地評(píng)估網(wǎng)絡(luò)性能的優(yōu)劣。文獻(xiàn)[12]通過漸進(jìn)方式逐步增加搜索單元,有效避免了內(nèi)存消耗過大和網(wǎng)絡(luò)過擬合,解決了代理訓(xùn)練集與目標(biāo)測(cè)試集之間的差異,但該算法存在搜索結(jié)果不穩(wěn)定和參數(shù)過多等問題。文獻(xiàn)[13]隨機(jī)采樣部分通道和邊緣正則化操作,可有效避免資源消耗嚴(yán)重,但在超大網(wǎng)絡(luò)中采樣時(shí),會(huì)出現(xiàn)搜索效率降低和特征提取不完整。文獻(xiàn)[14]采用貪婪策略,解決了搜索過程中驗(yàn)證準(zhǔn)確率和實(shí)際測(cè)試階段準(zhǔn)確不匹配的問題,將搜索過程設(shè)計(jì)為逐步選擇邊并確定其操作的子任務(wù),但該算法存在跳躍連接富集的問題。文獻(xiàn)[15]是早期使用全卷積網(wǎng)絡(luò)進(jìn)行語義分割的算法之一,是一種基于深度學(xué)習(xí)的圖像語義分割方法,采樣編碼器-解碼器架構(gòu),通過4次下采樣、4次上采樣形成了U型結(jié)構(gòu),主要應(yīng)用于醫(yī)學(xué)圖像分割。文獻(xiàn)[16]采用深度可分離卷積,其模型編碼器主體為帶有空洞卷積的深度卷積神經(jīng)網(wǎng)絡(luò)(Deep Convolutional Neural Networks,DCNN)和空間金字塔池化模塊,引入了多尺度信息,提高了語義分割的健壯性和運(yùn)行速率。但是由于存在空洞卷積,計(jì)算復(fù)雜度高。文獻(xiàn)[17]旨在解決自動(dòng)駕駛或智能機(jī)器人的圖像語義分割深度網(wǎng)絡(luò),由編碼器和解碼器組成,編碼器部分在最大池化操作時(shí)記錄了最大值索引,解碼時(shí)通過對(duì)應(yīng)的池化索引實(shí)現(xiàn)非線性上采樣,因此節(jié)省了內(nèi)存空間,提高了訓(xùn)練效率,但分割精確度提升不明顯。文獻(xiàn)[18]提出了一個(gè)網(wǎng)絡(luò)級(jí)架構(gòu)搜索空間,采用可微的連續(xù)方式,首次將神經(jīng)網(wǎng)絡(luò)架構(gòu)搜索從圖像分類任務(wù)擴(kuò)展到密集圖像預(yù)測(cè)任務(wù)。文獻(xiàn)[19]提出使用神經(jīng)網(wǎng)絡(luò)架構(gòu)搜索方法對(duì)遙感影像進(jìn)行分割,分割效果雖然較人工設(shè)計(jì)的網(wǎng)絡(luò)架構(gòu)有了很大改善,但仍有一定提升空間。
以上方法在自然圖像分類領(lǐng)域雖然取得了一定的成果,但在圖像分割,尤其在高分遙感影像分割領(lǐng)域內(nèi)的研究較少,尚未解決因離散化誤差、跳躍連接富集等導(dǎo)致網(wǎng)絡(luò)性能降低的問題。因此,如何針對(duì)高分遙感影像,設(shè)計(jì)性能良好的模型分割神經(jīng)網(wǎng)絡(luò)架構(gòu)搜索算法仍亟待解決。
搜索單元Cell分為Reduction Cell和Normal Cell。Reduction Cell位于網(wǎng)絡(luò)的1/3和2/3處,其余為Normal Cell,學(xué)習(xí)到的搜索單元也可以通過遞歸連接形成循環(huán)網(wǎng)絡(luò)。每一個(gè)搜索單元表示為一個(gè)DAG圖,由N個(gè)點(diǎn)V(p(0),…,p(n-1))和點(diǎn)之間的邊E(i,j)構(gòu)成,每一個(gè)節(jié)點(diǎn)p(j)代表為一個(gè)網(wǎng)絡(luò)層,與輸入的遙感影像或特征圖相關(guān),每一條邊E(i,j)表示與節(jié)點(diǎn)p(j)可能的一種相關(guān)操作,如卷積或者池化。因此,對(duì)搜索單元Cell的求解過程就轉(zhuǎn)變?yōu)榍蠼饷織l邊上對(duì)應(yīng)的操作。每一個(gè)DAG由7個(gè)節(jié)點(diǎn)表示,其中包含2個(gè)輸入節(jié)點(diǎn),4個(gè)中間節(jié)點(diǎn)和1個(gè)輸出節(jié)點(diǎn)。輸入節(jié)點(diǎn)0是Cellk-2層的輸出,輸入節(jié)點(diǎn)1是Cellk-1層的輸出。中間節(jié)點(diǎn)p(j)和它所有的前趨節(jié)點(diǎn)p(i)通過操作σ相連接,即
(1)
輸出節(jié)點(diǎn)由4個(gè)中間節(jié)點(diǎn)連接而成,輸出通道數(shù)為原輸入通道數(shù)的4倍。
圖2為資源平衡型部分通道采樣神經(jīng)網(wǎng)絡(luò)架構(gòu)搜索(Resource Balanced Partial Channel Neural Architecture Search,RBPC-NAS)流程。
圖2 資源平衡型部分通道采樣神經(jīng)網(wǎng)絡(luò)架構(gòu)搜索流程
圖2(a)表示基于可微的架構(gòu)搜索過程,用DAG圖來表示網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),每個(gè)節(jié)點(diǎn)表示輸入的影像(或特征圖)。首先,設(shè)置初始DAG圖每條邊的操作集合為空集,通過在每條邊上添加不同的操作來持續(xù)擴(kuò)大搜索空間;其次,通過雙層優(yōu)化問題求解,獲取網(wǎng)絡(luò)權(quán)重;最后,求解邊上的混合概率來確定邊上的具體操作。
在基于可微的架構(gòu)搜索算法中,一般使用Softmax進(jìn)行歸一化操作,使操作之間存在一定的競(jìng)爭(zhēng)關(guān)系,優(yōu)化一個(gè)架構(gòu)參數(shù)的同時(shí)抑制其他參數(shù)。采用基于資源平衡型漸進(jìn)式剪枝法對(duì)搜索空間中的競(jìng)爭(zhēng)機(jī)制進(jìn)行優(yōu)化。首先,將架構(gòu)搜索中各操作之間單獨(dú)的競(jìng)爭(zhēng)關(guān)系優(yōu)化為先合作后競(jìng)爭(zhēng)的關(guān)系,即先使用Sigmoid函數(shù),再使用Softmax歸一化函數(shù),從而使得每個(gè)操作有單獨(dú)的權(quán)重,能夠體現(xiàn)出其對(duì)超網(wǎng)性能的貢獻(xiàn);其次,在Sigmoid上添加exp()函數(shù),經(jīng)歸一化處理,將搜索過程的輸出規(guī)范在[0,1]內(nèi);最后,引入0-1損失函數(shù)來縮小連續(xù)編碼離散化的差距,在保證公平的前提下,使不同操作的權(quán)重參數(shù)要么趨向于0,要么趨向于1,從而提高架構(gòu)搜索的效率,使不同操作產(chǎn)生的效果差距增大。
為解決因引入Sigmoid函數(shù)打破原空間中競(jìng)爭(zhēng)機(jī)制的問題,更好地平衡網(wǎng)絡(luò)架構(gòu)的精度和復(fù)雜度,在新的搜索空間中,針對(duì)網(wǎng)絡(luò)架構(gòu)參數(shù)α添加資源平衡項(xiàng)R,用以估計(jì)當(dāng)前網(wǎng)絡(luò)的復(fù)雜度,
R=ζ(F′+γF)+λL,
(2)
其中,λ(0,1)L(0,1)是由λ控制的0-1損失函數(shù),ζ(F′+γF)是由ζ控制的復(fù)雜度損失函數(shù)。在提升搜索算法穩(wěn)定性的同時(shí),得到高性價(jià)比的網(wǎng)絡(luò)架構(gòu),從而減小剪枝過程中產(chǎn)生的更新不平衡和離散化誤差。該方法稱為資源平衡型漸進(jìn)式剪枝法。式(3)表示該算法的損失函數(shù),
L(ω,α)=Ex∈Dtrain[φ(θ(exp(CE(f(x),y*))))]+ζ(F′+γF)+λL,
(3)
如圖2(b)所示,訓(xùn)練集的優(yōu)化在不考慮復(fù)雜度的情況下進(jìn)行;隨著優(yōu)化過程的持續(xù),ζ逐步增大,以促使網(wǎng)絡(luò)在精度和復(fù)雜度之間趨于平衡;將某些操作對(duì)應(yīng)的α值降低,當(dāng)α值降低到設(shè)定閾值時(shí),就將這條邊從超網(wǎng)中裁剪掉。在每一次裁剪過程中,存在一個(gè)待裁剪數(shù)的期望值,期望值未達(dá)到設(shè)定閾值,ζ將繼續(xù)增長(zhǎng);否則,ζ將減小。如果在一個(gè)迭代過程中沒有操作被裁剪,則當(dāng)前架構(gòu)被選擇為一個(gè)候選帕累托最優(yōu)(Pareto-optimal)解。在多次剪枝過程中,每次裁剪參數(shù)α趨于0的操作,持續(xù)該過程,直到搜索出的網(wǎng)絡(luò)足夠精簡(jiǎn),將存活時(shí)間最長(zhǎng)的網(wǎng)絡(luò)架構(gòu)作為最終帕累托最優(yōu)架構(gòu)的子集。F傾向于抑制代價(jià)更高的算子,F(xiàn)′對(duì)每個(gè)操作添加一個(gè)固定的權(quán)重,抑制對(duì)分割任務(wù)貢獻(xiàn)最小的算子。γ越大,裁剪的卷積數(shù)越多,促使網(wǎng)絡(luò)架構(gòu)朝著更高的計(jì)算效率發(fā)展,通過對(duì)γ的調(diào)整可以得到不同的帕累托前沿(Pareto Fronts)。
為降低內(nèi)存使用率,提高搜索效率,選擇部分通道進(jìn)行搜索空間的混合操作,未選擇的通道作為跳躍連接,直接連接到輸出層。DAG圖中,每一個(gè)節(jié)點(diǎn)表示輸入張量到輸出張量的映射,對(duì)于第i個(gè)節(jié)點(diǎn),定義(Ii,Oi)為該映射,I表示從輸入節(jié)點(diǎn)的第一個(gè)張量Tin到最后一個(gè)張量Ti-1以及輸出張量的集合,Oi∈O,表示Ii上的操作,O表示搜索空間中操作的集合。如圖2(c)所示,通過部分通道采樣法,將中間節(jié)點(diǎn)的數(shù)據(jù)處理后進(jìn)行通道融合,DAG中每個(gè)節(jié)點(diǎn)輸入張量的通道分為被選中的通道和未被選中的通道兩部分,k表示通道采樣率,將選中的通道設(shè)置為1/k。通過設(shè)置k的大小,可對(duì)網(wǎng)絡(luò)架構(gòu)的測(cè)試結(jié)果進(jìn)行調(diào)整,k值越大,整體架構(gòu)的效率越高;k值越小,采樣率越高,傳輸信息的準(zhǔn)確率和分割精度就越高。引入部分通道采樣法,也可提高正則化效果,緩解網(wǎng)絡(luò)過擬合問題,并將內(nèi)存使用率降低到原來的1/k。因而,實(shí)驗(yàn)過程中可以通過增加迭代訓(xùn)練次數(shù)來減少更新網(wǎng)絡(luò)權(quán)重造成的不確定性,輸出張量Ti計(jì)算如下所示:
(4)
相較于自然圖像,遙感影像質(zhì)量受成像條件影響較大,具有背景復(fù)雜、空間范圍廣、分辨率低、目標(biāo)呈多方向性等特點(diǎn),普通二維圖像中的采樣由softmax得到歸一化概率函數(shù),而softmax得到的是樣本的均值,因而該方法難以適用于高分遙感影像采樣。
Gumbel-Softmax Trick[20]是一種從離散分布取樣的方法,其定義一種可微分的,離散分布的近似取樣,得到的是近似的樣本,而Softmax得到的則是樣本的均值。因而,Gumbel-Softmax 一般用在需要對(duì)離散分布提取樣本,實(shí)現(xiàn)可導(dǎo)的同時(shí)進(jìn)行訓(xùn)練。由于對(duì)搜索空間使用梯度下降的搜索策略來選擇有向無環(huán)圖每條邊的權(quán)重,因而采用Gumbel-Softmax Trick來進(jìn)行連續(xù)松弛。
為使采樣過程能夠反向傳播,可使用Gumbel-Softmax Trick方法得到樣本的近似值,通過對(duì)式(1)優(yōu)化,使其在離散概率分布中的采樣效率更高:
(5)
離散分布的均值與樣本有一定差異,兩者的數(shù)值在極端的情況相近?;诳晌⒌姆椒▽⑺兄虚g結(jié)果保存在內(nèi)存中,而Gumbel-Softmax Trick方法只選擇一個(gè)操作保存。因而,如果有m個(gè)候選操作,計(jì)算量將減少為1/m。
本實(shí)驗(yàn)的硬件環(huán)境為Intel Core i9-9900k+GTX2080Ti,軟件環(huán)境為Ubuntu18.04+CUDA 10.2+cuDNN7.6+Torch 1.4.0+Python 2.7。實(shí)驗(yàn)數(shù)據(jù)集WHUBuilding[21]和高分影像數(shù)據(jù)集(Gaofen Image Dataset,GID)[22]。
搜索階段:batch_size初始值為3,input_size為512,初始通道數(shù)initial_channel為12,學(xué)習(xí)率learning_rate為0.01,最小學(xué)習(xí)率min_learning_rate為0.001,動(dòng)量momentum為0.9,權(quán)值衰減weight_decay為3e-4。為方便與同類型其他網(wǎng)絡(luò)架構(gòu)進(jìn)行對(duì)比,設(shè)置最大迭代次數(shù)max_epoch為60,搜索層數(shù)Layers設(shè)置為8。
訓(xùn)練階段:batch_size初始值為2,input_size為512,初始通道數(shù)initial_channel為12,學(xué)習(xí)率learning_rate為0.025,動(dòng)量momentum為0.9,權(quán)值衰減weight_decay為3e-4。最大迭代次數(shù)max_epoch為100,搜索層數(shù)Layers設(shè)置為8。
評(píng)估階段:batch_size初始值為2,input_size為512,initial_channel為12,learning_rate為0.001,momentum為0.9,weight_decay為1e-4,num_cells為9。
3.2.1 WHUBuilding數(shù)據(jù)集實(shí)驗(yàn)
本實(shí)驗(yàn)在WHUBuilding數(shù)據(jù)集上進(jìn)行架構(gòu)搜索、訓(xùn)練和評(píng)估。該數(shù)據(jù)集大約有22 000個(gè)獨(dú)立建筑,由航空數(shù)據(jù)集和衛(wèi)星數(shù)據(jù)集組成。航空數(shù)據(jù)集的數(shù)據(jù)來自新西蘭土地信息服務(wù)網(wǎng)站,數(shù)據(jù)集為基督城的建筑矢量數(shù)據(jù),影像的原始地面分辨率為0.075 m,覆蓋面積450 km2。衛(wèi)星數(shù)據(jù)集范圍包括東亞及全球城市,還包括涵蓋了2011年2月發(fā)生6.3級(jí)地震并在隨后幾年重建區(qū)域的建筑物變化檢測(cè)數(shù)據(jù)集。該數(shù)據(jù)集中圖像被下采樣到0.3 m的空間分辨率,并裁剪成8 188個(gè)不重疊的塊,每塊像素為512×512,其中,4 736張圖像用于訓(xùn)練,1 036張圖像用于驗(yàn)證,2 416張圖像用于測(cè)試。
搜索階段共迭代60次,耗時(shí)13.5 h。網(wǎng)絡(luò)架構(gòu)搜索的結(jié)果分為兩類,一種是將輸入的Feature map等大小輸出,即Normal Cell,其步長(zhǎng)為1;另一種是將輸入的Feature map長(zhǎng)寬各降低一半輸出,用來改變影像的空間分辨率,即Reduction Cell,其步長(zhǎng)為2。搜索的過程中,Cell內(nèi)部進(jìn)行不斷更新,網(wǎng)絡(luò)宏觀結(jié)構(gòu)沒有變化,最后的網(wǎng)絡(luò)架構(gòu)由這兩種Cell構(gòu)成。將實(shí)驗(yàn)結(jié)果與SegNet、U-Net、DeepLab v3+和NAS-HRIS進(jìn)行了比較,比較結(jié)果如表1所示??梢钥闯觯舅惴‵1和MIoU分別比SegNet高4.86%和6.42%。本算法參數(shù)量為0.21 M,約是SegNet算法的0.7%,比NAS-HRIS算法多0.02M。
表1 RBPC-NAS在WHUBuilding上的測(cè)試結(jié)果
如圖3所示,整體MIoU與迭代次數(shù)大體呈線性關(guān)系。訓(xùn)練剛開始時(shí),模型在學(xué)習(xí)過程的初期,處于欠擬合區(qū)域。尤其是迭代次數(shù)較小時(shí),如圖3中,在迭代次數(shù)0至20次之間,MIoU分布比較離散,隨著訓(xùn)練的進(jìn)行,訓(xùn)練誤差和測(cè)試誤差都下降。在迭代20到90次時(shí),MIoU提升比較平穩(wěn);之后,在迭代90至100次時(shí),訓(xùn)練集誤差下降,測(cè)試集誤差上升,模型進(jìn)入過擬合區(qū)域,MIoU開始出現(xiàn)降低。
(a)實(shí)驗(yàn)結(jié)果1
圖4為幾種影像分割效果的比較。圖4(a)為輸入的高分遙感影像,圖4(b)為標(biāo)簽數(shù)據(jù)。SegNet在FCN的基礎(chǔ)上增加了解碼器,移除了全連接層,改善了邊界劃分,在獨(dú)立建筑物分割過程中表現(xiàn)出較強(qiáng)的性能,是目前分割任務(wù)中流行的編解碼結(jié)構(gòu),但分割相連建筑物的能力較弱,存在分割界限不明確的問題。U-Net分割生物醫(yī)學(xué)影像準(zhǔn)確率較高,其將編碼階段的整個(gè)特征圖輸入到相應(yīng)的解碼器,內(nèi)存占用量大,雖然MIoU值高于SegNet,但其分割的獨(dú)立性并不強(qiáng),難以有效區(qū)分建筑物之間的區(qū)域。DeepLab v3+整體分割性能較好,但在影像局部特征非常接近時(shí),建筑物中間部分存在誤分割的情況。NAS-HRIS分割準(zhǔn)確率較前幾種算法有所提高,建筑物邊界分割清晰,但局部與大建筑物相連的小物體分割有誤。圖4(g)為本文算法分割效果,其中矩形框標(biāo)注表示算法分割效果較差,如圖4(g)中第一幅效果圖,橢圓形標(biāo)注表示分割效果優(yōu)于其他算法。綜合比較,本算法分割效果最佳,網(wǎng)絡(luò)參數(shù)最少,但由于漸進(jìn)式剪枝運(yùn)算耗費(fèi)更多的GPU時(shí)長(zhǎng),使得搜索時(shí)間比NAS-HRIS長(zhǎng),此外,由于文中算法采用Gumbel-Softmax Trick方法,僅選擇一個(gè)操作保存,造成對(duì)密集建筑物和邊界連續(xù)變化處分割出現(xiàn)誤差。
圖4 RBPC-NAS分割高分辨率謠言影像效果圖
3.2.2 GID數(shù)據(jù)集實(shí)驗(yàn)
GID是一個(gè)用于土地利用和土地覆蓋分類的大型數(shù)據(jù)集。它包含來自中國(guó)60多個(gè)不同城市的150幅高質(zhì)量高分二號(hào)(GF-2)影像,這些圖像覆蓋的地理區(qū)域超過了50 000 km2。GID影像具有較高的類內(nèi)多樣性和較低的類間可分離性。GF-2是高清晰度地球觀測(cè)系統(tǒng)的第二顆衛(wèi)星,包括了空間分辨率為1 m的全色影像和4 m的多光譜影像,每幅影像大小為6 800×7 200像素。多光譜提供了藍(lán)色、綠色、紅色和近紅外波段的影像。近年來,GF-2已被用于土地調(diào)查、環(huán)境監(jiān)測(cè)、作物估算、建設(shè)規(guī)劃等領(lǐng)域[22]。為保證分割效果的可對(duì)比性,本實(shí)驗(yàn)中,將每一幅原始GID影像分割為182張影像,每張像素為512×512,共分割為27 300張影像,根據(jù)標(biāo)簽數(shù)據(jù),從中篩選出12 000張數(shù)據(jù)多樣且信息豐富的影像為數(shù)據(jù)集。在該數(shù)據(jù)集中,選取 8 000 張影像為訓(xùn)練數(shù)據(jù),2 000張為影像為驗(yàn)證數(shù)據(jù),2 000張為測(cè)試數(shù)據(jù)。所選取的影像包含建筑物、森林、農(nóng)田、草地、水域等5個(gè)類別,如圖5所示。
圖5 分割方法的效果對(duì)比
本實(shí)驗(yàn)采用同WHUBuilding數(shù)據(jù)集類似比較方法,與SegNet、U-Net、Deeplab v3+和NAS-HRIS網(wǎng)絡(luò)模型效果對(duì)比。如表2所示,RBPC-NAS的MIoU比上述4種方法分別高出6.34%、4.87%、5.71%和2.5%。表明采用本算法的網(wǎng)絡(luò)架構(gòu)搜索方法在高分辨率遙感影像分割中效果顯著。由于在高分遙感影像切割過程中,部分影像缺乏標(biāo)簽數(shù)據(jù),為充分體現(xiàn)出算法的分割效果,實(shí)驗(yàn)選取包含五類地物的切割影像。由圖5可以看出,SegNet和NAS-HRIS在邊界分割上效果不佳,SegNet在森林影像分割中分割誤差較大,NAS-HRIS在草地影像分割中誤差較大。本算法分割效果優(yōu)于前兩種,在5類地物分類中均表現(xiàn)最優(yōu)。由于部分通道采樣過程中,損失的部分信息對(duì)密集建筑影響較大,因而,本算法在分割密集建筑物時(shí),效果相對(duì)較差。
表2 RBPC-NAS在GID上的測(cè)試結(jié)果
網(wǎng)絡(luò)架構(gòu)自動(dòng)搜索的關(guān)鍵是解決超參自動(dòng)優(yōu)化的問題,式(3)作為整個(gè)網(wǎng)絡(luò)架構(gòu)的目標(biāo)函數(shù),用來對(duì)網(wǎng)絡(luò)超參如λ、γ逐步求精,以得到最優(yōu)的網(wǎng)絡(luò)架構(gòu),漸進(jìn)系數(shù)ζ作為本算法中主要的參數(shù),在模型訓(xùn)練過程中起著決定裁剪操作的作用。訓(xùn)練開始時(shí),ζ初值為0,增量Δζ設(shè)置為1e-5,ζ最大權(quán)重值設(shè)為0.05,最小權(quán)重值設(shè)為0.01,裁剪操作最大的迭代次數(shù)為3。隨著優(yōu)化過程的進(jìn)行,ζ逐漸增加,迫使對(duì)網(wǎng)絡(luò)貢獻(xiàn)小的權(quán)重降低。在每個(gè)裁剪回合中,都有一個(gè)預(yù)期要裁剪的操作符數(shù)量n0,值設(shè)為4。如果預(yù)期的裁剪數(shù)量n0沒有達(dá)到,ζ將持續(xù)增長(zhǎng);否則,ζ開始減小。若在一個(gè)連續(xù)的裁剪周期內(nèi)沒有操作被裁剪到,則當(dāng)前的架構(gòu)作為最優(yōu)架構(gòu)輸出。
漸進(jìn)系數(shù)ζ在式(3)中起著重要調(diào)節(jié)作用。實(shí)驗(yàn)中對(duì)漸進(jìn)系數(shù)與FLOPs關(guān)系進(jìn)行了研究,如圖6所示。漸進(jìn)系數(shù)ζ初始值為0,并以1e-5的增量持續(xù)增加;在每一次迭代過程中,ζ首先增加,迫使弱操作的權(quán)重降低,隨后ζ值降低,此時(shí),操作空間中的弱操作逐步被裁剪。因而,隨著迭代次數(shù)的增加,超網(wǎng)的FLOPs值逐步遞減。
圖6 漸進(jìn)系數(shù)ζ與FLOPs的關(guān)系圖
為探討筆者構(gòu)建的資源平衡型漸進(jìn)式剪枝法和基于部分通道采樣的混合計(jì)算對(duì)目標(biāo)分割結(jié)果的影響,構(gòu)建了不同的網(wǎng)絡(luò)進(jìn)行訓(xùn)練和測(cè)試。實(shí)驗(yàn)結(jié)果如表3和表4所示。其中,RBPC-NAS_A表示僅引入資源平衡型漸進(jìn)式剪枝法的測(cè)試結(jié)果,RBPC-NAS_B表示僅引入部分通道采樣混合計(jì)算法的測(cè)試結(jié)果,RBPC-NAS為同時(shí)引入兩種方法的測(cè)試結(jié)果。
表3 RBPC-NAS在WHUBuilding上的消融實(shí)驗(yàn)結(jié)果
表4 RBPC-NAS在GID上的消融實(shí)驗(yàn)結(jié)果
RBPC-NAS_A僅引入資源平衡型漸進(jìn)式剪枝算法,相比于NAS-HRIS網(wǎng)絡(luò)模型,參數(shù)量增加了 0.07 M,表3中,搜索時(shí)間和訓(xùn)練時(shí)間分別增加了2.1 h和2.2 h,PA、F1、MIoU較NAS-HRIS分別提升了0.24%、0.03%和0.35%。在表4中,較NAS-HRIS,在GID數(shù)據(jù)集下的RBPC-NAS_A搜索時(shí)間和訓(xùn)練時(shí)間分別增加了1.7 h和1.9 h,PA、F1、MIoU RBPC-NAS_A分別提升了1.39%、2.12%和1.78%。其原因在于NAS-HRIS基于傳統(tǒng)算法,在訓(xùn)練階段優(yōu)化網(wǎng)絡(luò)權(quán)重,在驗(yàn)證階段更新網(wǎng)絡(luò)參數(shù),這種機(jī)制增加了計(jì)算負(fù)擔(dān),導(dǎo)致梯度估計(jì)不準(zhǔn)確,從而使得搜索效果變差。一階段優(yōu)化方法能很大程度上降低計(jì)算量,但由于去除了部分操作,易引起離散化誤差。
RBPC-NAS_B僅引入部分通道采樣混合計(jì)算法,網(wǎng)絡(luò)的參數(shù)量較NAS-HRIS減少了0.05 M,表3中,在WHUBuilding數(shù)據(jù)集下,搜索時(shí)間和訓(xùn)練時(shí)間分別減少了2 h和2.9 h,PA、F1、MIoU較NAS-HRIS分別提升了0.08%、0.01%和0.24%。表4中,在GID數(shù)據(jù)集下,搜索時(shí)間和訓(xùn)練時(shí)間分別減少了1.9 h和4 h,PA、F1、MIoU較NAS-HRIS分別提升了0.97%、1.82%和1.21%。通過選取部分通道進(jìn)行搜索空間內(nèi)的混合操作,對(duì)提高搜索效率和節(jié)省計(jì)算資源效果明顯,與RBPC-NAS_A相比,RBPC-NAS_B對(duì)性能的提升效果不明顯,原因?yàn)椴糠滞ǖ啦蓸舆^程為提高效率,以犧牲部分采樣數(shù)據(jù)為代價(jià)。資源平衡型漸進(jìn)式剪枝法和基于部分通道采樣混合計(jì)算相結(jié)合的方式,彌補(bǔ)了各自的缺點(diǎn),提高分割精度的同時(shí),節(jié)省了計(jì)算資源。
本算法在GID數(shù)據(jù)集的優(yōu)化效果提升幅度明顯高于WHUBuilding數(shù)據(jù)集,但整體性能評(píng)價(jià)指標(biāo)低于WHUBuilding數(shù)據(jù)集上的測(cè)試結(jié)果,原因在于WHUBuilding數(shù)據(jù)集為建筑物數(shù)據(jù),類型相對(duì)單一,而GID為高分辨率遙感影像,其物紋理信息豐富、成像光譜波段多、地物信息復(fù)雜,增加了分割的難度。
筆者提出一種以網(wǎng)絡(luò)架構(gòu)自動(dòng)搜索方式分割高分辨率遙感影像的算法。該算法采用梯度下降的搜索策略在基于單元的搜索空間進(jìn)行架構(gòu)搜索。采用基于資源平衡型漸進(jìn)式剪枝法對(duì)雙層優(yōu)化過程中存在的離散化誤差和更新不平衡問題進(jìn)行了優(yōu)化,通過部分通道采樣的混合計(jì)算方法,有效提升了算法的搜索效率和分割的準(zhǔn)確性,針對(duì)高分辨率遙感影像的特殊性,引入Gumbel-Softmax Trick對(duì)高分辨遙感影像進(jìn)行離散分布的近似取樣。實(shí)驗(yàn)表明,本算法在WHUBuilding數(shù)據(jù)集上搜索整個(gè)網(wǎng)絡(luò)僅用13.5 h,MIoU達(dá)到了90.93%;在GID數(shù)據(jù)集上搜索整個(gè)網(wǎng)絡(luò)用時(shí)11.4 h,MIoU達(dá)到69.53%。實(shí)驗(yàn)中發(fā)現(xiàn),本算法在高分遙感影像采樣過程中耗費(fèi)較大的計(jì)算資源,對(duì)邊界連續(xù)變化和密集建筑物分割效果不佳,未來將針對(duì)這一問題開展研究,通過優(yōu)化高分遙感影像采樣方法和搜索策略,進(jìn)一步提升算法的搜索效率。