Вы когда-нибудь задумывались, как априорные значения влияют на вашу байесовскую модель? Выяснить!

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

Проблема

Вы в Вегасе наблюдаете, как люди делают ставки на результат подбрасывания монеты. Если выпала решка, то вы выигрываете вдвое больше своей ставки, а если решка, казино забирает ваши деньги. Звучит неплохо, поэтому у вас сразу возникают подозрения. Казино не хотят делать вам выгодную сделку. Итак, вы решаете подсчитать, сколько раз вы видите каждый результат, и определить ценность монеты. Пусть H будет вероятностью выпадения орла, используя монету казино, и пусть D будет набором данных нашего бросает. Предположим, что мы видели 100 подбрасываний монет, и из этих 100 подбрасываний 40 были решками. Какой вес у монеты? Естественно, вы бы сказали, что H = 40/100 = 0,4, но как вы получили это число? Пройдемся по выводам!

Оценка максимального правдоподобия

Мы оцениваем подбрасывание монеты, что означает, что наши данные будут принимать одно из двух значений с вероятностями p и 1 - p . Таким образом, мы будем предполагать, что наши данные генерируются распределением Бернулли, или, другими словами, вероятность данных с учетом конкретной вероятности голов равна:

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

Теперь вернитесь к своему старому доброму классу «Исчисление I», возьмите производную и установите ее равной 0, чтобы определить критические точки.

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

Приоры

Подождите, разве мы не играем в азартные игры в Вегасе? Мы знаем, что эти казино теневые. Нам необходимо включить эту информацию в наши модели. В нашей модели мы предположили, что параметр может принимать любое значение от 0 до 1 с равной вероятностью. Это предположение о том, какие значения могут принимать наши параметры, называется априорным, и для этого анализа мы приняли единое априорное.

Этот конкретный априор говорит, что у нас нет абсолютно никакой информации о том, как должна выглядеть вероятность выпадения орла. Это хорошее предположение, если мы ничего не знаем о наших параметрах, но в случае обычного квартала это может быть плохим предположением, потому что мы знаем, что обычные уличные монеты очень близки к справедливым. Априорное значение сочетается с вероятностью получения апостериорного распределения с использованием правила Байя.

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

Мы уже знаем, как выглядит наша апертура для априорной формы, но что насчет того, если мы предположим, что казино играет по правилам и использует обычную уличную монету. Тогда мы могли бы принять гауссовское априорное значение со средним значением 0,5 и небольшим стандартным отклонением. Тогда наше апостериорное распределение будет:

Для этой реализации я выбрал среднее значение 0,5, потому что честные монеты должны быть близки к четным, и стандартное отклонение 0,05, так что, если монета окажется несправедливой, она будет находиться между 0,4 и 0,6.

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

PDF этой функции для α = 0,1 и β = 0,1:

Обратите внимание, как большая часть вероятности сосредоточена в крайних точках. Это согласуется с представлением о том, что монета, скорее всего, бросит все решки или орла. Вы также можете видеть, что это распределение не имеет большого отклонения, поскольку дисперсия составляет около 0,2. Намного выше, чем у гауссиана на 0,05 или униформы на 0,08.

Мы можем сгенерировать эти апостериоры в python, используя следующие функции:

Теперь давайте посмотрим, как априорные значения влияют на нашу оценку параметров визуально. Для этого эксперимента мы создаем смещенную монету на Python с вероятностью выпадения орла, равной 0,3. Эта монета явно предвзята и обычно бросает решку. Затем мы делаем выборку подбрасываний этой монеты через определенные интервалы от 0 до 512 подбрасываний. Эти сальто имитируют наблюдение за игрой, которую мы обсуждали. Вы можете думать об одном из этих графиков как о том, насколько мы уверены в справедливости монеты после N подбрасываний и наших предыдущих убеждений.

Ниже я изобразил эволюцию апостериорной части с растущими доказательствами (большее количество наблюдаемых переворотов), давайте посмотрим, что мы можем узнать. Если мы предположим, что у нас нет абсолютно никакой информации об этой монете, мы можем принять единый априор. Мы видим, что наша оценка веса монеты является равномерным распределением без подбрасывания. Это имеет смысл, потому что у нас нет данных, а есть только наши предположения о монете. Примерно после четырех переворотов мы получили нечто похожее на распределение Гаусса, которое, возможно, немного смещено в сторону 0,3, но трудно сказать. Примерно после 64 подбрасываний мы вполне уверены, что монета смещена, а после 128 мы более или менее приблизились к истинному смещенному весу монеты.

Затем мы исследуем, что произойдет, если мы предположим, что монета справедливая, используя распределение Гаусса. При нулевом броске у нас есть только наше предварительное убеждение. Распределение вряд ли изменится за первые несколько прыжков. Это связано с тем, что предположение о том, что наша монета является честной, является довольно сильным предположением, и поэтому потребуется много данных, чтобы повлиять на это убеждение. Примерно после 32–64 переворотов мы можем увидеть, как распределение постепенно сдвигается влево в сторону истинного веса. Но на самом деле только после 256–512 переворотов мы действительно пришли к истинному весу.

Наконец, мы проверяем мнение о том, что монета необъективна и что мы находимся в убогом казино, используя предварительную бета-версию. Мы видим, что это ведет себя очень похоже на равномерное распределение, но раньше оно отклоняется далеко влево.

Следует отметить еще несколько интересных моментов: по мере увеличения размера выборки все апостериорные элементы стремятся к нормальному распределению с центром в 0,3. Вы можете ясно видеть, что априор имеет большое влияние, когда размер выборки невелик. Кроме того, по мере увеличения размера выборки вероятность начинает преобладать, а априорная становится менее важной. Обратите внимание, как априорное значение может повлиять на скорость сходимости апостериорного. Например, как для унифицированного, так и для бета-теста после 64 подбрасываний истинное смещение монет попадает в наш 95% доверительный интервал, тогда как для гауссова истинное смещение не проявляется в нашем интервале до примерно 256 подбрасываний.

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

Первоначально опубликовано на http://www.nbertagnolli.com.