存储 频道

详谈空间数据挖掘技术方法及理论

  【IT168 技术】地理信息系统(Geographic Information System,简称GIS)是计算机科学、地理学、测量学、地图学等多门学科综合的技术[1]。GIS的基本技术是空间数据库、地图可视化及空间分析,而空间数据库是GIS的关键。空间数据挖掘技术作为当前数据库技术最活跃的分支与知识获取手段,在GIS中的应用推动着GIS朝智能化和集成化的方向发展。

  1 空间数据库与空间数据挖掘技术的特点

  随着数据库技术的不断发展和数据库管理系统的广泛应用,数据库中存储的数据量也在急剧增大,在这些海量数据的背后隐藏了很多具有决策意义的信息。但是,现今数据库的大多数应用仍然停留在查询、检索阶段,数据库中隐藏的丰富的知识远远没有得到充分的发掘和利用,数据库中数据的急剧增长和人们对数据库处理和理解的困难形成了强烈的反差,导致“人们被数据淹没,但却饥饿于知识”的现象。

  空间数据库(数据仓库)中的空间数据除了其显式信息外,还具有丰富的隐含信息,如数字高程模型〔DEM或TIN〕,除了载荷高程信息外,还隐含了地质岩性与构造方面的信息;植物的种类是显式信息,但其中还隐含了气候的水平地带性和垂直地带性的信息,等等。这些隐含的信息只有通过数据挖掘才能显示出来。

  空间数据挖掘(Spatial Data Mining,简称SDM),或者称为从空间数据库中发现知识,是为了解决空间数据海量特性而扩展的一个新的数据挖掘的研究分支,是指从空间数据库中提取隐含的、用户感兴趣的空间或非空间的模式和普遍特征的过程[2]。由于SDM的对象主要是空间数据库,而空间数据库中不仅存储了空间事物或对象的几何数据、属性数据,而且存储了空间事物或对象之间的图形空间关系,因此其处理方法有别于一般的数据挖掘方法。SDM与传统的地学数据分析方法的本质区别在于SDM是在没有明确假设的前提下去挖掘信息、发现知识,挖掘出的知识应具有事先未知、有效和可实用3个特征。

  空间数据挖掘技术需要综合数据挖掘技术与空间数据库技术,它可用于对空间数据的理解,对空间关系和空间与非空间关系的发现、空间知识库的构造以及空间数据库的重组和查询的优化等。

  2 空间数据挖掘技术的主要方法及特点

  常用的空间数据挖掘技术包括:序列分析、分类分析、预测、聚类分析、关联规则分析、时间序列分析、粗集方法及云理论等。本文从挖掘任务和挖掘方法的角度,着重介绍了分类分析、聚类分析和关联规则分析三种常用的重要的方法。

  2.1、分类分析

  分类在数据挖掘中是一项非常重要的任务,目前在商业上应用最多。分类的目的是学会一个分类函数或分类模型(也常常称作分类器),该模型能把数据库中的数据项映射到给定类别中的某一个。分类和我们熟知的回归方法都可用于预测,两者的目的都是从历史数据纪录中自动推导出对给定数据的推广描述,从而能对未来数据进行预测。

  和回归方法不同的是,分类的输出是离散的类别值,而回归的输出则是连续的数值。二者常表现为一棵决策树,根据数据值从树根开始搜索,沿着数据满足的分支往上走,走到树叶就能确定类别。空间分类的规则实质是对给定数据对象集的抽象和概括,可用宏元组表示。

  要构造分类器,需要有一个训练样本数据集作为输入。训练集由一组数据库记录或元组构成,每个元组是一个由特征(又称属性)值组成的特征向量,此外,训练样本还有一个类别标记。一个具体样本的形式可为:( v1, v2, ..., vn; c );其中vi表示字段值,c表示类别。

  分类器的构造方法有统计方法、机器学习方法、神经网络方法等等。统计方法包括贝叶斯法和非参数法(近邻学习或基于事例的学习),对应的知识表示是判别函数和原型事例。机器学习方法包括决策树法和规则归纳法,前者对应的表示为决策树或判别树,后者则一般为产生式规则。神经网络方法主要是反向传播(Back-Propagation,简称BP)算法,它的模型表示是前向反馈神经网络模型(由代表神经元的节点和代表联接权值的边组成的一种体系结构),BP算法本质上是一种非线性判别函数[3]。另外,最近又兴起了一种新的方法:粗糙集(rough set),其知识表示是产生式规则。

  不同的分类器有不同的特点。有三种分类器评价或比较尺度:1) 预测准确度;2) 计算复杂度;3) 模型描述的简洁度。预测准确度是用得最多的一种比较尺度,特别是对于预测型分类任务,目前公认的方法是10番分层交叉验证法。

  计算复杂度依赖于具体的实现细节和硬件环境,在数据挖掘中,由于操作对象是海量的数据库,因此空间和时间的复杂度问题将是非常重要的一个环节。对于描述型的分类任务,模型描述越简洁越受欢迎。例如,采用规则归纳法表示的分类器构造法就很有用,而神经网络方法产生的结果就难以理解。

  另外要注意的是,分类的效果一般和数据的特点有关。有的数据噪声大,有的有缺值, 有的分布稀疏,有的字段或属性间相关性强,有的属性是离散的而有的是连续值或混合式的。目前普遍认为不存在某种方法能适合于各种特点的数据。

  分类技术在实际应用非常重要,比如:可以根据房屋的地理位置决定房屋的档次等。

  2. 2 聚类分析

  聚类是指根据“物以类聚”的原理,将本身没有类别的样本聚集成不同的组,并且对每一个这样的组进行描述的过程。它的目的是使得属于同一个组的样本之间应该彼此相似,而不同组的样本应足够不相似。与分类分析不同,进行聚类前并不知道将要划分成几个组和什么样的组,也不知道根据哪些空间区分规则来定义组。其目的旨在发现空间实体的属性间的函数关系,挖掘的知识用以属性名为变量的数学方程来表示。聚类方法包括统计方法、机器学习方法、神经网络方法和面向数据库的方法。基于聚类分析方法的空间数据挖掘算法包括均值近似算法[4]、CLARANS、BIRCH、DBSCAN等算法。目前,对空间数据聚类分析方法的研究是一个热点。

  对于空间数据,利用聚类分析方法,可以根据地理位置以及障碍物的存在情况自动地进行区域划分。例如,根据分布在不同地理位置的ATM机的情况将居民进行区域划分,根据这一信息,可以有效地进行ATM机的设置规划,避免浪费,同时也避免失掉每一个商机。

  2.3 关联规则分析

  关联规则分析主要用于发现不同事件之间的关联性,即一事物发生时,另一事物也经常发生。关联分析的重点在于快速发现那些有实用价值的关联发生的事件。其主要依据是:事件发生的概率和条件概率应该符合一定的统计意义。

  空间关联规则的形式是X->Y[S%,C%],其中X、Y是空间或非空间谓词的集合,S%表示规则的支持度,C%表示规则的置信度。空间谓词的形式有3种:表示拓扑结构的谓词、表示空间方向的谓词和表示距离的谓词[5]。各种各样的空间谓词可以构成空间关联规则。如,距离信息(如Close_to(临近)、Far_away(远离))、拓扑关系(Intersect(交)、Overlap(重叠)、Disjoin(分离))和空间方位(如Right_of(右边)、West_of(西边))。

  实际上大多数算法都是利用空间数据的关联特性改进其分类算法,使得它适合于挖掘空间数据中的相关性,从而可以根据一个空间实体而确定另一个空间实体的地理位置,有利于进行空间位置查询和重建空间实体等。大致算法可描述如下:(1)根据查询要求查找相关的空间数据;(2)利用临近等原则描述空间属性和特定属性;(3)根据最小支持度原则过滤不重要的数据;(4)运用其它手段对数据进一步提纯(如OVERLAY);(5)生成关联规则。

  关联规则通常可分为两种:布尔型的关联规则和多值关联规则。多值关联规则比较复杂,一种自然的想法是将它转换为布尔型关联规则,由于空间关联规则的挖掘需要在大量的空间对象中计算多种空间关系,因此其代价是很高的。

  —种逐步求精的挖掘优化方法可用于空间关联的分析,该方法首先用一种快速的算法粗略地对一个较大的数据集进行一次挖掘,然后在裁减过的数据集上用代价较高的算法进一步改进挖掘的质量。因为其代价非常高,所以空间的关联方法需要进一步的优化。

  对于空间数据,利用关联规则分析,可以发现地理位置的关联性。例如,85%的靠近高速公路的大城镇与水相邻,或者发现通常与高尔夫球场相邻的对象是停车场等。

  3 空间数据挖掘技术的研究方向

  3.1 处理不同类型的数据

  绝大多数数据库是关系型的,因此在关系数据库上有效地执行数据挖掘是至关重要的。但是在不同应用领域中存在各种数据和数据库,而且经常包含复杂的数据类型,例如结构数据、复杂对象、事务数据、历史数据等。由于数据类型的多样性和不同的数据挖掘目标,一个数据挖掘系统不可能处理各种数据。因此针对特定的数据类型,需要建立特定的数据挖掘系统。

  3.2 数据挖掘算法的有效性和可测性

  海量数据库通常有上百个属性和表及数百万个元组。GB数量级数据库已不鲜见,TB数量级数据库已经出现,高维大型数据库不仅增大了搜索空间,也增加了发现错误模式的可能性。因此必须利用领域知识降低维数,除去无关数据,从而提高算法效率。

  从一个大型空间数据库中抽取知识的算法必须高效、可测量,即数据挖掘算法的运行时间必须可预测,且可接受,指数和多项式复杂性的算法不具有实用价值。但当算法用有限数据为特定模型寻找适当参数时,有时也会导致物超所值,降低效率。 软件开发网

  3.3 交互性用户界面

  数据挖掘的结果应准确地描述数据挖掘的要求,并易于表达。从不同的角度考察发现的知识,并以不同形式表示,用高层次语言和图形界面表示数据挖掘要求和结果。目前许多知识发现系统和工具缺乏与用户的交互,难以有效利用领域知识。对此可以利用贝叶斯方法和演译数据库本身的演译能力发现知识。

  3.4 在多抽象层上交互式挖掘知识

  很难预测从数据库中会挖掘出什么样的知识,因此一个高层次的数据挖掘查询应作为进一步探询的线索。交互式挖掘使用户能交互地定义一个数据挖掘要求,深化数据挖掘过程,从不同角度灵活看待多抽象层上的数据挖掘结果。

  3.5 从不同数据源挖掘信息

  局域网、广域网以及Internet网将多个数据源联成一个大型分布、异构的数据库,从包含不同语义的格式化和非格式化数据中挖掘知识是对数据挖掘的一个挑战。数据挖掘可揭示大型异构数据库中存在的普通查询不能发现的知识。数据库的巨大规模、广泛分布及数据挖掘方法的计算复杂性,要求建立并行分布的数据挖掘。

  3.6 私有性和安全性

  数据挖掘能从不同角度、不同抽象层上看待数据,这将影响到数据挖掘的私有性和安全性。通过研究数据挖掘导致的数据非法侵入,可改进数据库安全方法,以避免信息泄漏。

  3.7 和其它系统的集成

  方法、功能单一的发现系统的适用范围必然受到一定的限制。要想在更广泛的领域发现知识,空间数据挖掘系统就应该是数据库、知识库、专家系统、决策支持系统、可视化工具、网络等技术的集成。

  4 有待研究的问题

  我们虽然在空间数据挖掘技术的研究和应用中取得了很大的成绩,但在一些理论及应用方面仍存在急需解决的问题。

  4.1 数据访问的效率和可伸缩性

  空间数据的复杂性和数据的大量性,TB数量级的数据库的出现,必然增大发现算法的搜索空间,增加了搜索的盲目性。如何有效的去除与任务无关的数据,降低问题的维数,设计出更加高效的挖掘算法对空间数据挖掘提出了巨大的挑战。

  4.2 对当前一些GIS软件缺乏时间属性和静态存储的改进

  由于数据挖掘的应用在很大的程度上涉及到时序关系,因此静态的数据存储严重妨碍了数据挖掘的应用。基于图层的计算模式、不同尺度空间数据之间的完全割裂也对空间数据挖掘设置了重重障碍。

  空间实体与属性数据之间的联系仅仅依赖于标识码,这种一维的连接方式无疑将丢失大量的连接信息,不能有效的表示多维和隐含的内在连接关系,这些都增加了数据挖掘计算的复杂度,极大地增加了数据准备阶段的工作量和人工干预的程度。

  4.3 发现模式的精炼

  当发现空间很大时会获得大量的结果,尽管有些是无关或没有意义的模式,这时可利用领域的知识进一步精炼发现的模式,从而得到有意义的知识。

  在空间数据挖掘技术方面,重要的研究和应用的方向还包括:网络环境上的数据挖掘、栅格矢量一体化的挖掘、不确定性情况下的数据挖掘、分布式环境下的数据挖掘、数据挖掘查询语言和新的高效的挖掘算法等。

  5 小结

  随着GIS与数据挖掘及相关领域科学研究的不断发展,空间数据挖掘技术在广度和深度上的不断深入,在不久的将来,一个集成了挖掘技术的GIS、GPS、RS集成系统必将朝着智能化、网络化、全球化与大众化的方向发展。

0
相关文章