Estimación de la densidad del núcleo

Estimador
Estimación de la densidad del kernel de 100 números aleatorios distribuidos normalmente utilizando diferentes anchos de banda de suavizado.

En estadística , la estimación de densidad de kernel ( KDE ) es la aplicación del suavizado de kernel para la estimación de densidad de probabilidad , es decir, un método no paramétrico para estimar la función de densidad de probabilidad de una variable aleatoria basada en kernels como pesos . KDE responde a un problema fundamental de suavizado de datos donde se realizan inferencias sobre la población en función de una muestra de datos finita . En algunos campos, como el procesamiento de señales y la econometría, también se denomina método de ventana de Parzen-Rosenblatt , en honor a Emanuel Parzen y Murray Rosenblatt , a quienes generalmente se les atribuye la creación independiente del método en su forma actual. [1] [2] Una de las aplicaciones famosas de la estimación de densidad de kernel es la estimación de las densidades marginales condicionales de clase de los datos cuando se utiliza un clasificador bayesiano ingenuo , que puede mejorar su precisión de predicción. [3]

Definición

Sean ( x 1 , x 2 , ..., x n ) muestras independientes e idénticamente distribuidas extraídas de alguna distribución univariante con una densidad desconocida ƒ en cualquier punto dado x . Nos interesa estimar la forma de esta función ƒ . Su estimador de densidad kernel es

F ^ yo ( incógnita ) = 1 norte i = 1 norte K yo ( incógnita incógnita i ) = 1 norte yo i = 1 norte K ( incógnita incógnita i yo ) , {\displaystyle {\widehat {f}}_{h}(x)={\frac {1}{n}}\sum _{i=1}^{n}K_{h}(x-x_{i})={\frac {1}{nh}}\sum _{i=1}^{n}K{\Big (}{\frac {x-x_{i}}{h}}{\Big )},}

donde K es el kernel (una función no negativa) y h > 0 es un parámetro de suavizado llamado ancho de banda o simplemente ancho. [3] Un kernel con subíndice h se llama kernel escalado y se define como K h ( x ) = K ( ) 1 yo {\displaystyle {\tfrac {1}{h}}} incógnita yo {\displaystyle {\frac {x}{h}}} . Intuitivamente, uno quiere elegir h tan pequeño como lo permitan los datos; sin embargo, siempre hay una compensación entre el sesgo del estimador y su varianza. La elección del ancho de banda se analiza con más detalle a continuación.

Se utilizan comúnmente una variedad de funciones kernel : uniforme, triangular, biweight, triweight, Epanechnikov (parabólica), normal y otras. El kernel de Epanechnikov es óptimo en el sentido del error cuadrático medio, [4] aunque la pérdida de eficiencia es pequeña para los kernels enumerados anteriormente. [5] Debido a sus convenientes propiedades matemáticas, a menudo se utiliza el kernel normal, lo que significa K ( x ) = ϕ ( x ) , donde ϕ es la función de densidad normal estándar . El estimador de densidad kernel se convierte entonces en

F ^ yo ( incógnita ) = 1 norte yo σ 1 2 π i = 1 norte exp ( ( incógnita incógnita i ) 2 2 yo 2 σ 2 ) , {\displaystyle {\widehat {f}}_{h}(x)={\frac {1}{nh\sigma }}{\frac {1}{\sqrt {2\pi }}}\sum _{i=1}^{n}\exp {\Big (}{\frac {-(x-x_{i})^{2}}{2h^{2}\sigma ^{2}}}{\Big )},}

donde es la desviación estándar de la muestra . σ {\estilo de visualización \sigma} incógnita {\displaystyle {\vec {x}}}

La construcción de una estimación de densidad de kernel encuentra interpretaciones en campos fuera de la estimación de densidad. [6] Por ejemplo, en termodinámica , esto es equivalente a la cantidad de calor generado cuando los kernels de calor (la solución fundamental a la ecuación de calor ) se colocan en cada ubicación de punto de datos x i . Se utilizan métodos similares para construir operadores de Laplace discretos en nubes de puntos para el aprendizaje de variedades (por ejemplo, mapa de difusión ).

Ejemplo

Las estimaciones de densidad de kernel están estrechamente relacionadas con los histogramas , pero se les pueden otorgar propiedades como suavidad o continuidad mediante el uso de un kernel adecuado. El diagrama a continuación, basado en estos 6 puntos de datos, ilustra esta relación:

Muestra123456
Valor-2,1-1,3-0,41.95.16.2

Para el histograma, primero, el eje horizontal se divide en subintervalos o contenedores que cubren el rango de los datos: en este caso, seis contenedores, cada uno de ancho 2. Siempre que un punto de datos se encuentre dentro de este intervalo, se coloca allí un cuadro de altura 1/12. Si más de un punto de datos se encuentra dentro del mismo contenedor, los cuadros se apilan uno sobre el otro.

