如果您的主要兴趣是二维问题,那么我想说内核密度估计是个不错的选择,因为它具有良好的渐近特性(请注意,我并不是说这是最好的)。例如看
Parzen,E.(1962)。关于概率密度函数和模的估计。数学统计年鉴 33:1065-1076。
de Valpine,P.(2004年)。蒙特卡洛状态空间似然的加权后核密度估计。美国统计协会杂志 99:523-536。
对于更高的维度(4+),由于众所周知的估计最佳带宽矩阵的困难,此方法的速度实际上很慢,请参见。
现在,如您所提到的,ks
软件包中命令的问题KDE
在于,它评估特定网格中的密度,这可能是非常有限的。如果使用软件包KDE
来估计带宽矩阵,例如Hscv
,使用内核密度估计器,然后使用命令优化此功能,则可以解决此问题optim
。下面使用模拟数据和中的高斯核显示了这一点R
。
rm(list=ls())
# Required packages
library(mvtnorm)
library(ks)
# simulated data
set.seed(1)
dat = rmvnorm(1000,c(0,0),diag(2))
# Bandwidth matrix
H.scv=Hlscv(dat)
# [Implementation of the KDE](http://en.wikipedia.org/wiki/Kernel_density_estimation)
H.eig = eigen(H.scv)
H.sqrt = H.eig$vectors %*% diag(sqrt(H.eig$values)) %*% solve(H.eig$vectors)
H = solve(H.sqrt)
dH = det(H.scv)
Gkde = function(par){
return( -log(mean(dmvnorm(t(H%*%t(par-dat)),rep(0,2),diag(2),log=FALSE)/sqrt(dH))))
}
# Optimisation
Max = optim(c(0,0),Gkde)$par
Max
例如,形状受限的估算器往往会更快
库勒(Cule),密苏里州,萨姆沃思(Samworth),RJ和密歇根州斯图尔特(Stewart)(2010)多维对数凹面密度的最大似然估计。皇家统计学会杂志B 72:545–600。
但是他们为此目的太过顶峰了。
4
您可能会考虑使用的其他方法是:拟合正态(或其他弹性分布)的多元有限混合或
亚伯拉罕角,Biau角和Cadre角(2003年)。多元密度模式的简单估计。《加拿大统计杂志》 31:23–34。
我希望这有帮助。