Número de amostras de Monte Carlo em cadeia de Markov

10

Existe muita literatura sobre os diagnósticos de convergência Monte Carlo (MCMC) da cadeia de Markov, incluindo o diagnóstico Gelman-Rubin mais popular. No entanto, todos eles avaliam a convergência da cadeia de Markov e, portanto, abordam a questão da queima.

Depois de descobrir o burn-in, como devo decidir quantas amostras do MCMC são suficientes para continuar com meu processo de estimativa? A maioria dos artigos que usam o MCMC menciona que eles administraram a cadeia de Markov por algumas iterações, mas não dizem nada sobre por que / como eles escolheram esse número, n .nn

Além disso, um tamanho de amostra desejado não pode ser a resposta para todos os amostradores, uma vez que a correlação na cadeia de Markov varia muito de problema para problema. Então, existe uma regra para descobrir o número de amostras necessárias?

Greenparker
fonte

Respostas:

5

Quantas amostras (pós-gravação) que você precisa depende do que você está tentando fazer com essas amostras e de como sua cadeia se mistura.

E[h(θ)|y]1Mm=1Mh(θ(m))=EM
θ(m)

EME[h(θ)|y]MdN(0,vh2)
E[h(θ)|y]EM±1.96vh
  1. O CLT se aplica?
  2. vh2

Temos alguns resultados sobre quando o CLT se aplica, por exemplo, cadeias de estados discretos, cadeias reversíveis, cadeias geometricamente ergódicas. Veja a seção 6.7.2 de Robert e Casella (2ª ed) para obter alguns resultados nessa direção. Infelizmente, a grande maioria das cadeias de Markov existentes não tem provas de que o CLT existe.

Se existir um CLT, ainda precisamos estimar a variação no CLT. Uma maneira de estimar essa variação envolve dividir a corrente em blocos, veja Gong e Flegal e referências nela. O método foi implementado no pacote R mcmcsecom as funções mcsee mcse.qpara estimar a variação para expectativas e quantis.

jaradniemi
fonte
Isso parece razoável, e eu estou familiarizado com a literatura aqui. Com que frequência esse argumento é realmente usado na prática?
Greenparker
3

John Kruschke, em Doing Bayesian Data Analysis, recomenda que, para os parâmetros de interesse, as cadeias MCMC sejam executadas até que o tamanho efetivo da amostra seja de pelo menos 10.000. Embora nenhuma simulação seja apresentada, acredito que sua lógica é que ESS> 10.000 assegure estimativas numericamente estáveis. No entanto, vi que Andrew Gelman e outros desenvolvedores do Stan recomendam menos (por exemplo, 2000 - 3000 é bom; infelizmente não há link exato, mas veja discussões no grupo de usuários do Stan Google). Além disso, para modelos complexos, a execução de cadeias longas o suficiente para um ESS> 10.000 pode ser árdua!

user3237820
fonte
Obrigado. Você pode me enviar para onde ele diz isso em seu material? Vai demorar muito para percorrer a página da web. Além disso, minha resposta [aqui] fala sobre a determinação do limite inferior para o ESS.
21416 Greenparker
Desculpe, percebi que não coloquei o link. Aqui está.
21416 Greenparker
1
Desculpe, eu deveria ter sido mais específico. Kruschke menciona-o brevemente em sua postagem no blog aqui doingbayesiandataanalysis.blogspot.co.uk e está no capítulo 7 de seu livro, 'Markov Chain Monte Carlo', página 184 da 2ª edição: books.google.co.uk/… .
user3237820
1

Essa é realmente uma das grandes desvantagens das simulações do MCMC, uma vez que não há estimativa geral e apriori do número de amostras. Acho que uma boa literatura aqui é "Algumas coisas que aprendemos (sobre o MCMC)" de Persi Diaconis, que lida com muitas sutilezas das simulações do MCMC, o que pode indicar que não há uma resposta fácil para essa pergunta.

Em geral, fazer boas estimativas sobre o tempo de funcionamento da cadeia exige um bom entendimento do tempo de mistura da cadeia de Markov, que depende muito das propriedades do gráfico subjacente. Existem muitos métodos "burn-in-free" disponíveis para limitar o tempo de mistura de cima, mas todos esses métodos têm em comum que eles precisam de uma compreensão mais profunda da cadeia de Markov subjacente e as constantes envolvidas geralmente são difíceis de calcular . Veja, por exemplo, "Condutância e mistura rápida de cadeias de Markov", de King, "Path Coupling: uma técnica para provar a mistura rápida em cadeias de Markov", de Bubley et al., Ou "Desigualdades de Nash para cadeias finitas de Markov", de Diaconis et al.

Tobias Windisch
fonte
Acordado. Mas, na prática, o tempo de mistura dos amostradores nem sempre é estudado com tanto detalhe para tratar dessa questão. Além disso, o estudo do tempo de mixagem exige considerável experiência na teoria das cadeias de Markov, algo que a maioria dos usuários finais do MCMC pode não estar familiarizada. Não há nem heurísticas por aí (como o diagnóstico)?
23916 Greenparker
A única coisa que consigo pensar é estimar numericamente o segundo maior autovalor da matriz de transição e derivar disso um limite no tempo de mistura. Você pode dar uma olhada na tese de doutorado de Kranthi Kumar Gade.
Tobias Windisch 23/03
E se eu estiver trabalhando com uma cadeia Markov de espaço de estado geral, não um espaço de estado finito? Acho que isso não é possível, mas vamos dar uma olhada.
Greenparker 23/03
Você está certo. Seu método funciona apenas para espaços de estados finitos e cadeias de Markov em tempo discreto.
Tobias Windisch 23/03