Calculer la vraisemblance dans Metropolis-Hastings: Quel est le rapport avec un postérieur dans l'analyse bayésienne?

Kim 05/06/2018. 2 answers, 176 views
bayesian mcmc metropolis-hastings

Question de base sur l'algorithme MCMC Metropolis-Hastings. J'essaie de comprendre l'algorithme de Metropolis-Hastings et son lien avec l'analyse bayésienne. Supposons que je veuille construire un algrorithme MCMC MH pour évaluer ma distribution postérieure dans l'analyse bayésienne.

Je regarde l'étape où $ \ alpha $ est calculé: $$ \ alpha = \ frac {P (\ theta ^ * | \ textbf {Y})} {P (\ theta ^ {(i)} | textbf {Y})} $$ Ici, j'ai supposé (pour la simplicité) que ma densité de la proposition dans l'algorithme MH est symétrique.

$ P (\ theta ^ * | \ textbf {Y}) $ est la probabilité de $ \ theta ^ * $ étant donné nos données. Donc, fondamentalement, avant l'algorithme MH, nous devons supposer une distribution pour $ \ theta $, n'est-ce pas? Et est $ P (\ theta ^ * | \ textbf {Y}) $ notre distribution postérieure? Comment puis-je calculer $ P (\ theta ^ * | \ textbf {Y}) $ ?

Aussi, n'hésitez pas à fournir une explication oral (en mots) de $ P (\ theta ^ * | \ textbf {Y}) $ et c'est la connexion à la distribution postérieure que nous souhaitons calculer. Ma confusion vient du fait que nous ne sommes pas capables de connaître notre distribution postérieure et c'est tout le point de MH. Alors, comment pouvez-vous calculer la probabilité ...

2 Answers


niandra82 05/06/2018.

Il y a beaucoup de confusion. Vous voulez évaluer le postérieur $$ f (\ theta | \ mathbf {y}) = \ frac {f (\ mathbf {y} | \ theta) f (\ theta)} {f (\ mathbf {y})} $$ où j'utilise $ f () $ pour indiquer une densité, pour être aussi général que possible. Vous devez décider de la vraisemblance de votre modèle, c'est-à-dire $ f (\ mathbf {y} | \ theta) $, et le précédent sur $ \ theta $, c'est-à-dire $ f (\ theta) $. En d'autres termes, vous devez supposer une distribution particulière pour chacun d'eux. Ensuite, vous connaissez les formes fonctionnelles des deux.

Pour obtenir des échantillons du postérieur en utilisant un MH, vous choisissez une valeur de départ de $ \ theta $, que nous appelons $ \ theta ^ 0 $. Vous proposez maintenant une valeur, à partir d'une distribution symétrique (pour rendre les choses aussi simples que possible), indiquée par $ \ theta ^ * $. Nous calculons ensuite les valeurs suivantes: $$ \ alpha = \ min (1, \ frac {f (\ mathbf {y} | \ theta ^ *) f (\ theta ^ *)} {f (\ mathbf {y} | \ theta ^ 0) f (\ theta ^ 0)}) $$ et nous échantillonnons à partir de la distribution uniforme $$ u \ sim \ text {Unif} (0,1). $$ Maintenant, si $ u <\ alpha $ vous mettez $ \ theta ^ 1 = \ theta ^ * $, sinon $ \ theta ^ 1 = \ theta ^ 0 $.

Ensuite, vous répétez les mêmes étapes pour trouver les valeurs de $ \ theta ^ 2, \ theta ^ 3, ... $, jusqu'à la convergence.


niandra82 05/11/2018.

Vous avez encore beaucoup de confusion. Je vais essayer d'expliquer avec un exemple.

Supposons que $ \ mathbf {Y} = (y_1, \ points, y_n) '$, et que vous ayez $$ Y_i = \ beta_0 + \ beta_1x_i + \ epsilon_i $$, avec $$ \ epsilon \ sim N (0, \ sigma ^ 2) $$ c'est-à-dire un modèle de régression. Alors vos paramètres sont $ \ theta = (\ beta_0, \ beta_1, \ sigma ^ 2) '$. L'observation, donnée $ \ theta $, est indépendante et alors la vraisemblance est $$ f (\ mathbf {Y} | \ theta) = \ prod_ {i = 1} ^ nf (y_i | \ theta) $$ où $ f (y_i | \ theta) $ est normal avec la moyenne $ \ beta_0 + \ beta_1x_i $ et la variance $ \ sigma ^ 2 $.

Comme vous pouvez le voir, vous pouvez généralement calculer $ f (\ mathbf {Y} | \ theta) $ puisque c'est votre modèle, c'est ce que vous supposez.

Bien sûr, vous devez aussi définir a priori $ \ beta_0 $, $ \ beta_1 $ et $ \ sigma ^ 2 $, c'est-à-dire $ f (\ theta) = f (\ beta_0) f (\ beta_1) f (\ sigma ^ 2) $, par exemple.

$ f (\ mathbf {Y} | \ theta) $ n'est pas égal à $ f (\ mathbf {Y}) $ car la vraisemblance normale dépend des paramètres $ theta $.

Maintenant, si vous voulez avoir des échantillons postérieurs, $ f (\ theta | Y) $, vous commencez à définir une valeur initiale $ \ beta_0 ^ 0 $, $ \ beta_1 ^ 0 $ et $ \ sigma ^ {2,0} $ , vous proposez de nouvelles valeurs, $ \ beta_0 ^ * $, $ \ beta_1 ^ * $ et $ \ sigma ^ {2, *} $, et en utilisant la réponse que j'ai donnée précédemment, vous pouvez mettre à jour vos paramètres. Notez que $$ f (\ mathbf {Y} | \ theta ^ *) = \ prod_ {i = 1} ^ nf (y_i | \ theta ^ *) $$ où $ f (y_i | \ theta ^ *) $ est normal avec la moyenne $ \ beta_0 ^ * + \ beta_1 ^ * x_i $ et la variance $ \ sigma ^ {2, *} $.

BTW: vous n'avez pas besoin de calculer le postérieur, l'idée est d'obtenir des échantillons du psoterior $ f (\ theta | \ mathbf {Y}) $

Related questions

Hot questions

Language

Popular Tags