Как не надо анализировать A/B-тесты. Проблема подглядывания
17 июля, 2018
Редакция GoPractice
При дизайне, запуске и анализе A/B тестов можно допустить много ошибок, но одна из них особенно коварна. Речь о «peeking problem» или «проблеме подглядывания», когда решение об изменениях в продукте принимается на основе промежуточных результатов теста.
Эту ошибку допускают и те, у кого много опыта в A/B тестировании и кто понимает, как оценить статистическую значимость наблюдаемых изменений.
В этом материале мы разберем, зачем измерять статистическую значимость и как проблема подглядывания мешает правильному анализу результатов эксперимента.
Если вы хотите глубже разобраться в том, как создаются, развиваются и масштабируются продукты, пройдите обучение в симуляторах GoPractice.
→ «Симулятор управления ростом продукта» поможет найти пути управляемого роста и масштабирования продукта. Вы построите модель роста и составите стратегию развития продукта (путь от 1 к N).
Еще больше ценных материалов и инсайтов — в телеграм-канале GoPractice.
Статистическая значимость простыми словами
Представим, что вы привлекли в игру 10 новых пользователей и случайно разделили их между старой и новой версией. Из 5 пользователей, которые попали в старую версию игры, на следующий день вернулись 2 (40%). Из 5 пользователей, которые попали в новую версию, на следующий день вернулись 3 (60%).
Можно ли на основе собранных данных сказать, что Retention 1 дня новой версии игры лучше, чем старой?
К сожалению, нельзя. Выборка очень маленькая, поэтому велика вероятность, что наблюдаемая разница — случайность, а не результат изменений.
Математическая статистика предоставляет инструменты, помогающие понять, можно ли различия в метрике между группами связать с изменениями продукта, а не со случайностью. Другими словами, является изменение статистически значимым или нет.
Способ проверки статистической значимости в рамках частотного подхода к теории вероятности, которому обычно учат в университетах, работает следующим образом:
Собираются данные для версии A и B.
Делается предположение, что тестовые группы между собой не отличаются.
В рамках предположения идентичности групп считается, какова вероятность получить наблюдаемую в эксперименте или большую разницу между группами. Такое значение называют p-value.
Если p-value меньше определенного порогового значения (обычно 5%), то изначальное предположение об идентичности тестовой и контрольной группы отвергается. В этом случае можно с высокой степенью уверенности утверждать, что наблюдаемая разница между группами значима (связана с их различиями, а не случайностью).
Если p-value больше порогового значения, то тестируемые версии на основе собранных данных неразличимы. При этом в реальности между ними как может быть различие, которое мы просто не выявили, так его может и не быть. Мы не знаем.
Это очень поверхностное объяснение основной идеи того, как и зачем считать статистическую значимость. В реальности все сложнее: необходимо изучить структуру данных, очистить их, выбрать правильный критерий, интерпретировать результаты. Все эти шаги таят в себе много подводных камней.
Простой пример расчета статистической значимости
Давайте вернемся к игре из прошлого примера.
Команда учла недостатки дизайна первого A/B теста и на этот раз привлекла 2000 новых пользователей (по 1000 в каждую из версий). На 1 день в первой версии вернулись 330, а во второй 420.