多维点分布的均匀性评估方法(NDD和Voronoi 图法)

评估多维点分布的均匀性是统计学和数据科学中的一个重要问题,特别是在模拟、空间分析和样本设计等领域。下面,我将详细介绍2种评估多维点分布均匀性的方法,包括它们的数学原理、实现公式以及各自的优缺点。

1. 最近邻距离法(Nearest Neighbor Distance, NND)

        最近邻距离法(Nearest Neighbor Distance, NND)是一种评估点分布均匀性的方法,其基本思想是通过计算每个点到其最近邻点的距离,构建最近邻距离的经验分布函数,并与理论均匀分布下的经验分布函数进行比较,从而评估点分布的均匀性。

        构建经验分布函数是为了从实际数据中得到最近邻距离的分布情况。而理论分布函数是基于均匀随机点分布假设得到的。两者的比较旨在观察实际数据是否与理论假设(均匀随机分布)一致。

1. 经验分布函数(\hat{G}(r))

经验分布函数用于描述观测数据中,每个点到其最近邻点的距离小于或等于某个特定值 r的比例。具体步骤如下:

计算最近邻距离:对于每个点 x_{i},计算它到所有其他点x_{j}的距离,并找出最小的那个距离d_i

        在二维空间中,给定一组点X=\{x_1,x_2,...,x_n\},每个点x_{i}的位置通常由其坐标(x_{i1},x_{i2})表示。针对每个点x_{i},最近邻距离定义为:

d_i=\min_{j\neq i}\|x_i-x_j\|

        其中,\|x_i-x_j\|是点x_{i}和点x_{j}之间的欧式距离,计算公式为:

\|x_i-x_j\|=\sqrt{(x_{i1}-x_{j1})^2+(x_{i2}-x_{j2})^2}

构建经验分布函数:对于不同的距离阈值 r,计算数据集中满足d_{i}\leq r的点的比例。

2. 理论分布函数(G_{CSR}(r))

        理论分布函数基于假设点是在给定区域内均匀随机分布的。对于二维空间,这个分布可以用以下公式表达:

G_{CSR}(r)=1-\exp(-\lambda\pi r^2)

其中,\lambda是单位面积内的点的密度,可以通过\lambda=\frac{N}{A}计算,其中{N}是点的总数,{A} 是区域的面积。(公式的原理下面附录有推导)

3. 使用单样本Kolmogorov-Smirnov 检验(K-S检验)

Kolmogorov-Smirnov检验是一种非参数检验,用于比较两个样本是否来自同一分布,或一个样本是否来自某个特定的理论分布。在这里,它用于:

计算统计量:K-S检验的统计量是两个分布函数之间的最大差异,即

{D}=\max|\hat{G}(r)-G_{CSR}(r)|

评估显著性:通过计算得到的统计量 {D},与相应的临界值或通过模拟得到的{P}值比较,来判断差异是否统计显著。如果显著,这表明观测数据的分布与理论上的完全随机分布有显著差异。

更详细的K-S检验可以参考

Kolmogorov Smirnov 检验_kolmogorov-smirnov检验-CSDN博客文章浏览阅读1.1w次,点赞5次,收藏41次。Kolmogorov-Smirnov检验一个例子假设你拿到下面的这100个观察值:-0.16-0.68-0.32-0.850.89-2.280.630.410.150.741.30-0.130.80-0.750.28-1.000...._kolmogorov-smirnov检验https://blog.csdn.net/qq_16587307/article/details/102850741

4. 解释结果

  • 如果K-S检验显示实际数据的分布和理论分布之间无显著差异,我们可能会认为数据支持完全随机分布的假设
  • 如果检验结果显示显著差异,这表明数据中的点可能具有聚集性或排斥性,这与完全随机分布假设相违背。

        通过这种方法,科学家和研究人员可以更好地理解空间数据的分布特性,以及它们是否符合某些预期的随机模式或是否存在潜在的空间结构和相互作用。这在生态学、地理学、流行病学等领域尤为重要,因为空间分布模式往往与过程或机制密切相关。

