Оценка моделей

A/B testing

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

актуальноТекущий рабочий стандарт

Направления: Основы · Статистика, Прикладные направления · Рекомендательные системы, Продвинутый ML · Причинный ML

Онлайн-эксперимент, который единственный честно измеряет влияние модели на продуктовые метрики.

Ключевые тезисы

  • Размер выборки считается до запуска, а не после.
  • Подглядывание в результаты по ходу теста раздувает ошибку I рода.
  • Офлайн-метрика и бизнес-метрика расходятся чаще, чем хотелось бы.

Какую задачу решает

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

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

Сколько нужно пользователей

Базовая конверсия 5%, хотим заметить относительный прирост в 10% (до 5.5%), уровень значимости 5%, мощность 80%. Расчёт даёт примерно 30 000 пользователей на группу. При 3000 посетителей в день это десять дней на группу — то есть тест на 20 дней. Если трафика 300 в день, тест займёт больше полугода, и запускать его бессмысленно: за это время изменится всё остальное. В такой ситуации либо ищите более чувствительную метрику, либо принимайте решение по офлайн-оценке, честно называя её ограничения.

Подробный разбор

2 подтемы — объяснения, формулы, примеры и интерактивные графики.

Обозначения
  • стандартное отклонение — разброс величины
  • уровень значимости — допустимая вероятность ложного открытия
  • вероятность ошибки II рода (единица минус мощность)
  • приращение — малое изменение величины
  • число объектов в выборке
— минимальный эффект, который вы хотите различать (MDE)
Пример

Конверсия 5%, хотим заметить прирост в 0.5 п.п. при и мощности 80% — нужно порядка 30 000 пользователей на группу. Если трафика меньше, эксперимент бессмысленно запускать: он не различит такой эффект.

  • Подглядывание: остановка теста в , когда p < 0.05, увеличивает ошибку I рода в несколько раз. Нужны заранее фиксированный срок или последовательные тесты.
  • Сетевые эффекты: пользователи взаимодействуют между собой (соцсети, маркетплейсы) — независимость нарушена, нужна кластерная рандомизация.
  • Не та метрика: рост CTR при падении выручки — классический результат оптимизации прокси-метрики.
  • Новизна: первые дни поведение меняется просто из-за смены интерфейса; смотрите на стабилизировавшийся период.
На практике

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

Где применяется

  • моделиЕдинственный способ измерить реальный эффект от новой версии.
  • Изменения продуктаИнтерфейс, тексты, механики — та же схема.
  • Настройка пороговСравнение двух рабочих точек по деньгам, а не по .
  • ростаПричинно-следственный вывод вместо в наблюдательных данных.

Плюсы, минусы и альтернативы

Плюсы

  • Даёт причинно-следственный вывод, а не .
  • Контролирует все скрытые факторы разом за счёт рандомизации.
  • Измеряет то, что действительно важно, а не суррогат.
  • Позволяет безопасно откатиться при ухудшении метрик-стражей.

Минусы

  • Нужен трафик: при малом эффекте выборка требуется огромная.
  • Занимает время — от недели до месяцев.
  • Сетевые эффекты и перетекание между группами ломают независимость.
  • Множественные сравнения без поправки дают ложные открытия.
  • Не всякое изменение можно раскатить наполовину.

Брать, если

  • Есть достаточный трафик и время.
  • Изменение может повлиять на поведение пользователей.
  • Цена ошибочной выкатки высока.

Не брать, если

  • Трафика не хватает для обнаружения ожидаемого эффекта — тест только создаст иллюзию проверки.
  • Эффект заведомо огромен и очевиден.
  • Между пользователями есть взаимодействие (маркетплейс, соцсеть) — нужен кластерный или switchback-дизайн.

Чем заменяют

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

Решения в условиях неопределённости · Онлайн-эксперименты · Эксперименты и статистика

Experiment Infrastructure97%

Инфраструктура экспериментов · Системный дизайн ML-сервисов

Механика раскатки: разделение трафика, стабильные группы, метрики и автоматический откат.

Hypothesis testing96%

Проверка гипотез · Оценка моделей

Формальная процедура принятия решения на основе данных: нулевая гипотеза, статистика, уровень значимости.

Statistical significance96%

Статистическая значимость · Оценка моделей

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

Binomial & Bernoulli85%

Бернулли и биномиальное · Теория вероятностей и распределения

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

Central Limit Theorem85%

Центральная предельная теорема · Теория вероятностей и распределения

Сумма большого числа независимых слагаемых со сравнимым вкладом распределена приближённо нормально.

Multi-armed Bandits80%

Многорукие бандиты · Обучение с подкреплением

Упрощённый RL без состояний: выбираем действие, получаем награду и балансируем исследование с эксплуатацией.

Offline RL80%

Оффлайн RL · Обучение с подкреплением

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

Beta Distribution80%

Бета-распределение · Теория вероятностей и распределения

Распределение вероятности на отрезке [0,1] — естественный априор для конверсии и для многоруких бандитов.

Bayesian Optimization80%

Байесовская оптимизация · Практика ML

Строит модель зависимости метрики от гиперпараметров и выбирает следующую точку осознанно.

Confidence intervals75%

Доверительные интервалы · Оценка моделей

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

Bootstrap75%

Бутстрэп · Оценка моделей

Многократная выборка с возвращением: даёт распределение метрики и доверительные интервалы без предположений о нормальности.

Ablation studies75%

Абляционные исследования · Оценка моделей

Поочерёдное отключение компонентов, чтобы понять, что именно даёт прирост качества.

Statistics75%

Статистика · Основы

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

Кому эта тема нужна

Профильная компетенция для ролей: Data Scientist, Аналитик данных, Инженер рекомендаций.

Усиливает профиль: Продуктовый инженер.

Спрашивают на собеседовании: Яндекс — RecSys, Сбер — Рекомендации и персонализация, Т-Банк — Рекомендации и персонализация, Авито — Поиск и ранжирование, VK — Лента и рекомендации, Ozon — Поиск и рекомендации, Wildberries — Спрос, цены и акции, МТС — Отток и персональные предложения, Альфа-Банк — Персонализация и CVM, Совкомбанк — Продуктовая аналитика и эксперименты, Точка — Ассистенты и поддержка, ЮMoney — Конверсия платежа и эксперименты, X5 Tech — Цены и промо, Магнит — Лояльность и персонализация, Lamoda — Рекомендации и поиск, Самокат — Логистика и сроки доставки, Спортмастер — Рекомендации и омниканальность, HeadHunter — Матчинг и рекомендации, Циан — Поиск, ранжирование и достоверность, Авиасейлс — Прогноз цен и подсказки, Авиасейлс — Ранжирование предложений, 2ГИС — Геопоиск и навигация, МегаФон — Отток и предложения, билайн — Маркетинг и удержание.

Проверить себя

Тема встречается в тестах по направлениям — ошибки приведут обратно на эту страницу.

Следующий шагПроверить себя: Рекомендательные системыТема встречается в этом тесте 2 раза. Ошибка приведёт обратно на эту страницу — с объяснением, что именно не сошлось.Перейти →

Глава «Оценка моделей» последний раз правилась . Нашли ошибку — напишите.