006. Статистика в АБ мифы и реальность — Данила Леньков

By Яндекс Образование

Share:

Меня зовут Данила, я из компании Авито. В прошлом году я рассказывал про A/B тестирование в Авито, и получил много позитивных отзывов. Кейс Авито хорош тем, что наше A/B тестирование построено на парадигме массового тестирования и измерения всего. Если ваша компания хочет быстро отвечать на вопросы, вы можете использовать наш кейс и не повторять наших ошибок.

Сегодня я буду говорить об общих статистических наблюдениях, которые мы сделали в компании относительно применения статистики в A/B тестировании, интерпретации результатов и вещей, которые оказались не применимы или некорректны в реальной жизни.

План доклада:

  1. Введение в контекст.
  2. Что такое метрики и статистики.
  3. Техническая сторона анализа A/B тестов (со стороны аналитика и инфраструктуры).
  4. Повышение чувствительности метрик.
  5. Интерпретация результатов со стороны пользователей системы.

Контекст и Общие Принципы A/B Тестирования

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

Большой трафик в Авито позволяет делать асимптотические предположения, которые не так хорошо работают на маленьких выборках. Однако, большой трафик и множество метрик порождают проблему сложности вычислений. Вычисления должны быть хорошо распараллелены и масштабируемы. Это порождает проблему корректного анализа некоторых статистик и сохранения результатов в виде, позволяющем быстро их извлекать без потери информации. Мы, аналитики, разработчики и продакт-менеджеры, должны предоставлять результаты тестирования в удобном для восприятия виде для принятия решений.

В этом докладе я буду приводить примеры наблюдений, которые мы считаем ошибочными или некорректно транслируемыми.

Метрики: Конструктор и Формализация

Конструктор метрик: Рассмотрим простую воронку, используемую в любом маркетплейсе или e-commerce:

  1. Пользователь приходит на сайт.
  2. Использует поиск.
  3. Находит карточку товара.
  4. Добавляет в корзину или совершает полезное действие (контакт с продавцом).
  5. Совершает покупку (чек-аут) или встречается с продавцом.

Для измерения производительности воронки можно собирать:

  • Количество действий на каждом этапе: количество поисков, заходов на карточку и т.д.
  • Агрегация по сессиям: сессия – один заход пользователя на сайт.
  • Агрегация по пользователям: количество пользователей, совершивших сделку (даже если пользователь совершил несколько сделок, он считается один раз).

Чем дальше по воронке, тем сильнее агрегация данных, и тем более важными считаются метрики. Однако, чувствительность (способность метрики изменяться к дисперсии) обычно работает наоборот: количество действий более чувствительно, чем количество пользователей, совершивших эти действия.

Pure метрики (метрики конверсии): Измерение конверсии из одного этапа воронки в следующий. Хорошо составленные метрики конверсии обычно более чувствительны в A/B тестах.

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

  1. Экспериментальная единица: единица, которую мы считаем независимой от других (например, пользователи). Метрики собираются по этим единицам.
  2. Наблюдение: числовые значения, собираемые для экспериментальной единицы (например, количество действий пользователя). Мы работаем с выборкой $X_n$, где каждый $X_i$ – независимо и одинаково распределенная случайная величина.
  3. Статистика: агрегированное значение наблюдений (например, среднее, сумма, отношение).

Классически используется среднее, так как оно лучше описывает характер метрики. Для отношений (ratio) метрики сводятся к сумме числителя, деленной на сумму знаменателя.

Другие статистики:

  • Квантили: медиана, 95-й процентиль. Помогают понять, сдвинулась ли какая-то часть распределения пользователей.
    • Аналитическая единица: может отличаться от экспериментальной. Например, пользователь может совершить несколько сессий, каждая с разной длительностью. В этом случае аналитической единицей будет сессия.
    • Формальное определение квантиля: значение, которое разделяет выборку на две части (например, 90% пользователей ниже этого значения).
    • Проблема: вычисление квантилей очень затратно при большом количестве метрик и данных.
    • Решение в Авито: заранее вычисляем квантиль на генеральной совокупности, фиксируем значение, а затем обратно считаем статистику, как если бы обратной функцией был порог (threshold). Это позволяет свести вычисления к отношениям.

Статистические Критерии и Их Интерпретация

Нулевая гипотеза (H0): Нет изменений между группами. Статистический тест моделирует распределение тестовой статистики при выполнении H0.

P-value: Мера отклонения тестовой статистики от H0.

  • Миф: P-value – это вероятность того, что нулевая гипотеза верна.
  • Реальность: P-value – это вероятность получить наблюдаемое отклонение (или еще большее) при условии, что нулевая гипотеза верна. Это мера отклонения тестовой статистики от H0.

Параметрические vs. Непараметрические тесты:

  • Параметрические тесты: обычно оценивают дисперсию метрики и делают предположения о распределении данных (например, T-тест).
  • Непараметрические тесты: не делают таких предположений (например, бутстрэп).

