武雪梅
(重慶市勘測(cè)院,重慶 401121)
地理信息系統(tǒng)在地籍管理、災(zāi)害預(yù)警、土地利用等方面都發(fā)揮了重要作用。通過(guò)地理信息系統(tǒng)可以隨時(shí)隨地進(jìn)行信息訪問(wèn),實(shí)現(xiàn)信息共享[1]。然而,地理信息的龐雜性,給管理工作帶來(lái)巨大難度和挑戰(zhàn),導(dǎo)致后期信息檢索和尋找困難,因此對(duì)地理信息進(jìn)行分類整理,一直是地理信息系統(tǒng)中的重要功能模塊[2]。然而,由于地理信息類型多樣、信息量龐大、維度也較大,所以以單一模塊為基礎(chǔ)的系統(tǒng)在分類整理方面面臨巨大的困難。這一點(diǎn)也是地理信息系統(tǒng)一直亟待解決的問(wèn)題。
面對(duì)上述問(wèn)題,目前主要有3種算法可以分類整理:(1)是神經(jīng)網(wǎng)絡(luò)算法,這種算法結(jié)合地理信息特征,通過(guò)神經(jīng)網(wǎng)絡(luò)三層運(yùn)算,完成分類整理;(2)是隨機(jī)森林算法,這種算法通過(guò)構(gòu)建不同類別的決策樹(shù),并根據(jù)投票分類器實(shí)現(xiàn)多種混合信息的分類;(3)是支持向量機(jī)算法,這種方法通過(guò)一個(gè)或一組超平面,然后利用超平面實(shí)現(xiàn)二維數(shù)據(jù)信息的分類。以上3種方法雖然都能完成信息整理任務(wù),但是在處理大規(guī)模和高維度的數(shù)據(jù)時(shí),能力會(huì)直線下降??偠灾?dāng)前常用的這3種信息分類整理方法并不適用多維度、大數(shù)量的地理信息處理工作。
針對(duì)上述問(wèn)題,本研究將數(shù)據(jù)聚類算法應(yīng)用到地理信息系統(tǒng)的多模塊化的設(shè)計(jì)當(dāng)中,以期提高地理信息整理質(zhì)量,方便后期地理信息檢索,提升地理信息系統(tǒng)服務(wù)質(zhì)量。
地理信息系統(tǒng)是地理信息集成平臺(tái),通過(guò)登錄這個(gè)系統(tǒng),可以實(shí)現(xiàn)地理信息查找和共享[3]。地理信息系統(tǒng)為滿足應(yīng)用需求,存在多個(gè)功能模塊,具體如下:
(1)信息集成模塊;
(2)信息處理模塊;
(3)聚類管理模塊;
(4)分類存儲(chǔ)模塊;
(5)信息檢索模塊。
在上述5個(gè)模塊當(dāng)中,聚類分析模塊是核心模塊。由于地理信息具有龐雜性,若不進(jìn)行有效管理,直接進(jìn)行存儲(chǔ)的話,不利于后期信息存儲(chǔ)和信息檢索[4]?;谏鲜銮闆r,結(jié)合聚類算法對(duì)地理信息進(jìn)行分類管理,提升地理信息規(guī)范性。
地理信息系統(tǒng)的首要模塊就是從各個(gè)不同單位的業(yè)務(wù)系統(tǒng)當(dāng)中集成各種地理信息。地理信息類型包括土地利用信息、地籍信息、地質(zhì)類型信息、氣象信息、地表災(zāi)害信息、農(nóng)業(yè)信息、植被覆蓋信息等[5]。這些信息的采集工作隸屬于不同的部門(mén),因此信息存儲(chǔ)在不同業(yè)務(wù)系統(tǒng)當(dāng)中。為此,在該模塊當(dāng)中,利用數(shù)據(jù)倉(cāng)庫(kù)技術(shù)進(jìn)行地理信息集成。
數(shù)據(jù)倉(cāng)庫(kù)技術(shù)是一種典型集成技術(shù)。該技術(shù)與其他兩種集成技術(shù)(聯(lián)邦數(shù)據(jù)庫(kù)以及中間件集成方法)相比,具有更強(qiáng)的實(shí)時(shí)性、及時(shí)性、完整性和規(guī)范性[6]。
數(shù)據(jù)倉(cāng)庫(kù)集成技術(shù)工作原理(如圖1所示):
圖1 數(shù)據(jù)倉(cāng)庫(kù)集成技術(shù)工作原理
在數(shù)據(jù)倉(cāng)庫(kù)技術(shù)當(dāng)中,ETL工具是關(guān)鍵,在其中主要起到抽取/清洗/轉(zhuǎn)換/加載的作用。
1.1.1 抽取
抽取,即從各個(gè)業(yè)務(wù)系統(tǒng)數(shù)據(jù)庫(kù)抽取所需要的信息或數(shù)據(jù)[7]。
1.1.2 轉(zhuǎn)換
轉(zhuǎn)換,即轉(zhuǎn)換抽取到的信息的格式,使其具有統(tǒng)一性。信息來(lái)源于不同的業(yè)務(wù)系統(tǒng),其表現(xiàn)格式并不相同,為方便后續(xù)存儲(chǔ)和應(yīng)用,需要轉(zhuǎn)成統(tǒng)一的指定格式,如,編碼轉(zhuǎn)換、字段轉(zhuǎn)換、度量單位的轉(zhuǎn)換等[7]。
1.1.3 清洗
抽取到的信息有的存在缺失,有的存在異常,有的存在重復(fù)等問(wèn)題。這些存在問(wèn)題的信息統(tǒng)一被稱為臟信息。臟信息的存在會(huì)影響整體信息的質(zhì)量,因此需要清洗處理,包括填補(bǔ)、刪除以及去重復(fù)等[8]。
1.1.4 加載
加載,即將處理好的信息加載到建立的目標(biāo)倉(cāng)庫(kù)當(dāng)中,統(tǒng)一進(jìn)行挖掘和利用。加載方式分為2種:全量加載速度快,但是可能存在數(shù)據(jù)遺漏的風(fēng)險(xiǎn);增量加載速度慢,但是能保證數(shù)據(jù)加載的完整性。
地理信息在完成集成工作后,進(jìn)入下一模塊,即處理模塊當(dāng)中。在這一模塊主要進(jìn)行兩個(gè)方面的處理,即離散化和降維。下面針對(duì)這兩個(gè)方面繼續(xù)具體分析。
1.2.1 離散化
為提高后續(xù)地理信息聚類時(shí)的時(shí)空效率,需要將具有連續(xù)屬性的地理信息進(jìn)行離散化處理[9]。具體過(guò)程如下:
步驟1:給出一個(gè)具體的決策表系統(tǒng),把它記為S=(U,C∪{e} ∪j5i0abt0b ,V,f),其中,U為論域;C∪{e}為條件屬性集;j5i0abt0b=D為決策屬性集;C為離散的屬性集;e為連續(xù)的屬性;
步驟2:按照升序?qū)進(jìn)行排序;
步驟3:根據(jù)下述公式(1),選擇n個(gè)初始的區(qū)間粒集I=(I1, I2,...,In),其中
步驟4:將具有相同屬性的相鄰區(qū)間粒進(jìn)行合并,作為一個(gè)新的區(qū)間粒,記為I';
步驟5:按照I'對(duì)e進(jìn)行離散化,得到e′′;
步驟6:計(jì)算e''的粒度熵QG (C∪{e′′} ,D);
步驟7:重復(fù)步驟4和步驟5,得到QG (C∪{e′} ,D);
步驟8:計(jì)算QG (C∪{e′′} ,D)與QG (C∪{e′} ,D)之間的絕對(duì)差值;
步驟9:判斷當(dāng)前I′是否使得絕對(duì)差值變化最小。若滿足條件,得出離散化后的連續(xù)屬性e′;否則,重復(fù)上述步驟,直至完成地理信息連續(xù)屬性離散化。
1.2.2 降維
地理信息類型多樣,因此維度非常高,不利于分類管理,因此需要進(jìn)行降維處理[10]。具體過(guò)程如下:
步驟1:設(shè)有p維隨機(jī)向量x=(x1,x2,...,xp)Tn個(gè)原始地理信息樣本xj=(xj1,xj2,...,xjp)T,i=1,2,...,n,n>p,構(gòu)造樣本矩陣。其中,T為轉(zhuǎn)置行列符號(hào);
步驟2:對(duì)樣本矩陣中的每一陣元進(jìn)行如下標(biāo)準(zhǔn)化變換;
式(4)中,xij為原始地理信息陣元。
步驟3:利用標(biāo)準(zhǔn)化后的每一陣元Zij構(gòu)建標(biāo)準(zhǔn)化矩陣Z;
步驟4:計(jì)算Z的相關(guān)系數(shù)矩陣;
式(5)中,ri代表相關(guān)系數(shù)。
步驟5:解R的特征方程,得到k個(gè)特征值λ1,λ2,..,λk;
步驟6:求解特征根對(duì)應(yīng)的特征向量;
步驟7:計(jì)算下述特征值的兩個(gè)參數(shù)Y和Y',計(jì)算公式如下:
(1)方差貢獻(xiàn)率Y
(2)方差累計(jì)貢獻(xiàn)率Y′
式(7)中,λi為第i個(gè)特征值;λk為第k個(gè)特征值;p為維度;k為特征值的數(shù)量。
步驟8:選擇方差累計(jì)貢獻(xiàn)率大于85%的向量作為主成分[11]。
通過(guò)上述步驟得到的主成分,即為降維后的信息。
基于上述處理好的地理信息,在本章節(jié)利用聚類算法進(jìn)行分類整理。聚類算法是通過(guò)計(jì)算相似度來(lái)實(shí)現(xiàn)樣本聚集的一種算法[12]。該算法下又包括多種分支算法,這些算法各有特點(diǎn)。其中K-means是最常用的方法,但是這種算法對(duì)初始聚類中心要求較高,聚類中心的選擇直接影響聚類結(jié)果,因此在利用該算法進(jìn)行地理信息聚類整理前,選擇初始聚類中心至關(guān)重要。K-means算法初始聚類中心選擇的基本流程(如圖2所示):
圖2 K-means算法初始聚類中心選擇流程
圖2 中,a為參數(shù),取值0.75;Eps計(jì)算公式如下:
式(8)中,Eps為密度的半徑;p為維度;n為樣本數(shù)量;d(xi,x)j為距離。
基于選出的初始聚類中心,執(zhí)行K-means算法基本流程,如下:
步驟1:指定聚類數(shù)量K以及具有n個(gè)樣本的集合{x1,x2,...,xn};
步驟2:執(zhí)行上述圖2流程,選擇初始聚類中心;
步驟3:計(jì)算各個(gè)樣本到聚類中心的距離d(xi,x)j,計(jì)算公式如下:
式(9)中,xi為樣本;xj為聚類中心。
步驟4:將樣本劃分到距離最近的類別當(dāng)中;
步驟5:重新計(jì)算每個(gè)新類的質(zhì)心;
步驟6:判斷質(zhì)心是否發(fā)生變化。若發(fā)生變化,回到步驟3;否則完成地理信息分類。
通過(guò)上述聚類算法,實(shí)現(xiàn)了對(duì)地理信息的分類整理,為后期信息共享和檢索提供了便利。
為測(cè)試所研究基于數(shù)據(jù)聚類算法在地理信息系統(tǒng)中分類管理模塊的功能,以某地理信息系統(tǒng)為依托,運(yùn)行算法,驗(yàn)證分類準(zhǔn)確性。
為方便測(cè)試,在這里模塊功能測(cè)試所使用的樣本集由人工給出,不進(jìn)行集成工作。所使用的地理信息樣本集包括7個(gè),這7個(gè)樣本集基本情況如下:
(1)土地利用信息集:樣本數(shù)量為5246個(gè);屬性8個(gè);維度15個(gè);類別為5類;
(2)地籍信息集:樣本數(shù)量為1256個(gè);屬性5個(gè);維度25個(gè);類別為3類;
(3)地質(zhì)類型信息集:樣本數(shù)量為2540個(gè);屬性7個(gè);維度18個(gè);類別為7類;
(4)氣象信息集:樣本數(shù)量為4580個(gè);屬性6個(gè);維度23個(gè);類別為8類;
(5)地表災(zāi)害信息集:樣本數(shù)量為3690個(gè);屬性4個(gè);維度20個(gè);類別為10類;
(6)農(nóng)業(yè)信息集:樣本數(shù)量為2560個(gè);屬性8個(gè);維度14個(gè);類別為7類;
(7)植被覆蓋信息集:樣本數(shù)量為5210個(gè);屬性25個(gè);維度56個(gè);類別為25類。
利用章節(jié)1.2中提到的兩種方法,即離散化和降維,對(duì)地理信息樣本集進(jìn)行處理,處理后的結(jié)果如下:
(1)土地利用信息集:屬性離散化后26個(gè);降維后5個(gè);
(2)地籍信息集:屬性離散化后65個(gè);降維后10個(gè);
(3)地質(zhì)類型信息集:屬性離散化后15個(gè);降維后6個(gè);
(4)氣象信息集:屬性離散化后22個(gè);降維后12個(gè);
(5)地表災(zāi)害信息集:屬性離散化后14個(gè);降維后8個(gè);
(6)農(nóng)業(yè)信息集:屬性離散化后17個(gè);降維后7個(gè);
(7)植被覆蓋信息集:屬性離散化后42個(gè);降維后13個(gè)。
利用圖2流程,選擇不同地理信息樣本集的聚類中心。以土地利用信息集為例,其聚類中心分布情況(如圖3所示):
圖3 土地利用信息集的聚類中心分布情況
其他樣本集分布在這里不詳細(xì)給出。
分類管理模塊功能評(píng)測(cè)指標(biāo)有兩個(gè),即漢明損失值和F1分?jǐn)?shù)。下面針對(duì)這兩個(gè)指標(biāo)進(jìn)行分析。
(1)漢明損失:代表地理信息樣本誤分類情況。
(2)F1分?jǐn)?shù):用于分類結(jié)果的綜合性能,即精準(zhǔn)率與召回率的調(diào)和平均。計(jì)算公式如下:
式(11)中,F(xiàn)1為調(diào)和平均值;P為精準(zhǔn)率;R為召回率。
根據(jù)上述漢明損失和F1分?jǐn)?shù)兩個(gè)指標(biāo)對(duì)所研究的分類管理模塊進(jìn)行檢測(cè)。其中,前者值越小,表示分類整理質(zhì)量越高;后者分?jǐn)?shù)值越大,表示分類整理質(zhì)量越高。
相同測(cè)試條件下,利用神經(jīng)網(wǎng)絡(luò)算法、隨機(jī)森林算法以及支持向量機(jī)算法進(jìn)行分類整理,并與聚類算法的分類管理結(jié)果進(jìn)行對(duì)比,具體結(jié)果(如表1所示):
表1 分類管理模塊功能評(píng)測(cè)結(jié)果
由表1可知:與其他3種分類整理算法相比,聚類算法應(yīng)用下,漢明損失最小,F(xiàn)1值最高,說(shuō)明聚類算法的分類管理能力更強(qiáng),達(dá)到了研究的目的。
綜上所述,地理信息系統(tǒng)設(shè)計(jì)中,功能模塊的設(shè)計(jì)至關(guān)重要,關(guān)系到系統(tǒng)業(yè)務(wù)邏輯的運(yùn)行。地理信息十分龐雜,以往地理信息系統(tǒng)分類管理模塊并不適用于地理信息的處理。為此,進(jìn)行基于數(shù)據(jù)聚類算法的地理信息系統(tǒng)多模塊化設(shè)計(jì)研究。最后對(duì)設(shè)計(jì)的模塊進(jìn)行應(yīng)用效果驗(yàn)證,其分類整理功能滿足了設(shè)計(jì)需求,達(dá)到了研究目標(biāo)。然而,本研究提供的地理信息樣本集較少,而現(xiàn)實(shí)情況中的地理信息類型更多、數(shù)量更龐大,因此有必要擴(kuò)大測(cè)試規(guī)模,進(jìn)行進(jìn)一步驗(yàn)證和測(cè)試。