优点:

  1. 计算简单直观:最近邻距离法的计算过程相对简单,只需要计算每个点到其最近邻点的距离,然后构建经验分布函数,再与理论分布函数进行比较。这个过程直观易懂,便于实现和解释。

  2. 对数据分布的局部特征敏感:最近邻距离法关注每个点的局部邻域,能够捕捉到数据分布在局部尺度上的特征。如果点在局部区域内分布不均匀,最近邻距离法能够有效地检测到这种异常。

缺点:

  1. 对噪声和异常值敏感:最近邻距离法依赖于每个点到其最近邻点的距离,如果数据中存在噪声或异常值,可能会影响最近邻距离的计算,进而影响均匀性的评估结果。

  2. 缺乏全局信息:最近邻距离法主要关注局部邻域的信息,而缺乏对数据全局分布的考虑。在某些情况下,局部均匀但全局不均匀的分布可能无法被最近邻距离法有效地检测到。

  3. 参数选择影响结果:最近邻距离法中的一些参数,如最近邻的数量、距离度量的选择等,都会影响均匀性评估的结果。不同的参数选择可能导致不同的结论。

5. 示例

假设我们有以下五个二维点:

\begin{gathered} x_{1} =\begin{pmatrix}0.1,0.2\end{pmatrix} \\ x_{2} =(0.3,0.4) \\ x_{3} =(0.2,0.6) \\ x_{4} =(0.7,0.8) \\ x_{5} =(0.5,0.1) \end{gathered}

构建经验分布函数 \hat{G}(r)

        使用欧几里得距离公式\|x_i-x_j\|=\sqrt{(x_i^1-x_j^1)^2+(x_i^2-x_j^2)^2},计算各点之间的距离,并找到每个点的最近邻距离d_{i}

        假设r=0.3,我们统计满足d_{i}\leqslant 0.3的点的数量和比例。

        如果3个点的最近邻距离 ≤0.3,则\hat{G}(0.3)=\frac35=0.6

计算理论分布函数G_{CSR}(r)

        假设区域面积 A=1平方单位,点总数N=5,则\lambda=\frac51=5

        G_{CSR}(0.3)=1-\exp(-5\cdot\pi\cdot(0.3)^2)=1-\exp(-1.413)\approx0.756

        这样,你可以比较经验分布函数 \hat{G}(0.3)=0.6 和理论分布函数 G_{CSR}(0.3)\approx0.756,看它们是否接近。

单样本Kolmogorov-Smirnov检验(K-S检验)

        上面内容展示了实际数据点的位置、如何计算点之间的距离、如何得到经验分布函数\hat{G}(r),以及如何计算理论上的完全随机分布的分布函数 G_{CSR}(r)。然后,它说明了对于r=0.3,经验分布函数和理论分布函数之间的差值,这个差值 |\hat{G}(0.3)-G_{CSR}(0.3)| 可以用作K-S检验的统计量D。最后一步将是比较这个统计量临界值来判定是否拒绝原假设。

        在Kolmogorov-Smirnov检验中,临界值取决于样本大小和选择的显著性水平(通常是0.05或0.01)。临界值可以通过查阅Kolmogorov-Smirnov检验的临界值表获得,或者通过计算机软件计算得到。通常,统计软件包(如R、Python的SciPy库等)都有现成的Kolmogorov-Smirnov检验的实现,可以直接输出检验统计量和对应的P值,无需手动查表。

2. Voronoi 图法

通过构建 Voronoi 图,将空间划分为多个 Voronoi 多边形,每个多边形内只包含一个样本点,且多边形内任意点到该样本点的距离小于到其他样本点的距离。通过分析 Voronoi 多边形的形状和大小分布,评估点分布的均匀性。

        目前,我们有两个特定的点。假象一下,如果我们以这两个点作为圆心,向外扩散形成圆周,随着半径的增加,这两个扩散的圆将在某个时刻相交,形成一条交线。

我们给它再加几个点:

优点:能够同时考虑点之间的距离关系和局部空间结构,对点密度变化较为鲁棒。
缺点:计算 Voronoi 图的复杂度较高,对边界效应敏感

1. 构建 Voronoi 图

        首先,我们需要给定一组点集{x_i}\mathbb{R}^d空间中。Voronoi图可以定义如下:

        对于每个点{x_i},其Voronoi多边形 V_i 定义为集合:

V_i=\{x\in\mathbb{R}^d:d(x,x_i)\leq d(x,x_j),\forall j\neq i\}

其中 d(x, y)表示点 x 和点y之间的距离(通常是欧几里得距离)。

2. 计算每个 Voronoi 多边形的面积和周长

        面积  A_i 和 周长 P_i 可以通过计算几何库来获得。在Python中,可以使用scipy.spatialVoronoi 类和shapely库来计算。

3. 分析面积和周长的分布

        计算面积和周长的均值(\mathbb{E}[A_i]\mathbb{E}[P_i])以及方差(\text{Var}(A_i)\text{Var}(P_i))。

        计算变异系数:

CV(A)=\frac{\sqrt{\mathrm{Var}(A_i)}}{\mathbb{E}[A_i]}

CV(P)=\frac{\sqrt{\mathrm{Var}(P_i)}}{\mathbb{E}[P_i]} 

        变异系数越小,表明Voronoi多边形的大小和形状分布越均匀,进而说明点分布越均匀。

优点:

  1. 考虑了点之间的空间关系:Voronoi 图将空间划分为多个 Voronoi 多边形,每个多边形内只包含一个样本点,且多边形内任意点到该样本点的距离小于到其他样本点的距离。这种划分方式充分考虑了点之间的空间关系,能够反映点分布的局部特征。

  2. 对点密度变化较为鲁棒:Voronoi 图法通过分析 Voronoi 多边形的面积和周长分布来评估点分布的均匀性。当点密度发生变化时,Voronoi 多边形的面积和周长也会相应调整,从而在一定程度上适应点密度的变化。这使得 Voronoi 图法对点密度的变化较为鲁棒。

  3. 提供了多个指标衡量均匀性:Voronoi 图法可以计算多个指标来衡量点分布的均匀性,如 Voronoi 多边形面积的变异系数、周长的变异系数等。这些指标从不同角度反映了点分布的均匀性,提供了更全面的评估信息。

  4. 直观易懂:Voronoi 图将空间划分为多个多边形,每个多边形对应一个样本点,这种划分方式直观易懂,便于理解点分布的空间结构。Voronoi 图也可以直观地展示点分布的不均匀性,如异常大或异常小的 Voronoi 多边形可能表示局部点密度的异常。

缺点:

  1. 计算复杂度较高:构建 Voronoi 图的时间复杂度为 $O(n \log n)$,其中 $n$ 为点的数量。对于大规模数据集,计算 Voronoi 图可能非常耗时。此外,计算 Voronoi 多边形的面积和周长也需要额外的计算开销。

  2. 对边界效应敏感:Voronoi 图法对边界点的处理较为敏感。对于位于边界的点,其对应的 Voronoi 多边形可能会延伸到边界之外,导致面积和周长的计算不准确。处理边界效应需要特殊的技巧,如引入虚拟点或对边界多边形进行修正。

  3. 评估结果依赖于点密度:Voronoi 图法的评估结果在一定程度上依赖于点的密度。在点密度较低的区域,Voronoi 多边形的面积和周长可能会较大,而在点密度较高的区域,Voronoi 多边形的面积和周长可能会较小。这种差异可能影响均匀性的评估结果。

  4. 局限于欧式空间:Voronoi 图法通常适用于欧式空间,即数据点之间的距离可以用欧几里得距离来度量。对于非欧式空间或者具有复杂度量的空间,构建 Voronoi 图可能变得困难或者不适用。

  5. 缺乏统一的显著性检验:与其他一些均匀性评估方法不同,Voronoi 图法缺乏统一的显著性检验方法。评估结果的显著性通常需要通过经验阈值或者与其他分布的比较来判断,这可能带来一定的主观性。

        尽管 Voronoi 图法存在一些局限性,但它仍然是一种有效的均匀性评估方法,特别适用于分析点分布的局部特征和空间结构。在实际应用中,可以结合数据的特点和分析目的,权衡 Voronoi 图法的优缺点,并与其他均匀性评估方法进行互补和对比,以获得更全面可靠的结果。同时,也可以考虑一些改进措施,如采用增量算法构建 Voronoi 图、引入加权 Voronoi 图等,以提高计算效率和适应性。

