Как обеспечить новизну и разнообразие рекомендаций
Что проверяют
Различаете ли вы разнообразие, новизну и покрытие каталога и умеете ли встроить их в систему, не уронив релевантность. Следом спросят, как вы это измерите и докажете пользу для бизнеса, а не только для офлайн-метрики.
Как отвечать
Сначала разведите понятия:
- diversity: насколько непохожи объекты внутри одной выдачи. Intra-list diversity считают как среднюю попарную дистанцию между эмбеддингами или категориями в топ-K;
- novelty: насколько объект непопулярен или незнаком пользователю. Классическая оценка: среднее
-log2 p(i), гдеp(i)доля пользователей, взаимодействовавших с объектом; - coverage: какая доля каталога вообще попадает в рекомендации, перекос показов смотрят через индекс Джини;
- serendipity: неожиданное и при этом релевантное, измеряется труднее всего.
Затем методы:
- переранжирование: MMR жадно набирает список, штрафуя кандидата за похожесть на уже выбранные, коэффициент
λзадаёт баланс релевантности и разнообразия. Более строгий вариант DPP; - калибровка: доли категорий в выдаче подгоняются под доли в истории пользователя, чтобы один интерес не вытеснял остальные;
- бизнес-правила: не больше N объектов одного автора или категории в первой десятке, исключение купленного и многократно показанного;
- exploration: часть слотов отдаётся под epsilon-greedy или контекстных бандитов, новые объекты получают буст на холодном старте;
- штраф популярности: скор снижается пропорционально логарифму популярности.
Итог проверяют A/B-тестом, и смотреть надо не только на CTR, но и на длинные метрики: возвраты, глубину сессии, долю каталога с продажами.
Где спотыкаются
Предлагают «подмешать случайные объекты». Случайность без учёта релевантности роняет CTR и доверие к рекомендациям.
Оценивают всё офлайн по NDCG на логах. Логи собрала старая модель, показывавшая популярное, поэтому новые объекты в офлайне заведомо проигрывают.
Смотрят на разнообразие одного списка и забывают про время: пользователь каждый день видит одну и ту же разнообразную выдачу, и новизны в ней ноль.