He visto una cantidad razonable de literatura sobre cómo elegir núcleos y anchos de banda al calcular una estimación de densidad del núcleo, pero actualmente estoy interesado en cómo mejorar el tiempo que lleva evaluar el KDE resultante en un número arbitrario de puntos.
En mi caso, estoy usando un núcleo gaussiano multidimensional (2D o 3D) con covarianza diagonal (es decir, cada dimensión es independiente). Los anchos de banda en cada dimensión pueden diferir y se seleccionan utilizando los vecinos más cercanos. Sin embargo, mi pregunta probablemente se extiende a diferentes núcleos y métodos de selección de ancho de banda.
Digamos que tengo puntos de datos y desea evaluar el KDE resultante en puntos de cuadrícula. Una implementación simple implica evaluar el pdf normal multivarianteveces. Para mis propósitos y Ambos están en el orden de miles, y la evaluación se ha convertido en el cuello de botella en mi código.
No sé si existen mejoras generalmente aceptadas en este método básico. Encontré este documento, que afirma reducir la complejidad de a . Sin embargo, el método no se ha implementado en ninguna biblioteca 'estándar' de R o Python que conozca, lo que sugiere que aún no se ha adoptado ampliamente.
Gracias por cualquier sugerencia que puedas dar.
fuente