stringtranslate.com

Выборка Гиббса

В статистике выборка Гиббса или сэмплер Гиббса — это алгоритм Монте-Карло (MCMC) цепи Маркова для выборки из заданного многомерного распределения вероятностей , когда прямая выборка из совместного распределения затруднена, но выборка из условного распределения более практична. Эту последовательность можно использовать для аппроксимации совместного распределения (например, для создания гистограммы распределения); аппроксимировать предельное распределение одной из переменных или некоторого подмножества переменных (например, неизвестных параметров или скрытых переменных ); или вычислить интеграл (например, ожидаемое значение одной из переменных). Обычно некоторые переменные соответствуют наблюдениям, значения которых известны и, следовательно, не требуют выборки.

Выборка Гиббса обычно используется как средство статистического вывода , особенно байесовского вывода . Это рандомизированный алгоритм (т. е. алгоритм, использующий случайные числа ) и альтернатива детерминированным алгоритмам статистического вывода, таким как алгоритм максимизации ожидания (EM).

Как и в случае с другими алгоритмами MCMC, выборка Гиббса генерирует цепь Маркова выборок, каждая из которых коррелирует с соседними выборками. В результате необходимо соблюдать осторожность, если желательны независимые образцы. Как правило, образцы из начала цепочки ( период приработки ) могут неточно отражать желаемое распределение и обычно отбрасываются.

Введение

Выборка Гиббса названа в честь физика Джозайи Уилларда Гиббса в связи с аналогией между алгоритмом выборки и статистической физикой . Алгоритм был описан братьями Стюартом и Дональдом Джеманами в 1984 году, примерно через восемь десятилетий после смерти Гиббса, [1] и стал популяризирован в статистическом сообществе для расчета предельного распределения вероятностей, особенно апостериорного распределения. [2]

В своей базовой версии выборка Гиббса представляет собой частный случай алгоритма Метрополиса-Гастингса . Однако в своих расширенных версиях (см. ниже) его можно рассматривать как общую основу для выборки из большого набора переменных путем выборки каждой переменной (или, в некоторых случаях, каждой группы переменных) по очереди, и она может включать в себя метод Metropolis– Алгоритм Гастингса (или такие методы, как выборка срезов ) для реализации одного или нескольких этапов выборки.

Выборка Гиббса применима, когда совместное распределение не известно явно или его трудно выбрать напрямую, но условное распределение каждой переменной известно и из него легко (или, по крайней мере, проще) выбрать образец. Алгоритм выборки Гиббса генерирует экземпляр на основе распределения каждой переменной по очереди, при условии, что текущие значения других переменных. Можно показать, что последовательность выборок представляет собой цепь Маркова , а стационарное распределение этой цепи Маркова — это и есть искомое совместное распределение. [3]

Выборка Гиббса особенно хорошо адаптирована к выборке апостериорного распределения байесовской сети , поскольку байесовские сети обычно задаются как набор условных распределений.

Выполнение

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

  1. Начнем с некоторого начального значения .
  2. Нам нужен следующий образец. Назовите следующий образец . Поскольку это вектор, мы выбираем каждый компонент вектора из распределения этого компонента, обусловленного всеми другими компонентами, выбранными до сих пор. Но есть одна загвоздка: мы ставим условия для компонентов s до , а затем ставим условия для компонентов s, начиная с до . Для этого мы отбираем компоненты по порядку, начиная с первого компонента. Более формально, для выборки мы обновляем ее в соответствии с распределением, указанным . Мы используем значение, которое имел компонент-й в образце-м, а не в образце-м.
  3. Повторите указанные выше действия .

Характеристики

Если такая выборка проводится, следующие важные факты:

При проведении отбора проб:

Связь условного распределения и совместного распределения

Более того, условное распределение одной переменной с учетом всех остальных пропорционально совместному распределению:

«Пропорционально» в данном случае означает, что знаменатель не является функцией и, следовательно, одинаков для всех значений ; он является частью константы нормализации распределения по . На практике для определения характера условного распределения фактора проще всего факторизовать совместное распределение по отдельным условным распределениям, заданным графической моделью по переменным, игнорировать все факторы, не являющиеся функциями от (все из которых , вместе со знаменателем, указанным выше, составляют константу нормализации), а затем при необходимости восстановите константу нормализации в конце. На практике это означает выполнение одной из трех вещей:

  1. Если распределение дискретное, вычисляются отдельные вероятности всех возможных значений, а затем суммируются для нахождения константы нормализации.
  2. Если распределение непрерывно и имеет известный вид, константа нормализации также будет известна.
  3. В других случаях константу нормализации обычно можно игнорировать, поскольку большинство методов выборки не требуют ее.

