Считаем размер выборки для AB-теста на основе нормального распределения (готовимся к собеседованию на Аналитика)

от автора

В этой статье мы рассмотрим ключевые аспекты расчета размера выборки для AB-тестирования, основанного на нормальном приближении. Я провожу вас через логическую цепочку планирования эксперимента, объясняя важные статистические концепции и формулы, необходимые для проведения AB-теста о равенстве средних значений численного признака. Эта информация будет особенно полезна для аналитиков, готовящихся к собеседованиям или стремящихся углубить свое понимание методологии экспериментов.⁠

Пример эксперимента

Пример: Давайте рассмотрим группы посетителей старого лендинга сайта и группу посетителей нового лендинга сайта. Пусть:

  • M_0 — средний чек покупателя на старом лендинге сайта, полученный на выборке размером n_1 и \sigma_2

  • M — средний чек покупателя на новом лендинге сайта, полученный на выборке размером n_2 и \sigma_2

  • Мы предполагаем, что в эксперименте мы получим, скорее всего результат M>M_0 (направление эффекта нам известно)

Мы хотим ответить на несколько вопросов:

  • Как понять, является ли разница \delta = M-M_0 статистически значимой или нет?

  • С какой вероятностью мы ошибемся, если посчитаем, что разница является статистически значимой и с какой вероятностью мы ошибемся, если посчитаем, что нет?

  • Какое количество данных нужно взять, чтобы в эксперименте ошибки из второго пункта были определенными?

Распределение разницы средних при многократном повторении эксперимента

Наша цель в AB-тесте — сделать статистически обоснованный вывод о том, есть ли различия между группами или нет.

Рассмотрим, что происходит при многократном проведении одного и того же эксперимента о сравнении M_0 и M и поймем, как будет распределена разница выборочных средних значений M - M_{0} в случае наличия и эффекта и при его отсутствии.

Если различий между группами нет, то при достаточно больших n распределение разницы средних будет нормальным со средним \mu = 0 и стандартным отклонением \sigma = S_{e}:

H_0:  M - M_0 \sim N\Bigg(\mu=0, \;\sigma = S_{e} = \sqrt{\frac{\sigma_1^2}{n_1} + \frac{\sigma_2^2}{n_2} } \Bigg)

Если различия между группами есть, то при достаточно больших n распределение разницы средних будет нормальным со средним \mu = d \;(d≠0) и стандартным отклонением \sigma = S_{e}:

H_1: M- M_0 \sim N\Bigg(\mu=d, \; \sigma = S_{e} = \sqrt{\frac{\sigma_1^2}{n_1} + \frac{\sigma_2^2}{n_2} } \Bigg)

где:

  • S_{e} — стандартная ошибка разницы средних значений

  • d — разница генеральных средних значений в группах, где есть эффект и где его нет

  • n_1 и n_2 — размеры выборок в каждой группе

  • \sigma_1 и \sigma_2 — стандартные отклонение данных в генеральных совокупностях

Нормальное распределение для каждого из средних значений M и M_0 “при достаточно больших n” следует из Центральной Предельной Теоремы (см. отрывок из статьи Википедии о ЦПТ), а нормальное распределение разницы средних значений M — M_0 следует из свойства нормального распределения о том, что сумма нормальных распределений распределена нормально (см. отрывок из статьи Википедии о сумме нормальных распределений).

Данное распределение разницы средних допускает возможность случайно получить сколь угодно выраженные отклонения, даже если между группами нет реальной разницы!
Вопрос: при каком значении разницы средних следует считать ее статистически значимой (= следует отклонить нулевую гипотезу об отсутствии различий между группами)?
Ответ: В качестве критического значения для разницы средних принято использовать такое значение разницы средних, которое соответствует \alpha = 5\% вероятности случайно получить такие или более сильные различия при условии, что на самом деле разница средних равна нулю (различий между группами нет). Это критическое значение вычисляется по следующей формуле:

\underbrace{M-M_0}_{critical}=\delta_{cr} = z_{\alpha/2} \cdot S_e

где:

  • S_e — стандартная ошибка разницы средних значений (см. выше)

  • z_{\alpha/2} — некоторое число, которое вычисляется на основе стандартного нормального распределения. Внутри промежутка ≤ |z_{\alpha}| находятся 95% значений этого распределения.

Эта формула следует из выражения для z-значения в 2-выборочном тесте (см. отрывок из статьи Википедии о проверке статистических гипотез).

Если в тесте детектируются разница между средними групп \delta≥\delta_{cr}, мы будем отклонять нулевую гипотезу и считать, что ошиблись с вероятностью \alpha. Величина \alpha называется \alpha-уровнем значимости и является вероятностью ошибки 1-го рода (неверное отклонение нулевой гипотезы).

