Быстрый гамильтониан Монте-Карло Сэмплер с аналитической матрицей градиента / массы - PullRequest
0 голосов
/ 12 апреля 2019

Я только что начал проект, в котором мне нужно произвести выборку из многомерного (прямо сейчас ~ 10 ^ 3-мерного, но должно быть ~ 10 ^ 6) и сильно негауссовского апостериорного распределения через гамильтониан Монте-Карло(HMC) пробоотборник.В моем конкретном случае градиенты потенциала могут быть вычислены аналитически, а матрица масс может быть грубо аппроксимирована.Насколько я понимаю, большинство вероятностных программных пакетов (таких как stan, tf.probability, edward, pymcx, ...) используют какой-либо численный / стохастический расчет / приближение градиента, который может быть более длительным, а также менее эффективным дляConvergence.

Прямо сейчас у меня есть очень наивная реализация на Python, аналогичная псевдокоду this , который очень медленный для вычислений больших размеров.Знаете ли вы, существует ли какая-либо повышающая производительность модификация этого алгоритма или уже есть хорошие и быстрые сэмплеры, которые явно учитывают эти аналитические результаты?

...