白话空间统计二十:相似性搜索(四)

今天把相似性搜索写完……很多时候都能够严重的体会为什么网络上那么多小说,要么烂尾,要么太监了,最后这点结局真不好写。

今天的文章主要谈ArcGIS的空间统计模块中相似性搜索剩下的两种算法……本文有公式,有数学恐惧症的同学慎入。

上一次(相似性搜索三)我们写了属性值相似性搜索法,忘记了的同学回去翻历史记录……中间隔的有点多,需要有耐性,或者直接去翻虾神的博客:http://blog.csdn.net/allenlu2008

如果说属性值搜索用的是简单粗暴的平均数算法的话,第二种算法“等级属性值”,就相对没有那么粗暴了,当然……仅仅是没有那么粗暴而已。二者的粗暴程度,对比如下,一个是50米以内的猫,一个是100米以内的……那种电影里面被航弹在身边爆炸,依然健步如飞的……虾神只能说呵呵了。




本质上基本上没有改变……好吧,下面进入算法时间:
在ArcGIS里面,等级属性值算法的参数是:RANKED_ATTRIBUTE_VALUES ,也叫做分级属性值,方法非常简单,就是所有属性值,按照分级排序的方式进行归类,得出每一个属性所处的类别。

单个属性值非常容易理解,但是如果有多个属性值怎么办呢?方法有是和属性值搜索一样了,采用差的平方计算相似度,然后进行多个相似度累加……只不过计算的时候用的是类别,如下图所示:


所有要素的等级指数计算完成之后,把这些指数从小到大进行排序,排序完成之后,就是相似度的排名。等级指数的计算方法如上图。排名越靠前(数值小)的,表示越相似,越靠后(数值大)的,表示越相异。


第三种相似度就是在自然语言处理领域里面最常用的“属性剖面”方法了,也叫做“余弦相似性搜索”,在ArcGIS里面,它的参数叫做“ATTRIBUTE_PROFILES ”。

余弦相似度在数学表达里面是对于两个向量之间相似表达最优的一种解,表达和公式如下:


这个算法我最早是在《数学之美》里面看到过,网络上对于这种算法的解释也都是汗牛充栋了,所以我这里就不做详细的解答,大家自己搜索一下就好。

ArcGIS利用余弦相似度来计算两个要素的相似度的时候,一定要最至少有两个属性,而不像前面两个算法一样,最少一个属性就可以了。
运算过程如下:
1、对所有数据进行向量标准化。
2、计算余弦相似度。
3、等级排序

如下所示:(在Excel里面进行计算)


ArcGIS里面的计算结果如下:


余弦相似度搜索,就和数据本身没有多大关系了,因为使用向量的方式,所以更关注数据之间的变化,如下所示:



最后,有同学可能想起来了……虾神,你写的不是空间统计么?为什么整个儿都是属性计算……空间哪里去了……好吧,其实这个工具主要就是用来进行属性相似性搜索的,如果要加入空间因素,有以下两个办法:

1、利用面积或者周长一类的空间属性,加入到相似性搜索的参数中去。
比如我们知道某濒危物种在某地(面区域)生存很好,如果希望找到该物种也可能茁壮成长的其他地方。这样就需要搜索与物种成功存活环境相似的地方,而且可能还需要这些地方足够大,足够紧凑以保证物种成活。这一种此分析中,我们就可以计算每个面区域的紧凑性指标(一般紧凑性测量基于与圆圈区域具有相同周长的面的面积)。运行相似性搜索工具时,紧凑性测量和能够反应面的尺寸 (Shape_Area) 的属性包括在追加到输出的字段参数中。

2、利用空间权重矩阵,生成相应的空间权重,加入计算。
又比如或许我是一个准备对扩大业务零售商。而且已经有了个成功店铺,那么我要开下家店铺的时候,我就想找到一些能够反映成功关键特征的属性来帮助我查找扩大业务的候选位置。比如我销售的产品对大学生最有吸引力,并且还想避免靠近我的现有店铺以及还要远离远离竞争者。那么就可以使用近邻分析工具创建空间变量:与大学或大学生密度较大处之间的距离、与现有店铺的距离以及与竞争者的距离。再进行相似性搜索时,可以将这些空间变量包括在追加到输出的字段参数之中。


### 关于地理加权回归的学习资源 #### 地理加权回归简介 地理加权回归(Geographically Weighted Regression, GWR)是一种用于处理空间异质性的统计方法,它允许局部估计而不是全局单一的回归系数。这种方法特别适用于研究那些随地理位置而变化的关系模式。 #### 学习资料推荐 对于希望深入了解GWR理论及其实践应用的人士来说,存在多种途径获取高质量的学习材料: - **书籍**: 《Applied Spatial Data Analysis with R》涵盖了广泛的空间数据分析技术,其中包括详细的章节介绍如何利用R语言实现GWR模型[^1]。 - **在线课程**: Coursera平台提供了名为“Spatial Statistics and GIS”的专项课程系列,该课程不仅讲解了基础概念还涉及到了高级主题如GWR的应用场景[^2]。 - **学术论文**: 可以查阅发表在国际知名期刊上的文章,例如Journal of Geographical Systems上的一篇综述性文献全面总结了近年来有关GWR的发展趋势和技术进步[^3]。 #### 实际操作指南 为了帮助初学者更好地掌握这一技能,在实际项目中运用所学知识至关重要。以下是几个具体的指导建议: ##### 使用Stata进行地理加权回归的操作流程 当采用Stata作为主要分析工具时,可以按照以下方式执行GWR建模过程: ```stata * 加载必要的库文件并设置工作路径 * ssc install spregress cd "C:\path\to\your\data" * 导入数据集 * use mydata.dta, clear * 执行地理加权回归命令 * spregress y x1 x2 ..., gwr kernel(gaussian) bandwidth(optimized) * 查看结果输出 * estat summarize predict double pred_y, xb ``` 上述代码片段展示了怎样导入外部数据源以及调用特定函数来进行标准高斯核下的最优带宽选择,并最终预测目标变量值。 ##### Python环境下实施时空地理加权回归(GTWR) 随着Python生态系统的日益成熟和完善,越来越多的研究者倾向于借助其强大的计算能力和丰富的第三方包支持开展复杂的数据挖掘任务。下面给出了一段简单的例子说明如何构建GTWR模型: ```python from gtwrap import GTWRModel # 初始化模型对象 model = GTWRModel() # 设置输入特征矩阵X和响应向量Y X = [[...], [...]] # 替换为实际坐标位置和其他协变量组成的列表 Y = [...] # 响应变量对应的观测值序列 # 训练模型 model.fit(X, Y) # 获取拟合后的参数估计 params = model.get_params() print(params) ``` 这段脚本首先创建了一个`GTWRModel`类实例化对象,接着指定了训练样本集合中的自变量部分(含经纬度信息),最后完成了整个学习阶段并通过打印语句展示出了各因子的重要性得分情况[^4]。 #### 应用案例分享 一个典型的应用领域是在城市规划方面——评估房价波动因素的影响程度差异。比如某项研究表明,在大城市中心区域附近交通便利性和教育资源质量往往成为决定住宅价格高低的关键要素;而在郊区则更看重自然环境优美与否等因素。通过建立相应的GWR模型可以帮助政府决策部门更加精准地制定土地开发政策和服务设施布局方案。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

虾神说D

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值