A/B тестирование

Материал из MachineLearning.

Перейти к: навигация, поиск
Статья написана с использованием LLM GPT-5.5 Thinking и проверена участником Vladimir Garanin


A/B-тестирование (англ. A/B testing) — метод статистического сравнения двух или более вариантов продукта, интерфейса или алгоритма, основанный на случайном разделении пользователей на независимые группы. Целью A/B-тестирования является определение того, приводит ли изменение системы к статистически значимому улучшению выбранной метрики.

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

Содержание

Основная идея

Предположим, что необходимо проверить, улучшает ли новая версия страницы регистрацию пользователей.

Создаются два варианта системы:

  • вариант A — текущая версия продукта (контрольная группа);
  • вариант B — новая версия (экспериментальная группа).

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

Если различие оказывается статистически значимым, принимается решение о внедрении новой версии.

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

Формальная постановка

Пусть случайная величина X описывает значение некоторой метрики пользователя.

Для контрольной группы

X_A\sim P_A,

для экспериментальной группы

X_B\sim P_B.

Необходимо определить, различаются ли распределения

P_A

и

P_B.

Во многих задачах достаточно сравнить их математические ожидания

\mu_A=E[X_A],
\mu_B=E[X_B].

Если

\mu_A=\mu_B,

то изменение не оказывает влияния на исследуемую метрику.

Статистические гипотезы

Любой A/B-тест начинается с формулировки статистических гипотез.

Нулевая гипотеза

H_0:\mu_A=\mu_B.

Она утверждает, что различий между вариантами не существует.

Альтернативная гипотеза

H_1:\mu_A\neq\mu_B.

Если заранее предполагается улучшение только в одном направлении, используют одностороннюю гипотезу

H_1:\mu_B>\mu_A.

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

Случайное распределение пользователей

Корректность A/B-тестирования во многом определяется качеством случайного распределения пользователей между вариантами.

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

На практике распределение обычно осуществляется посредством хеширования постоянного идентификатора пользователя (например, User ID). Такой подход гарантирует, что пользователь всегда попадает в одну и ту же экспериментальную группу.

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

Выбор метрики

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

Наиболее часто используются:

  • конверсия;
  • средний доход на пользователя;
  • число кликов;
  • время взаимодействия с сервисом;
  • удержание пользователей;
  • количество покупок;
  • вероятность выполнения целевого действия.

Метрика должна быть определена заранее. Изменение основной метрики после просмотра результатов эксперимента нарушает корректность статистического анализа и увеличивает вероятность ложных выводов.

Конверсия

Во многих интернет-сервисах основной метрикой является конверсия.

Если

n

— число пользователей,

k

— число пользователей, совершивших целевое действие,

то оценка конверсии равна

\hat p=\frac{k}{n}.

Например, если регистрацию завершили 320 пользователей из 4000,

\hat p=\frac{320}{4000}=0.08.

Одной из наиболее распространённых задач A/B-тестирования является сравнение именно двух вероятностей конверсии.

Размер эффекта

Даже при наличии статистически значимого различия важно оценить его практическую ценность.

Например, увеличение конверсии с

10.000\%

до

10.003\%

может оказаться статистически значимым при очень большом объёме выборки, однако практически не повлиять на бизнес-показатели.

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

Статистические критерии

Выбор статистического критерия определяется природой исследуемой метрики.

Наиболее часто используются:

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

P-value

Результатом большинства статистических критериев является p-value.

Под p-value понимается вероятность получить наблюдаемое различие или ещё более сильное различие при условии, что нулевая гипотеза верна.

Если

p<\alpha,

где

\alpha

— заранее выбранный уровень значимости (обычно 0.05),

нулевая гипотеза отвергается.

Важно отметить, что p-value не является вероятностью истинности нулевой гипотезы. Оно лишь показывает, насколько необычными являются наблюдаемые данные при предположении отсутствия различий между вариантами.

Доверительные интервалы

Помимо проверки гипотез, при анализе результатов A/B-теста почти всегда вычисляют доверительные интервалы для оцениваемого эффекта.

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

Например, если 95%-й доверительный интервал для прироста конверсии составляет от 1,2% до 3,8%, это означает, что наблюдаемые данные совместимы именно с таким диапазоном возможного улучшения.

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

