Ловушки A/B-тестов на собеседовании

Почему спрашивают про ловушки

Запустить A/B-тест несложно. Сложно — не допустить ошибок, которые делают результаты бессмысленными. На собеседовании вопросы про ловушки проверяют практический опыт: кандидат, который сталкивался с реальными экспериментами, знает эти проблемы из первых рук.

Интервьюеры ценят, когда кандидат не просто перечисляет ловушки, а объясняет механизм каждой проблемы и способ её решения. Это отличает теоретика от практика.

Peeking problem

Суть: вы проверяете результаты теста до набора запланированной выборки и принимаете решение раньше срока. «P-value уже 0.03, давайте остановим!» — классическая ошибка.

Почему это опасно: при многократной проверке вероятность хотя бы раз увидеть «значимый» результат растёт экспоненциально. При alpha = 0.05 и ежедневной проверке за 14 дней реальная ошибка первого рода может достигать 25-30%.

Решение: фиксировать размер выборки заранее и не смотреть на результаты до его набора. Альтернатива — sequential testing (методы Wald, mSPRT), которые позволяют проверять результаты на каждом шаге с контролем alpha. Также существуют always-valid p-values.

Peeking — самая распространённая ловушка в индустрии. По данным исследований, до 57% компаний останавливают тесты раньше запланированного срока. На собеседовании умение объяснить эту проблему — сильный сигнал.

Множественные сравнения

Суть: вы тестируете несколько метрик или несколько вариантов одновременно. Чем больше сравнений, тем выше вероятность ложноположительного результата.

Масштаб проблемы: при 20 метриках и alpha = 0.05 вероятность хотя бы одного ложноположительного результата — 64%. Это не баг, а математика.

Решения:

  • Поправка Бонферрони — делите alpha на количество сравнений. Просто, но консервативно — теряете мощность
  • Метод Холма-Бонферрони — менее консервативная версия, ранжирует p-values
  • FDR (Benjamini-Hochberg) — контролирует долю ложных открытий среди всех значимых, а не вероятность хотя бы одной ошибки
  • Выделение primary metric — одна главная метрика без поправки, остальные — exploratory

Novelty и primacy effect

Novelty effect: пользователи активнее взаимодействуют с новым интерфейсом просто потому, что он новый. Через неделю эффект исчезает. Primacy effect — обратная ситуация: привыкшие к старому интерфейсу пользователи сначала показывают худшие метрики, но через две недели адаптируются.

Как обнаружить: смотрите на метрики по когортам внутри теста. Если эффект убывает — novelty, растёт — primacy. Решение — запускать тест минимум на 2-3 недели и анализировать первую и вторую половину отдельно.

Парадокс Симпсона

Суть: агрегированные данные показывают один тренд, а данные по подгруппам — противоположный. Вариант B лучше в целом, но хуже в каждом сегменте по отдельности.

Пример: тестовая группа показывает выше конверсию (+2%). Но при разбивке по платформам: на iOS тест хуже (-1%), на Android тоже хуже (-0.5%). Причина — в тестовую группу попало больше iOS-пользователей, у которых конверсия в целом выше.

Решение: всегда проверять balance check — распределение ключевых характеристик между группами. Использовать стратификацию при рандомизации. Анализировать результаты по ключевым сегментам.

Network effects и survivorship bias

Network effects: пользователи из разных групп влияют друг на друга. Если вы улучшаете ленту для группы A, их контент может попасть к пользователям из группы B. Возникает в маркетплейсах, мессенджерах, рефералках. Решение — кластерная рандомизация (по городам, компаниям, группам друзей).

Survivorship bias: вы анализируете только пользователей, которые «дожили» до конца теста. Если тестовый вариант отпугивает 20% пользователей, оставшиеся 80% будут более лояльными — метрики выглядят лучше, хотя общий эффект отрицательный. Решение — intent-to-treat анализ: считать метрику для всех, кто попал в группу.

На собеседовании идеально назвать 3-4 ловушки и подробно разобрать одну из них. Перечисление без объяснения механизма не впечатляет — покажите, что вы понимаете почему это проблема и как её решать.

FAQ

Какие ловушки спрашивают чаще всего?

Peeking и множественные сравнения — это топ-2. Их спрашивают на каждом втором собеседовании по A/B-тестированию. Novelty effect и Simpson's paradox — на senior-позициях. Network effects — в компаниях с двусторонними платформами (маркетплейсы, соцсети).

Как защититься от peeking на практике?

Лучший способ — автоматизация. Настройте систему так, чтобы результаты становились доступны только после набора запланированной выборки. Если это невозможно — используйте sequential testing (например, always-valid confidence intervals), который позволяет безопасно проверять результаты на каждом шаге.

Что отвечать, если не знаешь ловушку, которую назвал интервьюер?

Честно скажите, что не сталкивались с этой проблемой, и попросите объяснить. Затем попробуйте порассуждать: какой механизм у проблемы, какие последствия, как можно было бы её решить. Умение рассуждать о незнакомой проблеме ценится выше, чем заученный ответ.

Смотрите также