Как моделировать конверсии
Что проверяют
Умеете ли вы превратить расплывчатое «смоделировать конверсию» в задачу: какое событие считаем, в какое окно, для кого и в какой момент делаем прогноз. Следом спрашивают про дисбаланс классов и калибровку, а на сильных позициях про разницу между предсказанием покупки и эффектом от воздействия.
Как отвечать
Начните с постановки: единица наблюдения (сессия, пользователь, клик), целевое событие и окно, например покупка в течение 7 дней после клика. Признаки берутся только из данных, известных до момента прогноза.
- база: логистическая регрессия, быстрая и интерпретируемая, с ней сравнивают всё остальное;
- основная модель: градиентный бустинг (CatBoost, LightGBM, XGBoost), стандарт для табличных данных с категориальными признаками;
- воронка: конверсию часто раскладывают на этапы, в рекламе это произведение вероятности клика и вероятности покупки после клика. Модель покупки учится только на кликнувших, а применяется ко всем показам, и это смещение выборки нужно учитывать;
- задержка: часть свежих «неконверсий» ещё сконвертируется. Либо ждут окно целиком, либо моделируют задержку отдельно, методами анализа выживаемости;
- метрики: ROC-AUC для ранжирования, PR-AUC при редком классе, log loss и калибровочная кривая, если вероятность идёт в ставку или прогноз выручки. Калибруют методом Платта или изотонической регрессией;
- валидация: разбиение по времени, а не случайное;
- uplift: если модель решает, кому давать скидку, предсказывать надо прирост вероятности от воздействия (T-learner, X-learner) и подтверждать это A/B-тестом.
Где спотыкаются
Пропускают утечку: признаки вроде статуса заказа или числа визитов за весь период известны только после конверсии. Модель блестит на валидации и разваливается в проде.
Балансируют классы через oversampling и потом используют выход модели как вероятность. После пересэмплирования вероятности смещены, нужна перекалибровка.
Путают склонность с эффектом. Высокая вероятность покупки не значит, что коммуникация на человека повлияет: он купил бы и так.