Skip to content
On this page

SRM анализ (Sample Ratio Mismatch)

Проверка корректности распределения пользователей между группами эксперимента.

Что такое SRM

Sample Ratio Mismatch (SRM) — это перекос в распределении трафика между группами эксперимента. Если вы планировали разделить пользователей 50/50, но реально получилось 52/48, это может быть случайностью или признаком ошибки.

SRM анализ проверяет, соответствует ли фактическое распределение ожидаемому. Если нет — результаты эксперимента могут быть ненадежными.

Блок SRM в результатах

Блок SRM всегда отображается первым, перед таблицами с метриками. Он имеет два возможных состояния:

✓ SRM не обнаружен (зеленый блок)

✓ SRM не обнаружен
Распределение трафика соответствует ожидаемому
p-value: 0.4520 (α = 0.01)

Интерпретация:

  • Распределение пользователей между группами соответствует запланированному
  • P-value ≥ 0.01 → различия в размерах групп объясняются случайностью
  • Эксперимент корректен, можно доверять результатам

✗ SRM обнаружен (красный блок)

✗ SRM обнаружен
Обнаружен перекос в распределении трафика
p-value: 0.0003 (α = 0.01)

Интерпретация:

  • Фактическое распределение пользователей значительно отличается от ожидаемого
  • P-value < 0.01 → перекос слишком велик, чтобы быть случайностью
  • Результаты эксперимента ненадежны!

Как работает проверка

AB-Labz Workbench использует Chi-squared тест для проверки SRM:

  1. Сравнивается фактическое количество пользователей в каждой группе с ожидаемым (обычно 50/50)
  2. Рассчитывается p-value
  3. Если p-value < 0.01 (порог строже, чем для метрик) → SRM обнаружен

Порог α = 0.01 (а не 0.05) используется намеренно, чтобы снизить вероятность ложных тревог.

Причины SRM

Если обнаружен SRM, возможные причины:

1. Техническая ошибка в сплите

  • Ошибка в алгоритме рандомизации
  • Неправильная хэш-функция для разделения пользователей
  • Баг в коде, который по-разному обрабатывает группы

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

2. Фильтрация после рандомизации

  • Пользователи из одной группы чаще исключаются из анализа
  • Разные условия попадания в финальный датасет для групп

Пример: Если тестовый вариант вызывает технические ошибки, пользователи с ошибками исключаются из анализа → перекос.

3. Временные факторы

  • Эксперимент запущен не одновременно для всех групп
  • Разное время сбора данных для групп

4. Сегментация или фильтры

  • Датасет уже отфильтрован по каким-то условиям, которые неравномерно затрагивают группы

Пример: Если вы анализируете только пользователей из России, но сплит был глобальным, может возникнуть перекос.

Что делать, если обнаружен SRM

Шаг 1: Не доверяйте результатам эксперимента

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

Шаг 2: Найдите причину

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

Шаг 3: Исправьте проблему и перезапустите эксперимент

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

Шаг 4: Если причина не найдена

Если вы уверены, что рандомизация корректна, а SRM всё равно обнаружен:

  • Возможно, в датасете есть артефакты (дубли, пропуски)
  • Проверьте качество данных
  • Попробуйте пересобрать датасет

Частые заблуждения

Заблуждение 1: "SRM небольшой, можно игнорировать"

Даже небольшой перекос (например, 51/49 вместо 50/50) может быть признаком систематической ошибки. Если SRM статистически значим — это сигнал проблемы.

Заблуждение 2: "Можно скорректировать результаты весами"

Статистическая коррекция не решает проблему, если перекос вызван техническими ошибками. Взвешивание может скрыть реальную проблему.

Заблуждение 3: "SRM не влияет, если метрики не значимы"

SRM — это проблема дизайна эксперимента, а не результата. Даже если метрики показывают "нет эффекта", это может быть из-за перекоса.

Резюме

  • SRM анализ обязателен для каждого эксперимента
  • Зеленый блок → всё хорошо, продолжайте анализ
  • Красный блок → остановитесь, найдите причину, перезапустите эксперимент
  • Не пытайтесь обойти SRM статистическими методами — устраните техническую причину

AB-Labz - Лаборатория продуктовых экспериментов