Monte Carlo hamiltonien contre Monte Carlo séquentiel


23

J'essaie d'avoir une idée des avantages et des inconvénients relatifs, ainsi que des différents domaines d'application de ces deux schémas MCMC.

  • Quand utiliseriez-vous lequel et pourquoi?
  • Quand l'un pourrait-il échouer mais pas l'autre (par exemple, où la console HMC est-elle applicable mais pas SMC, et vice versa)
  • Peut-on, très naïvement accordé, mettre une mesure d’utilité sur une méthode par rapport à l’autre (c’est-à-dire qu’une est généralement meilleure )?

Je lis actuellement l'excellent article de Betancourt sur la console HMC .


3
SMC n'est pas une technique MCMC, c'est-à-dire qu'aucune chaîne de Markov n'est construite lors de l'utilisation de SMC.
jaradniemi

1
Parfois, vous utilisez mcmc dans smc. Et parfois, vous utilisez smc dans mcmc. Au moment où j'écris ceci, je ne suis au courant d'aucun article combinant l'utilisation de hmc et de smc.
Taylor

1
J'aimerais moi-même mieux comprendre la relation entre SMC (aka, filtrage des particules) et HMC. Merci pour la question! Je note cet article, qui semble à première vue représenter une sorte de fusion des deux approches: arxiv.org/pdf/1504.05715v2.pdf
David C. Norris

Réponses:


23

Le hamiltonien Monte Carlo fonctionne bien avec des distributions cibles continues avec des formes "étranges". Elle nécessite que la distribution cible soit différenciable car elle utilise essentiellement la pente de la distribution cible pour savoir où aller. L'exemple parfait est une fonction en forme de banane.

Voici un Metropolis Hastings standard dans une fonction banane: taux d'acceptation de 66% et couverture très médiocre. Metropolis Hastings avec fonction banane

Voici avec HMC: 99% d'acceptation avec une bonne couverture. Metropolis Hastings avec fonction banane

SMC (la méthode derrière le filtrage des particules) est presque imbattable lorsque la distribution cible est multimodale, surtout s'il y a plusieurs zones distinctes de masse. Au lieu d'avoir une chaîne de Markov piégée dans un mode, vous avez plusieurs chaînes de Markov en parallèle. Notez que vous l'utilisez pour estimer une séquence de distributions, généralement d'une netteté croissante. Vous pouvez générer une netteté croissante en utilisant quelque chose comme un recuit simulé (mettez un exposant progressivement croissant sur la cible). Ou typiquement, dans un contexte bayésien, la séquence des distributions est la séquence des postérieurs:

P(θ|y1),P(θ|y1,y2),...,P(θ|y1,y2,...,yN)

Par exemple, cette séquence est une excellente cible pour SMC: entrez la description de l'image ici

La nature parallèle du SMC le rend particulièrement bien adapté au calcul distribué / parallèle.

Sommaire:

  • HMC: bon pour une cible bizarre allongée. Ne fonctionne pas avec une fonction non continue.
  • SMC: bon pour les cas multimodaux et non continus. Peut converger plus lentement ou utiliser plus de puissance de calcul pour des formes étranges de grande dimension.

Source: La plupart des images proviennent d'un article que j'ai écrit combinant les 2 méthodes (Hamiltonian Sequential Monte Carlo). Cette combinaison peut simuler à peu près n'importe quelle distribution que nous pouvons lui lancer, même à des dimensions très élevées.


1
Agréable et clair; +1. Aucune idée pourquoi cela n'a pas plus de votes positifs!
arboviral

2
Voici le document pour les personnes intéressées: remidaviet.com/files/HSMC-paper.pdf
stackoverflax
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.