Вывод

Выборка Гиббса обычно используется для статистических выводов (например, определение наилучшего значения параметра, например, определение количества людей, которые могут делать покупки в определенном магазине в определенный день, кандидата, за которого избиратель, скорее всего, проголосует и т. д.). . Идея состоит в том, что наблюдаемые данные включаются в процесс выборки путем создания отдельных переменных для каждой части наблюдаемых данных и привязки рассматриваемых переменных к их наблюдаемым значениям, а не выборки на основе этих переменных. Тогда распределение остальных переменных фактически является апостериорным распределением , обусловленным наблюдаемыми данными.

Затем наиболее вероятное значение желаемого параметра ( режим ) можно просто выбрать, выбрав наиболее часто встречающееся выборочное значение; по существу это эквивалентно максимальной апостериорной оценке параметра. (Поскольку параметры обычно непрерывны, часто необходимо «группировать» выборочные значения в один из конечного числа диапазонов или «ячейок», чтобы получить содержательную оценку режима.) Однако чаще всего ожидаемое значение выбирается значение ( среднее или среднее) из выборочных значений; это байесовский оценщик , который использует дополнительные данные обо всем распределении, доступные из байесовской выборки, тогда как алгоритм максимизации, такой как максимизация ожидания (EM), способен возвращать только одну точку из распределения. Например, для унимодального распределения среднее значение (ожидаемое значение) обычно похоже на моду (наиболее распространенное значение), но если распределение искажено в одном направлении, среднее значение будет сдвинуто в этом направлении, что фактически учитывает дополнительные вероятностная масса в этом направлении. (Если распределение является мультимодальным, ожидаемое значение может не возвращать значимую точку, и любой из режимов обычно является лучшим выбором.)

Хотя некоторые переменные обычно соответствуют интересующим параметрам, другие представляют собой неинтересные («неудобные») переменные, введенные в модель для правильного выражения отношений между переменными. Хотя выборочные значения представляют собой совместное распределение по всем переменным, мешающие переменные можно просто игнорировать при вычислении ожидаемых значений или режимов; это эквивалентно маргинализации мешающих переменных. Если требуется значение для нескольких переменных, ожидаемое значение просто вычисляется для каждой переменной отдельно. (Однако при вычислении режима все переменные необходимо рассматривать вместе.)

Обучение с учителем , обучение без учителя и полуконтролируемое обучение (также известное как обучение с пропущенными значениями) можно обеспечить, просто зафиксировав значения всех переменных, значения которых известны, и выбрав выборку из остатка.

Для наблюдаемых данных будет одна переменная для каждого наблюдения, а не, например, одна переменная, соответствующая выборочному среднему значению или выборочной дисперсии набора наблюдений. Фактически, обычно вообще не существует переменных, соответствующих таким понятиям, как «выборочное среднее» или «выборочная дисперсия». Вместо этого в таком случае будут переменные, представляющие неизвестное истинное среднее значение и истинную дисперсию, и определение выборочных значений для этих переменных происходит автоматически в результате работы пробоотборника Гиббса.

Обобщенные линейные модели (т.е. варианты линейной регрессии ) иногда также можно обрабатывать с помощью выборки Гиббса. Например, пробит-регрессия для определения вероятности данного двоичного выбора (да/нет) с нормально распределенными априорными значениями, помещенными над коэффициентами регрессии, может быть реализована с помощью выборки Гиббса, поскольку можно добавить дополнительные переменные и воспользоваться преимуществом сопряженности . Однако с логистической регрессией таким образом справиться невозможно. Одна из возможностей — аппроксимировать логистическую функцию смесью (обычно 7–9) нормальных распределений. Однако чаще вместо выборки Гиббса используется метод Метрополиса-Гастингса .

Математическая основа

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

  1. Выберите случайный индекс
  2. Выберите новое значение в соответствии с

Эти шаги определяют обратимую цепь Маркова с желаемым инвариантным распределением . Это можно доказать следующим образом. Определим if для всех и обозначим через вероятность перехода от к . Тогда вероятности перехода равны

Так

поскольку является отношением эквивалентности . Таким образом, подробные уравнения баланса удовлетворяются, а это означает, что цепочка обратима и имеет инвариантное распределение .

