Решаем задачи по теорверу с собеседований в Яндекс и Авито: считаем доверительный интервал для Бета-распределения

в 21:33, , рубрики: байесовские методы, биноминальное распределение, доверительный интервал, нормальное распределение, семплирование томпсона

В данной статье я разбираю математику, лежащую в основе двух связанных технических задач. Я показываю, как из биномиального распределения рождается Бета-распределение и демонстрирую расчет доверительного интервала для последнего: через точную формулу для случая с k=0 (alpha=1) и через нормальное приближение в общем случае.

Задача 1:

Осьминог Пауль предсказывает победу команды в турнире. Из 16 матчей Пауль совершил верное предсказание 14 раз. Оцените предсказательную силу осьминога.

Задача 2:

Вы подбрасываете монетку 10 раз подряд и 10 раз выпадает орел. Какая вероятность того, что в 11 раз выпадет решка?

По факту в обеих задачах нас просят оценить вероятность единичного успеха в схеме испытаний Бернулли.

Интуиция за биномиальным и Бета-распределениями

Биномиальное распределение позволяет рассчитать вероятность получения определенного количества успешных исходов в серии независимых испытаний Бернулли при фиксированной вероятности успеха. Математически это можно записать как:

Bin(p, n) [k]=P(k; успехов; в ;  n ; испытыниях ; | ;вероятность;успеха=p)

В практических задачах (см. выше) часто известны количество успехов k и общее число испытаний n, но неизвестна вероятность успеха p. Чтобы оценить вероятность единичного успеха на основе наблюдаемых данных, необходимо применить байесовский подход и "перевернуть" условную вероятность с помощью Бета-распределения. Эта идея хорошо показана в видео 3Blue1Brown про Биномиальное распределение, а также в видео Serrano Academy про Бета-распределение.

Beta(k, n) [p] sim P(вероятность ; успеха=p ;|; k; успехов; в; n; испытаниях)

Важно отметить, что Бета-распределение является непрерывным распределением, поэтому вероятность любого конкретного значения p равна нулю. По этой причине в формуле используется символ "~" (тильда) вместо знака равенства. Бета-распределение определяет плотность вероятности, которая позволяет вычислить вероятность попадания p в любой заданный интервал значений.

Формула для Бета-распределения

Для биномиального распределения существует хорошо известная формула:

Bin(p, n)[k]=C_{n}^{k};p^k;(1-p)^{n-k}

Если рассматривать эту формулу как функцию от p при фиксированных значениях k и n, мы получаем функцию плотности следующего вида:

Beta(k, n)[p]=(n+1) ; C_{n}^{k};p^k;(1-p)^{n-k}

Дополнительный множитель n+1 возникает как артефакт нормирования этой функции по p (площадь функции на отрезке [0,1] должна быть равна единице).

Дисклеймер. В математической литературе Бета-распределение традиционно параметризуется через α и β (см. статью про Бета-распределение в Википедии). В контексте нашего обсуждения, где мы рассматриваем Бета-распределение через параметры k и n, это соответствует распределению с параметрами α=k+1 и β=n-k+1 в стандартной нотации.

Как получить нормировочный коэффициент:

Коэффициент перед множителями, содержащими p выражается следующим образом.

int_{0}^{1}p^{k}(1-p)^{n-k}dp=frac{Г(k+1)Г(n-k+1)}{Г(n+2)}=frac{k!(n-k)!}{(n+1)!}=frac{1}{(n+1); C_{n}^{k}}

Его также принято записывать через Beta-функцию (статья про Beta-функцию в Википедии):

int_{0}^{1}p^{k}(1-p)^{n-k}dp=B(k+1, n-k+1)

Важный предел при k=0.

Это мы смотрим как будто alpha=1 в известной терминологии:

Beta(0, n)[p]=(n+1) ; (1-p)^n

Семейство кривых Бета-распределения для n=10 и k=0, 2, 5, 8, 10 — слева направо. Предельные кривые для k=0 (слева) и k=10 (справа) выделены синим цветом.

Семейство кривых Бета-распределения для n = 10 и k = 0, 2, 5, 8, 10 — слева направо. Предельные кривые для k = 0 (слева) и k = 10 (справа) выделены синим цветом.

Нормальное приближение и доверительные интервалы

Beta(k, n)[p] xrightarrow[n rightarrow infty]{krightarrow infty} NormBigg(mu=frac{k}{n}, ;sigma=sqrt{frac{k/n;(1-k/n)}{n}} Bigg)[p]

В общем виде формула нормального приближения будет слегка другой (будут добавляться целые числа в случайных места — можете посмотреть хорошее видео на канале ritvikmath), но для больших n и k (10-20), мы вполне комфортно сможем пользоваться таким приближением.

Точная формула для среднего и стандартного отклонения Бета-распределения
mu=frac{k+1}{n+2} xrightarrow[n rightarrow infty]{krightarrow infty} frac{k}{n}

Смещение mu следует из скошенности распределения. При k=n/2 мы получим, что mu=k/n=1/2

sigma^2=frac{(k+1)(n-k+1)}{(n+2)^2(n+3)} xrightarrow[n rightarrow infty]{krightarrow infty} frac{k/n;(1-k/n)}{n}

95% интервал для kneq0:

boxed{p=frac{k}{n} ± 1.98 cdotsqrt{frac{k/n(1-k/n)}{n}}}

Для задачи с осьминогом мы получим (87.5 ± 16.2); %

95% доверительный интервал для k=0:

boxed{plesssim1-0.05^{1/n}}

Для задачи с монеткой мы получим промежуток от 0 до 0.24.

Заключение

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

Автор: volodya_research

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js