Data Science

Experimentation и A/B Testing

Booking.com проводит 1000+ A/B тестов одновременно. 10% из них показывают значимый результат. Если бы они останавливали каждый при p<0.05 - запустили бы 50 ложных изменений в год. Строгая экспериментальная методология - это то, что отличает data-driven компанию от компании с иллюзией data-driven.

  • Netflix: 250+ A/B тестов одновременно. Тест thumbnails изображений показал +25% click-through - но OEC учитывает completion, не только клики
  • Airbnb: тест новой формы бронирования на 5% пользователей 4 недели (sequential testing) выявил +3.2% conversion при отсутствии degradation guardrail метрик
  • LinkedIn: Multi-Armed Bandit для персонализации email subject lines - Thompson Sampling выбирает заголовок под каждого пользователя, lift +15% CTR

Sample Size: сколько нужно данных для теста

Недостаточный sample size = тест без мощности: не обнаружит реальный эффект (false negative). Избыточный = долго ждать. Power analysis до запуска теста: определить MDE (Minimum Detectable Effect), задать alpha (0.05) и beta (0.2), рассчитать N.

Типичная ошибка: запустить тест, смотреть p-value каждый день, остановить когда p < 0.05. Это p-hacking: при многократных проверках alpha накапливается, false positive rate растёт. Решение: зафиксировать длительность теста до запуска или использовать sequential testing.

Power = 0.8 в A/B тесте означает:

Multi-Armed Bandit: адаптивное тестирование

Классический A/B тест: жёсткое разделение 50/50, ждать полного sample. Multi-armed bandit: адаптивно увеличивать трафик на лучший вариант по ходу теста. Tradeoff: exploration (изучение вариантов) vs exploitation (использование лучшего). Алгоритмы: epsilon-greedy, Thompson sampling, UCB.

Thompson Sampling в production: Google AdSense, Microsoft Azure, Netflix используют MAB для оптимизации контента. Преимущество перед A/B: меньше потерь от 'плохого' варианта (regret minimization). Недостаток: сложнее статистически доказать победителя для stakeholders привыкших к p-value.

Главное преимущество Multi-Armed Bandit перед классическим A/B тестом:

Sequential Testing: безопасный early stopping

Sequential testing позволяет смотреть на результаты в процессе и останавливать тест досрочно при сильном сигнале - без p-hacking. Методы: Sequential Probability Ratio Test (SPRT), mSPRT, Always Valid Inference. Используется Optimizely, VWO.

Почему проверка p-value каждый день и остановка при p<0.05 - это p-hacking?

Metric Design: выбор правильной метрики эксперимента

Goodhart's Law: 'Когда метрика становится целью, она перестаёт быть хорошей метрикой'. Метрика должна быть sensitive (улавливает изменения), measurable (быстро считается), aligned (коррелирует с бизнес-ценностью). OEC (Overall Evaluation Criterion) - композитная метрика при конфликте.

Netflix OEC: hours watched per member - изменился после анализа что completion rate > 85% = engagement, но completion 100% = boring short content. LinkedIn North Star: sessions per member оказался ложной метрикой - fake/spam постили много. Заменили на professional connections made. Выбор метрики - стратегическое решение.

Зачем нужны guardrail метрики в A/B тесте помимо основной?

Ключевые идеи

  • Power analysis до запуска: MDE + alpha + power = sample size. Фиксировать длительность теста до старта.
  • Multi-Armed Bandit: адаптивная аллокация трафика - меньше regret, сложнее объяснить stakeholders.
  • Metric design: guardrail метрики защищают от побед 'за счёт'; OEC объединяет конфликтующие цели.

Связанные темы

Экспериментирование - часть полного data science workflow:

  • Data Science Case Studies — A/B тестирование - стандартный инструмент в product analytics case studies на собеседовании
  • ML Pipeline: от notebook к production — Feature flags + MLflow experiments - основа для online A/B тестирования ML моделей в production

Вопросы для размышления

  • Как проводить A/B тест если разные пользователи видят разные версии и взаимодействуют друг с другом (marketplace, social)?
  • Когда имеет смысл запускать тест с 10% трафика вместо 50/50 несмотря на более долгое время?
  • Как Goodhart's Law применяется к метрике 'ежедневные активные пользователи' для мессенджера?

Связанные уроки

  • stat-26-experimental-design
Experimentation и A/B Testing

0

1

Войти