На практике индекс выбирается не случайно, а цепочка циклически перебирает индексы по порядку. В целом это дает нестационарный марковский процесс, но каждый отдельный шаг по-прежнему будет обратимым, а весь процесс по-прежнему будет иметь желаемое стационарное распределение (до тех пор, пока цепочка может получить доступ ко всем состояниям при фиксированном порядке).


Сэмплер Гиббса в байесовском выводе и его связь с теорией информации

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

где предельная вероятность предполагается конечной для всех .

Чтобы объяснить сэмплер Гиббса, мы дополнительно предполагаем, что пространство параметров разлагается как

,

где представляет собой декартово произведение . Каждое пространство параметров компонента может представлять собой набор скалярных компонентов, подвекторов или матриц.

Определите набор , дополняющий . Основными компонентами сэмплера Гиббса является -е полное условное апостериорное распределение для каждого

.
Графическое описание алгоритма выборки Гиббса [4]
Схематическое описание информационного равенства, связанного с сэмплером Гиббса на i-м шаге цикла [4]

Следующий алгоритм подробно описывает общий сэмплер Гиббса:

Обратите внимание, что сэмплер Гиббса работает по итеративной схеме Монте-Карло внутри цикла. Количество выборок, полученных с помощью вышеуказанного алгоритма, формирует цепи Маркова с инвариантным распределением, которое является целевой плотностью .

Теперь для каждого определим следующие теоретические величины:

а именно, апостериорная взаимная информация, апостериорная дифференциальная энтропия и апостериорная условная дифференциальная энтропия соответственно. Мы можем аналогичным образом определить теоретико-информационные величины , и , меняя местами и в определенных количествах. Тогда имеют место следующие уравнения. [4]

.

Взаимная информация количественно определяет уменьшение неопределенности случайной величины, как только мы узнаем ее апостериорно. Он исчезает тогда и только тогда, когда и маргинально независимы, апостериорно. Взаимную информацию можно интерпретировать как величину, которая передается от -го шага к -му шагу за один цикл пробоотборника Гиббса.

Вариации и расширения

Существуют многочисленные варианты базового семплера Гиббса. Цель этих изменений — уменьшить автокорреляцию между выборками настолько, чтобы преодолеть любые дополнительные вычислительные затраты.

Заблокированный сэмплер Гиббса

Свернутый сэмплер Гиббса

Реализация свернутого семплера Гиббса

Схлопывание распределений Дирихле

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

  1. Свертывание предшествующего узла Дирихле влияет только на родительский и дочерний узлы предшествующего узла. Поскольку родительский элемент часто является константой, обычно нам нужно беспокоиться только о дочерних элементах.
  2. Свертывание априора Дирихле вводит зависимости между всеми категориальными дочерними элементами, зависящими от этого априора, но не приводит к появлению дополнительных зависимостей среди любых других категориальных дочерних элементов. (Об этом важно помнить, например, когда имеется несколько априорных значений Дирихле, связанных одним и тем же гиперприорным. Каждый априорный элемент Дирихле может быть свернут независимо и влияет только на своих прямых дочерних элементов.)
  3. После коллапса условное распределение одного зависимого потомка по остальным принимает очень простую форму: вероятность увидеть данное значение пропорциональна сумме соответствующего гиперприора для этого значения и числа всех остальных зависимых узлов, предполагающих то же значение. Узлы, не зависящие от одного и того же предшествующего уровня, не должны учитываться. То же правило применяется и в других итерационных методах вывода, таких как вариационный Байес или максимизация ожидания ; однако, если метод предполагает сохранение частичных подсчетов, то частичные подсчеты для рассматриваемого значения должны быть суммированы по всем другим зависимым узлам. Иногда этот суммарный частичный подсчет называется ожидаемым подсчетом или чем-то подобным. Вероятность пропорциональна полученному значению; фактическая вероятность должна определяться путем нормализации всех возможных значений, которые может принимать категориальная переменная (т. е. сложения вычисленного результата для каждого возможного значения категориальной переменной и деления всех вычисленных результатов на эту сумму).
  4. Если у данного категориального узла есть зависимые дочерние элементы (например, когда он является скрытой переменной в смешанной модели ), значение, вычисленное на предыдущем шаге (ожидаемое количество плюс априорное значение или что-то еще, вычисленное), должно быть умножено на фактические условные вероятности ( не вычисленное значение, пропорциональное вероятности!) всех детей от их родителей. Подробное обсуждение см. в статье о мультиномиальном распределении Дирихле .
  5. В случае, когда групповое членство узлов, зависящих от заданного априора Дирихле, может динамически меняться в зависимости от какой-либо другой переменной (например, категориальной переменной, индексированной другой скрытой категориальной переменной, как в тематической модели ), по-прежнему вычисляются те же ожидаемые значения. , но это нужно делать осторожно, чтобы включить правильный набор переменных. Дополнительную информацию см. в статье о полиномиальном распределении Дирихле , в том числе в контексте тематической модели.
