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

Сезонность, переобучение и A/B тест поискового ranker

Как учитывать сезонность в поиске и как запускать новую модель в online-эксперимент?

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

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

Загрузка

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

Сезонность ловят свежими окнами, time features, регулярным retraining и slice-метриками по категориям/запросам. A/B запускают с primary metric, guardrails, MDE, ramp-up и проверкой SRM/баланса групп.

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

В маркетплейсе сезонность проявляется в запросах, наличии товаров, цене, промо и поведении пользователей. Модель можно поддерживать свежими training windows, time/category features, регулярным переобучением и отдельными правилами для сезонных категорий. Важно смотреть slice-качество: зимние товары, праздники, back-to-school, локальные промо.

Перед A/B фиксируются primary metric и guardrails. Например, primary - purchase conversion или search GMV, guardrails - latency, zero-result rate, complaints, seller fairness, refunds. MDE и длительность считаются заранее, чтобы не остановить тест на шуме.

Rollout лучше делать постепенно: shadow, canary, 1-5%, затем больше. Во время теста проверяются SRM, баланс групп, стабильность логирования и отсутствие деградации на критичных категориях.

Теория

Сезонность - это drift во времени; ее нельзя чинить только одной offline-валидацией.

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

  • Учить модель на старом периоде и не проверять свежие категории.
  • Останавливать A/B без расчета мощности и MDE.
  • Не смотреть guardrails по latency и zero-result rate.