張 伍,陳紅梅
(西南交通大學信息科學與技術學院,成都611756)
(?通信作者電子郵箱hmchen@swjtu.edu.cn)
高光譜遙感技術是現代衛星遙感技術領域的重大突破。高光譜成像儀能對同一物體在幾百個光譜波段上同時成像,并構成像素點的連續曲線。因為高光譜波段圖像間相似性極高,產生了很多不必要的冗余,不便于存儲以及計算,甚至會產生“HUGHES”問題[1],所以需要對其進行降維處理。
目前,高光譜圖像降維主要分為特征提取以及波段選擇兩種方式:特征提取是采用一些數學方法對屬性值進行變換,將其重新映射為新值進行降維,這樣做會破壞圖像原有的物理含義,不利于圖像的解譯;高光譜波段選擇是通過算法將波段進行組合,使用一些重要的波段代表整個高光譜數據集。
高光譜波段選擇算法根據是否利用地物真值信息,可以分為無監督波段選擇算法以及有監督波段選擇算法。劉雪松等[2]提出了使用相對熵間接衡量波段信息差異的最大信息量波段選擇方法;劉春紅等[3]提出了通過計算高光譜波段標準差以及與前后皮爾遜系數之和的比值,進行優先度排序的自適應波段選擇算法;此外還有基于層次聚類[4]、密度峰值聚類[5]、k-means[6]聚類的高光譜波段選擇算法,它們從聚類簇中找出代表波段,形成波段子集;Zhang等[7]根據波段間的相關性遞增挑選高光譜波段。上述算法不需要地物真值信息,是無監督的波段選擇算法。Liu等[8]提出基于鄰域粗糙集理論的高光譜波段選擇算法,并且設置擾動,分析算法穩定性;Patra等[9]用粗糙集理論計算高光譜波段的相關性和重要度,定義了一個新的準則,選擇相關性及重要度高的波段;Su等[10]提出了基于雙層粒子群的高光譜波段選擇算法,采用JM(Jeffreys-Matusita)距離及最小豐度方差估計(Minimum Estimated Abundance Covariance,MEAC)作為適應值;Guo等[11]根據真實地物真值表與高光譜波段間的互信息進行波段選擇。這些算法是有監督波段選擇算法。
目前絕大多數波段選擇算法均采用前向貪婪式的搜索方式,每次挑選當前最優解,通過不斷迭代直至選出最終解。貪婪算法具有較高的計算效率但很容易陷入局部最優的情況。近些年來,部分學者嘗試將演化算法引入特征選擇領域來更好地選擇最優特征子集。演化算法具有群體搜索策略和群體中個體之間信息交互的特性,不容易陷入局部最優解。
蝗蟲優化算法[12]是Saremi等于2017年提出的一種元啟發式算法,它模仿蝗蟲群體中蝗蟲的行為探索目標解,具有較強的探索和開發能力。隨后Mafarja等[13]提出了二進制版本的蝗蟲特征選擇算法,將蝗蟲算法應用于特征選擇問題。高光譜數據中不同地物類別對象間的分割區域蘊含有大量不確定信息,核模糊粗糙集是不確定信息分析的新興范式。多核學習能考慮不同核函數間的互相影響,提高對不同數據分布情況的適應性。本文通過多核模糊粗糙集對高光譜波段中的不確定信息進行分析和度量,同時基于蝗蟲優化算法探索波段組合。高光譜波段選擇旨在選擇出信息量大、相關度低、便于后續分類的波段子集。對應考慮波段信息熵、波段相關性、模糊粗糙集波段依賴度構建蝗蟲個體解的評價函數。本文算法與常用高光譜波段選擇算法相比,在獲取較少波段個數的同時具有較高的地物分類能力。
本章介紹蝗蟲優化算法以及多核模糊粗糙集計算模型。
不同于粒子群算法中粒子根據當前位置、個體歷史最佳位置、群體歷史最佳位置進行更新,蝗蟲優化算法的個體位置要根據群體內的每一個個體位置進行更新。蝗蟲優化算法流程如下。


蝗蟲優化算法在開發、探索、避免局部最優及收斂速度方面有著優秀的性能,該算法能較好地應用基于包裹式的特征選擇算法中。根據特征選擇問題的性質,其中搜索空間可以用二進制值0-1表示。Mafarja等[13]提出了二進制版本的蝗蟲特征選擇算法。

