Когда мониторинг эксперимента начинает искажать выводы
AB-тест почти всегда живет в плотном контуре принятия решений. Руководителю нужно понимать, не проседают ли ключевые показатели. Команде важно вовремя остановить вариант, который ухудшает метрику, и так же вовремя зафиксировать улучшение, если оно убедительное. Поэтому интерес к проверкам по ходу эксперимента естественен: данные копятся, отчеты обновляются, вопросы возникают каждый день.
Трудность в другом: если на каждом обновлении отчета пересчитывать обычное значение p-value фиксированного теста и завершать эксперимент при p < 0.05, то доля ложных срабатываний растет. То есть при отсутствии эффекта мы начинаем чаще, чем планировали, получать статистически значимый результат чисто из-за случайных колебаний данных.
Дальше разберем, почему так происходит, и как это исправляется с помощью группового последовательного тестирования (group sequential). Это подход, в котором заранее задаются несколько контрольных точек для подглядывания, а пороги принятия решения в этих точках подбираются так, чтобы общий уровень ошибки первого рода по всему процессу оставался равным alpha.
Откуда берется завышение ложных срабатываний при подглядывании
В фиксированном тесте логика такая: мы один раз сравниваем группы и принимаем решение при заданном уровне значимости alpha. Под уровнем значимости обычно понимают верхнюю границу вероятности ошибочно отклонить нулевую гипотезу, если эффект на самом деле равен нулю.
Когда мы начинаем подглядывать многократно, мы фактически повторяем попытку увидеть редкое событие. Даже если эффект равен нулю, шум иногда дает маленькое p-значение. Если разрешить себе завершать эксперимент при первом таком событии, то шанс наткнуться на него за несколько проверок становится заметно выше.

Грубая формула, которая помогает почувствовать масштаб (если бы проверки были независимы), выглядит так:

Здесь - число проверок. В реальном AB-тесте проверки зависимы, потому что мы каждый раз считаем на накопленных данных, но сам механизм остается тем же: чем чаще подглядываем, тем выше вероятность однажды увидеть преодоление порогового значения p-value при нулевом эффекте.

Контекст задачи и гипотеза, с которой мы работаем
Рассмотрим типичный AB-тест, где сравнивается среднее значение метрики в тесте и контроле, например средняя выручка на пользователя или среднее число целевых действий за период. Мы хотим ответить на вопрос: отличается ли среднее значение в тесте от контроля, и если отличается, то насколько уверенно мы можем это утверждать, учитывая случайность данных.
Нулевая и альтернативная гипотезы в двусторонней постановке записываются так:
и
- истинные средние значения метрики в контроле и тесте.
Основные моменты и расчеты можно также увидеть в репозитории: https://github.com/Niuhych/trustworthy-experiments-core/tree/main
Что такое групповое последовательное тестирование и в чем его смысл
Групповое последовательное тестирование - это компромисс между двумя крайностями:
не подглядывать вообще и принять решение строго в конце;
подглядывать постоянно и принимать решение по обычному p-значению, рискуя завысить долю ложных срабатываний.
Подход устроен так:
До старта эксперимента выбираются контрольные точки, в которые команде разрешено подглядывать. Это могут быть доли от планового объема данных, например 20%, 40%, 60%, 80%, 100%, или фиксированные дни при примерно стабильном трафике.
В каждой контрольной точке считается статистика теста на накопленных данных.
Для каждой контрольной точки используется свой порог принятия решения. Ранние пороги обычно строже, поздние мягче.
Эксперимент можно завершить досрочно только по заранее заданному правилу. Если пр��вило сработало, решение фиксируется и не пересматривается на тех же данных.
Основной результат такого подхода в том, что общий уровень ошибки первого рода по всей процедуре подглядывания не превышает alpha. Не в каждой точке отдельно, а именно по процессу целиком.
Что именно считаем в контрольных точках
Для метрики среднего значения удобно работать с разностью средних и ее стандартной ошибкой.
Оценка эффекта в контрольной точке :
Стандартная ошибка:
Тогда z-статистика:
Для двустороннего решения сравнивают модуль с критическим порогом
. Если
достаточно велик и пересек порог, эксперимент можно завершить.
Контрольные точки: как выбирать частоту подглядывания
В реальной работе цель контрольных точек - дать бизнесу регулярный статус эксперимента, но не превращать принятие решения в реакцию на "минутные" колебания.
Один из способов задавать контрольные точки - долями от планового объема данных. Если - объем данных к финалу, то для точки
можно ввести долю накопленных данных:
Дальше выбирается сетка. Например:
первая проверка не раньше 15-25% данных;
всего 4-7 проверок, включая финальную.
Это обычно выглядит естественно: в начале не принимать решений на маленьком объеме, а потом обновляться достаточно регулярно, чтобы не ждать до конца, если эффект уже стал очевидным.
Два популярных набора порогов: Pocock и OBrien-Fleming
Вопрос, который нужно решить при последовательном подходе: какими должны быть пороги в разных контрольных точках. На практике чаще всего начинают с двух классических подходов: Pocock и OBrien-Fleming.
Оба варианта по-разному распределяют допустимую вероятность ложного срабатывания между несколькими проверками так, чтобы суммарно не выйти за alpha.
OBrien-Fleming
OBrien-Fleming делает ранние пороги очень строгими. Это означает, что досрочное завершение возможно, но только если сигнал действительно сильный. По мере накопления данных пороги снижаются, и к финалу становятся близкими к порогу обычного фиксированного теста.
Одна из распространенных форм записи порога через выглядит так:
- квантиль стандартного нормального распределения.
Раннее завершение при OBrien-Fleming происходит редко и обычно воспринимается как более осторожный вариант.