Свертывание других сопряженных априорных значений

В общем, любой сопряженный априор можно свернуть, если его единственные дочерние элементы имеют сопряженные с ним распределения. Соответствующая математика обсуждается в статье о составных распределениях . Если имеется только один дочерний узел, результат часто будет иметь известное распределение. Например, свертывание дисперсии с обратным гамма-распределением из сети с одним гауссовским дочерним элементом даст t-распределение Стьюдента . (В этом отношении объединение среднего значения и дисперсии одного гауссова дочернего элемента все равно даст t-распределение Стьюдента, при условии, что оба они сопряжены, т. е. среднее по Гауссу, дисперсия обратной гамма-распределения.)

Если имеется несколько дочерних узлов, все они станут зависимыми, как в категориальном случае Дирихле . Результирующее совместное распределение будет иметь замкнутую форму, которая в некотором смысле напоминает составное распределение, хотя в нем будет произведение ряда факторов, по одному для каждого дочернего узла.

Кроме того, что наиболее важно, результирующее условное распределение одного из дочерних узлов с учетом остальных (а также с учетом родителей свернутого узла(ов), но без учета дочерних узлов дочерних узлов) будет иметь ту же плотность, что и апостериорное прогнозируемое распределение всех оставшихся дочерних узлов. Более того, апостериорное прогнозируемое распределение имеет ту же плотность, что и базовое составное распределение одного узла, хотя и с другими параметрами. Общая формула приведена в статье о составных распределениях .

Например, для сети Байеса с набором условно независимых одинаково распределенных узлов с гауссовым распределением и сопряженными априорными распределениями, помещенными в среднее значение и дисперсию, условное распределение одного узла с учетом остальных после суммирования среднего значения и дисперсии будет t-распределение Стьюдента . Аналогичным образом, результат суммирования априорной гаммы ряда узлов с распределением Пуассона приводит к тому, что условное распределение одного узла при условии, что остальные принимают отрицательное биномиальное распределение .

В тех случаях, когда объединение дает хорошо известное распределение, часто существуют эффективные процедуры выборки, и их использование часто (хотя и не обязательно) будет более эффективным, чем отказ от свертывания и вместо этого выборка как предыдущих, так и дочерних узлов отдельно. Однако в случае, когда сложное распределение неизвестно, выборку из него может быть затруднено, поскольку оно обычно не принадлежит к экспоненциальному семейству и обычно не является логарифмически вогнутым (что облегчило бы выборку). с использованием адаптивной отбраковочной выборки , поскольку всегда существует закрытая форма).

В случае, когда дочерние узлы свернутых узлов сами имеют дочерних элементов, условное распределение одного из этих дочерних узлов с учетом всех остальных узлов в графе должно будет учитывать распределение этих дочерних узлов второго уровня. В частности, результирующее условное распределение будет пропорционально произведению составного распределения, определенного выше, и условных распределений всех дочерних узлов с учетом их родителей (но не с учетом их собственных дочерних узлов). Это следует из того, что полное условное распределение пропорционально совместному распределению. Если дочерние узлы свернутых узлов являются непрерывными , это распределение, как правило, не будет иметь известной формы, и из него может быть сложно сделать выборку, несмотря на то, что может быть написана закрытая форма, по тем же причинам, которые описаны выше для нераспределенных узлов. - известные составные распределения. Однако в частном случае, когда дочерние узлы дискретны , выборка возможна независимо от того, являются ли дочерние узлы этих дочерних узлов непрерывными или дискретными. Фактически, используемый здесь принцип достаточно подробно описан в статье о полиномиальном распределении Дирихле .

Сэмплер Гиббса с упорядоченной сверхрелаксацией

Другие расширения

Также возможно расширить выборку Гиббса различными способами. Например, в случае переменных, условное распределение которых нелегко получить из выборки, для выборки из рассматриваемых переменных можно использовать одну итерацию срезовой выборки или алгоритм Метрополиса – Гастингса . Также возможно включать переменные, которые не являются случайными величинами , но значение которых детерминированно вычисляется на основе других переменных. Таким образом могут быть включены обобщенные линейные модели , например логистическая регрессия (также известная как « модели максимальной энтропии »). (Например, BUGS допускает такое смешивание моделей.)

Режимы отказа

