Pourquoi la dynamique hamiltonienne est meilleure que la proposition de marche aléatoire dans MCMC dans certains cas?

10

La dynamique hamiltonienne surpasse toujours la marche aléatoire dans l'algorithme de Metropolis dans certains cas. Quelqu'un pourrait-il expliquer la raison avec des mots simples sans trop de mathématiques?

Vol de retour
la source
1
@JuhoKokkala, en général, dans un problème de grande dimension, la proposition de marche aléatoire n'a pas de bonnes performances, contrairement à la dynamique hamitoniale.
Fly_back
@JuhoKokkala Ma compréhension de HMC est que, nous obtenons des échantillons avec H de faible énergie dans le système dynamique hamiltonien, puis je viens avec ce quiz pourquoi les échantillons proposés par la dynamique hamiltonienne peuvent toujours être acceptés.
Fly_back
3
Début novembre, Andrew Gelman a publié une note sur un "beau nouveau papier" de Michael Betancourt expliquant pourquoi HMC est meilleur qu'un MCMC aléatoire. Le point principal de Gelman était que la HMC est au moins deux fois plus rapide que les méthodes concurrentes. andrewgelman.com/2016/11/03/…
Mike Hunter
2
Cette question est un peu sous-spécifiée, mais étant donné les réponses publiées ci-dessous, je ne pense pas qu'il soit trop difficile de répondre. Je vote pour laisser ouvert.
gung - Reinstate Monica

Réponses:

14

T(q|q)=N(q,σI)σ), vous obtiendrez un taux d'acceptation extrêmement élevé, mais simplement parce que vous restez fondamentalement toujours au même endroit, sans explorer la distribution postérieure complète.

N

fπ(q)

Eπ[f]=Qf(q)π(q)dq1dqd

qdfπQπ(q)qπ(q)

qRd

Eπ[X]=Q||q||(2π)d/2exp(||q||2/2)dq1dqd

π(q)=(2π)d/2exp(||q||2/2)r=||q||rd1exp(r2/2)drQRd

Maintenant, on peut montrer que, dans des conditions idéales, la chaîne de Markov générée par MCMC converge d'abord vers un point de l'ensemble typique, puis commence à explorer l'ensemble entier, et continue enfin à explorer les détails de l'ensemble. Ce faisant, l'estimation MCMC de l'attente devient de plus en plus précise, avec un biais et une variance qui diminuent avec l'augmentation du nombre d'étapes.

Cependant, lorsque la géométrie de l'ensemble typique est compliquée (par exemple, s'il a une cuspide en deux dimensions), l'algorithme standard Metropolis à marche aléatoire a beaucoup de difficultés à explorer les détails "pathologiques" de l'ensemble. Il a tendance à sauter au hasard «autour» de ces régions, sans les explorer. En pratique, cela signifie que la valeur estimée de l'intégrale a tendance à osciller autour de la valeur correcte, et l'interruption de la chaîne à un nombre fini d'étapes entraînera une estimation fortement biaisée.

Rd, le gradient de la distribution cible, en soi, nous dirige vers le mode de la distribution, mais la région autour du mode n'est pas nécessairement la région qui contribue le plus à l'intégrale ci-dessus, c'est-à-dire que ce n'est pas l'ensemble typique.

Afin d'obtenir la bonne direction, dans HMC, nous introduisons un ensemble auxiliaire de variables, appelées variables de moment . Un analogue physique peut aider ici. Un satellite en orbite autour d'une planète, ne restera sur une orbite stable que si son élan a la "bonne" valeur, sinon il dérivera vers l'espace ouvert, ou il sera traîné vers la planète par attraction gravitationnelle (jouant ici le rôle du gradient de la densité cible, qui "tire" vers le mode). De la même manière, les paramètres de momentum ont pour rôle de maintenir les nouveaux échantillons à l'intérieur de l'ensemble typique, au lieu de les faire dériver vers les queues ou vers le mode.

Ceci est un petit résumé d'un article très intéressant de Michael Betancourt sur l'explication du Monte Carlo hamiltonien sans mathématiques excessives. Vous pouvez trouver l'article, qui va beaucoup plus en détail, ici .