Классический T-тест:

  • Тестовая статистика: абсолютная разница между группами, деленная на стандартную ошибку разности.
  • Предположения:
    • Выборка должна быть нормально распределена (это миф).
    • Корректное утверждение: оценка метрики (среднее) должна быть нормально распределена. Это следует из Центральной Предельной Теоремы, если выборка достаточно большая.
    • Наблюдения в выборке должны быть независимы. Зависимость приводит к занижению дисперсии и увеличению ложных срабатываний.
  • Нулевая гипотеза: Средние значения метрики в генеральных совокупностях равны.
  • Применение для среднего: T-статистика рассчитывается как разница средних, деленная на стандартную ошибку среднего.
  • Применение для отношений (ratio):
    • Дельта-метод: позволяет аппроксимировать распределение отношений нормальным при достаточно больших выборках. Оценка дисперсии рассчитывается через производные.
    • Ограничения: точность аппроксимации зависит от размера выборки и характера распределения.

Bucketting (Бакеттирование) и Bootstrap:

  • Цель: Непараметрические методы, позволяющие работать с ненормальными выборками и ускорять вычисления.
  • Bucketting: Разделение трафика на фиксированное количество случайных "бакетов" (групп).
    • Принцип: Каждый пользователь попадает ровно в один бакет.
    • Преимущество: Уменьшение затрат на хранение и чтение данных, возможность непараметрически оценить p-value и доверительные интервалы.
  • Bootstrap: Метод ресэмплинга с возвращением для оценки статистик и их распределений.
    • Классический Bootstrap: Долго работает из-за необходимости многократного ресэмплинга.
    • Платоновский Bootstrap: Использует распределение Пуассона с параметром $\lambda=1$ вместо мультиномиального распределения для генерации весов пользователей. Это позволяет распараллелить процесс генерации весов и ускорить вычисления.
  • Использование бакетов/бутстрэпа: Статистики метрик считаются по бакетам. Это позволяет оценить дисперсию точно, а не приближенно, и провести тест.

Повышение Чувствительности Метрик

  1. Использование лучших метрик:
    • Переход от метрик, основанных на пользователях, к метрикам, основанным на сессиях (более чувствительны).
    • Использование прокси-метрик или производных метрик.
  2. Очистка данных:
    • Вырезание ботов: Автоматические пользователи, генерирующие много действий и искажающие статистику.
    • Фортификация (Fortification): Метод, описанный в статье Microsoft, для работы с выбросами.
    • Q-cupid: Эвристика, позволяющая построить линейную регрессию для оценки влияния метрик.

Принятие Решений на Основе A/B Тестов

  1. Выбор метрик:

    • Эксперимент без четкого понимания, что измеряется, бессмыслен.
    • Необходимо рассчитать необходимый размер выборки (трафик) с помощью онлайн-калькуляторов, учитывая ожидаемый эффект (MDE - Minimum Detectable Effect), альфу (ошибка I рода) и бету (ошибка II рода).
    • Опыт предыдущих экспериментов – лучший ориентир для определения параметров.
  2. Во время эксперимента:

    • Не подглядывать (No Peeking): Нельзя принимать решения, основываясь на промежуточных результатах.
    • Мониторинг MDE: Отслеживание MDE в динамике может дать представление о возможном эффекте, даже если он не достиг статистической значимости. MDE интерпретируется как погрешность измерений.
    • Преждевременное выключение: Эксперимент следует выключать, если:
      • Сильно упали критически важные метрики.
      • Накоплено достаточно информации для принятия решения.
      • Расчетное время эксперимента показывает, что метрики не достигнут значимости.
  3. Интерпретация результатов:

    • Нет прокраса (статистической значимости): Эффекта нет, или он меньше MDE.
    • Есть прокрас:
      • Сильный прокрас (например, 5 сигма): С высокой вероятностью реальный эффект.
      • Динамика p-value: Отслеживание, как p-value меняется со временем. Если оно устойчиво ниже порога, это хороший знак.
      • Семейство метрик: Реальный эффект обычно отражается не на одной метрике, а на семействе связанных метрик.
      • Доверительные интервалы:
        • Миф: Настоящий эффект лежит в пределах доверительного интервала.
        • Реальность: Доверительный интервал с 95% вероятностью содержит истинный эффект.
        • Проблема: Интерпретация доверительных интервалов может быть сложной (например, [0%, 10%]).
        • Альтернатива: Если прокрас сильный, uplift (относительное изменение) может неплохо описывать величину эффекта.

Ответы на вопросы:

  • Эффект новизны и динамика p-value: Не стоит доверять результатам в первый день эксперимента из-за малого объема данных. Небольшой прокрас лучше не интерпретировать однозначно, а подождать несколько дней для насыщения данными.
  • Определение важных метрик: В Авито была создана команда, которая разработала "партнерские" метрики для всего бизнеса. Важные метрики раскладываются на составляющие (драйверы), которые могут вести себя по-разному. Чем выше уровень метрики в дереве иерархии, тем она важнее.

Key Concepts

  • A/B Testing
  • Massive Testing and Measurement
  • Metrics (Funnel, Pure, Proxy)
  • Experimental Unit
  • Observation
  • Statistic (Mean, Ratio, Quantile)
  • Statistical Significance
  • Null Hypothesis (H0)
  • P-value
  • Parametric vs. Non-parametric Tests
  • T-test
  • Delta Method
  • Bucketting
  • Bootstrap (Classic, Platonovsky)
  • Minimum Detectable Effect (MDE)
  • Confidence Intervals
  • Uplift

Chat with this Video

AI-Powered

Hi! I can answer questions about this video "006. Статистика в АБ мифы и реальность — Данила Леньков". What would you like to know?

Chat is based on the transcript of this video and may not be 100% accurate.

Related Videos

Ready to summarize another video?

Summarize YouTube Video