Tengo un vector X
de N=900
observaciones que se modelan mejor con un estimador de densidad de kernel de ancho de banda global (los modelos paramétricos, incluidos los modelos de mezcla dinámica, no resultaron ser adecuados):
Ahora, quiero simular desde este KDE. Sé que esto se puede lograr mediante bootstrapping.
En R, todo se reduce a esta simple línea de código (que es casi un pseudocódigo): x.sim = mean(X) + { sample(X, replace = TRUE) - mean(X) + bw * rnorm(N) } / sqrt{ 1 + bw^2 * varkern/var(X) }
donde se implementa el bootstrap suavizado con corrección de varianza y varkern
es la varianza de la función Kernel seleccionada (por ejemplo, 1 para un Kernel gaussiano ).
Lo que obtenemos con 500 repeticiones es lo siguiente:
Funciona, pero me cuesta entender cómo mezclar observaciones (con algo de ruido adicional) es lo mismo que simular a partir de una distribución de probabilidad. (la distribución es aquí el KDE), como con el estándar Monte Carlo. Además, ¿el bootstrapping es la única forma de simular desde un KDE?
EDITAR: consulte mi respuesta a continuación para obtener más información sobre el arranque suavizado con corrección de varianza.