用于执行地理加权回归 (GWR),这是一种用于对空间变化关系进行建模的线性回归的局部形式。
工作流示意图
使用 GeoAnalytics Tools 进行的分析
通过跨多个 ArcGIS GeoAnalytics Server 计算机和核心组件的分布式处理来运行使用 GeoAnalytics Tools 进行的分析。GeoAnalytics Tools 和 ArcGIS Enterprise 中标准要素分析工具的参数和功能不同。要了解有关这些差别的详细信息,请参阅要素分析工具差别。
示例
- 整个研究区域的教育程度和收入之间的关系是否一致?
- 有哪些关键可变因素可以解释森林火灾频发的原因?
- 哪些地区的孩子会取得高测试分数? 似乎与哪些特征联系在一起? 每个特征分别在哪些地方最为重要?
用法说明
此工具用于执行地理加权回归 (GWR),这是一种用于对空间变化关系进行建模的回归的局部形式。通过使回归方程适合数据集中的每个要素,GWR 工具可为您要尝试了解或预测的变量或过程提供局部模型。地理加权回归 (GWR) 工具构建这些独立方程的方法是:将每个目标要素的邻域范围内的要素的因变量和解释变量进行合并。所分析的每个邻域的形状和范围取决于选择确定邻域的方法参数的输入。
地理加权回归 (GWR) 工具还会生成输出要素和诊断信息。输出要素图层会自动添加到地图中,并会对模型残差应用渲染方案。下面提供了有关各输出的完整说明。
通常的做法是,在使用 GWR 工具于本地探索数据之前,首先使用广义线性回归工具在全球范围内探索数据。
选择要建模的字段和选择解释字段参数应为包含各种值的数值字段。这些值应在全球和本地范围内变化。因此,请勿使用“哑元”解释变量来表示 GWR 模型中的不同空间组织(例如,向城镇中心外的人口普查区赋予值 1,而向其他区域赋予值 0)。由于 GWR 工具允许解释变量系数发生变化,这些空间组织解释变量并不必要,并且如果包含了这些变量,则会产生局部多重共线性问题。
在全局回归模型(如广义线性回归)中,当两个或更多变量具有多重共线性时(当存在两个或更多冗余变量或者这些变量共同提供同一信息时),结果并不可靠。GWR 工具为数据集中的各要素构建了一个局部回归方程。如果用于特定解释变量的值出现空间聚类,则可能存在局部多重共线性问题。输出要素类中的条件数字段 (COND_ADG) 可指明回归结果由于局部多重共线性而出现不稳定性的时期。通常,如果要素的条件数大于 30、等于“空”或者等于 -1.7976931348623158e+308(对于 shapefile 而言),则其结果是不可靠的。
如果在 GWR 模型中包含名目数据或分类数据,则需谨慎操作。在类别出现空间聚类的地方,存在局部多重共线性的风险会更大。GWR 输出中包含的条件数指明了局部共线性何时会导致问题(条件数小于零、大于 30 或设置为“空”)。存在局部多重共线性的结果是不稳定的。
如果回归模型缺少关键解释变量,则会导致回归模型的指定错误。如果回归残差的空间自相关具有统计学上的显著性,或者在一个或多个解释变量的系数当中发生了非期望的空间变化,则表明错误指定了您的模型。您应该尽一切努力(例如,通过 GLR 残差分析和 GWR 系数变化分析)来查找这些丢失的关键变量,以便在模型中包含这些变量。
时刻关注解释变量的不稳定性是否会出现问题。例如,假设您正将特殊植物种类的密度构建为若干变量(包括 ASPECT)的函数。如果发现在整个研究区域中 ASPECT 变量的系数发生了更改,则可能要查看是否有缺少关键解释变量的迹象(例如,可能存在大量竞争植被)。应该尽一切努力将所有关键解释变量包含到回归模型中。
严重模型设计问题或用于表明局部方程未包含足够多相邻要素的错误,通常表示回归存在全局或局部多重共线性问题。要确定问题所在,请使用广义线性回归运行全局模型,然后检查每个解释变量的 VIF 值。如果某些 VIF 值较大(例如,大于 7.5),则全局多重共线性会阻止 GWR 解决问题。但是,更有可能是局部多重共线性所导致的问题。请尝试为各解释变量创建一个专题地图。如果在地图上出现相同值的空间聚类,请考虑将这些变量从模型中移除,或将这些变量与其他解释变量合并以便加大值的变化性。例如,如果要对房屋价格进行建模且具有卧室和浴室两个变量,则可能需要将其合并以加大值的变化性,或将其表示为浴室/卧室的建筑面积。在构造 GWR 模型时,要避免使用空间组织哑元变量、空间聚类名目或数值变量,或者避免使用几乎不可能具有值的变量。
地理加权回归 (GWR) 是一种与广义线性回归符合相同要求的线性模型。要确保正确指定您的 GWR 模型,请仔细查看地理加权回归的工作原理中介绍的诊断。回归分析基础知识中的回归模型失效方式部分还包含用于确保您的模型准确的信息。
因变量和解释变量应该是包含值范围的数值字段。如果变量值均相等(例如,如果某字段的所有值均为 9.0),则此工具将无法求解。
如果要素的预测或解释字段中具有一个或多个空值或者空字符串值,则将从输出中排除该要素。如果需要,可以使用计算字段对值进行修改。
您应该从视觉上检查回归残差中明显的预测过度和预测不足,从而挖掘出回归模型中是否可能发生变量丢失的线索。
当截距、估计系数、预测值、残差和条件数为空时,说明该模型的拟合度可能较差。该模型中的一个或多个要素可能会存在这种情况,可能的原因如下:
- 相邻要素数目不足。相邻要素数目少于两个的要素不存在模型拟合度。
- 该模型存在多重共线性问题。
在上述情况下,应通过检查输出诊断来评估该模型,并在可能的情况下使用不同的参数和系数重新对其进行拟合。
输出
地理加权回归工具可生成各种不同的输出。GWR 模型的汇总和统计汇总可在门户项目页面上获得,也可作为图层上的资源。要访问结果汇总,请单击 Map Viewer 中生成的图层下的 显示结果 。该工具会生成一个输出图层。输出要素将自动添加到 Map Viewer 中,并会对模型残差应用热/冷渲染方案。生成的诊断取决于输入要素的模型类型,如下所述。
连续(高斯)
解释消息和诊断
- AICc - AICc 对 AIC 应用偏差校正,适用于小样本大小。随着输入要素数目的增加,AICc 会不断接近 AIC。
- 可决系数 (R-Squared) - 可决系数 (R-Squared) 可用于检验拟合度。其值在 0.0 到 1.0 范围内变化,值越大越好。此值可解释为回归模型所涵盖的因变量方差的比例。可决系数 (R-Squared) 计算的分母为因变量值平方和。向模型中再添加一个解释变量不会更改分母但会更改分子;这将出现改善模型拟合的情况(但可能为假象)。请参阅下文中的校正可决系数 (Adjusted R-Squared)。
限制
地理加权回归的 GeoAnalytics 实施存在以下限制:
- 无法预测另一图层或创建栅格系数图层。
- 无法对二进制(逻辑)变量或计数(泊松值)变量进行建模。
- 无法使用“黄金搜索”或“手动间隔”定义邻域搜索。
ArcGIS API for Python 示例
可通过 ArcGIS API for Python 获取地理加权回归工具。
本示例可查找全国各地商店的销售关系。
# Import the required ArcGIS API for Python modules
import arcgis
from arcgis.gis import GIS
# Connect to your ArcGIS Enterprise portal and confirm that GeoAnalytics is supported
portal = GIS("https://myportal.domain.com/portal", "gis_publisher", "my_password", verify_cert=False)
if not portal.geoanalytics.is_supported():
print("Quitting, GeoAnalytics is not supported")
exit(1)
# Search for and list the big data file shares in your portal
search_result = portal.content.search("", "Big Data File Share")
# Look through the search results for the big data file share of interest
bdfs_search = next(x for x in search_result if x.title == "bigDataFileShares_SalesData")
# Look through the big data file share for 2018 sales
sales_2018 = next(x for x in bdfs_search.layers if x.properties.name == "2018_Sales")
# Run the GWR tool
gwr_result = arcgis.geoanalytics.analyze_patterns.gwr(input_layer = sales_2018,
explanatory_variables = "population, customers",
dependent_variable = "total_sales"
model_type = "Continuous",
neighborhood_type = "NumberOfNeighbors",
neighborhood_selection_method = "UserDefined",
number_of_neighbors = "100",
local_weighting_scheme = "BiSquare",
output_trained_name = "GWR_results")
# Visualize the results if you are running Python in a Jupyter Notebook
processed_map = portal.map()
processed_map.add_layer(gwr_result)
processed_map
类似工具
使用 ArcGIS GeoAnalytics Server 地理加权回归工具可对空间变化关系进行建模。其他工具或许在解决略有差异的类似问题时十分有用。
Map Viewer 分析工具
使用 ArcGIS GeoAnalytics Server 广义线性回归工具创建广义线性模型和预测。
使用 ArcGIS GeoAnalytics Server 基于森林的分类与回归创建模型和预测。
ArcGIS Desktop 分析工具
要从 ArcGIS Pro 运行此工具,您的活动门户必须为 Enterprise 10.8 或更高版本。您必须使用具有执行 GeoAnalytics 要素分析权限的帐户登录。
使用“空间统计数据”工具箱中的地理加权回归地理处理工具,在 ArcGIS Pro 中执行类似的回归操作。
使用基于森林的分类与回归地理处理工具(作为“空间统计数据”工具箱的一部分),通过 ArcGIS Pro 中的 Leo Breiman 随机森林算法的改编版本创建模型和预测。