Почему А/A/B тесты не имеют смысла?
Многие ошибочно считают, что для проверки корректности эксперимента и системы сплитования, нужно проводить А/A/B тесты. И я часто вижу применение такого подхода в компаниях.
Но такой подход совершенно не решает задачу, которую команды ставят перед собой. Более того – он только добавляет издержек. И вот почему:
1️⃣ Возьмем один А/А тест. Даже если система сплитования работает корректно, у нас всегда есть вероятность alpha встретить ошибку первого рода. Таким образом, один эксперимент не дает нам никакой картины о корректности системы. Аналогично и при сравнении контролей в рамках одного А/A/B теста.
2️⃣ Максимальная мощность эксперимента достигается при разделении теста 50/50. А/A/B – снизит статистическую мощность эксперимента. Это приведет к увеличению длительности. И сделает это без добавочной ценности.
3️⃣ Ситуация отягощается еще сильнее тем, что из-за А/A/B теста возникает проблема множественного сравнения. И с ней тоже нужно что-то делать.
Как объяснить менеджменту, что так делать не нужно?
С помощью симуляции: Возьмите любой исторический А/B тест. Возьмите у него группу А и разделите её 50/50 тысячу раз, каждый раз с новой солью. Покажите, что несмотря на то, что это все данные контроля, тест прокрасится ~50 раз.
Как тогда эффективно проверить корректность системы сплитования?
Проведите 1000 А/А тестов на нужной метрике с применением нужного стат. критерия ДО проведения А/B. Посмотрите на распределение 1000 полученных p_value – оно должно быть равномерным. Если условие выполняется – проводите А/B. Если нет – ищите причину и чините.
Именно такой подход позволит вам выявить множество потенциальных багов в системе сплитования.