Бутстрэп [79] (оригинальная статья) работает за счет многократных выборок из данных, по которым затем считаются статистики. Алгоритм выглядит следующим образом [80]:
1. Необходимо задать количество выборок, которые мы сделаем из исходного датасета. Само число должно быть не меньше сотни. Больше – лучше.
2. При каждом повторении выборки (их всего будет) из исходного датасета случайно выбираются элементы с замещением, столько же, сколько было в исходном датасете (для сохранения вариации параметра [81]). В этой процедуре некоторые элементы исходного датасета будут выбраны несколько раз, некоторые – никогда.
3. Для каждой выборки вычисляется нужный нам параметр.
4. Теперь у нас есть k значений, которые можно использовать для вычисления доверительного интервала или статистического теста.
В А/Б-тестах мы работаем с двумя группами – контрольной и тестовой. По каждой группе нужно сделать свой бутстрэп. Считаем в каждой выборке и группе необходимую метрику. Для каждой выборки считаем разность метрик между группами. Таким образом мы получим k значений распределения разности в двух группах. Для вычисления значимости А/Б-теста нулевая гипотеза H 0 формулируется так: две выборки одинаковы, поэтому разность между ними равна нулю. Если уровень нашей ошибки первого рода = 0.05, тест двусторонний, то нам просто нужно вычислить перцентили (квантили) для отрезка [/2, 100 % – /2], то есть [2.5 %, 97.5 %]. Это легко сделать самостоятельно, если отсортировать наш ряд значений разницы метрик и определить значения перцентилей на концах. Если 0 будет находиться между двумя этими значениями, то нулевую гипотезу отвергнуть нельзя, если вне – отвергаем.
Вспомним наш пример с двумя резервуарами, у нас есть выборки по 1000 шаров из каждого. Напомню, что в задаче мы должны ответить на вопрос, есть ли разница в среднем диаметре шара между резервуарами. Для процедуры бутстрэпа делаем k = 300 выборок для обеих групп, сразу считаем среднее в каждой выборке и разность между ними. В итоге мы получим 300 чисел. Сортируем по убыванию и выбираем два числа – одно на 2.5-й перцентиле (2.5 % × 300 = 7.5 или на 7 позиция), второе на 97.5-м перcентиле (97.5 % × 300 = 292.5 или 293-я позиция). Если оба числа оказались или положительными, или отрицательными, значит, разница статистически значима.
Само слово «бутстрэп» произошло от выражения «To pull oneself over a fence by one’s bootstraps» (перебраться через ограду, потянув за ремешки на ботинках) – практически то же самое сделал барон Мюнхгаузен, когда вытянул сам себя за волосы из болота. Сейчас бутстрэпом называют такое «самовытягивание», когда мы получаем что-то бесплатное и полезное.
Плюсами бутстрэпа являются: независимость от распределения выборки, отсутствие параметров, кроме количества выборок, возможность легко подсчитать любую метрику. К минусам бутстрэпа относится очень высокая вычислительная требовательность. Создание тысяч выборок требует больших ресурсов. Третья альтернатива для А/Б-тестов – байесовская статистика.
Впервые я познакомился с байесовским подходом для A/Б-тестов, когда прочитал статью Сергея Фельдмана на сайте нашего конкурента Richrelevance про этот тип тестов [82]. Одним из аргументов в пользу байесовских тестов для меня было сравнение двух формулировок итогов A/Б-тестов:
• мы отклоняем нулевую гипотезу, что A = Б, с p -значением 0.043;
• с 85 %-ной вероятностью А лучше Б на 5 %.
Первая формулировка принадлежит традиционной фишеровской статистике, вторая – байесовской. В статье [82] Сергей обращал внимание на следующие два недостатка p-значений для работы с гипотезами:
P -значение – сложная концепция, ее приходится каждый раз объяснять. Что касается меня, то я был хорошо знаком с ней еще в 2002 году. Периодически мне приходится напоминать себе о ней, и тогда я обращаюсь к литературе.
P -значение использует бинарный подход – мы или оставляем нулевую гипотезу или отвергаем ее, сравнивая p-значение со значением = 0.05.
Классическая математическая статистика (frequentist approach) относится к параметру как к фиксированной неизвестной константе. Байесовская статистика относится к параметру как к вероятностной величине [83]. Это чем-то похоже на разность в подходах классической и квантовой физики. Мне лично больше нравится вероятностный подход байесовской статистики, он выглядит нагляднее и естественнее, чем p -значение. Меня он так заинтересовал, что я долго искал хорошую и понятную литературу по этой теме. Очень полезной книгой оказалось «Введение в байесовскую статистику» [83] Уильяма Больстарда. Я очень ценю хорошие книги и могу назвать автора Учителем с большой буквы. Больстард очень хорошо выстроил систему вывода формул и доказательств. Я прочитал его книгу от корки до корки, решил почти все задачи в ней и написал первую версию программной библиотеки для A/Б-тестирования в Retail Rocket. Читая книгу Антонио Рохо о Рональде Фишере [76], я обнаружил интересный факт про байесовскую статистику – оказывается, она широко использовалась для оценки статистической значимости еще в дофишеровскую эпоху. Сторонники традиционного статистического подхода Фишера и сторонники байесовского подхода спорят до сих пор, какой метод лучше.
Читать дальше
Конец ознакомительного отрывка
Купить книгу