Разбираем экономику продуктов персонализации и рекомендательных систем V. 7/10 Растим визиты в продукт
Это одна из самых хардовых, сложных и дискуссионных тем в данный момент. Если опираться на наше любимое сравнение с бейзлайном, о котором я писал выше, то задача звучит так:
Как изменения внести в базовые рекомендательные алгоритмы чтобы пользователь в будущем чаще заходил в продукт.
На первый взгляд звучит не сложно. Но решение этой задачи боль 🙂 По сути, нам нужно найти связь между краткосрочной реакцией пользователя на рекомендательную выдачу и долгосрочными паттернами его поведения в виде визитов. Например: Пользователь увидел в рекомендациях молоко и курицу и купил только курицу. Как это повлияет на его будущие визиты в продукт? Станет ли он заходить чаще? 🤔
Напрямую эта задача почти нерешаемая. Алгоритмически и статистически поймать связь между реакцией на конкретные товары в рекомендательной ленте и будущими визитами очень сложно. Слишком много шума, внешних факторов и длинный горизонт эффекта.
Но можно подойти к задаче через прокси-метрики.
Один из вариантов — использовать свойства покупательской корзины. В частности, смотреть на количество миссий, которые клиент закрывает внутри сервиса. Под миссией я понимаю отдельную потребность клиента которую он может закрывать у нас или где-то еще: купить корм для кота, купить бытовую химию, купить товары для спорта, купить бытовую технику и т.п. Есть множество исследований которые говорят чем больше миссий клиент закрывает тем выше его LTV, например вот и вот Таким образом стратегически вам выгодно двигать клиента так чтобы в каждой покупке он закрывал новые миссии.
Если все сильно упростить, получается такая логика: LTV клиента зависит от количества миссий, которые он закрывает у нас. Значит, нужно чтобы в каждом заказе у клиента росло количество таких миссий. А для этого рекомендации должны показывать товары из новых миссий, которые с высокой вероятностью попадут в заказ. И далее задача распадается на три части
Задача 1: правильно сформировать миссии Нужно разбить товары на миссии так, чтобы на исторических данных была видна зависимость:
+1 новая миссия клиента → +X рублей к LTV на горизонте N месяцев
Например, если клиент начал покупать товары для животных, его LTV_12_month вырос на 500 рублей. Если начал покупать бытовую химию — на 300 рублей. Если начал покупать спорттовары — на 150 рублей. Важно, чтобы это было видно в данных, а не просто красиво звучало в презентации.
Задача 2: оценить ценность новых миссий для каждого клиента Для разных клиентов одна и та же миссия может иметь разную ценность. Условный Петя купил у нас миксер. Значит, он начал закрывать миссию “бытовая техника”. Для него это может дать +100 рублей к будущему LTV. Потом Петя купил гантели.
Значит, начал закрывать миссию “спорттовары”. Это может дать еще +75 рублей к будущему LTV. Фактически нужно восстановить функцию, которая для каждого клиента оценивает будущий LTV на основании текущих миссий и новых миссий, которые он может начать закрывать. Проверять такую модель можно на исторических данных.
Задача 3: научить рекомендации предлагать новые миссии Когда мы поняли, какие миссии ценны для клиента, нужно аккуратно протащить это в алгоритмы и подмешивать больше товаров из новых миссий для клиента.
Самое главное не сильно уронить краткосрочные метрики качества рекомендаций через подмешивание товаров растящих миссионность и долгосрочный LTV 🤗
В этом посте были ссылки, но мы их удалили по правилам Сетки