任沂軍,劉玲玲,鄒艷紅,陳佳音
(1.江門市勘測院,廣東江門 529000; 2.中南大學地球科學與信息物理學院,湖南長沙 410083)
基于SQL Server Analysis Service(SSAS)的土地地類關系空間數據挖掘
任沂軍1?,劉玲玲2,鄒艷紅2,陳佳音2
(1.江門市勘測院,廣東江門 529000; 2.中南大學地球科學與信息物理學院,湖南長沙 410083)
基于SQL Server Analysis Services(簡稱SSAS)提供的Microsoft關聯規則挖掘算法和事務數據挖掘功能,通過利用ArcGIS軟件、空間數據庫引擎ArcSDE和數據庫SQL Server軟件,提出了一種新的土地地類關系挖掘實現方案。首先結合空間數據挖掘(Spatial Data Mining,SDM)相關技術方法,以土地利用數據庫為基礎,實現空間數據提取;然后通過空間關聯操作將空間信息轉化為事務,最后在SSAS中創建多維數據集,完成相關數據挖掘任務。基于某市實例土地利用數據庫,采用該方法探測相鄰地類間的隱含關系,通過建立相鄰地類圖斑空間關聯規則挖掘模型,設置不同的參數,得到了一系列比較實用合理的關聯規則,通過實踐證明了這種方案的有效性。
土地地類關系;SQL Server Analysis Service(SSAS);空間數據挖掘;關聯規則算法
空間數據挖掘技術(Spatial Data Mining,簡稱SDM)能夠從空間數據庫中抽取隱含的知識和空間關系,發現其中有用的特征和模式,目前數據挖掘關聯規則技術已廣泛應用到許多領域[1~4]。隨著全國各縣市土地調查的開展,土地利用現狀數據庫中隱含有大量的信息,如何充分挖掘和利用這些土地空間數據,并提取感興趣的知識或特征變得越來越重要。
數據挖掘是目前數據庫領域研究的熱點問題,然而很多數據挖掘工具只有精通數據挖掘算法的專家才能熟練使用,若對算法不了解,難以得出好的挖掘模型[5]。商用數據庫SQL Server 2005及以后的版本提出了一種縱向數據挖掘解決方案,SQL Server Analysis Service(SSAS)作為其商業智能專業平臺,可以應用在聯機數據處理與分析、數據挖掘上,有效地協助企業建立決策支持。用戶無需對數據挖掘技術和數據挖掘算法有太多了解,即可利用其提供的功能,結合具體的應用,對數據進行挖掘分析[6]。
本文結合實例土地利用現狀數據庫,嘗試利用SSAS組件進行了相鄰地類關系的空間數據挖掘,通過訓練模型,得到了一系列比較實用合理的關聯規則,并通過實踐對模型進行了驗證。
2.1 SSAS的數據挖掘過程與解決方案
SQL Server通過SQL Server Analysis Services提供各類OLAP(On-Line Analytical Processing)數據分析和數據挖掘算法,Analysis Services可以從關系數據源創建多維數據集,建立和應用數據挖掘模型。
SSAS數據挖掘的具體挖掘過程與解決方案[6~8]為:①確定數據挖掘主題:包括定義問題,確定業務對象;②數據準備:包括數據選擇、數據預處理和數據轉換等操作,將與挖掘目標任務相關的對象數據以及對象之間的關系存入相關數據庫的屬性表中。③數據挖掘:將處理好的數據存入SQL Server數據庫中,并通過SSIS (SQL Server Integration Services(SSIS),SQL Server集成服務)錄入相關的文檔及文本數據,在數據庫中抽取數據源,利用數據挖掘算法進行數據挖掘;④結果表達與分析:對挖掘結果進行表達分析,解釋并評估結果。
2.2 土地地類關系挖掘算法與流程
隨著數據挖掘技術的發展,數據挖掘算法也變得豐富多樣。SQL Server中主要提供的挖掘算法有Microsoft關聯規則、聚類分析、決策樹、邏輯回歸、神經網絡、順序分析和線性回歸等。本文中土地地類關系挖掘主要用到了Microsoft關聯規則算法。
關聯規則是在數據庫中對數據項之間所隱含的而又潛在有用的規則進行提取,是目前應用最廣泛的一種數據挖掘方法。關聯規則的概念由Agrawal等提出,目的是從事務數據項目集之間找出滿足給定的置信度和支持度的多個項之間存在的依賴關系。其基本概念[9~12]如下:
(1)支持度(S%)是總事務數T中同時出現A和B的概率;
(2)置信度(C%)表明在事務集合T中,包含A的事務有C%的事務同時包含B。其計算公式是:A與B同時出現的概率/A出現的概率。在SQL Server 2008中,置信度被稱為概率。
(3)重要性是表明規則重要性=0時,則表明A和B沒有任何關聯;若規則重要性>0,則表明當A發生時,B發生的概率會變大;若規則重要性<0,則表明當A發生時,B發生的概率會變小。
關聯規則挖掘包含兩個過程:
(1)掃描數據集,找出所有頻繁項集。這些項集的支持度必須要大于等于最小支持度(Minimum_Support);
(2)由頻繁項集產生關聯規則。這些規則出現的概率(置信度)必須大于等于最小概率(Minimum_ Probability)。
本文實驗選擇SQL Server 2008關聯規則算法進行土地地類關系空間數據挖掘,試圖通過空間關聯規則挖掘土地地類周圍相鄰區域最有可能出現的土地類型情況以及某種土地類型的周邊地塊出現的地類呈現的規律。但Microsoft關聯規則算法是針對事務數據挖掘的算法,不能夠對空間數據的空間信息直接挖掘,所以在挖掘之前需預先將空間數據進行空間關聯分析預處理,將獲得的空間信息轉換為事務數據,然后使用Microsoft關聯規則挖掘算法進行挖掘。土地地類關系挖掘流程如圖1所示:

圖1 土地地類關系挖掘流程圖
本文實例數據來自某市第二次土地調查項目及其建立的土地利用數據庫[13,14],土地利用數據集包含了耕地、林地、草地、園地、居民及設施用地、交通及其設施用地、水利及水利設施用地、其他用地8種不同的土地利用類型,由于Microsoft數據挖掘算法不支持空間信息的挖掘,需要預先運用空間謂詞對空間信息進行關聯抽取,轉化為屬性數據。因此,其數據預處理過程主要包括:空間分析和空間謂詞計算。
3.1 土地利用數據的空間分析
該土地利用數據庫主要包含4個主要的面圖層,分別是鄉鎮、行政區、宗地、地類圖斑。通過圖層之間進行空間疊置分析(如UNION,OVERLAY,JOIN等),可以建立起圖層之間的相互聯系,并轉化為屬性間的關系,為空間數據倉庫的建立做準備。
鄉鎮圖層與行政區圖層進行UNION疊加,可以通過屬性字段進行關聯。表1為行政區與鄉鎮疊加前的屬性結構表,表2為疊加后行政區的屬性結構表,從兩個表中可知疊加后行政區屬性里含有鄉鎮行政區代碼(XZQDM)(鄉鎮的XZQDM)和鄉鎮行政區名稱(XZQMC)(原為鄉鎮中的XZQMC),鄉鎮與村行政區為一對多的關系,實現了兩個圖層的關聯。地類圖斑與宗地間的關聯則包括不同數據圖層的疊加及相關屬性的繼承。地類圖斑繼承宗地屬性,需要在宗地中增加標示字段ZDY_ID與圖斑中的字段ZD_ID進行關聯,進而產生了一對多的關系。

行政區屬性結構表 表1

疊加鄉鎮圖層后行政區屬性結構表 表2
3.2 相鄰地類空間謂詞的計算
空間關聯規則可包含各類空間謂詞,表示空間實體間的拓撲關系謂詞主要有:disjoint(分離)、intersects (相交)、inside/contains(包含)、adjacent-to(相鄰)、covers/covered-by(覆蓋/被覆蓋)、equal(重合)[9]。在數據挖掘過程中,這些空間謂詞可以通過相關的技術進行概化被挖掘所用,如:預先計算不同圖層間的空間拓撲關系或抽取單個圖層中屬性間的關系,可以以數值或文字的形式表達相鄰圖斑或屬性間的包含、鄰接和重疊等拓撲關系[15]。
將處理好的土地調查數據進行空間分析后,由于在后階段的空間數據挖掘階段,需要采集相鄰圖斑之間的關系,這個過程可通過ArcGIS中的ArcToolbox工具或應用ArcEngine編程實現[16]。
ArcToolBox工具箱中Spatial Join是一個強大的疊置分析工具,可進行多種操作。用它進行分析時可以同時對圖層要素與屬性表進行操作,對圖層要素的操作主要是為尋找滿足條件的要素并添加到一個新圖層,對屬性要素的操作主要為增加有需要的字段并寫入相應數據。比如在土地圖斑中增加字段為“Touches”,可以進行圖斑相鄰分析,把每個圖斑相鄰的圖斑標識碼放在其中,如圖2實例所示。

