В этом случае нет необходимости использовать MCMC: Марковская цепь Монте-Карло (MCMC) - это метод, используемый для генерации значений из распределения. Он создает марковскую цепочку автокоррелированных значений со стационарным распределением, равным целевому распределению. Этот метод все еще будет работать, чтобы получить то, что вы хотите, даже в тех случаях, когда целевой дистрибутив имеет аналитическую форму. Однако существуют более простые и менее вычислительные методы, которые работают в подобных случаях, когда вы имеете дело с апостериорным, который имеет приятную аналитическую форму.
В случае, когда апостериорное распределение имеет доступную аналитическую форму, можно получить оценки параметров (например, MAP) путем оптимизации из этого распределения с использованием стандартных методов исчисления. Если целевое распределение достаточно простое, вы можете получить решение для закрытой формы для оценки параметров, но даже если это не так, вы обычно можете использовать простые итерационные методы (например, Ньютона-Рафсона, градиент-спуск и т. Д.), Чтобы найти оптимизация оценки параметров для любых заданных входных данных. Если у вас есть аналитическая форма для функции квантили целевого распределения, и вам нужно сгенерировать значения из распределения, вы можете сделать это с помощью выборки с обратным преобразованием, который требует меньше вычислительных ресурсов, чем MCMC, и позволяет генерировать значения IID, а не значения со сложными шаблонами автокорреляции.
Ввиду этого, если вы программировали с нуля, то, по-видимому, нет никаких причин использовать MCMC в случае, когда целевой дистрибутив имеет доступную аналитическую форму. Единственная причина, по которой вы могли бы сделать это, - если у вас уже есть общий алгоритм для MCMC, который может быть реализован с минимальными усилиями, и вы решаете, что эффективность использования аналитической формы перевешивается усилиями по выполнению требуемой математики. В определенных практических ситуациях вы будете иметь дело с проблемами, которые обычно трудно решить, когда алгоритмы MCMC уже установлены и могут быть реализованы с минимальными усилиями (например, если вы выполняете анализ данных вRStan
). В этих случаях может оказаться проще всего использовать существующие методы MCMC, а не выводить аналитические решения проблем, хотя последний, конечно, может использоваться для проверки вашей работы.