Продуктовая аналитика (IT)Продуктовый аналитик

Какой подход вы бы выбрали для оценки инкрементального эффекта персонализированной рассылки push-уведомлений на 7-дневное удержание пользователей в мобильном приложении доставки еды, учитывая временные зависимости в поведении (time-of-day effects) и перекрестное загрязнение между сегментами при частичном rollout'е?

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

Ответ на вопрос.

Персонализация push-уведомлений требует строгого квазиэкспериментального подхода из-за самоотбора пользователей по времени активности. Возможное перекрестное загрязнение (cross-contamination) через социальные сети или семейные аккаунты дополнительно усложняет изоляцию эффекта.

Ключевой метод — Difference-in-Differences (DiD) с синтетическим контролем. Контрольная группа формируется на основе propensity score matching по времени открытия приложения и историческим паттернам заказов.

Для корректировки time-of-day effects применяется стратификация по часовым поясам. Cross-contamination детектируется через анализ device ID и IP-адресов на предмет shared accounts.

Метрика удержания рассчитывается как hazard ratio с использованием Cox proportional hazards model. Это позволяет учитывать цензурированные данные и неоднородность рисков оттока.

Ситуация из жизни

В приложении Delivery Club планировалось внедрение ML-модели на Python с использованием CatBoost для персонализации времени отправки push-уведомлений. Проблема заключалась в том, что активные пользователи открывали приложение преимущественно в обеденные часы, создавая self-selection bias.

Частичный rollout в 20% аудитории вызвал эффект "сарафанного радио". Пользователи из контрольной группы узнавали об акциях от коллег, что создавало cross-contamination.

Первым рассмотренным решением был классический A/B-тест с географической сегментацией. Город A являлся тестовой группой, город Б — контролем.

Плюсы этого подхода включали чистую изоляцию групп и простоту интерпретации результатов для бизнеса. Минусы заключались в различиях кулинарных предпочтений и доходах между городами, создававших смещение на 12-15% в базовом удержании.

Вторым вариантом был анализ только пользователей с включенными уведомлениями (per-protocol analysis). Это позволяло фокусироваться на целевой аудитории, реагирующей на коммуникации.

Плюсы — высокая релевантность для продуктовой команды. Минусы — игнорирование эффекта opt-out bias: пользователи, отключившие уведомления, имели в 3 раза более высокий базовый churn, что искажало общий эффект интервенции.

Третьим решением стал Causal Impact от Google с построением синтетического контроля. Использовались Bayesian Structural Time Series для моделирования контрафактуала.

Плюсы включали учет временных трендов и сезонности без необходимости явного контроля. Минусы — высокая чувствительность к выбору ковариат и хрупкость предположения о параллельных трендах до интервенции.

Выбранным подходом стал комбинированный метод: Inverse Probability Weighting (IPW) для корректировки self-selection по времени активности плюс Diff-in-Diff с кластеризацией стандартных ошибок на уровне географических кластеров.

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

Результатом стало выявление истинного инкрементального эффекта в +8.3% к 7-дневному удержанию. Наивное сравнение показывало +15%. Эффект оказался статистически значим только для сегмента "пользователи с 3+ заказами в истории".

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

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

Как корректно учесть сезонность при расчете прогноза LTV для подписочного продукта с годовыми и месячными планами при наличии когортной неоднородности?

Новички часто используют простое усреднение исторических retention curves без учета того, что пользователи, приходящие в период Black Friday, имеют качественно другой профиль удержания. Их churn в 2-3 раза выше органических пользователей.

Корректный подход — построение отдельных BG/NBD или Gamma-Gamma моделей для каждой когорты с учетом сезонных dummy-переменных. Альтернатива — использование Cohort-Based LTV с корректировкой на Bayesian Hierarchical Modeling для заимствования силы между когортами (partial pooling).

В чем различие между intent-to-treat (ITT) и treatment-on-the-treated (TOT) анализом при оценке эффекта онбординг-тура, и когда какой подход применять?

ITT анализирует эффект предложения (offer) пройти онбординг всем пользователям в тестовой группе, включая отказников. TOT измеряет эффект непосредственно прохождения тура (complier average causal effect).

ITT консервативен и подходит для бизнес-решений о масштабировании функции. Он отражает реальное поведение аудитории с учетом friction. TOT требует instrumental variables и отвечает на вопрос о целесообразности принудительного онбординга.

Ошибка в выборе метода приводит к overestimation эффекта на 40-60%. Для TOT можно использовать случайные баги в показе тура как инструмент (instrument).

Как диагностировать проблему "peeking" при проведении последовательного A/B-тестирования и какие статистические корректировки применить?

Peeking возникает при premature остановке теста при достижении значимости. Диагностика — анализ p-value over time: при peeking кривая демонстрирует "сглаженное блуждание" с частыми пересечениями порога 0.05.

Решения включают Group Sequential Testing с альфа-спending функциями (O'Brien-Fleming). Альтернатива — Bayesian A/B Testing с ROPE (Region of Practical Equivalence) подходом.

Также эффективна фиксация sample size через Data Quality Gates в Apache Airflow. Критическая ошибка — использование naive confidence intervals без корректировки Bonferroni, что вздувает false positive rate до 25-30% при 5 промежуточных проверках.