¿Cuáles son los mejores métodos para ajustar el 'modo' de datos muestreados de una distribución continua?
Dado que el modo es técnicamente indefinido (¿verdad?) Para una distribución continua, realmente pregunto '¿cómo encuentras el valor más común'?
Si asume que la distribución principal es gaussiana, podría agrupar los datos y encontrar que el modo es la ubicación del contenedor con los mayores recuentos. Sin embargo, ¿cómo se determina el tamaño del contenedor? ¿Hay implementaciones robustas disponibles? (es decir, robusto a los valores atípicos). Uso python
/ scipy
/ numpy
, pero probablemente pueda traducir R
sin demasiada dificultad.
distributions
fitting
mode
keflavich
fuente
fuente
Respuestas:
En R, aplica el método que no se basa en el modelado paramétrico de la distribución subyacente y usa el estimador predeterminado de densidad del núcleo para 10000 variables distribuidas gamma:
devuelve 0.199, que es el valor de x estimado para tener la densidad más alta (las estimaciones de densidad se almacenan como "z $ y").
fuente
Suponga que hace un histograma, de tamaño de contenedor b, y el contenedor más grande tiene k entradas, de su muestra total de tamaño n. Entonces, el PDF promedio dentro de ese bin puede estimarse como b * k / n.
El problema es que otro contenedor, que tiene menos miembros totales, podría tener una alta densidad de puntos. Solo puede saber sobre esto si tiene una suposición razonable sobre la tasa de cambio del PDF. Si lo hace, puede estimar la probabilidad de que el segundo contenedor más grande realmente contenga el modo.
El problema subyacente es este. Una muestra proporciona un buen conocimiento del CDF, según el teorema de Kolmogorov-Smirnov, y por lo tanto, una buena estimación de la mediana y otros cuantiles. Pero conocer una aproximación a una función en L1 no proporciona un conocimiento aproximado de su derivada. Por lo tanto, ninguna muestra proporciona un buen conocimiento del PDF, sin supuestos adicionales.
fuente
Aquí hay algunos bocetos de soluciones generales que también funcionan para distribuciones de alta dimensión:
Entrene un f-GAN con divergencia KL inversa, sin dar ninguna entrada aleatoria al generador (es decir, forzarlo a ser determinista).
Entrene un f-GAN con divergencia KL inversa, mueva la distribución de entrada al generador hacia una función delta de Dirac a medida que avanza el entrenamiento y agregue una penalización de gradiente a la función de pérdida del generador.
Entrene un modelo generativo (diferenciable) que pueda evaluar de manera manejable una aproximación del pdf en cualquier punto (creo que, por ejemplo, un VAE, un modelo basado en el flujo o un modelo autorregresivo funcionaría). Luego, use algún tipo de optimización (se puede usar un poco de ascenso de gradiente si la inferencia del modelo es diferenciable) para encontrar un máximo de esa aproximación.
fuente