An introduction to kernel density estimation

These notes are an edited version of a seminar given by Tarn Duong on 24 May 2001 as part of the Weatherburn Lecture Series for the Department of Mathematics and Statistics, at the University of Western Australia. A printer-friendly PDF version is here. Please feel free to contact the author at tarn(dot)duong(at)gmail(dot)com if you have any questions. Tarn’s web page contains more details of his research into kernel smoothing methods.

概述

这一讲分为三个部分:首先是直方图——如何构造直方图及其属性;接下来是核密度估计——它是直方图的泛化和改进。 最后是如何选择最合适的核,以便我们提取数据中的所有重要特征。

1. 直方图

直方图是最简单最常见的一种非参数密度估计器。构建直方图时,我们将数据值的覆盖域划分为相等的子间隔——称为“ bins”。每次当数据值落入特定的子间隔时,将宽度等于binwidth高度为1的块放在其顶部 。在构造直方图时需要考虑两个要点:bin的宽度(binwidth)和bin的端点坐标。

现在使用一组数据是从1956年至1984年飞机的翼展的对数值。(完整的数据集可在Bowman&Azzalini(1997)Applied Smoothing Techniques for Data Analysis中找到。使用其中的一个子集三维核密度估计图python代码 核密度图怎么分析结论_概率密度估计。因为仅作显示效果,所以选用数据子集防止图过于拥挤)数据点由叉号表示 在x轴上。

如果选择bin的端点为[0,0.5],binwidth为0.5,直方图如左侧所示。 根据左侧的直方图,概率密度似乎是单峰的并且向右倾斜。使用相同的binwidth但端点向右移动为[0.25,0.75],则输出直方图如右图所示。此时对数据密度就有完全不同的估计——看起来是双峰的。端点的选择对直方图的形状有特别明显的影响。

三维核密度估计图python代码 核密度图怎么分析结论_概率密度估计_02


通过示例对比说明了直方图的属性:

  • 不光滑;
  • 取决于bin的端点;
  • 取决于bin的宽度。

核密度估计

我们可以通过使用内核密度估计器来缓解前两个问题。为了消除对bin端点的依赖,我们将每个数据块的中心放在数据点上而不是固定这些数据块的端点。

三维核密度估计图python代码 核密度图怎么分析结论_直方图_03


在上面的“直方图”中,我们放置了一个宽度为1/2且高度为1/6的块(虚线框),因为有12个数据点,然后将它们加起来。 由于我们开始提取一些更精细的结构,因此该密度估计值(实线)比任何一个直方图都没有块状。 这表明密度是双峰的。

这就是所谓的盒式核密度估计——因为我们使用了不连续的内核构建基块所以得到的估计也是不连续的。如果我们使用平滑内核作构建基块将获得平滑密度估计。因此我们也可以消除直方图的第一个问题。不幸的是我们仍然无法消除对带宽的依赖(这相当于直方图的binwidth)。

选择合适的带宽非常重要——太小或太大的值都无用。如果我们使用带宽(标准偏差)为0.1的高斯内核(每条曲线下的面积为1/12),从下图所示可知带宽太小,内核密度估计不够平滑。 在这种密度下似乎是4个高斯分布的叠加——其中某些肯定存在数据的误差。 我们可以尝试通过将高斯内核的带宽增加到0.5来消除这一缺陷。仅使用一个高斯分布,我们获得了更为平坦的估计。 因为选择的带宽太大导致过于平滑遮盖了大多数的数据特征。

三维核密度估计图python代码 核密度图怎么分析结论_直方图_04

最佳带宽选择

应该如何选择最佳带宽呢?一种常见的方法是使用使最佳性标准最小化的带宽(这是最佳带宽的函数)AMISE =Asymptotic Mean Integrated Squared Error,因此最佳带宽= argmin AMISE,即最佳带宽是使AMISE最小化的参数。

AMISE仍然取决于真实潜在概率密度(当然我们没有!)。因此我们也需要从数据中估算AMISE。这意味着所选带宽是渐近近似的估计。 现在听起来好像离真正的最佳值太远了,但事实证明这种特殊的带宽选择可以保留所有重要特征,同时保证分布的平滑度。

当前数据集的带宽的最佳值为大约为0.25。根据最佳平滑的内核密度估计,概率分布是两个高斯分布的叠加。因为这些是飞机机翼跨度的对数,所以这意味着有一组较小的、较轻的飞机——它们聚集在2.5左右(约12 m)。而较大的飞机可能使用喷气式发动机,因为它们大约是在1960年代以商业规模使用的,分组在3.5(大约33 m)附近。

三维核密度估计图python代码 核密度图怎么分析结论_核密度估计_05


与直方图相比,核密度估计器的属性为:

  • 平滑;
  • 没有端点;
  • 取决于带宽(bandwidth)。