θ θ ∼ Pr ( θ | datos ) i i { w i } θ ∼ N ( μ i , σ 2 )
. ¿Existe una manera eficiente de extraer muestras de una parte posterior de esta forma?
monte-carlo
probability
Chris Granade
fuente
fuente
Respuestas:
En principio, se podría preseleccionar el número de muestras que se extraerán de cada subdistribución, luego visitar cada subdistribución solo una vez y extraer más que el número de puntos.
Es decir
Encuentre el conjunto aleatorio tal que y respetando los pesos.< n1, n2, ... , nk> n = ∑ki = 1norteyo
Creo que usted hace estowyo∗ n norte
dibujando una distribución de Poisson, una distribuciónmultinomial (vea los comentarios) de la media para cada subdistribución y luego normalizando la suma a .El trabajo aquí esO (k)∗ O (n)
Entonces hazlo
El trabajo aquí esO (n)
Aunque esto significa que no obtienes el orden aleatorio. Si se requiere un orden aleatorio, debe barajar los sorteos (también big ).O (n)
Parece que el primer paso es dominante en el tiempo de ejecución y del mismo orden que el algoritmo ingenuo, pero si está seguro de que todos podría aproximar las distribuciones de Poisson con distribuciones normales y acelerar el primer paso.wyo∗ n ≫ 1
fuente
Nota: La versión original de esta pregunta se refería a una "suma ponderada de distribuciones normales" para la cual la siguiente respuesta podría ser útil. Sin embargo, después de un buen debate sobre esta respuesta, la respuesta de @Geoff, y sobre la pregunta en sí, quedó claro que la pregunta era realmente sobre el muestreo de una "mezcla de distribuciones normales" a la que esta respuesta no es aplicable.
La suma de las distribuciones normales es una distribución normal, por lo que puede calcular los parámetros de esta distribución única y luego simplemente tomar muestras de eso. Si llamamos a esa distribución entonces,norte( μs u m, σ2s u m)
fuente
Actualización : esta respuesta es incorrecta, debido a la confusión en la terminología (consulte la cadena de comentarios a continuación para obtener más detalles); Solo lo dejo como guía para que la gente no vuelva a publicar esta respuesta (además de Barron). Por favor no lo vote hacia arriba o hacia abajo.
Solo usaría propiedades de variables aleatorias para reducirlo a una sola variable aleatoria normalmente distribuida. La suma de dos variables aleatorias independientes, normalmente distribuidas, es en sí misma una variable aleatoria , por lo que si y X 2 ∼ N ( μ 2 , σ 2 2 ) , entoncesX1∼ N( μ1, σ21) X2∼ N( μ2, σ22)
Además, si , entoncesw1∈ R
Usando estos dos resultados combinados, entonces
Entonces, en este caso, solo necesitará extraer muestras de una única distribución, lo que debería ser mucho más manejable.
fuente