AA-тест на собеседовании аналитика

Что такое AA-тест

AA-тест — это эксперимент, в котором обе группы получают одинаковый опыт. Никаких изменений, никакого нового функционала — пользователей делят на две группы и наблюдают за метриками. Цель — убедиться, что система сплитования работает корректно и между группами нет систематических различий.

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

Зачем запускать AA-тест

Проверка сплит-системы. Рандомизация может быть нарушена: баг в хешировании, неравномерное распределение по группам, утечка между вариантами. AA-тест это выявляет. Если в AA-тесте метрики значимо различаются — в системе ошибка.

Валидация baseline метрик. AA-тест показывает естественный разброс метрики между группами. Это помогает понять, какие колебания нормальны, а какие сигнализируют о реальном эффекте. Фактически вы получаете эмпирическую оценку дисперсии.

Проверка пайплайна аналитики. Баги бывают не только в сплитовании, но и в коде, который считает метрики. AA-тест — это сквозной тест всей системы: от присвоения группы до финального дашборда.

Калибровка p-value. В теории при alpha=0.05 AA-тест должен давать «значимый» результат в 5% случаев. Если чаще — что-то не так с тестом или метрикой. Это особенно важно при запуске новой платформы экспериментов.

AA-тест — это не потеря времени, а страховка. Компании, которые запускают A/B-тесты без предварительного AA, рискуют принимать решения на основе артефактов системы, а не реальных эффектов.

Когда AA-тест обязателен

  • Первый тест на новой платформе — при миграции на новый инструмент экспериментирования AA-тест обязателен
  • Новый метод рандомизации — смена хеш-функции, изменение логики присвоения групп
  • Новая метрика — если вы впервые используете метрику в экспериментах, AA-тест покажет её нормальное поведение
  • Подозрение на баг — если результаты последних тестов выглядят странно, AA-тест поможет локализовать проблему
  • Сезонные изменения — после крупных событий (распродажа, праздники) полезно убедиться, что сплит не «сломался»

Как интерпретировать результаты

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

Есть значимые различия — проблема. Возможные причины:

  • Баг в рандомизации — проверьте распределение по группам: размеры, демография, география
  • Неравномерный трафик — одна группа получает больше пользователей из определённого источника
  • Баг в логировании — события записываются некорректно для одной из групп
  • Множественные проверки — если вы смотрите 20 метрик, одна из них будет «значимой» просто по случаю

На собеседовании интервьюер может спросить: «AA-тест показал p-value 0.03. Что делать?» Сильный ответ: проверить распределение пользователей по группам, посмотреть на несколько метрик, убедиться в отсутствии бага, при необходимости перезапустить с другим seed.

Связь с A/B-тестом

AA-тест — это подготовительный этап перед A/B. Он не заменяет A/B-тест, а валидирует инфраструктуру. На практике многие компании запускают AA параллельно с A/B: часть трафика идёт в AA-группы как контрольная проверка. Альтернатива — множественное сплитование: делят контрольную группу на две части и сравнивают между собой.

На собеседовании вопрос про AA-тест часто идёт в связке с вопросами про размер выборки и ошибки первого рода. Готовьтесь объяснять все три темы как единое целое.

Типичные вопросы на собеседовании

  • «Зачем нужен AA-тест, если рандомизация случайная?» — случайность не гарантирует отсутствие багов в коде. AA-тест проверяет реализацию, а не теорию вероятностей
  • «Сколько длится AA-тест?» — достаточно, чтобы набрать ту же выборку, что и для планируемого A/B-теста. Обычно 1-2 недели
  • «Можно ли пропустить AA-тест?» — если платформа проверена и стабильна — можно. Но при любых изменениях в инфраструктуре — нельзя

FAQ

Чем AA-тест отличается от A/B-теста?

В AA-тесте обе группы получают одинаковый опыт — разницы между вариантами нет. Цель — убедиться, что система корректно делит пользователей и метрики не различаются без вмешательства. В A/B-тесте одна группа получает изменение, и цель — измерить его эффект.

Что делать, если AA-тест постоянно показывает значимость?

Это серьёзная проблема. Начните с проверки рандомизации: равны ли группы по размеру, нет ли смещения по демографии или источнику трафика. Затем проверьте пайплайн аналитики — возможно, баг в расчёте метрики. Если всё чисто — посмотрите на саму метрику: высокая дисперсия и выбросы могут давать ложную значимость.

Можно ли использовать исторические данные вместо AA-теста?

Частично. Можно разделить исторических пользователей на псевдогруппы и проверить метрики — это называется offline AA-тест. Он проверяет пайплайн аналитики, но не проверяет систему сплитования в реальном времени. Для полной валидации нужен живой AA-тест.

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