Atualmente, estou usando uma abordagem bayesiana para estimar parâmetros para um modelo que consiste em vários ODEs. Como tenho 15 parâmetros para estimar, meu espaço de amostragem é tridimensional e minha busca por distribuição posterior parece ter muitos máximos locais muito isolados por grandes regiões de probabilidade muito baixa.
Isso leva a problemas de mistura das minhas cadeias de Monte Carlo, pois é muito improvável que uma cadeia "salte" de um máximo local e atinja acidentalmente um dos outros máximos.
Parece haver muita pesquisa nessa área, pois é fácil encontrar documentos que lidam com esse problema (veja abaixo), mas é difícil encontrar uma implementação real. Encontrei apenas pacotes relacionados à dinâmica molecular, mas não à inferência bayesiana. Existem implementações de amostradores (MC) MC que são capazes de lidar com máximos locais isolados por aí?
Sou forçado a trabalhar com o Matlab, pois é nisso que meu modelo de ODE está escrito; portanto, propostas sobre o Matlab são muito bem-vindas ;-). No entanto, se houver um "aplicativo matador" em algum outro idioma, talvez eu possa convencer meu PI a mudar ;-).
Atualmente, estou trabalhando com um amostrador de Monte Carlo com rejeição atrasada / adaptável, escrito por Haario, Laine et al. , e esse também é o único amostrador que pude encontrar até agora mais sofisticado do que o algoritmo padrão Metropolis-Hastings
Abordagens notáveis parecem ser:
EDIT Atualizado em 2017-mar-07 com o que aprendi enquanto isso
Várias cadeias semelhantes com diferentes pontos de partida
Adaptação entre cadeias. Use a matriz de covariância empírica das amostras agrupadas geradas por várias cadeias independentes para atualizar as matrizes de covariância das distribuições de propostas da cadeia. (1)
Correntes múltiplas com têmpera diferente
a probabilidade posterior temperada é calculada
Amostras da distribuição posterior original e não temperada, dadas amostras de uma versão temperada dessa distribuição, podem ser obtidas por vários métodos:
MCMC do mundo pequeno. O amostrador alterna entre duas propostas. Na maioria das vezes, uma distribuição de proposta com pequena variação é usada, raramente uma proposta com uma grande variação é usada. A escolha entre essas duas propostas é estocástica. Propostas com grande variação também podem ser extraídas de outra cadeia que apenas salta muito grande, amostrando o máximo possível o espaço da amostra de maneira grosseira (2,7).
Monte Carlo Hamiltoniano (HMC)
Não sei muito sobre isso, mas o amostrador No-U-Turn (NUTS) do JAGS parece usá-lo. Veja ref. (8) Alex Rogozhnikov criou um tutorial visual sobre o tema.
Referências:
(1) Craiu et al., 2009: Aprenda com o seu vizinho: MCMC adaptativo de cadeia paralela e regional. J Am Stat Assoc 104: 488, pp. 1454-1466. http://www.jstor.org/stable/40592353
(2) Guam et al., 2012: Small World MCMC com têmpera: Ergocidade e gap espectral. https://arxiv.org/abs/1211.4675 ( apenas no arXiv )
(3): Brooks et al. (2011). Manual da Cadeia de Markov Monte Carlo. Pressione CRC.
(4): Altekar et al. (2004): Parallel Metropolis acoplou a cadeia de Markov Monte Carlo para inferência filogenética bayesiana. Bioinformatics 20 (3) 2004, pp. 407–415, http://dx.doi.org/10.1093/bioinformatics/btg427
(5): Geyer CJ (1991) Cadeia de Markov Monte Carlo máxima verossimilhança. In: Keramidas (ed.), Ciência da Computação e Estatística: Anais do 23º Simpósio sobre a Interface . Interface Foundation, Fairfax Station, pp. 156-163.
(6): Gilks WR e Roberts GO (1996). Estratégias para melhorar o MCMC. In: Gilks WR, Richardson S e Spiegelhalter (eds) cadeia de Markov Monte Carlo na Prática . Chapman & Hall, p. 89-114.
(7): Guan Y, et al. Cadeia de Markov Monte Carlo em mundos pequenos. Statistics and Computing (2006) 16 (2), pp. 193-202. http://dx.doi.org/10.1007/s11222-006-6966-6
(8): Hoffmann M e Gelman A (2014): O amostrador sem retorno em U: definindo adaptativamente os comprimentos dos caminhos no Hamiltoniano Monte Carlo. Journal of Machine Learning Research , 15, pp. 1351-1381. https://arxiv.org/abs/1111.4246