🔵В прошлый раз я поделился с вами пейпером про подход с ARMA-Design от нескольких международных университетов. Следующий пейпер, который хочу обсудить, снова про нарушение SUTVA, но уже не во времени, а в пространстве.
Откуда проблема
Запускаете A/B на социальной сети: часть пользователей получает новый тип реакций, часть — нет. Казалось бы, всё чисто. Но контрольные пользователи видят, что их друзья из treatment что-то делают иначе. Они, в свою очередь, меняют свое поведение. ATE по итогу будет смещён, и авторы оценивают это смещение в 30%+. Очевидно перед нами сетевой эффект. Но стандартные способы с ним бороться работают плохо.
Наиболее популярных подход и его проблемы
Чаще всего используется сплиттование через Cluster randomization: назначаем воздействие кластерам пользователей, а не индивидуально. Тогда spillover-эффект внутри кластера, но не между ними. Проблема: теряется мощность за счет перехода на новый уровень рандомизации, и кластеры часто плохо соответствуют тому, как реально распространяется воздействие от A/B.
Что предлагают авторы
Двухшаговый метод, который автоматизирует задание exposure mapping.
Шаг первый: для каждого пользователя строится вектор — causal network motif. Он описывает топологию ближайшего окружения с учётом того, кто из соседей обработан. Важна не просто доля обработанных, а структура связей между ними. «4 друга, 2 обработаны, и они между собой связаны» — это другой мотив, чем «2 из 4 обработаны, но изолированы друг от друга». Плотный кластер обработанных давит на поведение иначе, чем рассеянные.
Шаг второй: эти векторы кластеризуются алгоритмом ближайших соседей. На выходе — автоматически найденные группы с разными паттернами интерференции. Целевая метрика — GATE: что было бы, если бы все получили фичу, против состояния, где никто ничего не получил. Не "насколько лучше у тех, кому показали" — а глобальный эффект с учётом spillover эффекта.
Проверка
Протестировали на синтетике и на реальном крупном тесте. По точности оценки GATE — выше cluster randomization.
Когда это нужно
Продукты с механиками социального взаимодействия с вирусным компонентом: реакции, шеринг, рекомендации «добавить в друзья». Двусторонние маркетплейсы, где обработка продавца влияет на покупателей. В общем — всё, где SUTVA нарушается через явные связи в графе, а не через время.
От себя
Практически важнее самого алгоритма — диагностика. Большинство команд вообще не проверяют, есть ли интерференция. Обычно просто говорят – «у нас есть сетевой эффект». Если граф пользователей доступен, тест на отсутствие spillover — несложная операция, которая может перевернуть интерпретацию уже прошедших экспериментов.
Если есть мысли, пишите в комментах.
Trisigma — канал про A/B-тестирование
#trisigma