示例1:均匀分布的点

        假设我们在一个平面区域上随机均匀地放置了100个点。这些点没有聚集在特定的区域,而是均匀分布在整个平面上。生成这些点后,我们绘制了对应的Voronoi图。

在均匀分布的情况下,我们通常会观察到以下特点:

        Voronoi多边形的形状和大小相似:因为点是均匀分布的,所以每个点周围的空间大致相同,导致大多数Voronoi多边形在面积和周长上差异不大。

        较低的变异系数:面积和周长的变异系数(CV)较低,这表示多边形的大小和形状比较均匀。

示例2:聚集(集群)分布的点

        假设我们在相同的平面区域上放置了100个点,但这次我们将它们分为几个小群集。每个群集中的点非常接近,而群集之间的距离较远。

在聚集分布的情况下,我们通常会观察到以下特点:

        Voronoi多边形的形状和大小差异显著:位于群集中心的点通常拥有较小的Voronoi多边形,因为周围点的密度较高;而位于群集间的点则可能有较大的Voronoi多边形,因为周围较少点。

        较高的变异系数:面积和周长的变异系数(CV)较高,这表明多边形的大小和形状差异显著,指示出点的分布不均匀。

        通过比较两种情况下Voronoi图的特征,我们可以获得关于点分布均匀性的直观理解。在实际应用中,这种方法可以帮助我们了解数据点在空间上的分布特征,从而对数据集进行初步的空间分析。例如,在生态学研究中,科学家可能会利用这种方法来评估物种在环境中的分布是否均匀。在城市规划中,这种分析可以帮助规划者了解设施(如公园、商店等)的空间分布是否满足居民的需求。

附录

A.  二维空间理论分布函数过程

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/611657.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

CTF例题和知识点

[ACTF2020 新生赛]Include 打开靶机发现一个超链接,点击之后出现一段话 “Can you find out the flag?” 查看源码注入,无果 仔细看url,发现有flag.php 根据题目提示,该题应该是文件包含漏洞,因此可以判断出此题是PH…

通俗的理解网关的概念的用途(三):你的数据包是如何到达下一层的

其实,这一章我写不好,因为这其中会涉及到一些计算和一些广播等概念,本人不善于此项。在此略述,可以参考。 每台设备的不同连接在获得有效的IP地址后,会根据IP地址的规则和掩码的规则,在操作系统和交换机&a…

自动控制原理学习--平衡小车的控制算法(三)

上一节PID的simulin仿真,这一节用LQR 一、模型 二、LQR LQR属于现代控制理论的一个很重要的点,这里推荐B站的【Advanced控制理论】课程(up主DR_CAN),讲得很好,这里引用了他视频里讲LQR的ppt。 LQR属于lo…

车载电子电器架构 —— 应用软件开发(中)

车载电子电器架构 —— 应用软件开发(中) 我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 屏蔽力是信息过载时代一个人的特殊竞争力,任何消耗你的人和事,多看一眼都是你的不对。非必要不费力证明…

医疗行业如何提升Windows操作系统登录的安全性

医疗行业使用账号和密码登录Windows系统时,可能会遇到一些痛点,这些痛点可能会影响工作效率、数据安全和用户体验。以下是一些主要的痛点: 1. 密码管理复杂性:医疗行业通常涉及大量的敏感数据和隐私信息,因此密码策略…

非模块化 Vue 开发的 bus 总线通信

个人感觉,JavaScript 非模块开发更适合新人上手,不需要安装配置一大堆软件环境,不需要编译,适合于中小项目开发,只需要一个代码编辑器即可开发,例如 vsCode。网页 html 文件通过 script 标签引入 JavaScrip…

学习笔记——字符串(单模+多模+练习题)

单模匹配 Brute Force算法(暴力) 算法思想 母串和模式串字符依次配对,如果配对成功则继续比较后面位置是否相同,如果出现匹配不成功的位置,则j(模式串当前的位置)从头开始,i&…

中北大学软件学院javaweb实验二JSP应用开发实验报告

