Statistical power и MDE: как планировать тест конверсии до запуска

Подробный разбор statistical power, MDE и размера выборки для конверсии: baseline, alpha, beta, абсолютный эффект, кластеры, лаг и симуляция дизайна.

Оглавление15 разделов

Размер выборки нельзя выбирать по привычному числу конверсий. Он возникает из компромисса между базовой частотой, минимально полезным эффектом, риском ложной победы, риском пропустить реальное улучшение и структурой данных. Statistical power не является качеством конкретного результата после теста; это свойство дизайна при заданном сценарии. MDE тоже не обещает, что меньшего эффекта нет — только показывает, что эксперимент не был спроектирован надёжно его обнаруживать.

Прямой ответ

До запуска задайте baseline, абсолютный MDE, alpha, power, единицу рандомизации, allocation и минимальную зрелость. Рассчитайте объём, затем проверьте дизайн симуляцией с кластеризацией, потерями и реальным календарём.

1. Сначала определите estimand

Нужно понять, какой эффект оценивается: разница conversion rate по назначенным пользователям, по фактически увидевшим вариант или по зрелым кликам. Для рандомизированного продукта основным обычно остаётся intention-to-treat.

Смена estimand после данных меняет вопрос и может сломать рандомизацию.

Пример различия: effect among assigned users сохраняет пользу рандомизации, effect among clickers условится на действие, которое treatment мог изменить. Второй показатель иногда полезен как диагностика, но не заменяет первый. Аналогично исключение пользователей без mature outcome после назначения может создать selection bias. Все фильтры после assignment рассматривают как потенциально причинно зависимые.

2. Найдите baseline

Используйте зрелые сопоставимые периоды и несколько оценок, а не лучший день. Baseline должен соответствовать единице и фильтрам будущего теста.

При неопределённости рассчитайте выборку для диапазона; планируйте по наиболее требовательному правдоподобному сценарию.

Baseline полезно оценивать иерархически. Общий уровень стабилизирует редкие сегменты, а крупные источники имеют собственные оценки. При планировании теста используйте трафик, который реально будет eligible, и исключите периоды outage или другой схемы события. Но не вычищайте обычную сезонную вариативность: будущий эксперимент тоже встретит её.

3. Задайте MDE в абсолютных единицах

Рост с 2% до 2,2% — это +0,2 процентного пункта и +10% относительно. Путаница радикально меняет выборку.

MDE связывают с ценой внедрения и зрелой экономикой, а не выбирают для удобного размера.

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

MDE задают в абсолютных процентных пунктах и при необходимости дублируют относительным изменением. Для базовой конверсии 2% рост до 2,2% равен 0,2 процентного пункта, но 10% относительного роста. Смешение этих формулировок способно в несколько раз изменить расчёт требуемой выборки.

Минимальный эффект должен иметь экономический смысл. Если улучшение на 0,01 пункта не окупает производство и поддержку варианта, нет причины проектировать огромный тест, способный его обнаружить. Статистическая чувствительность не заменяет порог деловой полезности.

4. Поймите alpha

Alpha ограничивает вероятность ложного отклонения в конкретной процедуре при нулевом эффекте. Она не является вероятностью, что найденный результат ложен.

Многократные метрики, варианты и просмотры требуют учёта в дизайне.

5. Поймите power и beta

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

Power зависит от конкретного эффекта; нельзя назвать тест мощным вообще.

Расчёт фиксирует alpha, желаемую power, базовую вероятность, MDE, число групп и предполагаемое соотношение распределения. Сохраните эти значения вместе с версией калькулятора или кода. Число без входных параметров невозможно проверить и легко неверно применить к другому тесту.

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

6. Учтите allocation

Равное распределение часто эффективно для сравнения, но цена или риск вариантов могут различаться. Неравный allocation увеличивает общий объём для той же точности.

Соотношение фиксируют заранее и проверяют SRM.

7. Учитывайте единицу и повторные наблюдения

Показы одного пользователя коррелируют. Если рандомизация на user, выборка считается по пользователям, а не показам.

Игнорирование зависимости создаёт мнимую точность.

Для ratio metrics вроде revenue per click числитель и знаменатель коррелируют. Нельзя независимо рассчитать power для revenue и clicks, а затем разделить. Используйте delta method, bootstrap по единице рандомизации или симуляцию полного metric pipeline. Выбор проверяется на A/A coverage и тяжёлом хвосте.

8. Кластерный дизайн

При назначении по GEO, дню или publisher эффективный объём определяется числом кластеров и внутрикластерной корреляцией. Миллионы событий внутри двух GEO не дают надёжного сравнения двух независимых единиц.

Оцените design effect исторически и проведите симуляцию.