圖2 圖斑相鄰查詢結果
本文在圖斑圖層的屬性中增加了空間謂詞touches,contain,within等字段,分別保存相鄰、包含、被包含的圖斑標識碼。
將處理好的數據,采用空間數據庫引擎ArcSDE導入至SQL Server 2008數據庫中,作為SSAS的地類關系挖掘的數據源。
4.1 相鄰地類圖斑空間關聯規則挖掘模型建立
根據挖掘目標,對相鄰地類圖斑間的關系進行關聯規則挖掘,選擇該市的8個鄉鎮作為圖斑數據挖掘的事實表,剩余的2個鄉鎮作為預測事實表。挖掘模型的具體設計如下:
(1)關聯模型必須包含一個鍵列、多個輸入列以及一個可預測列。輸入列“DLMC”為圖斑的一級地類名稱。采用圖斑屬性“touches”確定的相鄰地類“XLDLMC”作為預測列,設置圖斑標示TUBAN_ID為鍵列。
(2)訓練模型及模型參數的設定
在模型訓練階段,由于關聯規則挖掘算法是對模型參數設置最敏感的算法,因此,需要對設置不同參數后模型的結果進行評估,以期找到最優的模型。反復訓練實驗后,確定的模型參數,最小支持度為80,最小置信度為20%,大于這兩個參數的項集將被篩選出來并形成規則,并且使生成的最大項集數的參數設置為0,不限制生成項集的大小。
4.2 挖掘結果解讀
在SSAS中設置參數,工程部署并運行模型后,進行關聯規則挖掘,從而進行土地利用數據關聯規則提取,得出一系列土地地類周邊相鄰區域可能出現的地類。
關聯規則的挖掘結果主要表現為若干通過數據歸納的規則以及與之附帶的概率和重要性。概率說明出現規則結果的可能性。重要性用于度量規則的用途。挖掘結果如圖3~圖5所示。

圖3 土地地類關聯規則挖掘結果

圖5 土地利用地類與相鄰地類的關聯圖
盡管規則出現的概率可能很高,但規則自身的用途可能并不重要。重要性越高,規則越重要。表3是以0.2為概率閾值,按重要性排序的挖掘結果。

地利用地類與相鄰地類間的空間關聯規則表 表3

DLMC=城鎮村及工礦用地→XL DLMC=耕地3.945.818.2DLMC=園地→XL DLMC=耕地0.345.315.7 DLMC=交通運輸用地→XL DLMC =林地2.229.915.1DLMC=草地→XL DLMC=林地5.027.011.8
從上面的分類結果看,其中一部分中體現出我們比較感興趣的規則。如:
(1)DLMC=耕地→XL DLMC=林地,支持度為11.2%,置信度33.9%,重要度32.9%。這條規則表明在8種地類中耕地和林地相鄰支持度和重要性指標最高,說明耕地的相鄰地類是林地的可能性很大,該地區林業綠化程度高。通過調查驗證,該實驗地區有“一帶”“兩山”,“一帶”指防護林帶,涉及5個鄉鎮45個村,全長50 km,帶寬100 m~200 m,“兩山“綠化總面積20萬畝。
(2)DLMC=水域及水利設施用地→XL DLMC=耕地,支持度為2.5%,置信度50.8%,重要度22.5%。該條規則置信度最高,最能說明一條自然規律:河流周圍是耕地的可能性最大。而實驗數據地區有13條河流,情況基本屬實。
(3)DLMC=交通運輸用地→XL DLMC=林地,支持度為2.2%,置信度為29.9%,重要度為15.1%。實驗數據地區有“三道”,高速公路綠色通道,主線全長37.6 km,公路兩側20 m內,栽植各類樹木174萬株;通道以外兩側各拓展林帶80 m,栽植各類樹種102萬株。二級公路綠色通道,全長44.2 km,公路兩側種植了樹木13萬株;省道路綠色通道,全長21 km,公路兩側種植樹木8.4萬株。如果挖掘出的各項指標越高,說明交通運輸用地的相鄰地類是林地的可能性很大,在道路綠化方面越重視。
4.3 模型評價
依據建立的模型,設定預測值為耕地,選定剩余的兩個鄉鎮作為預測事實表,查看預測結果,進行模型評價。由該模型獲取的提升圖如圖6所示,提升圖中橫軸表示預測總體的百分比,縱軸表示預測準確的百分比。圖內紅線代表理想情況下只需要32%左右的總體便能100%的完全準確地預測出相鄰耕地的數量;而藍線指在隨機情況下50%的總體只能有50%的可能性能準確的預測耕地總體;綠線是所利用的模型的準確趨勢線,從獲得的趨勢線中,可以得出,預測相鄰耕地的正確率達80%,說明該模型在耕地相鄰地類的預測上具有較高的準確性,可用來預測耕地。

