J'essaie d'implémenter HMC avec une matrice de masse non diagonale, mais je me fais trébucher par une partie de la terminologie.
Selon BDA3 et la revue de Neal, le terme d'énergie cinétique (qui, je suppose, est toujours utilisé pour des raisons de commodité) est
Ceci est reconnaissable également appelée normale multivariée avec zéro matrice de covariance . BDA3 (page 301) dit
Pour simplifier, nous utilisons couramment une matrice de masse diagonale, M. Si c'est le cas, les composantes de φ sont indépendantes, avec φj ∼ N (0, Mjj) pour chaque dimension j = 1,. . . , ré. Il peut être utile que M soit à peu près à l'échelle avec la matrice de covariance inverse de la distribution postérieure, (var (θ | y)) ^ - 1.
(Je lis N (0, M)) comme une normale multivariée avec un zéro moyen et une covariance M.)
La partie qui me fait trébucher est où dit que "cela peut être utile pour à l'échelle à peu près avec la matrice de covariance inverse de la distribution postérieure ...".
Et puis aussi juste avant que l'échantillon de l' élan qui commence les étapes de LeapFrog ( ) est tirée d'une normale multivariée avec covariance matrice .
Alors c'est quoi? Pour construire un bon M pour HMC, dois-je estimer la covariance ou la matrice de précision du postérieur? Même si est la matrice de covariance de l'énergie cinétique, l'utilisation d'un qui est une estimation de la matrice de précision du postérieur donnera un algorithme plus efficace?
Question secondaire: quelle est l'intuition qui pourrait me guider ici?
Voulez-vous utiliser une matrice de précision pour que l'élan pousse orthogonalement au potentiel / postérieur pour améliorer le mélange?
OU voulez-vous que l'élan se propage vers la partie de masse à forte probabilité de la partie postérieure (parce que c'est de là que vous voulez prélever la plupart des échantillons).
ps La raison pour laquelle je n'utilise pas la matrice d'identité pour est parce que pour mon problème, je parviens à obtenir une estimation décente de la matrice de covariance de ma dimension postérieure assez élevée (~ 1000) au préalable.