Байесовская статистика: руководство для начинающих

машинное обучение

Байесовская статистика: руководство для начинающих

贝叶斯


Что такое байесовская статистика?

Байесовская статистика — это особый подход к применению вероятности к статистическим задачам.

В статистическом выводе есть две основные школы: частотная школа и байесовская школа.

Frequentist statistics tries to eliminate uncertainty by providing estimates. Bayesian statistics tries to preserve and refine uncertainty by adjusting individual beliefs in light of new evidence.

Цель байесовского вывода?

produce quantitative trading strategies based on Bayesian models.

В процессе использования байесовской теории наша самая основная формула выглядит следующим образом:

Чтобы удобно вычислить апостериорную вероятность, мы будем использовать сопряженный априорный метод для упрощения апостериорного вычисления.
В качестве простого примера предположим, что мы подбрасываем монету и изначально думали, что вероятность выпадения решки зависит от бета-распределения, которое дает случайное число от 0 до 1.

Мы сначала предположили, что α = β = 1, затем Бета-распределение вырождается в равномерное распределение, а затем мы продолжаем подбрасывать монеты, записывая результаты каждого подбрасывания, а затем вычисляя вероятность выпадения орла в этот момент по результатам.
В этот момент мы можем рассчитать значение вероятности k раз из n раз подняться вверх:

Снова посчитаем апостериорную вероятность:

Можно видеть, что апостериорная вероятность также является бета-распределением.Мы можем легко вычислить апостериорную вероятность, предположив, что априорная вероятность является бета-распределением.

Вот кусок экспериментального кода:

Результирующий график выглядит следующим образом:

По мере увеличения экспериментальных результатов мы все больше и больше убеждаемся в том, что вероятность хедз-апа равна 0,5.

Вышеупомянутая простая апостериорная задача Если мы столкнемся с некоторыми сложными апостериорными вероятностями, мы будем использовать mcmc для этого.

MCMC is a means of computing the posterior distribution when conjugate priors are not applicable.

Давайте посмотрим на формулу апостериорного расчета:

Для расчета аналитического решения здесь необходимо знать свидетельство P(D), а формула его расчета выглядит следующим образом:

Проблема здесь в том, что нам, как правило, трудно найти интеграл совместной вероятности, поэтому приходится находить P(D) численным приближением. Большой класс алгоритмов:Markov Chain Monte Carlo Algorithms, с алгоритмом Метрополиса, Метрополисом-Гастингсом, пробоотборником Гиббса, гамильтоновым MCMC и пробоотборником без разворота (NUTS).

Примечание: Почему здесь сложно забить, вы можете увидетьЗачем использовать метод MCMC?

Применение MCMC связано с «проклятием размерности». Рассмотрим распределение на R. Если мы хотим вычислить его математическое ожидание, используя «эквидистантный расчет», описанный в заголовке, то взятие 100 точек может примерно гарантировать точность. Однако, учитывая распределение R ^ 50, чтобы использовать «эквидистантный расчет» в настоящее время, нам нужно взять 100 точек в каждом измерении, поэтому нам нужно взять 10 ^ 100 точек. Для сравнения, в известной Вселенной насчитывается около 10^87 элементарных частиц. Если вы внимательно посмотрите на результаты «эквидистантного расчета», то обнаружите, что вероятность большинства рассчитанных точек очень мала, а вероятность малого количества точек очень велика. И если мы игнорируем большинство точек с малой вероятностью и вычисляем только малую часть точек с высокой вероятностью, влияние на итоговое математическое ожидание очень мало. Это Интуитивная часть идеи MCMC. Для вероятностных моделей, применяемых MCMC, размерность параметра часто огромна, но набор опор для каждого параметра очень мал. Например, параметры некоторых задач NLP принимают только {0,1}, но размерность часто достигает тысяч или даже десятков тысяч, что показывает, что MCMC больше подходит для этих задач.

Первый алгоритм описан ниже: алгоритм Метрополиса.

Сначала представим общую процедуру алгоритма mcmc:

  1. сначала в пространстве параметров\thetaВыбери один\theta_{current}
  2. Предложите новую позицию в пространстве параметров\theta_{new}
  3. Примите решение о принятии или отклонении на основе предварительной информации и данных наблюдений.\theta_{new}
  4. Если получен прыжок, перейти на новую позицию и вернуться к шагу 1.
  5. Если отклонено, сохранить текущую позицию и вернуться к шагу 1
  6. Последовательно принимает ряд точек и, наконец, возвращает принятый набор точек.

Разница между различными алгоритмами mcmc заключается в следующем:

how you jump as well as how you decide whether to jump.

Метрополис использует нормальное распределение для прыжков, где μ — текущее местоположение.\theta_{current}, то необходимо определить σ. σ — параметр алгоритма Метрополиса, и разные значения σ определяют скорость сходимости алгоритма. Если значение σ велико, это означает, чтоproposal widthШирокий, может прыгать дальше и искать больше пространства апостериорных параметров, но легко пропустить места с высокой вероятностью, но слишком маленькое σ значение, которое сделаетproposal widthЕсли он слишком мал, сходимость будет слишком медленной.

После того, как новая позиция предложена, следующим шагом будет решить, прыгать или нет, Мы вычисляем отношение вероятностей двух позиций:

Затем мы выбираем значение из равномерного распределения [0,1] и принимаем, если оно находится между [0,p], в противном случае отклоняем.

Давайте возьмем пример, чтобы проиллюстрировать вышеописанный процесс.
Предположим, у нас есть набор наблюдаемых данных из нормального распределения, мы предполагаем, что априорное распределение параметра μ также является нормальным распределением, формула описывается следующим образом:

μ∼Normal(0,1) # априорная вероятность параметра

x|µ∼Normal(x;µ,1) # Вероятность

Мы просматриваем код следующим образом:


Для этой задачи, чтобы сравнить результаты mcmc, мы можем напрямую рассчитать апостериорную вероятность.Для конкретного математического вывода см.:note

Мы сравниваем общую процедуру алгоритма mcmc, упомянутого выше, и первую выборку:

После выбора нового значения наш следующий шаг — измерить, является ли новый параметр хорошим или нет.Как его определить? Это нужно для того, чтобы увидеть, могут ли новые параметры лучше объяснить данные.
как определитьлучше интерпретировать данныеШерстяная ткань?
Можно использовать следующую формулу

Объяснение основано на данных текущих наблюдений, какой параметр имеет большую вероятность.
Далее следует решение о принятии новых параметров:

Затем продолжайте повторять описанный выше процесс, у нас есть серия\theta.
Полный код можно посмотретьmcmc.

Суммировать

В этой статье в основном представлен mcmc, который решает метод, используемый для аппроксимации апостериорного распределения, когда апостериорная вероятность слишком сложна. В этой статье представлен простейший алгоритм Метрополиса, а позже мы продолжим изучение других алгоритмов. Добро пожаловать на внимание.

Ссылаться на

Markov Chain Monte Carlo for Bayesian Inference - The Metropolis Algorithm
MCMC sampling for dummies
Bayesian Inference with PyMC3 - Part 1

Ваша поддержка является движущей силой для меня, чтобы продолжать писать, и я с нетерпением жду нашего общего прогресса.
这个时代,每个人都是超级个体!关注我,一起成长!