在 IBM SPSS 的核心产品 Modeler 和 Statistics 中,有一个重要的模型广义空间关联规则(GSAR:Geospatial Association Rules),是一种用于挖掘带有空间信息的频繁模式的模型,主要用来处理包含地理信息的数据,挖掘并分析数据项集之间的关系,并根据所挖掘出的规则进行预测,同时可以图形化展示与规则相关的地理信息。
回页首
关联规则用于挖掘大量数据中项集之间有趣的关联或相互联系。随着大量数据不停地收集和存储,许多业界人士对于从他们的数据库中挖掘关联规则越来越感兴趣。从大量的商务事务数据中发现有趣的关联关系,可以帮助制定许多商务决策,比如:分类设计,交叉购物和贱卖分析等等。 传统关联规则挖掘的一个典型例子是购物篮分析。该过程通过发现顾客放入其购物篮中不同商品之间的联系,分析顾客的购买习惯。通过了解哪些商品频繁地被顾客同时购买,这种关联关系的发现可以帮助零售商制定营销策略。例如,在同一次的超市购物中,如果顾客购买了牛奶,他同时购买面包的可能性是多大?通过挖掘出来的这些规则帮助零售商有选择地经销和安排货架,这种信息可以引导和促进销售。例如,零售商可以将牛奶和面包放近一些,这样可以进一步刺激顾客在一次购物中同时购买这些商品。如表 1。
购物篮事务 | 购买商品项集 |
---|---|
1 | 牛奶,面包,谷类 |
2 | 牛奶,面包,糖,鸡蛋 |
3 | 牛奶,鸡蛋 |
4 | 糖,鸡蛋 |
定义每种商品为一个布尔变量,表示该商品的有无。每个篮子则可用一个布尔向量表示。可以分析布尔向量,得到反应商品频繁关联或同时购买的购买模式。这些模式可以用关联规则的形式表示。例如,购买牛奶也趋向于同时购买面包可以用以下关联规则表示:
{牛奶} - {面包}
(support=50%,confidence=66.7%)
这里,我们称牛奶为规则的前项,面包为规则的后项。 支持度,是关联规则中一种重要的度量,用于确定给定数据集的频繁程度,支持度很低的规则可能只是偶然出现。从商务角度来看,低支持度的规则多半也是无意义的,用购物篮数据来解释的话,也就是对顾客很少同时购买的商品集进行促销可能并无益处。因此,支持度通常用来删去那些无意义的规则。 置信度,是指后项在包含前项的事务中出现的频繁程度。对于给定的规则,置信度越高,说明后项在包含前项的事务中出现的可能性就越大,越具有研究性价值。 支持度(support)和置信度(confidence)是规则的兴趣度度量,他们分别反映发现规则的有用性和确定性。关联规则的支持度 50%意味着同时购买牛奶和面包的可能性是 50%,置信度 66.7%表示购买牛奶的顾客 67.7%也同时购买面包。 关联规则是有趣的,如果它满足最小支持度阀值和最小置信度阀值。这些阀值可以由用户或领域专家设定。
当然,除此之外,传统关联规则亦可以应用于其他一些领域,如生物信息学,医疗诊断,网页挖掘和科学数据分析等等。例如,在地球科学数据分析中,关联规则可以解释海洋,陆地和大气过程之间的有趣联系。这样的信息能够帮助地球科学家更好地理解地球系统中不同的自然力之间的相互作用。
回页首
自关联规则被提出以后,很多算法已经被成功应用于很多实际应用中。近年来,由于空间地理数据在不同行业的重要性和必要性,空间数据挖掘方法获得了很多的关注。于是在现有的空间数据挖掘方法上,空间关联规则的提议成为了最典型的空间模式挖掘方法。 根据早期空间关联规则的定义,一个空间关联规则描述了空间数据库中一个或者一组空间对象与另一组空间对象的关系。空间对象可以分为两组,事件对象(Event)和地理信息对象(Geo-Context)。
例如:“大多数发生在 1 号普查区里的犯罪案件都同时发生在靠近 Freya St 街区的地方”,在这条规则中,犯罪案件即表示事件对象,1 号普查区和 Freya St 街区表示指定的地理信息对象。整个地理信息对象会包括空间数据库中所有的普查区,街区和道路,以及其他地图元素。“在……里”和“靠近”则表示犯罪案件和普查区,街区的空间关系。 空间关系也可以被当做事件对象的一个空间属性。我们以<r,o>这样的形式来表示,这里 r 代表空间关系,o 则代表地理信息对象。我们使用空间关系来表示上面例子中的规则:
<Within, Tract1> -
<Close to, Freya St> ( a %, c %)
在这里,
<Within, Tract1>是规则的前项,<Close to, Freya St>是规则的后项。在上面这条规则中,a%代表前项支持度,也就是说,a%的犯罪案件满足该规则的前项。c%表示犯罪案件发生在 1 号普查区同时又靠近 Freya St 街区的可能性。a%和 c%都是由用户指定的,只有同时满足 a%和 c%的规则才能被挖掘出来。
前项支持度和置信区间是两个非常重要的关联规则度量值,除此之外,我们还有很多其他类型的度量值,我们不在这里一一介绍。
总而言之,空间关联规则描述了事件对象与地理信息对象的空间关系所构成的空间分布模式。然而,根据我们的了解分析,现有的空间关联规则挖掘方法有一个主要的限制,就是他们不能够有效地分析空间对象的非空间属性。所以,很多有趣的规则不能被发现,而这些被遗漏的规则实际上表达了很多丰富的信息,比如,空间对象和非空间的对象之间的关系,这些关系可能包含非常有价值的信息。 这里我们要介绍的广义空间关联规则挖掘算法 (GSAR),是 IBM 自己开发的算法,他集成了传统空间关联规则和广义关联规则的优点,并在此基础上做了进一步的扩展。从而弥补了上面提到的缺点。GSAR 能够利用所有可用的信息,包括空间信息,非空间信息等等。GSAR 主要有两方面的优势:第一,可以有效地利用和挖掘比现有的空间关联规则更多的信息。第二,GSAR 可以通过扩展传统的关联规则挖掘算法(例如先验原理)即可实现,并且不会有明显的额外运算。
回页首
此章节,我们将从下面三个部分对 GSAR 如何应用于犯罪形态的分析展开介绍。
这篇文章我们以环境系统研究所(ESRI)提供的一组犯罪案件的真实数据为例。 这个数据集总共包含了 816 起犯罪事件,分为 3 个犯罪类型:其中包含 167 起毒品交易,552 起车辆盗窃,以及 97 起抢劫案件。这组数据中包含的犯罪案件记录主要来自于 2009 年 1 月到 2010 年 3 月期间 10 个普查区,23 条街道的数据统计。 数据格式是 ESRI Shapefile(shp),简称 Shapefile
,是 ESRI 开发的一种空间数据开放格式。目前,该文件格式已经成为了地理信息软件界的一个开放标准,Shapefile 也是一种重要的交换格式,它能够在 ESRI 与其他公司的产品之间进行数据互操作。 Shapefile 文件用于描述几何体对象: 点
,折线与 多边形
。例如,Shapefile 文件可以存储 井
、河流、 湖泊
等空间对象的几何位置。除了几何位置,Shapefile 文件也可以存储这些空间对象的属性,例如一条河流的名字,一个湖泊的位置以及一个城市的温度等等。 定义犯罪事件为事件类型对象(Event 数据),其他的如犯罪事件发生的时间,地点,类型等都是犯罪事件的非空间属性。犯罪事件的位置我们也可以用坐标来表示(此数据中不包含)。 事件类型对象的输入文件总共包含三个 Shapefile,每一个 Shapefile 分别代表一种类型的犯罪事件,即:毒品交易(Drugs),抢劫(Robbery),车辆盗窃(VehicleTheft)。 表 2 是一个简单的犯罪事件数据样本。
ID | Day | Type |
---|---|---|
3 | Friday | Drugs |
120 | Thursday | Robbery |
256 | Wednesday | VehicleTheft |
… | … | … |
同时,定义普查区和街道为地理信息对象(Geo-Context 数据),地理信息对象的输入文件包含两个 Shapefile,一个代表普查区的属性(人口密度,男性人数,女性人数,男女比例等等),另一个则表示街道的属性(地理位置,人流量,等等)。 表 3 是一个普查区属性的例子。 需要特别说明的是:在普查区的数据中,人口密度(POPDENSITY)和男女比例(RATIO_MF)作为非常重要的区域属性,对于犯罪事件的分布有这很大的影响,将会进入到我们的数据建模过程。 所以针对表 3 中的这两个连续型的非空间属性,我们需要预先做离散化(离散化的规则可由用户自行定义,我们不在这里详述),也就是将 POPDENSITY 和 RATIO_MF 转变为分类型的非空间属性 POPDEN 和 RMF,POPDEN 和 RMF 将会代替原始属性进入数据建模阶段。请参考表 3。
ID | POPDENSITY | RATIO_MF | POPDEN | RMF |
---|---|---|---|---|
1 | 954.447 | 1.02 | Low | Avg |
2 | 6381.73 | 0.96 | VeryHigh | Avg |
16 | 4715.44 | 0.88 | High | Low |
17 | 2879.07 | 0.96 | Avg | Avg |
18 | 4426.01 | 0.88 | High | Low |
25 | 6027.64 | 0.98 | VeryHigh | Avg |
26 | 569.551 | 1.10 | Low | High |
31 | 1060.55 | 1.17 | Low | High |
68 | 717.115 | 0.95 | Low | Avg |
79 | 543.256 | 1.10 | Low | High |
以 IBM SPSS Statistics 为例,介绍我们的建模过程: 步骤 1 选择使用 Geospatial Association Rules 进行后续的建模,如图 1 所示。
图 1. 选择 GSAR
步骤 2添加数据集,即图 2 所示的 5 个含有事件或者地图信息的 Shapefile(.shp),对每一个 Shapefile 单独设置空间关系,也就是设定犯罪事件与每个 Shapefile 中主要属性项之间的关系,请参考图 2。 图 2. 添加数据集
图 2. 添加数据集
以街区文件,也就是 street.shp 为例,设置犯罪事件与街道之间的空间关系,这里我们设定在街道周围 500 步范围以内的距离认为是靠近该街道的。设置方法如图 3 所示。
图3. 设置犯罪事件与街道的空间关系
步骤 3分别指定事件对象和地理信息对象。此例中,我们的事件对象是上面数据介绍里面提到的三种犯罪类型。地理信息对象则是普查区和街道。参见图 4。
图 4. 指定事件对象和地理信息对象
步骤 4将所有事件对象的原始数据项集合到一个整的数据源,可以根据自己的意愿选择任意的数据项,这些被选中的数据项将会被整合进入到一个新的数据集,该数据集会进入到最后的建模过程。如图 5。
图 5. 集合所有的原始事件对象
步骤 5指定事件对象,地理信息对象,以及他们的非空间属性项的方向,也就是指定他们在最终产生的规则中所处的位置,即规则的前项(Condition),后项(Prediction)亦或两者(Both)皆可。如图 6 所示。
图 6. 指定数据项在规则中的方向
步骤 6根据自己的特定需求设置相关的选项,这部分主要是对输出结果(如:最终产生的规则,显示给用户的信息)的定制。例如,需要输出满足多大支持度的数据项,满足多大置信区间的规则,以及最终显示给用户的规则数量,等等。
图 7. 定义建模过程
步骤 7按照用户的需求设置相关选项筛选用户比较感兴趣的规则,这里我们重点介绍两个部分。参见图 8。
比如,推出这样一条规则,<3 号普查区> - <人口密度大>,3 号普查区人口密度大是一个既定事实,这样的规则对于犯罪形态的分析是没有意义的,用户对这样的信息没有兴趣,那么通过前期的设定,GSAR 能够有效地排除这些没有价值的规则。
图 8. 定义最终显示规则的条件
步骤 8定义对连续性变量做离散化的规则。请参见图 9。
图 9. 定义离散化
我们同样以 IBM SPSS Statistics 输出的结果为例,对最终的建模结果进行简单的分析。
结果输出总共包括两大部分:
一.显示建模之前用户指定的所有参数信息,数据的信息,以及建模过程中挖掘出来的频繁项和项集等等信息。我们不在此展开介绍。
二.建模结果的展示,GSAR 能够通过地图的方式展示犯罪案件与地理位置,以及地理信息属性之间的关系。
如图 10 和图 11 所示,以规则的置信区间值排序,置信区间值高的前五条规则会被展示出来,同时右边的地图展示了左边选中的规则所表达的犯罪事件和地理位置之间的空间关系。
图 10. 地图展示第一条规则
点击查看大图
关闭 [x]
浅绿色区域表示这些区域不满足该规则的前项。也就是说浅绿色的区域人口密度不是非常高(VeryHigh)。 深绿色区域表示这些区域满足该规则的前项。也就是说这两个深绿色区域的人口密度非常高。 蓝色点表示事件对象既满足规则的前项又满足后项,也就是说,80%的犯罪案件发生在人口密度比较高并且男女比率比较平均的区域。同时也说明了,蓝色点集中的区域人口密度比较高而且男女比例比较平均。 红色点表示事件对象仅仅满足规则的后项,不满足前项,也就是说,红色点表示的犯罪案件是发生在男女比率平均,但是人口密度不是非常高的地区。 再以第五条规则为例,对结果进行简单的解释。如图 11。
图 11. 地图展示第五条规则
点击查看大图
关闭 [x]
同样,浅绿色区域表示这些地理位置不满足该规则的前项。也就是说浅绿色的区域人口密度不是非常高,可能是高,平均或者低(High,Avg,Low)。 深绿色区域表示满足该规则前项的地理位置。也就是说这两个区域的人口密度非常高。 蓝色点表示事件对象既满足规则的前项又满足后项,也就是说,车辆盗窃案件常常发生在人口密度很高,同时男女比例也比较平均的区域。 红色点表示事件对象仅仅满足规则的后项,不满足前项。那些发生在男女比例比较平均的区域内的犯罪案件,通常不是在人口密度非常高的区域发生的车辆盗窃案件。 GSAR 提供的图形化展示方法,可以让我们通过地图一目了然的观测到建模所挖掘出来的那些有意义的与地理位置相关的规则。这是传统关联规则不能做到的。 我们也可以选择用公式表达的方式展示挖掘出来的最终规则,如图 12 展示了置信区间较高的前十条规则,这种方式方便用户集中查看感兴趣的规则。 图 12. 公式展示规则
图 12. 公式展示规则
回页首
广义空间关联规则利用其在分析空间对象,以及空间对象的非空间属性的优势,挖掘出很多有价值的信息,包括,犯罪案件与空间对象的关系等等,这些信息为我们对犯罪形态的分析提供了非常有价值的信息。我们可以通过挖掘出的这些有利信息,根据实际情况,因地制宜,采取更加有效的防范措施,进而有效的控制犯罪事件的发生率等等,实现一定的社会价值。同时希望这篇文章通过使用这样一个具体的例子介绍 GSAR 算法的优势,帮助大家更好的理解算法特征,从而把 GSAR 算法应用到更多领域,挖掘更多有价值的信息。