При данном выборе нулевой гипотезы (в случае отсутствия различий между группами) мы будем наблюдать отклонения как в большую, так и в меньшую сторону, поэтому величина \alpha равномерно располагается по концам распределения — по \alpha/2 с каждой стороны.

Рисунок 1. Визуализация распределения разницы средних при многократном повторении эксперимента. Демонстрация расположения критического значения разницы средних, которое ограничивает по модулю 1-α (95%) отклонений от нуля, которые могут произойти случайно.

Рисунок 1. Визуализация распределения разницы средних при многократном повторении эксперимента. Демонстрация расположения критического значения разницы средних, которое ограничивает по модулю 1-α (95%) отклонений от нуля, которые могут произойти случайно.

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

Если взять n_1=n_2=n, а также \sigma_1 = \sigma_2 = \sigma, получим формулу для стандартной ошибки:

S_{e} = \sqrt{\frac{\sigma_1^2}{n_1} + \frac{\sigma_2^2}{n_2} } \xrightarrow[n_{1}=n_{2}=n]{\sigma_1=\sigma_2=\sigma} \sigma \cdot \sqrt{\frac{2}{n}}

Подставив ее в формулу для критического значения разницы средних, можно выразить n:

\boxed{n = 2 \cdot \Big(\frac{\sigma }{\delta_{cr} } \Big)^2\big(z_{\alpha/2}\big)^2 \cdot  \xrightarrow[z_{\alpha/2=0.025} = 1.96]{}7.7 \cdot \Big(\frac{\sigma }{\delta_{cr} } \Big)^2}

Если мы хотим обнаружить различия в группах как минимум \delta_{cr} и в случае отклонения нулевой гипотезы иметь вероятность ошибиться α = 5\%, мы должны взять выборку как минимум указанного размера.

Здесь можно было бы закончить статью, но тест может закончиться неудачей (различия между группами не будут найдены)

Минус полученной выше формулы для размера выборки в том, что он никакак не учитывает вероятность ошибки в случае, если различия не будут найдены. В данном параграфе станет понятно, что если мы посчитаем размер выборки по формуле выше, то в случае наличия различий размером \delta_{cr}, мы не будем находить различия с вероятностью \beta=50\%.

Если тест не показал статистически значимых различий (наблюдаемая разница средних меньше критической), то судьбой в античной пьесе на сцену выходит β-уровень значимости. Это вероятность отклонить альтернативную гипотезу, когда она верна. Однако данная вероятность будет разной в каждом частном случае альтернативной гипотезы |M(general)-M_0(general)|=d, поэтому в эксперименте мы рассматриваем одну конкретную разницу генеральных средних, равную некоторому положительному числу d>0. Это минимальный эффект, ради которого бизнес готов внедрять новую функцию или проводить исследование. Он называется MDE (Minimum Detectable Effect, минимальный обнаруживаемый эффект).

Важно отметить, что в эксперименте могут быть найдены статистически значимые различия между группами с разницей средних < MDE (это видно по визуализации) в случае \beta < 50\% и >MDE в случае \beta > 50\%.

Рисунок 2. Визуализация распределения разницы средних при многократном повторении эксперимента. Демонстрация расположения MDE, а также ошибки второго рода (β).

Рисунок 2. Визуализация распределения разницы средних при многократном повторении эксперимента. Демонстрация расположения MDE, а также ошибки второго рода (β).

То есть, β — это вероятность отклонить H_1 в случае существования различий размером MDE при проведении эксперимента на выборке размером n.

Альтернативная гипотеза утверждает существование разницы между средними. Однако при вычислении β мы конкретизируем её от общей формулировки «различия существуют» к более точной — «различия существуют и составляют не менее d«. Это позволяет рассчитать мощность теста для обнаружения конкретной разницы, так как β (ошибка второго рода) зависит от величины истинной разницы (см. формулу).

Алгоритм проведения теста:

  1. Фиксируем вероятность ошибки 1-го рода \alpha ⇒ Вычисляем z_{\alpha/2}, по которому мы сможем найти критическое значение разницы средних, начиная с которого мы будем отклонять нулевую гипотезу.

  2. Фиксируем вероятность ошибки 2-го рода \beta и MDE ⇒ Вычисляем размер выборки n

Определим \alpha и посчитаем z_{\alpha/2}

z_{\alpha/2} =\Phi^{-1}\Big(1-\frac{\alpha}{2}\Big)

— где \Phi^{-1} — обратная к функции распределения стандартного нормального распределения (не к функции плотности, а к функции распределения).

Определим \beta и MDE и посчитаем размер выборки

\beta = \int_{-\infty}^{z_{\alpha/2} \cdot S_{e}} N(\mu = x-d, \; \sigma=S_{e}) \; dx

Cделав замену z = (x-d)/S_e получим:

\beta = \Phi \Bigl(z_{\alpha/2} - \frac{d}{S_e (n)} \Bigl)

