Após algumas etapas de atualização bayesiana, fiquei com uma distribuição posterior da forma de uma mistura de distribuições normais,Ou seja, o parâmetro \ theta é obtido de uma distribuição cujo PDF é fornecido como uma mistura ponderada de PDFs normais e não é uma soma dos RVs normais. Eu gostaria de desenhar amostras \ theta \ sim \ Pr (\ theta | \ text {data}) para usar em uma aproximação de amostragem importante deste posterior. Na prática, a soma sobre i pode ter um grande número de termos, para que seja impraticável escolher um termo i de acordo com os pesos \ {w_i \} e depois desenhar \ theta \ sim N (\ mu_i, \ sigma ^ 2)
θ ∼ Pr ( θ | dados ) i i { w i } θ ∼ N ( μ i , σ 2 ). Existe uma maneira eficiente de extrair amostras de um posterior deste formulário?
monte-carlo
probability
Chris Granade
fonte
fonte
Respostas:
Em princípio, pode-se pré-selecionar o número de amostras a serem retiradas de cada subdistribuição, depois visitar cada subdistribuição apenas uma vez e desenhar o número de pontos.
Isso é
Encontre o conjunto aleatório forma que e respeitando os pesos.n = Σ k i = 1 n i< n1 1, n2, … , Nk> n = ∑ki = 1nEu
Acredito que você faça issoWEu∗ n n
desenhando uma distribuição Poisson uma distribuiçãomultinomial (veja os comentários) da média para cada subdistribuição e normalizando a soma para .nO trabalho aqui éO ( k ) ∗ O ( n )
Então faça
O trabalho aqui éO ( n )
Embora isso signifique que você não recebe a ordem aleatoriamente. Se a ordem aleatória for necessária, você deve embaralhar os draws (também grande ).O ( n )
Parece que o primeiro passo é dominar em tempo de execução e da mesma ordem que o algoritmo ingênuo, mas se você tiver certeza de que todo o poderá aproximar as distribuições de Poisson das distribuições normais e acelerar o primeiro passo.WEu* N » 1
fonte
Nota: A versão original desta pergunta perguntou sobre uma "soma ponderada de distribuições normais" para a qual a resposta a seguir pode ser útil. No entanto, após uma boa discussão sobre essa resposta, a resposta de @Geoff e a própria pergunta, ficou claro que a pergunta estava realmente na amostragem de uma "mistura de distribuições normais" à qual essa resposta não é aplicável.
A soma das distribuições normais é uma distribuição normal, portanto, você pode calcular os parâmetros dessa distribuição única e simplesmente tirar amostras disso. Se chamarmos essa distribuição , então,N( μs u m, σ2s u m)
fonte
Atualização : Esta resposta está incorreta, decorrente de confusão na terminologia (consulte a cadeia de comentários abaixo para obter detalhes); Só estou deixando isso como um guia para que as pessoas não repassem essa resposta (além de Barron). Por favor, não vote para cima ou para baixo.
Eu apenas usaria propriedades de variáveis aleatórias para reduzi-lo a uma única variável aleatória normalmente distribuída. A soma de duas variáveis aleatórias independentes distribuídas normalmente é ela própria uma variável aleatória , portanto, se e , entãoX1 1∼ N( μ1 1, σ21 1) X2∼ N( μ2, σ22)
Além disso, se , entãow1∈R
Usando esses dois resultados combinados,
Portanto, nesse caso, você só precisará extrair amostras de uma única distribuição, o que deve ser muito mais tratável.
fonte