Основы A/B-тестирования: вопросы для собеседования (часть 7)
Основы A/B-тестирования — обязательный блок для любого аналитика в продуктовой компании. Что такое нулевая гипотеза, как определить размер выборки, когда можно останавливать тест — базовые вопросы, которые задают в первую очередь. Без понимания основ невозможно корректно интерпретировать результаты экспериментов.
Вопросы 31–35 из 40
31Компания провела A/B-тест бесплатной доставки на российском рынке: конверсия выросла на 15%. Продакт хочет раскатить это на все страны без дополнительных тестов. Корректен ли такой подход?
AНет, потому что размер выборки должен быть не менее миллиона пользователей для международных выводов
BДа, рандомизация гарантирует, что результаты применимы к любой аудитории в любой стране
CДа, если конверсия статистически значима, результат автоматически распространяется на все рынки
DНет, потому что поведение пользователей зависит от культуры, уровня цен и конкурентной среды на рынке
Ответ: Внешняя валидность — применимость результатов за пределами конкретного эксперимента.
Результат A/B-теста внутренне валиден (эффект реален для данной аудитории), но его нельзя автоматически переносить на другие условия. Бесплатная доставка в России, где средний чек и стоимость логистики одни, может не работать в стране с другой структурой расходов. Культурные различия, конкуренция, привычки — всё влияет. Для каждого нового рынка нужен отдельный тест или как минимум проверка на подвыборке.
32Если вы заранее формулируете `H1` как рост конверсии в `treatment` по сравнению с `control`, какая `H0` соответствует односторонней проверке?
A`H0`: конверсии различаются в любую сторону
B`H0`: конверсия в `treatment` не выше конверсии в `control`
C`H0`: конверсия в `treatment` строго выше конверсии в `control`
D`H0`: `randomization` распределяет пользователей 50/50
Ответ: Для одностороннего теста `H0` обычно утверждает, что улучшения нет (эффект нулевой или отрицательный).
Если `H1` говорит про рост метрики, то нулевая гипотеза должна покрывать все случаи без улучшения: отсутствие разницы и ухудшение. Поэтому формулируют `H0` как «метрика в `treatment` не выше, чем в `control`». Это фиксирует направление проверки и помогает избежать неправильных трактовок результата.
33Тест запущен в понедельник и к пятнице набрал нужный размер выборки. Конверсия теста на 8% выше контроля, p-value = 0.01. Аналитик предлагает продлить тест до следующего понедельника. Зачем?
AНужный размер выборки набран, поэтому тест можно остановить и зафиксировать результат
BПяти дней достаточно для любого теста, потому что конверсия стабилизируется после первых 48 часов
CТест нужно продлить минимум до полного бизнес-цикла, потому что поведение в будни и выходные различается
DНужно перезапустить тест, потому что данные за пять рабочих дней содержат систематическую ошибку
Ответ: Тест должен охватывать минимум один полный бизнес-цикл, потому что поведение пользователей различается по дням недели.
Покупательское поведение в будни и выходные может сильно отличаться: разный трафик, разная конверсия, разная аудитория. Если тест длился только рабочие дни, результат не учитывает выходных. Эффект, значимый в будни, может исчезнуть в выходные — или наоборот. Минимальная длительность теста — один полный недельный цикл, а для продуктов с месячной периодичностью — один месяц.
34В эксперименте часть пользователей увидела и `control`, и `treatment` (например, на разных устройствах). Какое последствие наиболее вероятно?
AЭффект будет сложнее интерпретировать, а оценка может «размыться» из-за смешивания опыта
BНичего страшного, так эксперимент станет точнее, потому что один пользователь сравнивает оба варианта
CЭто гарантирует, что `randomization` сработала идеально
DЭто автоматически означает, что `H0` верна
Ответ: Если пользователи получают оба варианта, нарушается чистота сравнения `control` и `treatment` и падает интерпретируемость эффекта.
Смешивание вариантов у одного пользователя создаёт контаминацию: опыт перестаёт быть строго разделён на две альтернативы. Это может уменьшить наблюдаемый `effect size` или даже изменить направление эффекта. Поэтому часто закрепляют вариант за пользователем и следят за тем, чтобы показы были консистентны между устройствами.
35Что `randomization` НЕ гарантирует в конкретном запуске `A/B test`?
AНазначение варианта, не зависящее от поведения пользователя
BИдеально одинаковые доли по каждому признаку (например, страна, устройство) в каждой группе
CВозможность оценивать причинный эффект через сравнение групп
DОтсутствие систематического смещения в назначении `control` и `treatment`
Ответ: `randomization` не обещает идеального баланса по всем признакам в каждом конкретном эксперименте.
Случайное распределение делает группы сопоставимыми в среднем, но в отдельном запуске возможны небольшие перекосы по признакам из-за случайности. Это нормально и часто уменьшается при росте выборки. Важно проводить sanity checks, но не пытаться «ручным образом» исправлять рандомизацию постфактум.
Хотите тренировать интерактивно?
В приложении — таймер, прогресс, стрики и 1700+ вопросов по всем темам.
Тренировать в Telegram