Pawlak基于等價關系提出了經典粗糙集理論,它能在不損失信息的情況下,獲取核心知識。但是在現實生活中,對象屬性值可能是數值型,并不能直接通過等價關系進行比較。因而Dubois等[15]提出了基于模糊等價關系的模糊粗糙集理論,擴展了經典粗糙集理論。
定義1[14]設U是論域,A:U→ [0,1],則稱A是U上的一個模糊集合,A(x)稱為模糊集合A的隸屬函數。對于任意的x∈U,A(x)表示x對A的隸屬度。U上全體模糊集的集合用F(U)表示,A∈F(U)意指A是U上的一個模糊集合。
定義2[15]設U,V為兩個論域,當滿足R∈F(U×V)時,則稱R為U到V的一個模糊關系,隸屬度R(u,v)稱為(u,v)∈ (U×V)關于R的相關程度。
定義3[14]設U是有限論域,U≠?,且R是U上的二元模糊關系,若x,y,z∈U,R滿足:
自反性R(x,x)=1;
對稱性R(x,y)=R(y,x);
min-max傳遞性 min(R(x,y),R(y,z)) ≤R(x,z);則稱R是一個模糊等價關系。
定義4[15]設R為論域U上的一個模糊等價關系,A是U的一個模糊子集,模糊集A∈F(U)的上、下近似定義為:

在機器學習領域中,常常使用高斯核計算兩個對象間的相似性。下面介紹核模糊粗糙集和與之相關聯的一些概念。Hu等[16]給出了核模糊粗糙集的定義。高斯核函數為

由于樣本數據分布情況不同,單一核函數并不能很好地適應每一個數據集,故基于單核學習的方法受到了一定限制。傳統的核模糊粗糙集并沒有考慮不同核函數之間的影響,基于此,Hu等[19]提出可以采用組合核的方式構建出一個新的核函數來進行學習。常用的方法有線性組合以及非線性組合方法。

其中:n是核函數的個數,βm∈[0,1]是第m個核函數的權重。
定義7 給定決策表U,C,D,RK是論域U上的多核模糊相似關系,則基于S-T算子的模糊空間多核粒化下、上近似算子分別定義如下:

定義8 給定決策表U,C,D,RK是論域U上的多核模糊相似關系。U在決策屬性上形成的劃分為{d1,d2,…,d i}。那么決策屬性D對B?C的模糊正域定義如下:

定義9 給定決策表U,C,D,RK是論域U上的多核模糊相似關系。U在決策屬性上形成的劃分為{d1,d2,…,d i}。那么決策屬性D對B?C的屬性依賴度定義如下:

本文根據Mafarja等提出的二進制版本的蝗蟲特征選擇算法進行波段搜索,同時綜合考慮波段信息熵、波段相關性、核模糊粗糙集屬性依賴度構造適應度函數,評價每一個高光譜波段子集。
本文構建出一種新的適應度函數,先計算波段子集內各波段的信息熵之和與依據該波段子集計算出的屬性依賴度的乘積,然后使用該乘積與波段子集內各波段間相關系數的和的比值作為該波段子集的適應度值。
信息熵能用來表示信息的不確定性,本文把信息熵含量作為高光譜波段選擇的適應度函數的一部分。信息熵公式定義如下:a
其中PA(a)表示像素a出現的概率。圖1是去除水汽及噪聲污染的3.1節數據集中每個波段的信息熵變化。


圖1 Indian Pines波段信息熵Fig.1 Information entropy in Indian Pines band
給定決策系統U,B,D中,U={x1,x2,…,xn}是n個像元的集合,B={b1,b2,…,bm}是m個波段的集合,D是像元所對應的地物真值類標。將波段bi以及波段bj每個像素點的下近似之差取絕對值并且求和的方式計算兩個波段間的差異。

設蝗蟲個體解所代表的波段子集為B={b1,b2,…,bn},高
光譜圖像對象類別數為I,信息熵之和,波段間的相似度之和,以及波段子集所計算出的波段屬性依賴度
由于蝗蟲優化算法將最小的適應度函數值設為最佳,故將相關性放置在分子,信息熵及粗糙集下近似的乘積放置在分母。這樣可以保證當波段相關性總和較小,及波段子集信息熵之和與波段屬性依賴度乘積較大時,整個適應度函數的值較小。適應度函數如下所示:

技術路線如圖2所示。圖左側為適應度函數的構建思想,右側為迭代尋優的步驟。

圖2 技術路線Fig.2 Technical route
蝗蟲優化算法對優化問題求解具有較強的探索和開發能力,多核模糊粗糙集模型能較好地分析類別與特征屬性間的依賴關系,因而本文將多核模糊粗糙集模型引入對高光譜波段子集的評價中,采用Majdi等提出了二進制版本的蝗蟲特征選擇算法,提出了一種基于多核模糊粗糙集與蝗蟲優化算法的高光譜波段選擇算法。算法偽代碼如下所示。
算法2 基于蝗蟲優化算法與模糊粗糙集的波段選擇算法。

