内核密度估计中的内核带宽

机器算法验证 密度函数 平滑 内核平滑
2022-03-05 22:14:20

我正在做一些核密度估计,带有加权点集(即,每个样本都有一个不必要的权重),在 N 维中。此外,这些样本只是在度量空间中(即,我们可以定义它们之间的距离),但仅此而已。例如,我们无法确定样本点的平均值,也无法确定标准偏差,也无法将一个变量与另一个变量进行比较。Kernel 只是受这个距离的影响,每个样本的权重:

f(x)=1.weightsiweightihKernel(distance(x,xi)h)

在这种情况下,我试图找到对内核带宽上给出精确的重建如有必要,我们可以假设该函数相对平滑。hxi

我尝试使用到第一个或第二个最近邻居的距离,但结果非常糟糕。我尝试了留一法优化,但我很难在 Nd 的这种情况下找到一个好的度量来优化,所以它发现了非常糟糕的估计,特别是对于训练样本本身。我不能使用基于正常假设的贪心估计,因为我无法计算标准偏差。我找到了使用协方差矩阵来获得各向异性内核的引用,但同样,它在这个空间中不成立......

有人有想法或参考吗?

2个回答

一个开始的地方是 Silverman 的最近邻估计器,但要以某种方式添加权重。(我不确定你的权重到底是什么。)最近邻法显然可以用距离来表示。我相信您的第一个和第二个最近邻方法是最近邻方法的版本,但没有核函数,并且的值很小。k

在 Matlab 文件交换中,有一个 kde 函数可以在假设使用高斯内核的情况下提供最佳带宽:内核密度估计器

即使你不使用Matlab,你也可以通过这段代码来解析它计算最佳带宽的方法。这是文件交换中评价很高的功能,我已经使用过很多次了。