Une chose que le document ne couvre pas assez en détail, l'OMI, c'est quand et pourquoi HMC peut faire pire que Metropolis à marche aléatoire. Cela n'arrive pas souvent (dans mon expérience limitée), mais cela peut arriver. Après tout, vous introduisez des dégradés, qui vous aident à trouver votre chemin dans l'espace des paramètres de grande dimension, mais vous doublez également la dimensionnalité du problème. En théorie, il pourrait arriver que le ralentissement dû à l'augmentation de la dimensionnalité dépasse l'accélération donnée par l'exploitation des gradients. De plus (et cela est couvert dans le document) si l'ensemble typique a des régions de forte courbure, HMC peut "dépasser", c'est-à-dire qu'il pourrait commencer à échantillonner des points inutiles très loin dans les queues qui ne contribuent en rien à l'attente. cependant, cela provoque une instabilité de l'intégrateur symplectique qui est utilisé en pratique pour implémenter numériquement HMC. Ainsi, ce type de problème est facilement diagnostiqué.

DeltaIV
la source
1
Je vois que pendant que j'écrivais ma réponse, @DJohnson a également cité le document de Betancourt. Cependant, je pense que la réponse peut toujours être utile comme un résumé de ce que l'on peut trouver dans le document.
DeltaIV
3

Comme @JuhoKokkala l'a mentionné dans les commentaires, un taux d'acceptation élevé ne donne pas nécessairement de bonnes performances. Le taux d'acceptation de Metropolis Hastings peut être augmenté en réduisant la distribution des propositions. Mais cela entraînera des étapes plus petites, ce qui rendra plus longue l'exploration de la distribution cible. Dans la pratique, il y a un compromis entre la taille de l'étape et le taux d'acceptation, et un bon équilibre est nécessaire pour obtenir de bonnes performances.

Le hamiltonien Monte-Carlo a tendance à surpasser Metropolis Hastings car il peut atteindre des points plus éloignés avec une probabilité d'acceptation plus élevée. Ainsi, la question est: pourquoi HMC a-t-il tendance à avoir une probabilité d'acceptation plus élevée que MH pour des points plus éloignés ?

MH a du mal à atteindre des points éloignés car ses propositions sont faites sans utiliser d'informations sur la distribution cible. La distribution de la proposition est généralement isotrope (par exemple, une gaussienne symétrique). Ainsi, à chaque point, l'algorithme essaie de déplacer une distance aléatoire dans une direction aléatoire. Si la distance est petite par rapport à la vitesse à laquelle la distribution cible change dans cette direction, il y a de fortes chances que la densité aux points actuels et nouveaux soit similaire, donnant au moins une chance raisonnable d'acceptation. Sur de plus grandes distances, la distribution cible peut avoir changé un peu par rapport au point actuel. Ainsi, la chance de trouver au hasard un point avec une densité similaire ou (espérons-le) plus élevée peut être faible, en particulier lorsque la dimensionnalité augmente. Par exemple, si le point actuel se trouve sur une crête étroite, il '

En revanche, HMC exploite la structure de la distribution cible. Son mécanisme de proposition peut être pensé à utiliser une analogie physique, comme décrit dans Neal (2012). Imaginez une rondelle glissant sur une surface vallonnée et sans frottement. L'emplacement de la rondelle représente le point actuel et la hauteur de la surface représente le log négatif de la distribution cible. Pour obtenir un nouveau point proposé, la rondelle reçoit un élan avec une direction et une amplitude aléatoires, et sa dynamique est ensuite simulée lorsqu'elle glisse sur la surface. La rondelle accélérera dans les directions descendantes et décélérera dans les directions montantes (peut-être même s'arrêter et glisser à nouveau en descente). Les trajectoires se déplaçant latéralement le long de la paroi d'une vallée se courberont vers le bas. Ainsi, le paysage lui-même influence la trajectoire et la tire vers des régions à plus forte probabilité. L'élan peut permettre à la rondelle de se dresser sur de petites collines, et aussi de dépasser les petits bassins. L'emplacement de la rondelle après un certain nombre de pas de temps donne le nouveau point proposé, qui est accepté ou rejeté en utilisant la règle Metropolis standard. L'exploitation de la distribution cible (et de son gradient) permet à la console HMC d'atteindre des points éloignés avec des taux d'acceptation élevés.

Voici une bonne critique:

Neal (2012) . MCMC utilisant la dynamique hamiltonienne.

user20160
la source
0

Comme réponse lâche (ce qui semble être ce que vous recherchez), les méthodes hamiltoniennes prennent en compte la dérivée de la vraisemblance logarithmique, contrairement à l'algorithme MH standard.

bdeonovic
la source