Преобразовав формулу для стандартной ошибки среднего (см выше) при \sigma_1 = \sigma_2 = \sigma и n_1 = n_2 = n получим:

\boxed{\beta = \Phi\Bigl(z_{\alpha/2} - \frac{d}{\sigma}\sqrt{\frac{n}{2}} \Bigl)}

— это максимальная вероятность отклонения альтернативной гипотезы, если разница в средних составляет как минимум d (MDE) и мы взяли выборку как минимум размером n.
> Чем больше n, тем меньше \beta при фиксированном MDE.
> Чем больше d(MDE), тем меньше \beta при фиксированном (и тем дальше d(MDE) от критического значения разницы средних)

Из полученной формулы для \beta выразим n:

\boxed{n = 2\cdot\Big(\frac{\sigma}{d}\Big)^2  \cdot \Bigg( \underbrace{\Phi^{-1} \big(1-\frac{\alpha}{2}\big)}_{z_{\alpha/2}}+ \underbrace{\Phi^{-1}\big( 1-\beta\big)}_{z_{ \beta}}\Bigg)^2}\xrightarrow[z_{\beta=0.20} = 0.84]{z_{\alpha/2=0.025} = 1.96} \; \approx 15.7 \cdot\Big(\frac{\sigma}{d}\Big)^2

где \Phi^{-1} — Обратная к функции распределения стандартного нормального распределения.

— это минимальное количество данных в каждой выборке, которое обеспечит нам возможность задетектировать различия даже немного меньше чем d (*) и ошибиться с вероятностью \alpha, а в случае отклонения альтернативной гипотезы обеспечит вероятность ошибочного отклонения менее \beta , если реальная разница средних превышает d=MDE
> Чем больше beta, тем меньше n при фиксированном MDE
> Чем больше MDE, тем меньше n при фиксированном \beta

(*) В случае beta < 50% критическое значение для разницы средних \delta_{cr} будет всегда меньше d = MDE

Двусторонний и односторонний критерий для рассчета α и α

Внимательный читатель может упрекнуть нас в нелогичности использования двустороннего критерия для рассчета уровня значимости \alpha и в то же время одностороннего — при рассчете уровня значимости \beta. Как будто бы, если мы знаем направление эффекта, мы должны везде использовать односторонний критерий, а если не знаем направление эффекта, то везде двусторонний.

Это действительно так, но есть 2 аргумента в пользу того, чтобы по \alpha использовать двусторонний критерий, даже если мы знаем направление эффекта:

  • Если мы предполагали, что фича отработает в + и применили односторонний критерий для рассчета \alpha, но по итогу фича отработала в минус (статистически значимо), то по хорошему нужно переделывать весь эксперимент, что часто затратно. Поэтому логичнее уберечь нас от такой участи и использовать по alpha всегда двустороний критерий. (Но при этом по beta использовать односторонний, чтобы увеличить мощность теста)

  • ChatGPT сказала, что ошибки 1 рода больнее чем 2 рода, потому что катить новую фичу для нас затратнее чем не катить, поэтому окей односторонний критерий брать по beta^ а по альфа делать двусторонний

Если использовать двустороний критерий по \beta, то формула для рассчета размера выборки станет следующей:

n = 2\cdot\Big(\frac{\sigma}{d}\Big)^2 \cdot \Big(  z_{\alpha/2 }+ z_{\beta/2}\Big) ^2\xrightarrow[z_{\beta/2=0.10} = 1.28]{z_{\alpha/2=0.025} = 1.96} \; \approx 21 \cdot \Big(\frac{\sigma}{d}\Big)^2

Табличка с рассчетом размера выборки для α = 5% и β = 20%:

β/2

β

α/2

n = 21 (σ/d)^2

n = 15.7 (σ/d)^2

α

n = 17.1 (σ/d)^2

n = 12.4 (σ/d)^2

Интерпретация результатов эксперимента

Условные выводы эксперимента:

1) При наблюдении значимых различий мы принимаем альтернативную гипотезу о разнице средних M-M_0 ≠ 0 (либо M-M_0 > 0 в случае одностороннего критерия) с вероятностью ошибки α = 5\%

2) При отсутствии значимых различий мы сохраняем нулевую гипотезу, допуская вероятность ошибки не более β = 20% в случае наличия эффекта, равного или превышающего MDE (по модулю равного или превышающего MDE в случае двустороннего критерия для рассчета β).

Заключение

Выбор β-уровня значимости и MDE, а также расчет по ним размера выборки для AB-теста — это ключевые этапы в планировании эксперимента. Вся эта сложная процедура с расчетами важна для корректной интерпретации как положительных так и отрицательных результатов эксперимента. А как было бы чудесно пользоваться простой формулой для размера выборки, полученной в первой части статьи 🙂


ссылка на оригинал статьи https://habr.com/ru/articles/859996/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *