Статистический критерий честен только при выполнении его допущений. Большинство «выигравших» тестов, которые потом не подтвердились, сломались не на формуле, а на процессе: подсмотрели, перерезали, не дождались. Этот модуль про то, что спрашивают на собесе middle и senior аналитиков.
Подглядывание (peeking)
Классический тест рассчитан на одну проверку в конце при заранее заданном размере выборки. Если смотреть на p-value каждый день и останавливать тест при первом p < 0.05, вероятность ложного срабатывания растёт: p-value при нулевом эффекте блуждает и рано или поздно ныряет под порог. При ежедневных проверках в течение месяца доля ложных побед оказывается в разы выше 5%.
Что делать:
- Фиксировать размер выборки и смотреть результат один раз. Промежуточно можно смотреть только на guardrail-метрики и SRM, чтобы вовремя остановить вредный тест.
- Если нужна ранняя остановка, использовать последовательные методы: групповой последовательный дизайн с функцией расходования альфы (например, границы О'Брайена-Флеминга), mSPRT или always-valid p-values. Они заранее учитывают число и время проверок.
Эффект новизны и привыкания
Новая кнопка яркая, на неё кликают из любопытства, через две недели эффект пропадает. Обратная ситуация: изменение интерфейса сначала раздражает привыкших пользователей (эффект первичности), потом метрика восстанавливается.
Как заметить: смотреть эффект по дням теста и отдельно для новых пользователей (у них нет привычки). Если эффект монотонно затухает, решение по первой неделе завышено. Лечение: тест дольше, анализ последних недель, долгосрочные holdout-группы.
Сетевые эффекты и нарушение SUTVA
Критерий предполагает, что результат одного пользователя не зависит от того, в какой группе другие (SUTVA). Нарушения:
- маркетплейсы и такси: если группа B получает скидку и выкупает дефицитный товар или машины, группе A достаётся меньше, и разница завышена;
- соцсети и мессенджеры: новая функция в B влияет на друзей из A;
- общий бюджет рекламы или общий склад.
Решения: рандомизировать кластерами (города, регионы, компании, связные компоненты графа друзей), switchback-тесты (вся система переключается между A и B по интервалам времени), анализ на уровне кластера.
Парадокс Симпсона
Эффект в каждом сегменте один, а в сумме противоположный. Пример: в B конверсия выше и на мобильных, и на десктопе, но в сумме ниже, потому что в B по ошибке попало больше мобильного трафика с низкой конверсией. В правильно рандомизированном тесте доли сегментов совпадают, и парадокса не бывает. Его появление обычно признак сломанной рандомизации, SRM в сегментах или изменения доли трафика по ходу теста (например, поменяли сплит с 10/90 на 50/50 посреди теста и сложили все дни).
Сегменты задним числом
Тест не прокрасился, и аналитик режет по 20 сегментам, находит «значимый рост у пользователей Android из Казани». При 20 сравнениях хотя бы одно значимое на 5% найдётся с вероятностью около 64% даже без эффекта. Сегменты, найденные после теста, это гипотезы для нового теста, а не результат. Если сегменты важны, их задают до запуска и применяют поправку на множественные проверки.
Прочие ловушки
- Смена дизайна по ходу. Поменяли сплит, вариант или метрику: старые и новые данные нельзя просто сложить.
- Пересечение тестов. Одновременные тесты на одной странице могут взаимодействовать. Обычно взаимодействия редки, но конфликтующие изменения одного элемента разводят по слоям.
- Выбросы. Один оптовый покупатель делает «значимой» выручку. Заранее определённый винзоринг (обрезка по 99-му перцентилю) или устойчивые метрики.
- Эффект победителя. Оценка эффекта у прошедших порог тестов систематически завышена: прошли те, кому повезло со случайным шумом. Ожидать в проде такой же прирост не стоит.
- Статистически значимо не значит важно. На миллионах пользователей значим и эффект 0.1%, который не окупает разработку.
Что спросят на собесе
- Почему нельзя останавливать тест, как только p-value стал меньше 0.05?
- Как заметить и учесть эффект новизны?
- Как тестировать изменение в маркетплейсе или такси, где группы влияют друг на друга?
- Что такое парадокс Симпсона и о чём он говорит в A/B-тесте?
- Тест не прокрасился, но в одном сегменте рост: что делать?