Pocock
Pocock задает пороги более ровно по времени. В ранних контрольных точках порог ниже, чем у OBrien-Fleming, поэтому досрочных завершений обычно больше. Цена за это - финальный порог становится строже, чем в фиксированном тесте.
Pocock чаще дает решение раньше, но в конце требует более убедительного результата.

Что показывает симуляция на нулевом эффекте
Чтобы увидеть разницу между, так называемым, наивным подглядыванием и последовательным подходом, можно посмотреть на симуляцию при нулевом эффекте, когда H0 истинна.
В ноутбуке из репозитория показан следующий сценарий:
7 контрольных точек по объему данных;
на каждой точке считается обычное фиксированное p-значение;
эксперимент досрочно завершается, если хоть раз p < 0.05.
В 200 симуляциях при нулевом эффекте в этом сценарии доля ложных срабатываний получилась около 0.14. То есть примерно в 14% случаев процедура показывает статистическую значимость там, где эффекта нет. При этом групповое последовательное тестирование с OBrien-Fleming на тех же контрольных точках дало около 0.055, что близко к целевому уровню 0.05.
Результаты зависят от сетки контрольных точек и настройки симулятора, но общий вывод понятен: наивное подглядывание заметно увеличивает ошибку первого рода, а последовательный подход удерживает ее близко к заданному уровню.
Как выбрать Pocock или OBrien-Fleming для продуктового процесса
Выбор между OBrien-Fleming и Pocock - это, по сути, выбор того, в какие моменты вы готовы принимать решение и какой ценой. Один вариант почти не дает завершать эксперимент в начале, но оставляет финальный критерий близким к привычному фиксированному тесту. Другой вариант, наоборот, чаще позволяет завершить раньше, но делает финальную проверку более строгой. Ниже как это обычно проявляется в реальной работе.
OBrien-Fleming:
досрочное завершение возможно, но в основном при сильном эффекте;
ближе к финалу условия почти такие же, как в фиксированном тесте;
удобен как базовый вариант, когда команда хочет мониторинг, но не хочет принимать ранние решения на слабом сигнале.
Pocock:
досрочных завершений больше;
финальное решение требует более строгого порога;
подходит, если скорость принятия решения критична и команда осознанно принимает более жесткий финал.

Часто многие начинают с OBrien-Fleming как с более понятного метода, а затем уже подстраивают схему под конкретные ограничения бизнеса и метрики.
Что нужно установить заранее, чтобы все прошло корректно
Чтобы последовательное тестирование не превращалось в спор по ходу эксперимента, достаточно до старта определить несколько вещей.
Плановый горизонт эксперимента. Это может быть период или объем пользователей, который вы готовы собрать, если досрочного завершения не случится.
Контрольные точки подглядывания. Их лучше задавать долями от горизонта или заранее фиксированными днями.
Уровень значимости alpha и выбор типа проверки: односторонняя или двусторонняя (то есть какая альтернативная гипотеза используется). В статье мы рассматривали двусторонний вариант.
Набор порогов: Pocock или OBrien-Fleming.
Правило завершения. Если порог пересекли, эксперимент завершается и решение фиксируется.
Этих пяти пунктов обычно достаточно, чтобы подглядывание стало частью процесса мониторинга и при этом не увеличивало долю статистически значимых результатов при нулевом эффекте.
Итоги
Если в AB-тесте много раз пересчитывать обычное фиксированное значение p-value и завершать эксперимент при первом p < alpha, доля ложных срабатываний растет.
Групповое последовательное тестирование разрешает несколько заранее заданных точек подглядывания и удерживает общий уровень ошибки первого рода около alpha.
OBrien-Fleming делает ранние пороги строгими и редко завершает эксперимент на первых контрольных точках, зато к финалу близок к фиксированному тесту.
Pocock чаще дает досрочные завершения, но делает финальный по��ог более строгим.
В качестве практического стандарта для большинства продуктовых команд часто удобно начинать с OBrien-Fleming и 4-7 контрольных точек.
Во второй части перейдем от заранее заданных контрольных точек к более частому мониторингу результатов. На реальных примерах рассмотрим, как строить корректные процедуры, когда команда хочет отслеживать эксперимент почти в реальном времени, и какие ограничения и дополнительные условия появляются для метрик, распределений и правил остановки.