Есть две причины, по которым выборка Гиббса может оказаться неудачной. Первый — когда существуют острова высоковероятных состояний, между которыми нет путей. Например, рассмотрим распределение вероятностей по 2-битным векторам, где каждый из векторов (0,0) и (1,1) имеет вероятность ½, но два других вектора (0,1) и (1,0) имеют вероятность нуль. Выборка Гиббса окажется в ловушке одного из двух векторов с высокой вероятностью и никогда не достигнет другого. В более общем смысле, для любого распределения по многомерным векторам с действительными значениями, если два конкретных элемента вектора идеально коррелированы (или идеально антикоррелированы), эти два элемента застрянут, и выборка Гиббса никогда не сможет измениться. их.

Вторая проблема может возникнуть, даже если все состояния имеют ненулевую вероятность и существует только один остров состояний с высокой вероятностью. Например, рассмотрим распределение вероятностей по 100-битным векторам, где вектор, состоящий из всех нулей, встречается с вероятностью ½, а все остальные векторы равновероятны и, следовательно, имеют вероятность каждого . Если вы хотите оценить вероятность нулевого вектора, достаточно будет взять 100 или 1000 выборок из истинного распределения. Очень вероятно, что это даст ответ, очень близкий к ½. Но вам, вероятно, придется взять больше образцов, чем просто выборка Гиббса, чтобы получить тот же результат. Ни один компьютер не смог бы сделать это за всю жизнь.

Эта проблема возникает независимо от продолжительности периода приработки. Это связано с тем, что в истинном распределении нулевой вектор встречается в половине случаев, и эти случаи случайным образом смешиваются с ненулевыми векторами. Даже небольшая выборка увидит как нулевые, так и ненулевые векторы. Но выборка Гиббса будет поочередно возвращать только нулевой вектор в течение длительных периодов (примерно подряд), а затем только ненулевые векторы в течение длительных периодов (примерно подряд). Таким образом, сходимость к истинному распределению происходит чрезвычайно медленно и требует гораздо большего, чем просто шаги; выполнить такое количество шагов за разумный период времени вычислительно невозможно. Медленную конвергенцию здесь можно рассматривать как следствие проклятия размерности . Подобная проблема может быть решена путем блочной выборки всего 100-битного вектора одновременно. (При этом предполагается, что 100-битный вектор является частью более крупного набора переменных. Если этот вектор — единственное, что подвергается выборке, то выборка блоков эквивалентна полному отказу от выборки Гиббса, что по гипотезе было бы затруднительно.)

Программное обеспечение

Примечания

  1. ^ Геман, С .; Геман, Д. (1984). «Стохастическая релаксация, распределения Гиббса и байесовское восстановление изображений». Транзакции IEEE по анализу шаблонов и машинному интеллекту . 6 (6): 721–741. дои : 10.1109/TPAMI.1984.4767596. ПМИД  22499653.
  2. ^ Гельфанд, Алан Э.; Смит, Адриан Ф.М. (1 июня 1990 г.). «Подходы к расчету предельной плотности на основе выборки». Журнал Американской статистической ассоциации . 85 (410): 398–409. дои : 10.1080/01621459.1990.10476213. ISSN  0162-1459.
  3. ^ Гельман, Эндрю и Карлин, Джон Б. и Стерн, Хэл С. и Дансон, Дэвид Б. и Вехтари, Аки и Рубин, Дональд Б. (2014). Байесовский анализ данных . Том. 2. Флорида: CRC прессует Бока Ратон.{{cite book}}: CS1 maint: multiple names: authors list (link)
  4. ^ abc Ли, Се Юн (2021). «Сэмплер Гиббса и вариационный вывод по координатному восхождению: теоретико-множественный обзор». Коммуникации в статистике - теория и методы . 51 (6): 1549–1568. arXiv : 2008.01006 . дои : 10.1080/03610926.2021.1921214. S2CID  220935477.
  5. ^ Лю, Цзюнь С. (сентябрь 1994 г.). «Свернутый сэмплер Гиббса в байесовских вычислениях с применением к проблеме регуляции генов». Журнал Американской статистической ассоциации . 89 (427): 958–966. дои : 10.2307/2290921. JSTOR  2290921.
  6. ^ Нил, Рэдфорд М. (1995). Подавление случайных блужданий в цепи Маркова Монте-Карло с использованием упорядоченной сверхрелаксации (технический отчет). Университет Торонто, факультет статистики. arXiv : Байес-ан/9506004 . Бибкод : 1995bayes.an..6004N.

Рекомендации