Поэтому в современных публикациях рекомендуется приводить одновременно и значение p-value, и доверительный интервал.

Ошибки первого и второго рода

При проведении любого статистического эксперимента возможны ошибочные решения.

Ошибка первого рода возникает тогда, когда нулевая гипотеза отвергается, хотя в действительности она верна.

Вероятность этой ошибки обозначается

\alpha.

Именно эта величина называется уровнем значимости.

Ошибка второго рода возникает в противоположной ситуации: эксперимент не обнаруживает реально существующее различие между вариантами.

Её вероятность обозначают

\beta.

Вероятность успешно обнаружить существующий эффект называется мощностью статистического критерия:

Power=1-\beta.

При планировании экспериментов обычно стремятся обеспечить мощность не ниже 80–90%.

Планирование размера выборки

Перед запуском A/B-теста желательно заранее оценить необходимый объём выборки.

Если выборка слишком мала, дисперсия оценок оказывается высокой, а вероятность ошибки второго рода существенно возрастает.

Напротив, чрезмерно большие выборки увеличивают стоимость эксперимента и могут приводить к обнаружению статистически значимых, но практически несущественных различий.

Размер необходимой выборки определяется несколькими факторами:

  • выбранным уровнем значимости;
  • требуемой мощностью теста;
  • дисперсией исследуемой метрики;
  • минимальным эффектом, который необходимо обнаружить (Minimum Detectable Effect, MDE).

Расчёт необходимого объёма выборки является обязательным этапом проектирования крупных онлайн-экспериментов.

Множественные сравнения

Во многих практических задачах одновременно сравниваются не два варианта, а сразу несколько.

Если каждый вариант независимо проверяется при уровне значимости 0.05, вероятность хотя бы одного ложного обнаружения постепенно возрастает.

Эта проблема известна как проблема множественных проверок гипотез.

Для её решения используются различные методы коррекции:

Без подобных корректировок вероятность ложноположительных результатов может значительно превышать заранее выбранный уровень значимости.

Последовательное тестирование

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

Такой подход нарушает предположения классической проверки гипотез и существенно увеличивает вероятность ошибки первого рода.

Для корректного досрочного завершения эксперимента применяются специальные методы последовательного тестирования (Sequential Testing), учитывающие многократную проверку гипотез по мере накопления наблюдений.

Современные платформы проведения A/B-тестов обычно реализуют подобные алгоритмы автоматически.

Практические ошибки

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

Наиболее распространёнными являются:

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

Поэтому качественное проведение A/B-тестирования требует не только знания математической статистики, но и аккуратного проектирования эксперимента.

Применение в машинном обучении

A/B-тестирование является стандартным инструментом оценки качества моделей машинного обучения после их разработки.

Типичные области применения:

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

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

Ограничения

Несмотря на широкое распространение, A/B-тестирование обладает рядом ограничений.

Во-первых, эксперимент позволяет сравнивать только те варианты, которые были заранее подготовлены исследователем. Если оптимальное решение не вошло в эксперимент, обнаружить его невозможно.

Во-вторых, результаты эксперимента справедливы лишь для той аудитории и условий, в которых проводилось исследование. При изменении поведения пользователей или внешней среды наблюдаемый эффект может существенно измениться.

Кроме того, некоторые изменения оказывают влияние лишь в долгосрочной перспективе. Например, новая Рекомендательная система может увеличить удержание пользователей только спустя несколько месяцев после внедрения.

Наконец, A/B-тестирование позволяет определить наличие статистически подтверждаемого эффекта, однако само по себе не объясняет причины его возникновения.

См. также

Литература


  • Kohavi, R., Tang, D., Xu, Y. Trustworthy Online Controlled Experiments: A Practical Guide to A/B Testing. Cambridge University Press, 2020.
  • Kohavi, R., Longbotham, R., Sommerfield, D., Henne, R. Controlled Experiments on the Web: Survey and Practical Guide. Data Mining and Knowledge Discovery, 2009.
  • Deng, A., Shi, X. Data Science for Business Decision Making. Cambridge University Press, 2021.
  • Casella, G., Berger, R. Statistical Inference. Duxbury Press, 2002.
  • Montgomery, D. C. Design and Analysis of Experiments. Wiley, 2017.
Личные инструменты