В отчёте сравнивают варианты по общей конверсии, но распределение пользователей по сегментам различается. Какой вывод допустим по этому запросу и почему?
WITH data(segment, variant, successes, users) AS (
VALUES
('новые', 'A', 90, 100),
('новые', 'B', 19, 20),
('опытные', 'A', 1, 100),
('опытные', 'B', 80, 1000)
)
SELECT variant,
SUM(successes) * 1.0 / SUM(users) AS conversion
FROM data
GROUP BY variant;
По общей конверсии нельзя заключать, что вариант A лучше B или наоборот: агрегирование скрывает различия в составе сегментов. Здесь B имеет более высокую конверсию внутри каждого сегмента, но его общая конверсия ниже из-за значительно большей доли пользователей с низкой базовой конверсией.
Этот эффект известен как парадокс Симпсона: зависимость, наблюдаемая внутри отдельных групп, меняет направление после объединения групп. Он возникает, когда группы различаются по размеру, а сами группы имеют разные базовые уровни целевой метрики.
Проблема особенно важна для анализа экспериментов и наблюдательных данных. Простое суммирование удобно, но может смешать эффект варианта с изменением структуры аудитории.
В запросе общая конверсия для A равна 91 / 200 = 45,5%, а для B — 99 / 1020 = 9,7%. Наивный вывод будет в пользу A.
Однако внутри сегмента «новые» конверсия B равна 95%, а A — 90%. В сегменте «опытные» конверсия B равна 8%, а A — 1%. Значит, направление различия внутри обоих сегментов противоположно общему результату.
Неверный вывод может привести к отключению действительно более эффективного варианта. Особенно опасно это при неслучайном распределении трафика, когда варианты получают аудиторию разного состава.
Сначала метрику нужно рассчитать отдельно по каждому существенному сегменту. Затем следует определить, какой вопрос решается: нужен ли эффект для текущего состава аудитории или сравнение при одинаковой структуре сегментов.
Для оценки эффекта при фиксированной структуре используют стандартизацию: конверсию каждого варианта в сегменте умножают на одну и ту же целевую долю сегмента и складывают. При равных весах двух сегментов стандартизированные значения составят:
Такой расчёт показывает преимущество B при одинаковом составе аудитории. В реальном A/B-тесте предпочтительнее обеспечить случайное распределение пользователей по вариантам и проверить баланс ключевых признаков; тогда различия состава в среднем не становятся систематическим источником смещения.
Стратификация не гарантирует причинный вывод сама по себе. Если сегменты выбраны после воздействия варианта или не учтены важные факторы, может возникнуть другое смещение. Также нельзя бездумно сравнивать множество сегментов: малые выборки дают нестабильные оценки и увеличивают риск случайных различий.
Команда сравнивала новый экран оплаты со старым. Новый вариант чаще показывался пользователям мобильного приложения, где конверсия исторически ниже, а старый — пользователям веб-сайта. В общей метрике новый экран проигрывал.
Рассматривались два варианта. Можно было принять агрегированный результат: это просто и отражает фактический текущий трафик, но смешивает эффект интерфейса с каналом. Можно было сравнить варианты отдельно по платформам: это выявляет неоднородность эффекта, но требует проверки объёма выборки и корректного объединения результатов.
Выбрали стратифицированный анализ с заранее заданными весами платформ, соответствующими целевой структуре трафика. Новый экран оказался лучше внутри обеих платформ, а итоговая стандартизированная оценка устранила влияние разного распределения пользователей. После этого команда продолжила эксперимент с равномерным случайным распределением по вариантам, чтобы получить более надёжный причинный вывод.
Нет. Разбиение должно быть обосновано до анализа или подтверждено предметной логикой, а сегменты должны быть достаточно крупными. Если выбрать разбиение после просмотра данных, можно найти случайный эффект или получить проблему множественных сравнений.
Нужно проверить не только направление, но и величину эффекта, доверительные интервалы и взаимодействие варианта с сегментом. Если эффект существенно различается между сегментами, одного общего числа недостаточно: следует представить сегментные результаты или использовать модель с взаимодействием.
Случайизация устраняет систематическую связь варианта с известными и неизвестными факторами только в среднем, а не в каждой конечной выборке. При случайном дисбалансе сегментов общие конверсии могут временно различаться. Поэтому проверяют размеры групп, доверительные интервалы и, при необходимости, применяют заранее определённую стратификацию или ковариатную корректировку.