В настоящее время я изучаю иерархические байесовские модели, используя JAGS из R, а также pymc, используя Python ( «Байесовские методы для хакеров» ).
Я могу получить некоторую интуицию из этого поста : «в итоге вы получите кучу чисел, которые выглядят так, словно« вам каким-то образом удалось взять независимые сэмплы из сложного дистрибутива, о котором вы хотели знать ». Это что-то вроде того, что я могу дать условную вероятность, тогда я могу сгенерировать процесс без памяти на основе условной вероятности. Когда я генерирую процесс достаточно долго, объединенная вероятность может сходиться, и тогда я могу взять кучу чисел в конце сгенерированной последовательности. Это как будто я беру независимые сэмплы из сложного совместного дистрибутива. Например, я могу сделать гистограмму, и она может приблизить функцию распределения.
Тогда моя проблема заключается в том, нужно ли мне доказывать, сходится ли MCMC для определенной модели? Я мотивирован, чтобы знать это, потому что я ранее изучил алгоритм EM для GMM и LDA (графические модели). Если я могу просто использовать алгоритм MCMC, не доказывая, сходится ли он, то он может сэкономить гораздо больше времени, чем EM. Так как мне нужно будет рассчитать ожидаемую логарифмическую функцию правдоподобия (придется вычислять апостериорную вероятность), а затем максимизировать ожидаемую логарифмическую вероятность. Это очевидно более громоздко, чем MCMC (мне просто нужно сформулировать условную вероятность).
Мне также интересно, сопряжены ли функция правдоподобия и предшествующее распределение. Значит ли это, что MCMC должен сходиться? Мне интересно об ограничениях MCMC и EM.