Назад к подготовке

Как оценивать двухстадийную рекомендательную систему

Есть генератор кандидатов и ранкер. Какие offline и online метрики смотреть для каждого этапа?

Ответить самому

Сначала сформулируйте ответ как на собеседовании, затем откройте разбор и оцените себя.

Загрузка

Короткий ответ

Для генерации кандидатов обычно смотрят Recall@K, coverage и diversity, потому что этот этап не должен потерять релевантные объекты. Для ранкера - NDCG, MAP/MRR, precision@K и бизнес-метрики в online A/B.

Полный разбор

Двухстадийную систему нельзя оценивать одной метрикой. На первом этапе генератор быстро достает широкий набор кандидатов. Его задача - высокий recall: нужный объект должен попасть в top-K до ранкера. Дополнительно важны coverage каталога, diversity, доля пустых выдач и latency.

На втором этапе ranker уже сортирует ограниченный список. Здесь полезны NDCG, MAP, MRR, precision@K, calibration по score и метрики по срезам: новые пользователи, tail items, категории, регионы. Если ранкер оптимизирует покупку или отклик, offline relevance нужно связывать с downstream-целью.

Online финальное решение принимает A/B: CTR, conversion, GMV/revenue, retention, complaints, latency, diversity и guardrails. Хороший offline score без online uplift - только гипотеза, а не доказательство улучшения.

Теория

Генерация кандидатов оптимизирует полноту и покрытие, ранкер - порядок и бизнес-качество ограниченного списка.

Типичные ошибки

  • Оценивать генератор кандидатов только precision@K.
  • Смешивать retrieval и ranking метрики в одну цифру.
  • Не смотреть срезы по новым пользователям и tail items.