核密度估计(kernel density estimation,KDE)

核密度估计 (kernel density estimation)是在 概率论 中用来估计未知的 密度函数 ,属於 非参数检验方法 之一,由Rosenblatt (1955)和 Emanuel Parzen (1962)提出,又名 Parzen窗 (Parzen window)。Ruppert和Cline基于数据集密度函数聚类算法提出修订的核密度估计方法。

统计分布密度估计是根据观测数据而对其假定的概率函数进行估测。核密度估计(KERNEL DENSITY ESTIMATE)属于一种非参数的估计方式:对某一已知的的密度函数,也就是KERNEL, 在观测点上平均化,以期得到一条光滑的估计曲线。

核密度估计VS直方图估计

直方图密度估计是较为传统的非参密度估计方法,通常我们的做法:

1 将数据值覆盖的数据区间分成几个等子区间(bin)。

2 一个数据值落到这个相应的子区间,这个子区间块的高度就相应的加一个单位的高度。

举个wiki上的例子:

现在有6个数据点:x1=-2.1, x2=-1.3, x3=-0.4, x4=1.9, x5=5.1, x6=6.2.我们取子区间的宽度为2,然后按照步骤2依次操作:

核密度估计 - zhuandi_h - scholar_fish

                                                                                            图1   构造的直方图

这样我们就利用样本数据构造出了概率密度函数。

但是从图中很显然,利用直方图估计密度函数还是有不完美的地方:

1 密度函数是不平滑的

2 密度函数受子区间宽度影响很大,如果我们取0.5,5等构造出的密度函数显然与宽度取2的有很大差异。

3 当数据维数是1,2维情况下,直方图的使用是很普遍的,但是在数据维数再增加时,这种方法就有局限性了。

而基于核密度估计的方法就没有直方图的3的局限性。而且当我们采用平滑的核时,概率密度函数也是平滑的;但是当我们采用非平滑核时,概率密度函数也还是不连续的。

kernel density estimation:

假设样本数据值在D维空间服从一个未知的概率密度函数,那么在区域R内的概率为:

核密度估计 - zhuandi_h - scholar_fish

概率P的含义就为每个样本数据点落入区域R的概率为P.假设N个样本数据点有K个落入了区域R,那么就应该服从二项分布:


核密度估计 - zhuandi_h - scholar_fish

由概率知识可知,在N样本数据很大时,K约等于N*P。而另一方面,我们假设区域R足够小的话,那么P约等于p(x)*V(V为区域R的空间) 。结合两个不等式子可得:

核密度估计 - zhuandi_h - scholar_fish(1)

     那么,接下来根据等式(1)来估算p(x)就有两条路可以走:

 1 K不变,我们通过决定区域V的大小来估算密度函数,那么我们就采用K-nearer-neighbour方法(这里不具体讨论)。

 2 V不变,我们通过决定K的大小来估算密度函数,那么我们采用kernel方法。

我们顺着2的思路走下去。

      假设区域R是一个以x为中心,边长为h的极小立方体(也就是V不变),我们现在要考虑的是落入立体体数据点的个数K。我们定义一个kernel函数:

核密度估计 - zhuandi_h - scholar_fish

该函数的意义是:数据维数为D维,当样本数据点落入小立方体时,函数值为1,其他情况下为0。所以落入立方提数据点的总个数K就可以表示为:

核密度估计 - zhuandi_h - scholar_fish(2)

那么根据等式(1),把等式(2)代入(1)中,可得:

核密度估计 - zhuandi_h - scholar_fish

此处的核密度估计 - zhuandi_h - scholar_fish

       上面我们说过,当kernel density estimation采用平滑核时,估计出的概率密度函数也是平滑的。我们很多情况下都采用Gaussin Kernel.

然而,核密度估计也不是很完美,还是存在着一些缺陷。我们想要获得比较好的概率密度函数,h带宽(bandwidth)的选择就是个很大的问题,太大或者太小都能很大程度上影响p(x)结果。

来个例子理解下(还是上文提到过的6个样本数据点):

假设我们采用Gaussin Kernel,方差取2.25.

核密度估计 - zhuandi_h - scholar_fish

注:蓝线代表估计出的p(x),每条红线代表一个样本数据点。

