(GeoShapley:机器学习模型中测量空间效应的博弈论方法)
话题点:geoshapley、XAI、空间效应、非线性
一、引言
机器学习和人工智能(AI)越来越多地用于模拟地理空间现象,在各个领域都有很好的表现。可解释人工智能(XAI)领域的最新进展为解释黑箱机器学习提供了一种解决方案。排列特征重要性图和部分依赖图等解释技术得到了广泛的应用。它可以揭示结果和特征之间的关系是线性的、非线性的、单调的还是更复杂的。然而,这些解释方法中的大多数都是全局的,这意味着它们只能提供对模型行为的平均解释。
Shapley加性解释(SHAP;Lundberg and Lee 2017),它将几种XAI方法(包括LIME)统一到博弈论(Shapley 1953)的相同Shapley值框架中。Shapley用数学证明的理论和性质公平地分配了联盟博弈中个体玩家的贡献。在机器学习上下文中,我们可以将特征(即协变量或预测器)视为玩家,模型是游戏,预测是结果。在这方面,Shapley值为与每个特征相关的边际贡献。
SHAP在解释地理空间数据模型方面也引起了人们的注意,包括在房价建模中的应用(L. Chen et al. 2020)、城市气候(Yuan et al. 2022)、旅行行为(Kashifi et al. 2022;Z。L i 2023),事故分析(Parsa et al. 2020),灾害敏感性(Abdollahi and Pradhan 2023;J. Zhang et . 2023),以及与热相关的死亡率(Kim and Kim 2022)等。
空间效应本质上是相互作用效应,位置与附近的位置相互作用,产生空间自相关,位置与其他特征相互作用,产生空间变化关系。Z. Li(2022)发现SHAP作为一种局部解释方法,可以从机器学习模型解释这种交互效应。研究表明,shap解释的XGBoost模型可以以与现有空间统计方法非常相似的方式近似空间效应,特别是空间滞后模型(Anselin 1988)和多尺度地理加权回归。这表明XAI可以作为一个桥梁,将空间统计模型与机器学习连接和融合。
使用现成的SHAP方法处理地理空间数据有两个主要挑战。首先,由于交互效应是空间效应的关键,SHAP只支持计算基于树的方法(如决策树、随机森林、梯度增强树)的交互值。这对将该方法应用于其他架构(如神经网络)造成了限制,神经网络最近在建模地理空间现象方面显示出了有希望的结果(Derrow-Pinion et al. 2021;Zhu et al. 2021;姚和黄2023;B. Y. Chen et al. 2024)。其次,位置特征,如坐标对或更复杂的位置嵌入,在Shapley值计算中应被视为单个联合参与者。如Harris et al.(2021)所述,将它们作为单独的特征处理将违反Shapley值的理论性质。
本文通过开发GeoShapley解决了上述两个挑战,它考虑了联合特征和交互效应。GeoShapley可以以模型不可知的方式测量空间和非空间效应,可以应用于解释统计和机器学习模型。本文将阐述GeoShapley,开发高效的估计算法,并创建一个开源Python包。
二、shapley值基础
博弈中参与者j的Shapley值为
其中p是参与者的总数,M/{j}是不包括j的所有可能参与者组合的集合,S是M/{j}中大小为S的参与者集合,f( S)是S的结果,f( S∪{j})等式1的解释是玩家S加上i法人结果。玩家的Shapley值是其对游戏结果的边际贡献的加权平均值,包含所有可能的玩家组合。
玩家A的Shapley值计算如下
对称性意味着如果两个玩家在所有可能的联盟中具有相同的边际贡献,他们将获得相同的Shapley值。当一个特征对所有可能的联盟的边际贡献为零时,空玩家断言该特征的Shapley值为零。可加性是指当两类博弈组合在一起时,组合博弈的Shapley值等于单个博弈的Shapley值之和。
每个预测值可以表示为:
为了减小组合计算带来的复杂性,Lundberg和Lee(2017)提出了一种名为内核SHAP的模型不可知方法,该方法使用Shapley加权核将另一种流行的局部解释方法(LIME)与Shapley结合起来,可以通过求解加权最小二乘回归问题来表示:
其他值得一提的Shapley估计器包括tree SHAP,它提供了比内核SHAP更有效的计算效率的优势(Lundberg et al. 2020)。不过,它只适用于基于树木的模型,比如随机森林和梯度增强树。除了速度之外,tree SHAP还可以估计Shapley相互作用效应,其公式如下:
方程6的逻辑与方程1相似,但在每个特征组合中,通过去除玩家i和j的个人贡献,交互效应与玩家i和j隔离,这种交互效应特别有用,可以让我们有机会衡量位置特征与其他特征之间的交互作用,并将表现出特定于位置的效应。然而,Tree shape只适用于基于树的模型。各种Shapley值估计器的实现可以在开源Python (shap)和R库(shapper和fastshap)中获得,并且它已经包含在流行的机器学习包中,例如scikit-learn和XGBoost。
然而,目前还没有模型不可知的方法和工具来估计Shapley相互作用效应。本文解决了这一差距,这是本文的贡献之一。
三、Geoshapley
1.原理
从Shapley值框架延伸而来,GeoShapley的基本概念涉及在模型解释阶段将位置特征作为单一的联合参与者来考虑。最简单的情况是使用二维坐标(如纬度和经度)作为模型中的输入。文献中还发现了从坐标派生的更复杂的特征变换方法,例如使用Moran特征向量的组合(Liu, Kounadi, and Zurita-Milla 2022),坐标的交互基展开(Paez et al. 2019),欧氏距离场(Behrens et al. 2018;Hengl et al. 2018)和space2vec位置编码(Mai et al. 2022)。在这些情况下,坐标用于生成高维特征,使下游机器学习模型能够更有效地绘制决策边界,以更好地表征空间并实现更高的精度。高维特征虽然在建模阶段很有用,但通常缺乏真实世界的含义,并且不容易解释。
联合shapley值:(它测量了所有位置特征对模型预测的边际贡献,同时保持其他特征不变。)
它的解释类似于地理加权回归(GWR)模型中的空间固定效应或局部截距,最近被称为内在语境效应
非空间效应可以是全局线性或非线性的,并且是位置不变的。对于特征Xj,其GeoShapley值表示为:
根据Shapley交互值计算位置与特征交互效果,定义如下:
GeoShapley值通过扩展核SHAP方法估计,并使用加权最小二乘框架求解。
两个非定位特征,X1和X2,以及两个定位特征(例如,纬度和经度),其中g=2,共同形成预测模型中的GEO。因此,方程4中的矩阵Z将具有7 × 6的形状,如表2所示,其中每一行表示一个可能的特征组合,每一列表示某个特征或组合是否存在且可能
通过遵循与内核SHAP相同的估计过程,我们可以计算每个单独观测值的GeoShapley值,然后在背景数据集上对它们进行平均。GeoShapley的最终输出有四个组成部分,它们加起来构成了模型预测:
Python Package GeoShapley可以作为一个开源Python包访问,并以PyPI (The Python Package Index)的形式分发,可以使用pip install GeoShapley命令安装。该包在https://github.com/Ziqi-Li/geoshapley上。
四、仿真实验
1.仿真设计
本节验证了GeoShapley值及其解释,并提供了一个使用模拟数据应用GeoShapley解释真实模型和机器学习模型的示例。使用了一个模拟设置,该设置包含三个空间变化过程、一个线性过程和一个非线性过程的组合。这代表了一个包含空间和非空间效应的复杂场景,其中空间过程是特定于位置的,线性和非线性过程是全局的和位置不变的。
验证方法如图:
2.真实模型验证
给定DGP,我们就有了一个具有已知行为的真实模型。对于任何输入X,它将生成一个真实的输出y:在这个例子中,X是从U(-2,2)的均匀分布中随机抽取的,作为输入来生成一个真实的输出y as
然后计算GeoShapley值来解释这个真实的模型。在图3中,一个总结图显示了GeoShapley结果,从上到下对不同特征对真实模型的贡献进行了排序。“GEO”代表位置特征的总和贡献。非定位特征的贡献用它们各自的名称表示(例如,X1),特征和位置之间相互作用的贡献用叉号表示(例如,X1 *GEO)。在图3中,X1和X2的GeoShapley值在大小上非常接近,这表明它们对模型的贡献相似。出现这种相似性是因为两者的数据来自相同的分布,并且设计了位置不变量。
3.geoshapley应用到模型上
根据经验,如图5所示,一个真正的模型通常对我们来说是未知的。相反,我们依赖于可用的数据,如特征X和结果y,来确定它是否为一个模型,生成预测,并使用解释方法来解释模型,从而促进我们对未知真实模型的底层过程的理解。为了演示这个框架和GeoShapley的实用性,我将GeoShapley应用于七种流行的统计和机器学习方法。该评估使用了公式12中的模拟数据集,并将标准正态误差添加到y中。
所比较的模型模型包含了一系列广泛的模型结构,包括:线性回归(LR)、多尺度地理加权回归、 高斯过程(GP)、 随机森林(RF)、极限梯度增强(XGBoost)、 支持向量机(SVM)、神经网络(NN)。
从表3中,我们观察到LR表现最差,这是预期的,因为它无法考虑空间和非线性效应。MGWR具有较好的预测性能,R2为0.943,这是由于它能够捕捉到空间变化的效应。模型中,RF表现出最低的性能,R2为0.906,而其他模型表现出相当的性能,R2值在0.96和0.97之间,非常接近理论真实R2。精度测量表明,机器学习模型在捕获模拟中设计的空间和非空间效应方面非常有效。
计算所有模型的GeoShapley值,为每个边际效应提供解释。与真正的模型验证一样,空间效应被可视化为空间变化系数,使得这些解释在模型之间具有可比性,如图6所示。图6的第一行表示真正的流程。前三列显示从GeoShapley导出的空间变化系数,最后两列显示原始GeoShapley值及其相应的特征值。正如预期的那样,LR模型只捕获恒定的全局线性关系。RF模型很难估计所有的影响,显示出明显的噪音和不准确性,但它确实捕捉到了一些空间或非空间结构。
XGBoost是另一种基于树的方法,它通过精确地模拟空间趋势和非空间效应而优于RF。令人惊讶的是,SVM、GP和NN表现得非常好,几乎完美地捕获了空间和非空间效果,这可能是由于与XGBoost相比,它们对连续决策边界的处理更出色。最后一行显示了MGWR的系数,它捕获了空间效应和全局线性效应,但没有非线性u形效应。估计非线性效应的不准确性似乎也损害了对空间变化效应的估计。通过GeoShapley,本文首次使用模型不可知的方法解释了机器学习模型的空间效应,从而可以比较不同模型结构的这些估计效应,这在以前是不可能的。
4.实际例子:房价模型
通过应用预测机器学习模型和GeoShapley,我们可以解释地理位置和其他特征对房价的影响。该数据集名为“房屋销售”,来自GeoDa实验室(https://geodacenter.github.io/data-and-lab/),包括2014年至2015年的21,613笔房产销售,包含21个住房属性。这些数据已被清理,排除了超过10间卧室或超过2万平方英尺的记录。根据每个属性的纬度和经度计算和附加UTM坐标,省略了极端农村地区的某些属性。精细化的数据集包括16,581个属性。最终模型具有8个非位置特征和2个位置特征。因变量是房屋销售价格的对数(以10为底)。表4提供了因变量和特征的描述,图7显示了特征之间的相互关系。值得注意的是,卧室数量、居住面积和房产等级表现出中等到强的双变量相关性(> 0.6),而其他特征则表现出低水平的相关性。
所有之前使用的机器学习模型都经过了训练,表5比较了它们的样本外R2值。在这个比较中,XGBoost优于所有其他模型。虽然在我们的模拟示例中,神经网络是表现最好的,但通常可以观察到,由于XGBoost的可扩展性和灵活性,它可以在真实表格数据上产生更高的精度(schwartz - ziv和Armon 2022)。从Moran’s I值为0.037可以看出,XGBoost的残差表现出很强的正态性,几乎没有空间自相关性。因此,我使用经过训练的XGBoost模型作为我们的最终模型来计算GeoShapley值并解释效果。考虑到数据集的大小,使用整个数据集作为背景在计算上是可行的,但具有挑战性。因此,我使用来自k-means聚类的50个代表性样本。在Efron和Tibshirani(1994)的工作之后,采用了基于bootstrap的方法来构建GeoShapley值周围的置信区间,以捕获模型中的采样变异性和不确定性。具体来说,通过替换训练数据生成bootstrap样本,对模型进行修正,并计算新的GeoShapley值。
因为GeoShapley值的单位是y, y是对数尺度的房价,所以为了便于解释,我们应用了一个转换,将对数尺度转换为房价的百分比变化。图8给出了特征重要性排序的汇总图。
地理位置(GEO)的贡献成为影响房价的最重要特征,根据地理位置和保持其他因素不变,它可以降低43%或增加123%。住宅特征,包括居住面积和等级,也很重要。更好的视野和滨水区等特点可能会使一处房产的价值增加近50%。区位与住房属性之间存在交互作用,但交互作用不如主要的非空间效应强。例如,年龄显示出一定程度的与位置的相互作用,这表明年龄对房价的影响部分取决于房产的位置。
与位置无关的主要特征效果如图9所示。
每个数字都说明了在所有其他特征保持不变的情况下,以价值变化百分比表示的对房价的边际贡献。这些图有助于理解哪些特征对房价有更大的边际影响,以及这些关系是如何形成的。基于bootstrap的95%置信区间显示为灰色阴影带,间隔为零的GeoShapley值被掩盖为灰色点,表明在模型中没有统计上显著的贡献。大多数关系在特征值之间表现出强烈的非线性。例如,当浴室的数量从一个增加到三个时,价格的百分比变化开始增加,然后趋于平稳,变得不显著。增加居住面积的平方英尺和地块面积将显著增加房产的价值,但如y轴的大小所示,生活面积的影响要比地块面积的影响大得多。拥有更高的档次和更好的条件也会增加财产的价值。对于大多数超过50年的房子来说,年龄成为一个微不足道的因素。
该模型中主要的空间效应是地理位置对房价百分比变化的贡献,用GeoShapley值GEO来衡量:相对于基准值,这一贡献范围约为- 43%至123%,是影响房价的最强因素。图10显示了这种效果的地理分布。GeoShapley值的95%自引导置信区间包含零,它们被灰色掩盖。该地点有望成为人们生活的多方面社会物理环境的代表。很明显,位于西雅图中部和北部的地点,以及华盛顿湖周围的贝尔维尤地区,具有实质性和积极的影响。
第二个最强的空间效应是位置和房产年龄之间的相互作用,图10B显示了房产年龄增加一年将如何以百分比形式改变房价。与图10A类似,不重要的估计用灰色掩盖。在控制了主要影响后,特定地点的年龄效应在模型中并不是一个重要因素(如图9的最后一张图所示)。然而,在安妮女王(Queen Anne)、国会山(Capitol Hill)和西西雅图(West Seattle)等社区,年龄和房价之间存在正相关关系,这表明这些地区的老旧房产比其他地方的老旧房产更有价值。这些老房子位于理想的社区,其中许多最近经过改造,增加了它们的价值。然而,地理位置和年龄之间相互作用的总体贡献在量级上是微弱的。
五、讨论
从模拟和经验例子来看,GeoShapley值显然为解释机器学习模型的空间和非空间效应提供了一个有用的框架,这有助于更好地理解地理空间现象背后的复杂过程和关系。
首先,由于Shapley框架和内核SHAP估计器,GeoShapley是模型不可知的,独立于底层机器学习模型工作。这允许在不同的方法之间进行交叉比较,从LR和空间模型(如MGWR)到更复杂的机器学习模型(如XGBoost和NN)。
其次,GeoShapley提供了对空间效应的直观解释,直接连接到附加模型和空间变化系数模型的解释。另一方面,机器学习模型具有可扩展性和灵活性,无需对数据分布和功能形式进行强假设,克服了许多这些限制。结合GeoShapley的解释能力,我们可以更好地理解以前未被充分探索的大型地理空间数据集中的复杂关系。
第三,GeoShapley可以作为诊断工具来改进现有的地理空间数据机器学习方法。GeoAI方法的许多最新进展都集中在与图像相关的任务上,但相对较少的努力(例如,Zhu et al. 2021;L ?opez和Kholodilin 2023)一直致力于开发表格数据回归的方法,表格数据回归可以说代表了地理学家需要的最常见的数据结构和任务。通过增强的解释能力,开发人员可以更精确地识别现有模型中的问题,并提出旨在提高过程准确性而不仅仅是整体模型准确性的改进。
标签:Shapley,Theory,特征,模型,Spatial,效应,toMeasuring,GeoShapley,空间 From: https://blog.csdn.net/weixin_67488654/article/details/141104514