Команда сравнивает конверсию только среди пользователей, открывших новый экран. Какое искажение возникает?

Команда сравнивает конверсию только среди пользователей, открывших новый экран. Какое искажение возникает?

Проходите собеседования с ИИ помощником Hintsage

Краткий ответ

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

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

Исторический контекст

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

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

Постановка проблемы

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

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

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

Подробное решение

Первичный анализ проводят по принципу intention-to-treat: пользователь учитывается в назначенной ему группе независимо от того, открыл ли он экран, воспользовался ли функцией или выполнил целевое действие. Так сохраняется исходная рандомизация и оценивается реальный эффект предложения функции всей целевой аудитории.

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

Если нужно оценить эффект именно использования функции, можно рассматривать per-protocol или treatment-on-the-treated анализ. Однако он требует дополнительных предположений о причинах использования и часто нуждается в методах причинного вывода, например инструментальном оценивании; такие оценки менее прямы и чувствительны к нарушению предположений.

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

Ситуация из практики

В эксперименте новый способ показа рекомендаций получил конверсию в покупку 8,5% среди открывших блок, тогда как в контроле среди открывших его было 7,9%. На первый взгляд это выглядело как улучшение, но блок в тестовой группе открывали 60% пользователей, а в контрольной — только 35%.

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

Выбрали второй вариант как основной и дополнительно отчитались о доле открытий и конверсии среди открывших как диагностических показателях. В итоге конверсия всей назначенной аудитории выросла с 4,1% до 4,4%, а рост среди открывших признали объяснением механизма, но не самостоятельным доказательством общего эффекта.

Что кандидаты часто упускают

  1. Почему анализ по всем назначенным пользователям может быть консервативным?

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

  1. Можно ли сравнивать открывших экран, если доля открытий одинакова в обеих группах?

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

  1. Чем отличается анализ открывших от анализа пользователей, которым экран был технически показан?

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