Design effect приближённо зависит от среднего размера кластера и внутрикластерной корреляции, но неравные размеры усложняют картину. Поэтому исторический cluster bootstrap или симуляция по целым GEO/дням часто надёжнее простой формулы. Рандомизация и анализ должны сохранять кластеры целиком.

9. Лаг и цензурирование

Выборка должна включать зрелые единицы. Если тест закрывается по календарю, часть поздних событий ещё не наблюдается.

План содержит enrollment end и observation end, а не одну дату.

10. Потери и missingness

Недоставленный assignment, blocked event и unknown status уменьшают эффективную выборку. Но нельзя просто раздуть объём, если потери различаются по вариантам.

Сначала исправьте механизм и задайте guardrail.

11. Множество вариантов

Каждый дополнительный вариант расходует трафик и увеличивает пространство решений. Планируйте сравнения и коррекцию заранее.

Отбор победителя из десятков без подтверждения переоценивает максимум шума.

Если бизнес хочет выбрать лучший из пяти вариантов, power каждого pairwise comparison не описывает вероятность правильного выбора лидера. Симулируйте полный decision rule: генерацию всех arms, коррекцию, tie и минимальный практический эффект. Иногда дешевле провести screening, затем подтвердить два варианта на новой выборке.

12. Последовательный просмотр

Обычный fixed-horizon расчёт не рассчитан на остановку при первом удобном p-value. Если данные будут смотреть официально несколько раз, используйте последовательный дизайн.

Операционные health checks остаются отдельными от проверки эффективности.

Ежедневный просмотр обычного p-value с остановкой при пересечении 0,05 повышает вероятность ложного открытия. Выберите фиксированный горизонт либо заранее спроектированный sequential method с корректными границами. Правило остановки является частью эксперимента, а не решением после просмотра красивого графика.

13. Симуляция

Сгенерируйте assignment и outcomes с baseline, MDE, нулём, сезонностью, кластерами и лагом. Запустите реальный аналитический код и измерьте частоту решений.

Симуляция проверяет не только формулу, но и pipeline, stop-rule и календарь.

В отчёте симуляции показывают false positive при нуле, power при MDE, median duration, вероятность нарушения loss limit и coverage интервала. Если код выдаёт обещанную alpha только при идеальных независимых событиях, добавьте реальные кластеры и missingness. Дизайн считается готовым после прохождения сценариев, а не после совпадения одной формулы.

14. Интерпретация после теста

Достигнутый объём не превращает p-value в бизнес-ответ. Покажите estimate, интервал, практический порог и отклонения от дизайна.

Post-hoc power на основе наблюдаемого эффекта редко добавляет смысл; лучше обсуждать совместимые эффекты через интервал.

Если интервал включает и полезный рост, и неприемлемое падение, вывод не «эффекта нет», а «данных недостаточно для решения». Команда может продолжить только по заранее разрешённому правилу или завершить как inconclusive. Повторный тест проектируется заново; простое объединение удобных запусков без модели нарушает исходные ошибки.

Доверительный интервал показывает диапазон эффектов, совместимых с выбранной процедурой, а не вероятность нахождения истинного значения внутри уже рассчитанного интервала. Для решения сопоставьте весь диапазон с зоной вреда, нейтральности и практической пользы. Это информативнее бинарной метки significant.

15. Вывод

Power и MDE заставляют до запуска назвать, какой эффект важен и сколько неопределённости допустимо. Корректный план учитывает baseline, единицу, кластеры, зрелость и множественность, а затем проходит симуляцию.

Если выборка недоступна, честный вывод — изменить вопрос или не запускать подтверждающий тест.

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

Формула не исправляет плохие данные

Расчёт sample size предполагает валидное назначение и измерение. SRM, потери событий или изменение определения конверсии делают рассчитанную мощность неприменимой.

Станьте партнёром и начните работать

Перейдите в партнёрскую программу, изучите актуальные условия и выберите подходящий формат сотрудничества.

СТАТЬ ПАРТНЁРОМ

Связанные материалы

Все статьи
Аналитика

Бюджет первого теста: как рассчитать сумму, которой хватит для решения

Как рассчитать бюджет теста рекламы через частоту события, MDE, power, стоимость трафика, зрелость, технический этап, лимит потерь и оборотный капитал.

Аналитика

Витрина данных для арбитражной команды: схема от клика до выплаты

Как построить аналитическую витрину арбитража: grain, факты, измерения, click ID, статусы, валюты, ревизии, late events, тесты и воспроизводимые отчёты.

Аналитика

CUPED и ковариаты в рекламном эксперименте: как снизить дисперсию без магии

Как использовать CUPED и предэкспериментальные ковариаты: выбор признака, формула корректировки, missing values, сегменты, leakage, симуляция и отчёт результата.