我们看p(x)是连续的,从某种程度上来说就相当于在估计值之外的区域进行插值处理。


转自:http://blog.163.com/zhuandi_h/blog/static/1802702882012111092743556/


### 回答1: 高斯核密度估计Kernel Density EstimationKDE)是一种用于估计概率密度函数的非参数方法。它通过将每个数据点周围的高斯核函数叠加起来来估计数据集的概率密度。 KDE的值是指在给定某一数据点处的概率密度估计值。计算KDE的值通常需要确定核函数的带宽(bandwidth)参数,它决定了核函数的宽度,即对数据点周围的影响范围。 在给定一组数据点和带宽参数后,KDE的值可以通过以下的计算过程获得: 1. 对于每个数据点,计算与该数据点距离在带宽范围内的所有其他数据点的核函数值。 2. 将所有核函数值求和并除以数据点数量,得到该数据点处的概率密度估计值。 基于高斯核函数的KDE通常具有较好的光滑性和连续性,适用于连续型数据的概率密度估计。通过调整带宽参数,可以控制估计值的平滑程度和准确性。 KDE的值可以用于多个应用场景,如异常检测、模式识别、分类等。在异常检测中,较低的KDE值可能表明该数据点具有较低的概率出现,从而可能被视为异常值。在模式识别中,可以利用KDE的值来区分不同的数据模式。在分类问题中,可以利用KDE的值来评估新数据点属于各个类别的概率,从而进行分类决策。 总之,高斯核密度估计KDE)提供了一种非参数方法来估计概率密度函数,通过将每个数据点周围的高斯核函数叠加起来来获得数据集的概率密度估计值。KDE的值可以用于多种应用场景,具有广泛的实际意义。 ### 回答2: 高斯核密度估计KDE)是一种用于估计随机变量分布的非参数方法。它的基本思想是将每个观测样本点视为一个高斯函数的中心,并根据每个样本点周围的邻域来估计密度函数的值。 KDE的计算过程如下: 1. 首先选择一个核函数,通常选择高斯函数作为核函数。 2. 对每个观测样本点,以该点为中心构建一个高斯函数。 3. 对每个高斯函数,计算该函数在各个自变量上的值。 4. 将所有高斯函数的值加权求和,得到估计密度函数的值。 在计算KDE的过程中,需要考虑两个重要的参数:核函数的带宽和观测样本点的数量。核函数的带宽决定了高斯函数对密度函数的贡献程度,较小的带宽会导致估计过于敏感,较大的带宽会导致估计过于平滑。观测样本点的数量影响到对密度函数的完整覆盖程度,较少的样本点可能会导致估计不准确。 KDE在实际应用中具有广泛的应用,例如在统计分析、数据挖掘和机器学习中。它可以用于分析数据的分布特征、寻找异常点、生成合成数据以及进行分类和聚类等任务。 总结来说,KDE是一种通过将每个观测样本点视为高斯函数的中心,根据每个样本点周围的邻域来估计密度函数的非参数方法。它能够通过调整核函数的带宽和观测样本点的数量来灵活地对不同的数据分布进行建模和估计。 ### 回答3: 高斯核密度估计KDE)是一种非参数的概率密度估计方法。它基于观测数据的分布情况,通过在每个数据点周围创建一个高斯核函数的方式来估计整体的概率密度函数。 KDE的值表示某个特定点的概率密度估计。具体来说,对于给定的输入点,KDE计算该点周围邻近点的贡献,并将它们的高斯核函数叠加在一起得到该点的概率密度估计值。 在计算过程中,KDE使用一个带宽参数来控制高斯核函数的宽度,带宽越小则高斯核函数的影响范围越小,估计的概率密度函数越细致;带宽越大则高斯核函数的影响范围越大,估计的概率密度函数越平滑。 KDE的值可以用来表示某个数据点在数据集中的相对重要性或罕见性。具体来说,KDE值较高的点表示该点周围有较多的数据点,因此被认为是数据集中的常见点;而KDE值较低的点表示该点周围较少的邻近点,因此被认为是数据集中的罕见点。 总结起来,高斯核密度估计KDE)的值代表了在给定数据点周围创建高斯核函数并叠加后得到的概率密度估计值。它可以用来衡量数据点的重要性或罕见性,并且随着带宽参数的不同而产生不同的估计结果。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值