MCMC avec algorithme Metropolis-Hastings: choix de la proposition

13

J'ai besoin de faire une simulation pour évaluer une intégrale d'une fonction à 3 paramètres, disons , qui a une formule très compliquée. Il est demandé d'utiliser la méthode MCMC pour le calculer et de mettre en œuvre l'algorithme Metropolis-Hastings pour générer les valeurs distribuées comme , et il a été suggéré d'utiliser une normale variée de 3 comme distribution de proposition. En lisant quelques exemples, j'ai vu que certains utilisent alors une normale avec des paramètres fixes et certains utilisent une variable moyenne , où est la dernière valeur acceptée comme distribué selon . J'ai des doutes sur les deux approches:ffN(μ,σ)N(X,σ)Xf

1) Quel est le sens du choix de la dernière valeur acceptée comme nouvelle moyenne de la distribution de notre proposition? Mon intuition dit que cela devrait garantir que nos valeurs seront plus proches des valeurs distribuées comme et les chances d'acceptation seraient plus grandes. Mais ne concentre-t-il pas trop notre échantillon? Est-il garanti que si j'obtiens plus d'échantillons, la chaîne deviendra stationnaire?f

2) Le choix de paramètres fixes (puisque le est vraiment difficile à analyser) ne serait-il pas vraiment difficile et dépendant du premier échantillon que nous devons choisir pour démarrer l'algorithme? Dans ce cas, quelle serait la meilleure approche pour trouver laquelle est la meilleure?f

L'une de ces approches est-elle meilleure que l'autre ou cela dépend du cas?

J'espère que mes doutes sont clairs et je serais heureux si de la littérature pouvait être donnée (j'ai lu quelques articles sur le thème, mais plus c'est mieux!)

Merci d'avance!

Giiovanna
la source

Réponses:

10

1) Vous pouvez considérer cette méthode comme une approche de marche aléatoire. Lorsque la distribution de la proposition , elle est communément appelée algorithme de métropole. Si est trop petit, vous aurez un taux d'acceptation élevé et explorerez très lentement la distribution cible. En fait, si est trop petit et que la distribution est multimodale, l'échantillonneur peut rester bloqué dans un mode particulier et ne pourra pas explorer complètement la distribution cible. En revanche, si est trop grand, le taux d'acceptation sera trop faible. Puisque vous avez trois dimensions, la distribution de votre proposition aurait une matrice de covariancexxtN(xt,σ2)σ2σ2σ2Σce qui nécessitera probablement des variances et des covariances différentes pour chaque dimension. Le choix d'un approprié peut être difficile.Σ

2) Si la distribution de votre proposition est toujours , il s'agit de l'algorithme indépendant de Metropolis-Hastings puisque votre distribution de proposition ne dépend pas de votre échantillon actuel. Cette méthode fonctionne mieux si la distribution de votre proposition est une bonne approximation de la distribution cible à partir de laquelle vous souhaitez échantillonner. Vous avez raison, il peut être difficile de choisir une bonne approximation normale.N(μ,σ2)

Le succès de l'une ou l'autre méthode ne devrait pas dépendre de la valeur de départ de l'échantillonneur. Peu importe où vous commencez, la chaîne de Markov devrait finalement converger vers la distribution cible. Pour vérifier la convergence, vous pouvez exécuter plusieurs chaînes à partir de différents points de départ et effectuer un diagnostic de convergence tel que le diagnostic de convergence Gelman-Rubin.

jsk
la source
Je ne suis pas sûr que la déclaration: "2) Si la distribution de votre proposition est toujours , alors c'est l'algorithme indépendant de Metropolis-Hastings puisque votre distribution de proposition ne dépend pas de votre échantillon actuel: "a raison, car il ne dessine pas d'échantillons à partir de symétrique et, par conséquent, ce serait plus correctement appelé l'algorithme Metropolis, plutôt que l'algorithme Metropolis-Hasting. Je ne suis pas tout à fait sûr de moi-même donc je pose aussi la question. N(μ,σ2)N(μ,σ2)
rhody
@rhody. L'algorithme Metropolis ne supprime pas le conditionnement sur votre position actuelle. Le tout est de se promener lentement dans l'espace des paramètres avec une proposition symétrique de votre emplacement actuel. En utilisant TOUTE proposition symétrique qui dépend de votre emplacement actuel et du calcul de la probabilité d'acceptation de Metropolis, vous finirez par converger vers la distribution cible. Pour l'algorithme indépendant de Metropolis-Hastings, vous voulez que la distribution de votre proposition soit une approximation de la distribution cible et vous utilisez un calcul différent pour la probabilité d'acceptation.
jsk
@rhody. De plus, il est vrai que la distribution normale est une distribution symétrique, mais ce n'est pas le type de symétrie mentionné ici. Si q est votre distribution de proposition, alors la distribution de proposition est symétrique si q (Y | X) = q (X | Y). Si , alors q n'est pas symétrique , car pour tous et . qN(μ,σ2)q(Y)q(X)XY
jsk
@jsk est considéré comme symétrique, non? xN(x,ε)
user76284