圖6 耕地相鄰地類關聯規則挖掘評價
本文根據大量的實驗建立了相鄰地類的關聯規則模型,利用SSAS及空間分析工具等進行數據的預處理與分析,并進一步在建立好的土地利用數據庫的基礎上進行數據挖掘,得出了一些比較有用的結論,如在發現圖斑周圍相近的地類的關聯規則挖掘過程中,發現不同地類之間的一些規律,如耕地與居民用地之間,耕地與草地之間等都有很強的關聯性。通過建立和訓練、解釋及評價模型幾個方面來說明利用SSAS創建數據挖掘模型的過程,能夠挖掘出隱藏在大量數據中的信息,從而為土地利用數據挖掘提供一種新的解決思路。
[1] Han J,Kamber M.Data Mining:Concepts and Techniques [M].San Francisco:Academic Press,2001.
[2] DZEROSKI S,LAVRAC N.Relational Data Mining[M].Berlin:Springer Press,2001.
[3] 李德仁,史文中.論空間數據挖掘和知識發現[J].武漢大學學報:信息科學版,2001,26(6):491~499.
[4] 王樹良.空間數據挖掘進展[J].地理信息世界,2009,7 (2):34~41.
[5] 李強.數據挖掘中關聯分析算法研究[D].哈爾濱工程大學,2010.
[6] 劉欣穎,劉太安,范方.基于SQL Server 2005的數據挖掘系統應用研究[J].科技信息,2009(31):51~51.
[7] 王玲.基于GIS空間數據挖掘技術的應用研究[J].測繪與空間地理信息,2013,36(6):121~123.
[8] 黃興榮,李昌領.基于SQL Server 2005的數據挖掘的研究[J].計算機與現代化,2010(5):195~198.
[9] 劉新,劉文寶.空間數據挖掘中關聯規則的支持度和可信度研究[J].測繪科學技術學報,2007,24(2):93~96.
[10] 陳江平,黃炳堅.數據空間自相關性對關聯規則的挖掘與實驗分析[J].地球信息科學學報,2011,13(1):109~117.
[11] 陸新慧,吳陳,楊習貝.空間關聯規則挖掘技術的研究及應用[J].計算機技術與發展,2013,23(5):26~29.
[12] 秦昆,李振宇,杜鹢.基于概念分析的空間數據挖掘研究進展[J].地球信息科學學報,2009,11(1):10~17.
[13] 鄒艷紅,劉玲玲,姚封.農村土地調查數據庫的建立與土地利用分析[J].城市勘測,2010(2):13~18.
[14] 劉玲玲.懷仁縣土地利用數據庫的SDM研究[D].中南大學,2010.
[15] Murray A T,Estivill-cast ro V.Clustering Discovery Techniques for Exploratory Spatial Data Analysis.International Journal of Geographical Information Science,1998,12(5): 431~443.
[16] 劉仁義,劉南.ArcGIS開發寶典——從入門到精通[M].科學出版社,2007(2):242~255.
Spatial Data Mining for the Land Class Relationships Based on SQL Server Analysis Service
Ren Yijun1,Zou Yanhong2,Liu Lingling2,Chen Jiayin2
(1.Jiangmen Investigation and Surveying Institute,Jiangmen 529000,China; 2.School of Geosciences and Info-Physics,Central South University,Changsha,410083,China)
Based on Mining algorithm of Microsoft associated rule and transaction data mining functions provided by SQL Server Analysis Services(SSAS),a new implementation scheme for the land class relationships mining is proposed by using SQL Server,ArcGIS software,spatial data engine of ArcSDE.Firstly,Combined with related Spatial Data Mining (SDM)technologies,spatial data was extracted on the basis of the land use database.Secondly,the spatial data was transformed into transaction data by spatial associated rule.Finally,multi-dimension data set was constructed in SSAS and the relevant spatial data mining tasks were implemented.As a case study,the implement scheme was applied to discover the implied relationships between the adjacent land classes for the land use database of a county.Through training models and setting different parameters,a series of practical and reasonable associated rules were obtained.It shows that the scheme is feasible and efficient in practice.
the land class relationship;SQL Server Analysis Service(SSAS);spatial data mining(SDM);associated rule algorithm
1672-8262(2014)06-35-05
P208.1
B
2014—03—27
任沂軍(1969—),男,高級工程師,主要從事大地測量、工程測量和GIS工作。
國家自然科學基金資助項目(41102204)