Para la estimación de la densidad de kernel, se colocan kernels normales con una desviación estándar de 1,5 (indicados por las líneas discontinuas rojas) en cada uno de los puntos de datos x i . Los kernels se suman para hacer la estimación de la densidad de kernel (curva azul sólida). La suavidad de la estimación de la densidad de kernel (en comparación con la discreción del histograma) ilustra cómo las estimaciones de la densidad de kernel convergen más rápido a la densidad subyacente real para las variables aleatorias continuas. [7]

Comparación del histograma (izquierda) y la estimación de la densidad de kernel (derecha) construida con los mismos datos. Los seis kernels individuales son las curvas discontinuas rojas, la estimación de la densidad de kernel son las curvas azules. Los puntos de datos son el gráfico de alfombra en el eje horizontal.
Comparación del histograma (izquierda) y la estimación de la densidad de kernel (derecha) construida con los mismos datos. Los seis kernels individuales son las curvas discontinuas rojas, la estimación de la densidad de kernel son las curvas azules. Los puntos de datos son el gráfico de alfombra en el eje horizontal.

Selección de ancho de banda

Estimación de la densidad del núcleo (KDE) con diferentes anchos de banda de una muestra aleatoria de 100 puntos de una distribución normal estándar. Gris: densidad verdadera (normal estándar). Rojo: KDE con h=0,05. Negro: KDE con h=0,337. Verde: KDE con h=2.

El ancho de banda del núcleo es un parámetro libre que exhibe una fuerte influencia en la estimación resultante. Para ilustrar su efecto, tomamos una muestra aleatoria simulada de la distribución normal estándar (graficada en los picos azules en el gráfico de alfombra en el eje horizontal). La curva gris es la densidad verdadera (una densidad normal con media 0 y varianza 1). En comparación, la curva roja está poco suavizada ya que contiene demasiados artefactos de datos espurios que surgen del uso de un ancho de banda h = 0,05, que es demasiado pequeño. La curva verde está sobre suavizada ya que el uso del ancho de banda h = 2 oscurece gran parte de la estructura subyacente. La curva negra con un ancho de banda de h = 0,337 se considera óptimamente suavizada ya que su estimación de densidad está cerca de la densidad verdadera. Se encuentra una situación extrema en el límite (sin suavizado), donde la estimación es una suma de n funciones delta centradas en las coordenadas de las muestras analizadas. En el otro extremo la estimación conserva la forma del kernel utilizado, centrado en la media de las muestras (completamente suave). yo 0 {\displaystyle h\to 0} yo {\displaystyle h\to \infty}

El criterio de optimalidad más común utilizado para seleccionar este parámetro es la función de riesgo L 2 esperada , también denominada error cuadrático medio integrado :

MISE ( yo ) = mi [ ( F ^ yo ( incógnita ) F ( incógnita ) ) 2 d incógnita ] {\displaystyle \operatorname {MISE} (h)=\operatorname {E} \!\left[\,\int ({\hat {f}}_{h}(x)-f(x))^{2}\,dx\right]}

Bajo supuestos débiles sobre ƒ y K , ( ƒ es la función de densidad real, generalmente desconocida), [1] [2]

MISE ( yo ) = AMISTAD ( yo ) + o ( ( norte yo ) 1 + yo 4 ) {\displaystyle \operatorname {MISE} (h)=\operatorname {AMISE} (h)+{\mathcal {o}}((nh)^{-1}+h^{4})}

donde o es la notación o minúscula y n el tamaño de la muestra (como se indica más arriba). El AMISE es el MISE asintótico, es decir, los dos términos principales,