实验时间 2024年4月 25 日17时至 22 时 学时数 4 1.实验名称 实验2:JSP应用开发(2学时) 2.实验目的 (1)学会编写和运行简单的JSP页面,理解其运行原理; (2)学会使用JSP的声明、表达式、脚…

中国211大学全部排名一览表

211大学是指中国教育部实施的名为“211工程”的高等教育发展战略中被选为重点支持的高等院校。这个名称来源于项目的启动背景和目标:“211”中的“21”代表21世纪,意味着该项目面向21世纪的中国高等教育发展;“1”则意指要重点建设大约100所左…

126.删除链表的倒数第N个节点(力扣)

题目描述 代码解决(双指针) /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode() : val(0), next(nullptr) {}* ListNode(int x) : val(x), next(nullptr) {}* ListNode(int x, Li…

C语言实现扫雷游戏完整版

游戏介绍: 目录 游戏介绍: 游戏框架: 游戏具体功能实现: 棋盘的定义: 棋盘初始化: 棋盘打印: 棋盘布置雷: 棋盘扫雷: 爆炸展开一片: 获取周围八个…

画出入学管理系统的顶层图和1层图

(学校作业) 题目如下: 某培训机构入学管理系统有报名、交费和就读等多项功能,下面是对其各项功能的说明: 1、报名:由报名处负责,需要在学员登记表上进行报名登记,需要查询课…

Kettle连接Mysql数据库时报错——Driver class ‘org.gjt.mm.mysql.Driver‘ could not be found

一、问题描述 当我们使用ETL工具Kettle需要连接Mysql数据库进行数据清洗操作,在配置好Mysql的连接串内容后,点击【测试】按钮时报错【错误连接数据库 [MysqlTestConnection] : org.pentaho.di.core.exception.KettleDatabaseException: Error occurred while trying to conne…

记一次DNS故障导致用户无法充值的问题(下)

上一篇说到DNS故障导致无法充值,后来我们通过拨测发现业务域名的解析目标地址被解析到了【127.0.0.1】IP。 1、联系阿里云厂商,通过沟通,阿里云反馈我们的域名被XX省通管单位封禁了,导致解析到了不正确的地址。 2、为了解决用户问…

idea运行SpringBoot项目爆红提示出现:Java HotSpot(TM) 64-Bit Server VM warning...让我来看看~

在运行SpringBoot项目的时候,发现总有这个警告提示出现,有点强迫症真的每次运行项目都很难受啊!那么今天便来解决这个问题! 先来看一下提示内容:Java HotSpot(TM) 64-Bit Server VM warning: Options -Xverify:none an…

多目标跟踪入门介绍

多目标跟踪算法 我们也可以称之为 Multi-Target-Tracking (MTT)。 那么多目标跟踪是什么? 不难看出,跟踪算法同时会为每个目标分配一个特定的 id 。 由此得出了目标跟踪与目标检测的区别(似乎都是用方框来框出目标捏…

树与二叉树之间的转换

树转化成二叉树:兄弟相连留长子 1.加线:在兄弟之间加一条线 2.抹线:对每个结点,除了其左孩子外,去除其与其余孩子之间的关系 3.旋转:以树的根结点为轴心,将整树顺时针转45 二叉树转化成为树…

云衔科技成为卓豪Zoho中国区代理商,开启智能化企业管理新篇章

每一家企业数字化转型,都在寻求通过技术创新实现业务的飞跃。为了更好地服务于中国企业的数字化转型需求,云衔科技荣幸宣布正式成为卓豪Zoho中国区代理商,这一强强联合将为市场带来全新的数字化解决方案与服务体验,共同开启中国企…

Oracle -在线回缩表

conn scott/tiger DROP TABLE EMP1 PURGE; CREATE TABLE EMP1 AS SELECT * FROM EMP; alter table emp1 enable row movement; -- 启动回缩特性 insert into emp1 select * from emp1; / / commit; -- 增加到14000行 -- 分析表的结构 analyze table emp1 comput…

20240510每日后端---聊聊文件预览,doc,image,ppt转PDF预览

一、引入依赖 <dependency><groupId>com.aspose</groupId><artifactId>aspose-words</artifactId><version>15.8</version></dependency><dependency><groupId>com.aspose</groupId><artifactId>crac…