粗浅的说,核密度分析的目的是获得能够近似表示数据分布的密度函数的每一点的估计值,从而表示出数据的分布情况。
从频率直方图开始
频率直方图(frequency histogram
)亦称频率分布直方图,是统计学中表示频率分布的图形。在直角坐标系中,用横轴表示随机变量的取值,横轴上的每个小区间对应一个组的组距,作为小矩形的底边;纵轴表示频率与组距的比值,并用它作小矩形的高,以这种小矩形构成的一组图称为频率直方图。
一个很生动的图
频率直方图的特点是每一个小矩形的面积表示落入该小区间的频率,所以纵轴表示:
组距频率
对应于上图,就是说彩色矩形的面积之和为1。
然后,我们运用微分的思想,使等分区间增加,于是组距取的愈来愈小,这样以来,矩形宽度越来越小,于是我们可以自然的想到,在极限情况下它就会变成一条线,频率直方图的阶梯型状就将逼近于概率密度曲线,能近似的反映了概率密度曲线的大致形状。
概率密度函数
现在我们来到了概率密度函数,概率密度函数用于描述概率密度曲线,上文已经说到概率密度曲线其实就是频率直方图的等分区间趋于极限的情况。
所以随机变量的取值落在某个区域之内的概率则为概率密度函数在这个区域上的积分。
我们来看一个正态分布的概率密度曲线图示。
很明显曲线下方的面积之和也就是∫−∞+∞f(x)为1。
观察图像,我们可以发现,某点密度函数的大小就反映了这个点小邻域区间的概率的大小。
核密度分析
一维核密度分析
文中开头已经提到核密度分析的作用是发现数据的分布状况,我们首先考虑一维数据,现在有n个数据:
x1,x2,x3,...,xn
核密度分析的目的就是估计这n个数据的概率密度函数,根据上述分析和微分,我们可以列出下式:
F(xi−1<x<xi)=∫xi−1xif(x)dx
f(xi)=h→0lim2hF(x+h)−F(x−h)
现在自然出现了一个问题,我们并不知道分布函数的表达式,我们引入经验分布函数:
Fn(t)=n1i=1∑n1xi≤t
经验分布函数的意思是Fn(t)的大小可以用n次观测中xi≤t出现的次数与n的比值来近似描述。更多的原理不作介绍。
把经验分布函数代入(3)式,有:
f(xi)=h→0lim2NhNumber of(x−h≤xi≤x+h)
=h→0lim2Nh1i=1∑N1x−h≤xi≤x+h
在我们实际计算的时候,必须给h一个确定的值,h值既不能太大又不能太小,太大不满足h→0的要求,太小使用的点太少,误差会很大。其实这个h也就是我们最头疼的带宽。
到了这一步,我们已经可以写出f(x)的表达式了。
f(x)=2NH1i=1∑N1xi−h≤x≤xi+h
核函数
我们可以进一步对上面的表达式做些文章。
f(x)=2Nh1i=1∑N1xi−h≤x≤xi+h=2Nh1i=1∑NK(h∣x−xi∣)
其中:
t≥0,且t≤1时,K(t)=1
那么:
∫f(x)dx=2Nh1i=1∑N∫K(h∣x−xi∣)dx
=∫N1i=1∑N21K(t)dt=∫21K(t)dt
K0(t)=2K(t)
则Ko(t)即成为核函数,根据概率密度函数的定义,现在我们只需要使:
∫K0(t)dt=1
t≥0,且t≤1时,K0(t)=21
成立即可。
所以此时f(x)的表达式变成了:
f(x)=Nh1i=1∑NK0(h∣x−xi∣)
t≥0,且t≤1时,K0(t)=21
以上是对一维核函数的分析,参考了知乎回答。
于是哪些函数的积分等于1,哪些函数就可以作为我们的核函数了,常用的核函数如高斯核函数。
二维核密度分析
二维核密度是对一维核密度的扩展,过程分析与其类似,其中结果(N个二维点)可以表示为:
f(x,y)=Nh21i=1∑NK0(hdisti)
下面我们结合Arcgis
核密度估计讲解二维核密度分析。
一个例子
ArcGIS
工具箱提供了核密度分析,根据以上的分析,我们能够明白这应该是一个二维的核密度分析,下面我针对ArcGIS
点要素核密度分析使用的核函数和带宽h
的选择过程进行介绍。
效果:
核函数为:
K0(t)=π3((1−t2))2
概率密度预测值为:
Density=n∗radius21i=1∑npopiK0(radiusdisti)
其中radius为搜索带宽,popi为给定的population字段,n为二维点个数。
ArcGIS官方文档中分母并没有n,尽管最后成图效果没什么区别,但我感觉数学上应该有点问题。
带宽为:
SearchRadius=0.9∗min(SD,ln(2)1∗Dm)∗n−0.2
若未使用 population 字段,则Dm为到平均中心距离的中值,n 是二维点数,SD是标准距离
如果提供了 population 字段,则Dm为到加权平均中心距离的中值。n是 population 字段值的总和,SDw是加权标准距离
(加权)平均中心指n个二维点的(加权)平均值。
标准距离SD的计算公式为:
SD=n∑i=1n(xi−Xˉ)2+n∑i=1n(yi−Yˉ)2+n∑i=1n(zi−Zˉ)2
其中:
- xi,yi,zi 是要素$ i$ 的坐标
- Xˉw,Yˉw,Zˉw 表示平均中心
- n是要素总数。
加权标准距离SDw的计算公式为:
SDw=∑i=1nwi∑i=1nwi(xi−Xˉw)2+∑i=1nwi∑i=1nwi(yi−Yˉw)2+∑i=1nwi∑i=1nwi(zi−Zˉw)2
其中:
- wi 是要素$ i$ 的权重
- Xˉw,Yˉw,Zˉw 表示加权平均中心。