AMISTAD ( yo ) = R ( K ) norte yo + 1 4 metro 2 ( K ) 2 yo 4 R ( F " ) {\displaystyle \operatorname {AMISE} (h)={\frac {R(K)}{nh}}+{\frac {1}{4}}m_{2}(K)^{2}h^{4}R(f'')}

donde para una función g , y es la segunda derivada de y es el núcleo. El mínimo de esta AMISE es la solución de esta ecuación diferencial. R ( gramo ) = gramo ( incógnita ) 2 d incógnita {\displaystyle R(g)=\int g(x)^{2}\,dx} metro 2 ( K ) = incógnita 2 K ( incógnita ) d incógnita {\displaystyle m_{2}(K)=\int x^{2}K(x)\,dx} F " {\estilo de visualización f''} F {\estilo de visualización f} K {\estilo de visualización K}

yo AMISTAD ( yo ) = R ( K ) norte yo 2 + metro 2 ( K ) 2 yo 3 R ( F " ) = 0 {\displaystyle {\frac {\partial }{\partial h}}\operatorname {AMISE} (h)=-{\frac {R(K)}{nh^{2}}}+m_{2}(K)^{2}h^{3}R(f'')=0}

o

yo AMISTAD = R ( K ) 1 / 5 metro 2 ( K ) 2 / 5 R ( F " ) 1 / 5 norte 1 / 5 = do norte 1 / 5 {\displaystyle h_{\operatorname {AMISE} }={\frac {R(K)^{1/5}}{m_{2}(K)^{2/5}R(f'')^{1/5}}}n^{-1/5}=Cn^{-1/5}}

Ni las fórmulas AMISE ni las h AMISE se pueden utilizar directamente ya que involucran la función de densidad desconocida o su segunda derivada . Para superar esa dificultad, se han desarrollado diversos métodos automáticos basados ​​en datos para seleccionar el ancho de banda. Se han realizado varios estudios de revisión para comparar su eficacia, [8] [9] [10] [11] [12] [13] [14] con el consenso general de que los selectores enchufables [6] [15] [16] y los selectores de validación cruzada [17] [18] [19] son ​​los más útiles en una amplia gama de conjuntos de datos. F {\estilo de visualización f} F " {\estilo de visualización f''}

Sustituyendo cualquier ancho de banda h que tenga el mismo orden asintótico n −1/5 que h AMISE en el AMISE se obtiene que AMISE( h ) = O ( n −4/5 ), donde O es la notación O grande . Se puede demostrar que, bajo supuestos débiles, no puede existir un estimador no paramétrico que converja a una tasa más rápida que el estimador kernel. [20] Nótese que la tasa n −4/5 es más lenta que la tasa de convergencia n −1 típica de los métodos paramétricos.

Si el ancho de banda no se mantiene fijo, sino que varía dependiendo de la ubicación de la estimación (estimador de globo) o de las muestras (estimador puntual), esto produce un método particularmente poderoso denominado estimación de densidad de núcleo de ancho de banda variable o adaptativo .

La selección del ancho de banda para la estimación de la densidad del núcleo de distribuciones de cola pesada es relativamente difícil. [21]

Un estimador de ancho de banda empírico

Si se utilizan funciones de base gaussianas para aproximar datos univariados y la densidad subyacente que se estima es gaussiana, la opción óptima para h (es decir, el ancho de banda que minimiza el error cuadrático medio integrado ) es: [22]

yo = ( 4 σ ^ 5 3 norte ) 1 5 1.06 σ ^ norte 1 / 5 , {\displaystyle h=\left({\frac {4{\hat {\sigma }}^{5}}{3n}}\right)^{\frac {1}{5}}\approx 1.06\,{\hat {\sigma }}\,n^{-1/5},}

Se considera que un valor es más robusto cuando mejora el ajuste para distribuciones de cola larga y asimétricas o para distribuciones de mezcla bimodal. Esto se suele hacer de manera empírica reemplazando la desviación estándar por el parámetro siguiente: yo {\estilo de visualización h} σ ^ {\displaystyle {\sombrero {\sigma }}} A {\estilo de visualización A}

A = mín. ( σ ^ , I Q R 1.34 ) {\displaystyle A=\min \left({\hat {\sigma }},{\frac {RIC}{1.34}}\right)} donde IQR es el rango intercuartil.
Comparación entre la regla empírica y el ancho de banda para resolver ecuaciones
Comparación entre la regla general y el ancho de banda para resolver ecuaciones.

Otra modificación que mejorará el modelo es reducir el factor de 1,06 a 0,9. La fórmula final quedaría así:

yo = 0.9 mín. ( σ ^ , I Q R 1.34 ) norte 1 5 {\displaystyle h=0,9\,\min \left({\hat {\sigma }},{\frac {RIC}{1,34}}\right)\,n^{-{\frac {1}{5}}}}

¿Dónde está el tamaño de la muestra? norte {\estilo de visualización n}

Esta aproximación se denomina aproximación de distribución normal , aproximación gaussiana o regla de oro de Silverman . [22] Si bien esta regla de oro es fácil de calcular, debe usarse con precaución ya que puede producir estimaciones muy inexactas cuando la densidad no está cerca de ser normal. Por ejemplo, al estimar el modelo de mezcla gaussiana bimodal

1 2 2 π mi 1 2 ( incógnita 10 ) 2 + 1 2 2 π mi 1 2 ( incógnita + 10 ) 2 {\displaystyle {\frac {1}{2{\sqrt {2\pi }}}}e^{-{\frac {1}{2}}(x-10)^{2}}+{\frac {1}{2{\sqrt {2\pi }}}}e^{-{\frac {1}{2}}(x+10)^{2}}}

a partir de una muestra de 200 puntos, la figura de la derecha muestra la densidad real y dos estimaciones de densidad de kernel: una que utiliza el ancho de banda de la regla empírica y la otra que utiliza un ancho de banda de resolución de ecuaciones. [6] [16] La estimación basada en el ancho de banda de la regla empírica está significativamente sobresuavizada.

Relación con el estimador de densidad de función característica

Dada la muestra ( x 1 , x 2 , ..., x n ), es natural estimar la función característica φ ( t ) = E[ e itX ] como

φ ^ ( a ) = 1 norte yo = 1 norte mi i a incógnita yo {\displaystyle {\widehat {\varphi }}(t)={\frac {1}{n}}\sum _{j=1}^{n}e^{itx_{j}}}

Conociendo la función característica, es posible encontrar la función de densidad de probabilidad correspondiente a través de la fórmula de la transformada de Fourier . Una dificultad con la aplicación de esta fórmula de inversión es que conduce a una integral divergente, ya que la estimación no es confiable para t grandes . Para evitar este problema, el estimador se multiplica por una función de amortiguamiento ψ h ( t ) = ψ ( ht ) , que es igual a 1 en el origen y luego cae a 0 en el infinito. El "parámetro de ancho de banda" h controla qué tan rápido intentamos amortiguar la función . En particular, cuando h es pequeño, entonces ψ h ( t ) será aproximadamente uno para un rango grande de t , lo que significa que permanece prácticamente inalterado en la región más importante de t . φ ^ ( a ) {\displaystyle \scriptstyle {\widehat {\varphi }}(t)} φ ^ ( t ) {\displaystyle \scriptstyle {\widehat {\varphi }}(t)} φ ^ ( t ) {\displaystyle \scriptstyle {\widehat {\varphi }}(t)} φ ^ ( t ) {\displaystyle \scriptstyle {\widehat {\varphi }}(t)}

La opción más común para la función ψ es la función uniforme ψ ( t ) = 1 {−1 ≤ t ≤ 1 }, lo que significa efectivamente truncar el intervalo de integración en la fórmula de inversión a [−1/ h , 1/ h ] , o la función gaussiana ψ ( t ) = e π t 2 . Una vez que se ha elegido la función ψ , se puede aplicar la fórmula de inversión y el estimador de densidad será

f ^ ( x ) = 1 2 π + φ ^ ( t ) ψ h ( t ) e i t x d t = 1 2 π + 1 n j = 1 n e i t ( x j x ) ψ ( h t ) d t = 1 n h j = 1 n 1 2 π + e i ( h t ) x x j h ψ ( h t ) d ( h t ) = 1 n h j = 1 n K ( x x j h ) , {\displaystyle {\begin{aligned}{\widehat {f}}(x)&={\frac {1}{2\pi }}\int _{-\infty }^{+\infty }{\widehat {\varphi }}(t)\psi _{h}(t)e^{-itx}\,dt={\frac {1}{2\pi }}\int _{-\infty }^{+\infty }{\frac {1}{n}}\sum _{j=1}^{n}e^{it(x_{j}-x)}\psi (ht)\,dt\\[5pt]&={\frac {1}{nh}}\sum _{j=1}^{n}{\frac {1}{2\pi }}\int _{-\infty }^{+\infty }e^{-i(ht){\frac {x-x_{j}}{h}}}\psi (ht)\,d(ht)={\frac {1}{nh}}\sum _{j=1}^{n}K{\Big (}{\frac {x-x_{j}}{h}}{\Big )},\end{aligned}}}

donde K es la transformada de Fourier de la función de amortiguamiento ψ . Por lo tanto, el estimador de densidad de kernel coincide con el estimador de densidad de la función característica.

Características geométricas y topológicas

Podemos extender la definición del modo (global) a un sentido local y definir los modos locales:

M = { x : g ( x ) = 0 , λ 1 ( x ) < 0 } {\displaystyle M=\{x:g(x)=0,\lambda _{1}(x)<0\}}

Es decir, es la colección de puntos para los cuales la función de densidad se maximiza localmente. Un estimador natural de es un complemento de KDE, [23] [24] donde y son la versión de KDE de y . Bajo supuestos moderados, es un estimador consistente de . Nótese que se puede usar el algoritmo de cambio de media [25] [26] [27] para calcular numéricamente el estimador . M {\displaystyle M} M {\displaystyle M} g ( x ) {\displaystyle g(x)} λ 1 ( x ) {\displaystyle \lambda _{1}(x)} g ( x ) {\displaystyle g(x)} λ 1 ( x ) {\displaystyle \lambda _{1}(x)} M c {\displaystyle M_{c}} M {\displaystyle M} M c {\displaystyle M_{c}}

Implementación estadística

Una lista no exhaustiva de implementaciones de software de estimadores de densidad de kernel incluye:

  • En la versión 4.4 de Analytica , la opción Suavizado para resultados PDF utiliza KDE y, a partir de expresiones, está disponible a través de la función incorporada Pdf.
  • En C / C++ , FIGTree es una biblioteca que se puede utilizar para calcular estimaciones de densidad de kernel utilizando kernels normales. Interfaz MATLAB disponible.
  • En C++ , libagf es una biblioteca para la estimación de la densidad del núcleo variable .
  • En C++ , mlpack es una biblioteca que puede calcular KDE utilizando muchos kernels diferentes. Permite establecer una tolerancia de error para un cálculo más rápido. Hay interfaces disponibles para Python y R.
  • En C# y F# , Math.NET Numerics es una biblioteca de código abierto para cálculos numéricos que incluye estimación de densidad de kernel.
  • En CrimeStat , la estimación de densidad de kernel se implementa utilizando cinco funciones de kernel diferentes: normal, uniforme, cuártica, exponencial negativa y triangular. Están disponibles rutinas de estimación de densidad de kernel simple y dual. La estimación de densidad de kernel también se utiliza para interpolar una rutina Head Bang, para estimar una función de densidad de Journey-to-crime bidimensional y para estimar una estimación bayesiana de Journey-to-crime tridimensional.
  • En ELKI , las funciones de densidad del kernel se pueden encontrar en el paquetede.lmu.ifi.dbs.elki.math.statistics.kernelfunctions
  • En los productos ESRI , el mapeo de densidad del kernel se administra desde la caja de herramientas de Spatial Analyst y utiliza el kernel cuártico (biweight).
  • En Excel , la Royal Society of Chemistry ha creado un complemento para ejecutar la estimación de densidad del kernel según su Informe técnico 4 del Comité de métodos analíticos.
  • En gnuplot , la estimación de la densidad del núcleo se implementa mediante la smooth kdensityopción , el archivo de datos puede contener un peso y un ancho de banda para cada punto, o el ancho de banda se puede configurar automáticamente [28] de acuerdo con la "regla de oro de Silverman" (ver arriba).
  • En Haskell , la densidad del kernel se implementa en el paquete de estadísticas.
  • En IGOR Pro , la estimación de la densidad del núcleo se implementa mediante la StatsKDEoperación (añadida en Igor Pro 7.00). El ancho de banda puede ser especificado por el usuario o estimado mediante Silverman, Scott o Bowmann y Azzalini . Los tipos de núcleo son: Epanechnikov, Bi-weight, Tri-weight, Triangular, Gaussian y Rectangular.
  • En Java , el paquete de aprendizaje automático Weka proporciona weka.estimators.KernelEstimator, entre otros.
  • En JavaScript , el paquete de visualización D3.js ofrece un paquete KDE en su paquete science.stats.
  • En JMP , la plataforma Graph Builder utiliza la estimación de densidad kernel para proporcionar gráficos de contorno y regiones de alta densidad (HDR) para densidades bivariadas, y gráficos de violín y HDR para densidades univariadas. Los controles deslizantes permiten al usuario variar el ancho de banda. Las plataformas Fit Y by X y Distribution también proporcionan estimaciones de densidad kernel bivariadas y univariadas, respectivamente.
  • En Julia , la estimación de la densidad del kernel se implementa en el paquete KernelDensity.jl.
  • En KNIME , se pueden generar y representar gráficamente distribuciones de densidad de kernel 1D y 2D utilizando nodos de la contribución de la comunidad Vernalis , por ejemplo, 1D Kernel Density Plot, entre otros. La implementación subyacente está escrita en Java .
  • En MATLAB , la estimación de la densidad del núcleo se implementa a través de la ksdensityfunción (Statistics Toolbox). A partir de la versión 2018a de MATLAB, se pueden especificar tanto el ancho de banda como el suavizador del núcleo, incluidas otras opciones como la especificación del rango de la densidad del núcleo. [29] Alternativamente, un paquete de software MATLAB gratuito que implementa un método de selección automática del ancho de banda [6] está disponible en MATLAB Central File Exchange para
    • Datos unidimensionales
    • Datos bidimensionales
    • Datos n-dimensionales
      Una caja de herramientas MATLAB gratuita con implementación de regresión kernel, estimación de densidad kernel, estimación kernel de función de riesgo y muchas otras está disponible en estas páginas (esta caja de herramientas es parte del libro [30] ).
  • En Mathematica , la estimación de densidad de kernel numérica se implementa mediante la función SmoothKernelDistribution[31] y la estimación simbólica se implementa utilizando la función KernelMixtureDistribution[32], las cuales proporcionan anchos de banda basados ​​en datos.
  • En Minitab , la Royal Society of Chemistry ha creado una macro para ejecutar la estimación de densidad de kernel basándose en su Informe técnico 4 del Comité de métodos analíticos. [33]
  • En la biblioteca NAG , la estimación de la densidad del kernel se implementa a través de la g10barutina (disponible tanto en la versión Fortran [34] como en la versión C [35] de la biblioteca).
  • En Nuklei, los métodos de densidad del kernel de C++ se centran en datos del grupo euclidiano especial . S E ( 3 ) {\displaystyle SE(3)}
  • En Octave , la estimación de la densidad del kernel se implementa mediante la kernel_densityopción (paquete econométrico).
  • En Origin , se puede realizar un gráfico de densidad de kernel 2D desde su interfaz de usuario, y se pueden usar dos funciones, Ksdensity para 1D y Ks2density para 2D, desde su código LabTalk, Python o C.
  • En Perl , se puede encontrar una implementación en el módulo Statistics-KernelEstimation
  • En PHP , se puede encontrar una implementación en la biblioteca MathPHP
  • En Python , existen muchas implementaciones: el módulo pyqt_fit.kde en el paquete PyQt-Fit, SciPy ( scipy.stats.gaussian_kde), Statsmodels ( KDEUnivariatey KDEMultivariate), y scikit-learn ( KernelDensity) (ver comparación [36] ). KDEpy admite datos ponderados y su implementación FFT es órdenes de magnitud más rápida que las otras implementaciones. La biblioteca pandas de uso común [1] ofrece soporte para gráficos de KDE a través del método plot ( df.plot(kind='kde')[2]). El paquete getdist para muestras MCMC ponderadas y correlacionadas admite ancho de banda optimizado, corrección de límites y métodos de orden superior para distribuciones 1D y 2D. Un paquete recientemente utilizado para la estimación de densidad de kernel es seaborn ( import seaborn as sns, sns.kdeplot()). [37] También existe una implementación de KDE en GPU. [38]
  • En R , se implementa a través de densityen la distribución base, y bw.nrd0la función se utiliza en el paquete stats, esta función utiliza la fórmula optimizada en el libro de Silverman. bkdeen la biblioteca KernSmooth, ParetoDensityEstimationen la biblioteca DataVisualizations (para la estimación de la densidad de la distribución de Pareto), kdeen la biblioteca ks, dkdeny dbckdenen la biblioteca evmix (esta última para la estimación de la densidad del núcleo corregida por límites para el soporte acotado), npudensen la biblioteca np ( datos numéricos y categóricos ), sm.densityen la biblioteca sm. Para una implementación de la kde.Rfunción, que no requiere la instalación de ningún paquete o biblioteca, consulte kde.R. La biblioteca btb, dedicada al análisis urbano, implementa la estimación de la densidad del núcleo a través de kernel_smoothing.
  • En SAS , proc kdese puede utilizar para estimar densidades de kernel univariadas y bivariadas.
  • En Apache Spark , la KernelDensity()clase [39]
  • En Stata , se implementa a través de kdensity[ 40] , por ejemplo histogram x, kdensity. Alternativamente, está disponible un módulo gratuito de Stata, KDENS [41], que permite al usuario estimar funciones de densidad 1D o 2D.
  • En Swift , se implementa a través SwiftStats.KernelDensityEstimationde la biblioteca de estadísticas de código abierto SwiftStats.

Véase también

Lectura adicional

  • Härdle, Müller, Sperlich, Werwatz, Métodos no paramétricos y semiparamétricos , Springer-Verlag Berlin Heidelberg 2004, págs. 39–83

Referencias

  1. ^ ab Rosenblatt, M. (1956). "Observaciones sobre algunas estimaciones no paramétricas de una función de densidad". Anales de estadística matemática . 27 (3): 832–837. doi : 10.1214/aoms/1177728190 .
  2. ^ ab Parzen, E. (1962). "Sobre la estimación de una función de densidad de probabilidad y un modo". Anales de estadística matemática . 33 (3): 1065–1076. doi : 10.1214/aoms/1177704472 . JSTOR  2237880.
  3. ^ ab Hastie, Trevor ; Tibshirani, Robert ; Friedman, Jerome H. (2001). Los elementos del aprendizaje estadístico: minería de datos, inferencia y predicción : con 200 ilustraciones a todo color . Nueva York: Springer. ISBN 0-387-95284-5.OCLC 46809224  .
  4. ^ Epanechnikov, VA (1969). "Estimación no paramétrica de una densidad de probabilidad multivariante". Teoría de la probabilidad y sus aplicaciones . 14 : 153–158. doi :10.1137/1114019.
  5. ^ Wand, MP; Jones, MC (1995). Suavizado de núcleo . Londres: Chapman & Hall/CRC. ISBN 978-0-412-55270-0.
  6. ^ abcd Botev, Zdravko (2007). Estimación de densidad no paramétrica mediante mezcla por difusión (informe técnico). Universidad de Queensland.
  7. ^ Scott, D. (1979). "Sobre histogramas óptimos y basados ​​en datos". Biometrika . 66 (3): 605–610. doi :10.1093/biomet/66.3.605.
  8. ^ Park, BU; Marron, JS (1990). "Comparación de selectores de ancho de banda basados ​​en datos". Revista de la Asociación Estadounidense de Estadística . 85 (409): 66–72. CiteSeerX 10.1.1.154.7321 . doi :10.1080/01621459.1990.10475307. JSTOR  2289526. 
  9. ^ Park, BU; Turlach, BA (1992). "Rendimiento práctico de varios selectores de ancho de banda controlados por datos (con discusión)". Computational Statistics . 7 : 251–270.
  10. ^ Cao, R.; Cuevas, A.; Manteiga, WG (1994). "Estudio comparativo de varios métodos de suavizado en la estimación de densidad". Estadística computacional y análisis de datos . 17 (2): 153–176. doi :10.1016/0167-9473(92)00066-Z.
  11. ^ Jones, MC; Marron, JS; Sheather, SJ (1996). "Un breve estudio de la selección del ancho de banda para la estimación de la densidad". Revista de la Asociación Estadounidense de Estadística . 91 (433): 401–407. doi :10.2307/2291420. JSTOR  2291420.
  12. ^ Sheather, SJ (1992). "El rendimiento de seis métodos populares de selección de ancho de banda en algunos conjuntos de datos reales (con discusión)". Computational Statistics . 7 : 225–250, 271–281.
  13. ^ Agarwal, N.; Aluru, NR (2010). "Un enfoque de colocación estocástica basado en datos para la cuantificación de la incertidumbre en MEMS" (PDF) . Revista internacional de métodos numéricos en ingeniería . 83 (5): 575–597. Bibcode :2010IJNME..83..575A. doi :10.1002/nme.2844. S2CID  84834908.
  14. ^ Xu, X.; Yan, Z.; Xu, S. (2015). "Estimación de la distribución de probabilidad de la velocidad del viento mediante el método de densidad de kernel basado en la difusión". Electric Power Systems Research . 121 : 28–37. Bibcode :2015EPSR..121...28X. doi :10.1016/j.epsr.2014.11.029.
  15. ^ Botev, ZI; Grotowski, JF; Kroese, DP (2010). "Estimación de la densidad del núcleo mediante difusión". Anales de estadística . 38 (5): 2916–2957. arXiv : 1011.2602 . doi :10.1214/10-AOS799. S2CID  41350591.
  16. ^ ab Sheather, SJ; Jones, MC (1991). "Un método de selección de ancho de banda basado en datos confiable para la estimación de densidad de kernel". Journal of the Royal Statistical Society, Serie B . 53 (3): 683–690. doi :10.1111/j.2517-6161.1991.tb01857.x. JSTOR  2345597.
  17. ^ Rudemo, M. (1982). "Elección empírica de histogramas y estimadores de densidad kernel". Scandinavian Journal of Statistics . 9 (2): 65–78. JSTOR  4615859.
  18. ^ Bowman, AW (1984). "Un método alternativo de validación cruzada para suavizar las estimaciones de densidad". Biometrika . 71 (2): 353–360. doi :10.1093/biomet/71.2.353.
  19. ^ Hall, P.; Marron, JS; Park, BU (1992). "Validación cruzada suavizada". Teoría de la probabilidad y campos relacionados . 92 : 1–20. doi : 10.1007/BF01205233 . S2CID  121181481.
  20. ^ Wahba, G. (1975). "Propiedades de convergencia óptimas de métodos de nudo variable, núcleo y series ortogonales para estimación de densidad". Anales de Estadística . 3 (1): 15–29. doi : 10.1214/aos/1176342997 .
  21. ^ Buch-Larsen, TINE (2005). "Estimación de la densidad de kernel para distribuciones de cola pesada utilizando la transformación de Champernowne". Estadísticas . 39 (6): 503–518. CiteSeerX 10.1.1.457.1544 . doi :10.1080/02331880500439782. S2CID  219697435. 
  22. ^ ab Silverman, BW (1986). Estimación de densidad para estadísticas y análisis de datos . Londres: Chapman & Hall/CRC. pág. 45. ISBN 978-0-412-24620-3.
  23. ^ Chen, Yen-Chi; Genovese, Christopher R.; Wasserman, Larry (2016). "Un enfoque integral para el agrupamiento de modos". Revista electrónica de estadística . 10 (1): 210–241. arXiv : 1406.1780 . doi : 10.1214/15-ejs1102 . ISSN  1935-7524.
  24. ^ Chazal, Frédéric; Fasy, Brittany Terese; Lecci, Fabrizio; Rinaldo, Alessandro; Wasserman, Larry (2014). "Convergencia estocástica de paisajes y siluetas de persistencia". Actas del trigésimo simposio anual sobre geometría computacional . Vol. 6. Nueva York, Nueva York, EE. UU.: ACM Press. págs. 474–483. doi :10.1145/2582112.2582128. ISBN . 978-1-4503-2594-3.S2CID6029340  .
  25. ^ Fukunaga, K.; Hostetler, L. (enero de 1975). "La estimación del gradiente de una función de densidad, con aplicaciones en el reconocimiento de patrones". IEEE Transactions on Information Theory . 21 (1): 32–40. doi :10.1109/tit.1975.1055330. ISSN  0018-9448.
  26. ^ Yizong Cheng (1995). "Desplazamiento de la media, búsqueda de modos y agrupamiento". IEEE Transactions on Pattern Analysis and Machine Intelligence . 17 (8): 790–799. CiteSeerX 10.1.1.510.1222 . doi :10.1109/34.400568. ISSN  0162-8828. 
  27. ^ Comaniciu, D.; Meer, P. (mayo de 2002). "Desplazamiento medio: un enfoque robusto hacia el análisis del espacio de características". IEEE Transactions on Pattern Analysis and Machine Intelligence . 24 (5): 603–619. doi :10.1109/34.1000236. ISSN  0162-8828. S2CID  691081.
  28. ^ Janert, Philipp K (2009). Gnuplot en acción: comprensión de datos con gráficos . Connecticut, EE. UU.: Manning Publications. ISBN 978-1-933988-39-9.Consulte la sección 13.2.2 titulada Estimaciones de densidad de kernel .
  29. ^ "Estimación de la función de suavizado de kernel para datos univariados y bivariados - MATLAB ksdensity". www.mathworks.com . Consultado el 5 de noviembre de 2020 .
  30. ^ Horová, I.; Koláček, J.; Zelinka, J. (2012). Suavizado de kernel en MATLAB: teoría y práctica del suavizado de kernel . Singapur: World Scientific Publishing. ISBN 978-981-4405-48-5.
  31. ^ "SmoothKernelDistribution—Documentación del lenguaje Wolfram". reference.wolfram.com . Consultado el 5 de noviembre de 2020 .
  32. ^ "KernelMixtureDistribution—Documentación del lenguaje Wolfram". reference.wolfram.com . Consultado el 5 de noviembre de 2020 .
  33. ^ "Software para calcular densidades de núcleo". www.rsc.org . Consultado el 5 de noviembre de 2020 .
  34. ^ El grupo de algoritmos numéricos. "Documento de rutina de la biblioteca NAG: nagf_smooth_kerndens_gauss (g10baf)" (PDF) . Manual de la biblioteca NAG, Marcos 23 . Consultado el 16 de febrero de 2012 .
  35. ^ El grupo de algoritmos numéricos. "Documento de rutina de la biblioteca NAG: nag_kernel_density_estim (g10bac)" (PDF) . Manual de la biblioteca NAG, Marcos 9 . Archivado desde el original (PDF) el 24 de noviembre de 2011 . Consultado el 16 de febrero de 2012 .
  36. ^ Vanderplas, Jake (1 de diciembre de 2013). "Estimación de densidad de kernel en Python" . Consultado el 12 de marzo de 2014 .
  37. ^ "seaborn.kdeplot — documentación de seaborn 0.10.1". seaborn.pydata.org . Consultado el 12 de mayo de 2020 .
  38. ^ "Kde-gpu: implementamos la densidad del kernel de Nadaraya Waston y el estimador de probabilidad condicional del kernel usando CUDA a través de Cupy. Es mucho más rápido que la versión de CPU, pero requiere una GPU con mucha memoria".
  39. ^ "Estadísticas básicas - API basada en RDD - Documentación de Spark 3.0.1". spark.apache.org . Consultado el 5 de noviembre de 2020 .
  40. ^ "kdensity — Estimación de densidad de kernel univariante" (PDF) . Manual de Stata 15 .
  41. ^ Jann, Ben (26 de mayo de 2008), "KDENS: módulo Stata para la estimación de densidad de kernel univariada", Componentes de software estadístico , Departamento de Economía de Boston College , consultado el 15 de octubre de 2022
  • Introducción a la estimación de densidad de kernel Un breve tutorial que motiva a los estimadores de densidad de kernel como una mejora con respecto a los histogramas.
  • Optimización del ancho de banda del kernel Una herramienta en línea gratuita que genera una estimación optimizada de la densidad del kernel.
  • El software gratuito en línea (calculadora) calcula la estimación de densidad de kernel para una serie de datos de acuerdo con los siguientes kernels: gaussiano, epanechnikov, rectangular, triangular, biweight, coseno y optcoseno.
  • Subprograma de estimación de densidad de kernel Un ejemplo interactivo en línea de estimación de densidad de kernel. Requiere .NET 3.0 o posterior.
Retrieved from "https://en.wikipedia.org/w/index.php?title=Kernel_density_estimation&oldid=1251654479"