每一個蝗蟲個體對應一張決策信息表,決策信息表的每一列中的值代表對應波段下每一個像元的亮度值,最后一列代表每一個像元對應的地物真值類別。當蝗蟲個體的某一維度為1時,代表該波段被進行選擇;為0時代表該波段未被進行選擇。通過該決策信息表,可以求得被選擇的每一列代表的波段信息熵,求得選擇后的波段間的波段相關性,以及地物信息與選取后的波段子集間的依賴度。通過式(12)即可求得該蝗蟲個體對應的適應度。信息圖如圖3所示。

圖3 蝗蟲對應信息Fig.3 Correspondinginformation of grasshoppers
為了驗證本文提出的模糊粗糙集蝗蟲優化算法(Fuzzy Rough Set Grasshopper Optimization Algorithm,FRSGOA)的有效性,下載了Indian Pines數據集進行測試。目前,國內外高光譜數據的降維及分類實驗常在此數據集上進行測試。Indian Pines數據集采用機載成像儀AVIRIS于美國印第安納州采集。數據集包含16個地物類別,大小為145像素×145像素,圖像空間分辨率為25 m,波長范圍為0.4~1.5μm,共有220個波段。該區域主要由植被及蔬菜覆蓋:蔬菜主要有玉米、麥子、大豆;植被有干草、樹木、草地等。
數據集移除了水汽污染波段及噪聲波段。用剩余的[4~102],[113~147],[166~216]共 185 個波段進行選擇。取數據的36,41,45號波段分別代表R、G、B三色合成的偽彩色圖見圖4。地物類型個數如表1所示。

圖4 Indian Pines數據偽彩色圖Fig.4 Pseudo color chart of Indian Pines data
實驗使用Java語言編寫實現了FS-GKA(Feature Selection based on Gaussian Kernel Approximations)[20]波段選擇算法、最大信息量(Max Information,MI)[2]波段選擇算法、標準化互信息(Normalized Mutual Information,NMI)[11]波段選擇算法、波段相關性分析(Band Correlation Analysis,BCA)[7]高光譜波段選擇算法以及本文的FRSGOA波段選擇算法。各方法的特點如表2所示。

表1 Indian Pines數據中的地物類別Tab.1 Ground object categoriesof Indian Pines data

表2 波段選擇算法技術特點Tab.2 Technical characteristicsof band selection algorithms
由于本文算法具有隨機性,分類精度取5次計算后的平均分類精度。對于過濾式特征選擇算法,單一的分類器不能較好地衡量波段選擇后的波段子集,本文采用J48及K近鄰(K-Nearest Neighbor,KNN)兩種分類算法衡量波段子集評價特征選擇算法性能。分類算法采用WEKA的默認接口,基于10折交叉驗證確定這些特征子集的分類性能。本文在KNN分類器中,設置近鄰數為5。本文算法設置迭代數為50,蝗蟲個體數為90。核函數部分采用高斯核、指數核、二次有理核等權重進行線性組合。設高斯核為k1、指數核為k2、二次有理核為k3、對象x和y,則基于線性方式的組合核由kl(x,y)=(k1(x,y)+k2(x,y)+k3(x,y))/3表示。
由于不同核函數參數δ,會導致下近似值計算的差異,這樣會對本文算法生成的波段子集產生影響,本文測試不同核參數δ下選擇的波段子集。這里δ設置為0.10,0.22,0.32,0.50。實驗結果如表3所示。
從表3中可以發現,在核參數δ為0.22時,波段平均數為14.4,同時相較于其他3個核參數,在J48及KNN分類器下具有最高的平均分類精度。其他3個核參數,雖然獲得的平均波段個數較小,但是仍能具有較高的平均分類精度。
本文使用FS-GKA、MI、NMI、BCA算法作為本文算法的對比實驗算法。FS-GKA算法采用高斯核函數,參數δ設置為0.22。NMI算法設置參數為按照原文設置。比較結果見表4。

表3 不同核參數分類結果Tab.3 Classification resultsof different kernel parameters

表4 各算法對Indian Pine數據平均分類精度Tab.4 Averageclassification accuraciesof different algorithmson Indian Pinedata
從表4中可以發現,本文算法與其他比較算法相比,能在波段子集更小的情況下取得更高的分類精度。這里BCA比MI、NMI及FS-GKA算法分類精度高,但是仍然不及本文算法的分類精度。
本文提出一種基于核模糊粗糙集及蝗蟲優化算法的高光譜波段選擇算法,它根據蝗蟲優化算法較強的開發及探索能力搜索波段子集。針對數據分布情況難以預計對于單核學習的限制,采用多核模糊粗糙集的方式計算屬性依賴度,同時考慮波段子集信息含量及波段間相關性構造出了適應度函數。本文算法與大多數波段選擇算法相比,不需要提前確定波段個數,直接選擇出波段子集,但所提算法有許多參數需要設置,而且這些參數會對于波段選擇有一定的影響,如何確定較好的參數仍有待進一步研究。