предыдущая статьяБайесовская статистика: руководство для начинающихПредставлен простейший метод выборки Метрополиса, в этой статье будет представлена другая выборка Метрополис-Гастингс, и будет дано доказательство для приведенного ранее примера, почему выборка Метрополиса работает.
обзор
Кратко повторим содержание предыдущей статьи, сначала объясним, зачем нужен mcmc, предполагая наличие байесовской формулы:
Чтобы найти апостериорное распределение, нам нужно вычислить P(D)
Однако, поскольку пространство параметра многих распределений очень велико, сложно рассчитать p (d), поэтому предлагается метод численного приближения, но из-за огромного параметра пространства нам нужно эффективно образец, поэтому есть MCMC Способ, метод MCMC Общая рутина:
- Сначала выберите один в пространстве параметров
- Предложите новую позицию в пространстве параметров
- Примите решение о принятии или отклонении на основе предварительной информации и данных наблюдений.
- Если получен прыжок, перейти на новую позицию и вернуться к шагу 1.
- Если отклонено, сохранить текущую позицию и вернуться к шагу 1
- Последовательно принимает ряд точек и, наконец, возвращает принятый набор точек.
Разница между разными алгоритмами mcmc заключается в том, как выбрать метод прыжка и как решить, следует ли прыгать, предыдущая статьяБайесовская статистика: руководство для начинающихВ этой статье мы познакомим вас с обработкой описанного выше процесса в Metropolis. В этой статье будет представлен метод Metropolis-Hastings.
Metropolis-Hastings
Сначала представим весь процесс алгоритма:
Давайте начнем отвечать, почему описанный выше процесс работает?
Прежде всего, нам нужен описанный выше процесс, мы выбираем, что x подчиняется распределению вероятностей π(x), а затем функция, которую мы выбираем, представляет собой k(x|x), то имеет место следующая формула:
?
\pi(x^) =
\int_{x}\pi(x)k(x^*|x)dx
?
Вышеприведенная формула гарантирует, что если мы будем производить выборку в соответствии с k, мы можем гарантировать, что новая точка выборки и исходная точка подчиняются одному и тому же распределению.
Далее докажем, что если выполняется подробное условие стационарности:
?
\pi(x)k(x^|x) = \pi(x^)k(x|x^)
?
Тогда указанный выше интеграл также имеет место.
?
\begin{align}
\pi(x^) & = \int_{x}\pi(x)k(x^|x)dx \
& = \int_{x} \pi(x^)k(x|x^)dx \
& = \pi(x^) \int_{x} k(x|x^)dx = \pi(x^)
\end{align}
?
Теперь мы показали, что подробное стационарное условие гарантирует, что все x подчиняются одному и тому же распределению.
Перейдем к тому, как выбрать k-распределение.
В Metropolis-Hastings мы используем следующие стратегии:
- из q(x|х) образец х
- Рассчитать скорость принятия
Далее докажем, что выбранное k удовлетворяет подробному условию стационарности:
Давайте взглянем на выбор функции q(.) Обычно есть два варианта для функции q(.):
- Симметричное, такое как распределение Гаусса, равномерное распределение, в данном случае называемое случайным блужданием.
- Асимметричный: как и логнормальный, имеет тенденцию выбирать большие значения x.
Ниже приведена функция приема, мы можем получить следующие две точки:
- Выборочные значения имеют тенденцию выбирать точки с высокой вероятностью, потому что
- Мы не хотим, чтобы точки выборки колебались туда-сюда, потому что:
В алгоритме Метрополиса, представленном в предыдущей статье, функция q(.) симметрична, а скорость приема равна:
На данный момент полностью изменено измерение того, какой параметр лучше описывает данные, более подробное описание см. в предыдущей статье.Байесовская статистика: руководство для начинающих.
пример
Предположим, у нас есть два данных временного ряда, xi, yi, корреляция которых равна ρ, и теперь они подчиняются бинарному распределению Гаусса:
Для простоты примем σxx , σyy = 1. В этот момент мы можем записать вероятность вероятности:
Тогда априорная вероятность будет следующей:
Наконец, мы можем получить приближение апостериорной вероятности:
Далее мы будем делать это с помощью метода mh.
Выберем q(.) как равномерное распределение:
В настоящее время для расчета коэффициента приемлемости можно рассчитать только p(ρ) Вы можете увидеть код:
rho_candidate=uniform.rvs(rho-0.07,2*0.07)
accept=-3./2*log(1.-rho_candidate**2) - N*log((1.-rho_candidate**2)**(1./2)) - sum(1./(2.*(1.-rho_candidate**2))*(x**2-2.*rho_candidate*x*y+y**2))
Расчет логарифмический, что удобно для расчета.Полный код см.mh
Видно, что среднее значение ρ после нашей выборки составляет почти 0,4, что соответствует нашим фактическим данным.
Суммировать
Текст знакомит с алгоритмом MH и дает доказательство того, почему алгоритм MH, и, наконец, заканчивается простым примером. Я продолжу знакомить с выборкой Гиббса в следующей статье. Добро пожаловать на внимание.
Ссылаться на
Bayesian Inference: Metropolis-Hastings Sampling
Ваша поддержка является движущей силой для меня, чтобы продолжать писать, и я с нетерпением жду нашего общего прогресса.